SparkのHashingTFとCountVectorizerの違いは何ですか?

改:

Sparkでドキュメント分類をしようとしています。HashingTFでハッシュが何を行うかはわかりません。精度を犠牲にしますか?疑わしいですが、わかりません。Spark Docは、「ハッシュトリック」を使用していると言っています...エンジニアが使用した本当に悪い/混乱したネーミングのもう1つの例です(私も有罪です)。CountVectorizerには語彙サイズの設定も必要ですが、テキストコーパスの特定のしきい値の下に表示される単語またはトークンを除外するために使用できるしきい値パラメーターという別のパラメーターがあります。これら2つのトランスフォーマーの違いがわかりません。これを重要にするのは、アルゴリズムの後続のステップです。たとえば、結果のtfidf行列でSVDを実行したい場合、語彙サイズによってSVDの行列のサイズが決まり、コードの実行時間に影響します。

zero323:

いくつかの重要な違い:

  • 部分的に可逆CountVectorizerと不可逆HashingTF)-ハッシュは可逆ではないため、ハッシュベクトルから元の入力を復元することはできません。一方、モデル(インデックス)を持つカウントベクトルは、順序付けられていない入力を復元するために使用できます。結果として、ハッシュされた入力を使用して作成されたモデルは、解釈および監視がはるかに困難になる可能性があります。
  • メモリと計算オーバーヘッド - HashingTF必要なのは単一のデータスキャンのみで、元の入力とベクトル以外のメモリは必要ありません。CountVectorizerモデルを構築するためにデータをさらにスキャンし、語彙(インデックス)を保存するために追加のメモリが必要です。ユニグラム言語モデルの場合、それは通常問題ではありませんが、より高いNグラムの場合、法外に高くつくか、実行不可能になる可能性があります。
  • ハッシュ vectorのサイズ、ハッシュ関数、ドキュメントに依存します。カウントは、ベクトル、トレーニングコーパス、およびドキュメントのサイズに依存します。
  • 情報損失の原因 - HashingTF衝突が発生する可能性のある次元削減の場合CountVectorizer頻度の低いトークンを破棄します。ダウンストリームモデルにどのように影響するかは、特定のユースケースとデータによって異なります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

CountVectorizer + TfidfTransformerとTfidfVectorizerの違いは何ですか

分類Dev

Spark:spark.sqlとsqlCtx.sqlの違いは何ですか

分類Dev

Apache Sparkのjoinとcogroupの違いは何ですか

分類Dev

Apache Sparkのjoinとcogroupの違いは何ですか

分類Dev

Apache Sparkのjoinとcogroupの違いは何ですか

分類Dev

Apache MahoutとApache SparkのMLlibの違いは何ですか?

分類Dev

Apache SparkのforEachAsyncとforEachPartitionAsyncの違いは何ですか?

分類Dev

Sparkの変換とrdd関数の違いは何ですか?

分類Dev

Spark Structured StreamingとDStreamsの違いは何ですか?

分類Dev

Spark:repartitionとrepartitionByRangeの違いは何ですか?

分類Dev

「+ =」と「= +」の違いは何ですか?

分類Dev

/ * ... * /と/ ** ... * /の違いは何ですか

分類Dev

「.equals」と「==」の違いは何ですか?

分類Dev

$ *と$ @の違いは何ですか

分類Dev

「$(this)」と「this」の違いは何ですか?

分類Dev

list()と[]の違いは何ですか

分類Dev

dict()と{}の違いは何ですか?

分類Dev

+ =と= +の違いは何ですか?

分類Dev

#{} $ {}と%{}の違いは何ですか?

分類Dev

「 」の違いは何ですか と「」?

分類Dev

=と==の違いは何ですか?

分類Dev

=と==の違いは何ですか?

分類Dev

$( "")と$ .find( "")の違いは何ですか?

分類Dev

`&`と `ref`の違いは何ですか?

分類Dev

^ a | A $と^(a | A)$の違いは何ですか?

分類Dev

「$ pwd」と「./」の違いは何ですか?

分類Dev

=>と->の違いは何ですか?

分類Dev

`cat |`と `<`の違いは何ですか

分類Dev

..と...の違いは何ですか?

Related 関連記事

  1. 1

    CountVectorizer + TfidfTransformerとTfidfVectorizerの違いは何ですか

  2. 2

    Spark:spark.sqlとsqlCtx.sqlの違いは何ですか

  3. 3

    Apache Sparkのjoinとcogroupの違いは何ですか

  4. 4

    Apache Sparkのjoinとcogroupの違いは何ですか

  5. 5

    Apache Sparkのjoinとcogroupの違いは何ですか

  6. 6

    Apache MahoutとApache SparkのMLlibの違いは何ですか?

  7. 7

    Apache SparkのforEachAsyncとforEachPartitionAsyncの違いは何ですか?

  8. 8

    Sparkの変換とrdd関数の違いは何ですか?

  9. 9

    Spark Structured StreamingとDStreamsの違いは何ですか?

  10. 10

    Spark:repartitionとrepartitionByRangeの違いは何ですか?

  11. 11

    「+ =」と「= +」の違いは何ですか?

  12. 12

    / * ... * /と/ ** ... * /の違いは何ですか

  13. 13

    「.equals」と「==」の違いは何ですか?

  14. 14

    $ *と$ @の違いは何ですか

  15. 15

    「$(this)」と「this」の違いは何ですか?

  16. 16

    list()と[]の違いは何ですか

  17. 17

    dict()と{}の違いは何ですか?

  18. 18

    + =と= +の違いは何ですか?

  19. 19

    #{} $ {}と%{}の違いは何ですか?

  20. 20

    「&nbsp;」の違いは何ですか と「」?

  21. 21

    =と==の違いは何ですか?

  22. 22

    =と==の違いは何ですか?

  23. 23

    $( "")と$ .find( "")の違いは何ですか?

  24. 24

    `&`と `ref`の違いは何ですか?

  25. 25

    ^ a | A $と^(a | A)$の違いは何ですか?

  26. 26

    「$ pwd」と「./」の違いは何ですか?

  27. 27

    =>と->の違いは何ですか?

  28. 28

    `cat |`と `<`の違いは何ですか

  29. 29

    ..と...の違いは何ですか?

ホットタグ

アーカイブ