すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:Word2Vec

最終更新日:Jul 22, 2024

このトピックでは、Machine Learning Designerが提供するWord2Vecコンポーネントについて説明します。

Word2Vecコンポーネントは、ニューラルネットワークを使用して、広範なトレーニングに基づいて単語をK次元空間内のベクトルにマッピングします。 コンポーネントは、ベクトルのセマンティクスを示すためにベクトルに対する演算をサポートする。 入力は単語列または語彙であり、出力はベクトルテーブルと語彙です。

使用上の注意

Word2Vecコンポーネントは、下流ノードとしてWord Frequency Statisticsコンポーネントに接続する必要があります。

説明

単語頻度統計コンポーネントは、単語と単語統計を含むトリプルテーブルを生成します。 Word Frequency Statisticsコンポーネントは、Word2Vecコンポーネントの上流ノードとして接続できます。 次に、Word2Vecコンポーネントは、Word Frequency Statisticsコンポーネントによって生成されたデータを取得し、そのデータを単一の単語に変換した後、すべてのデータをドキュメントとして処理します。

コンポーネントの設定

次のいずれかの方法を使用して、Word2Vecコンポーネントを設定できます。

方法1: コンソールのパイプライン構成タブでコンポーネントを構成する

Machine Learning Platform for AI (PAI) コンソールのMachine Learning Designerの [パイプライン構成] タブでコンポーネントを構成します。 次の表に、コンポーネントのパラメーターを示します。

タブ

パラメーター

説明

フィールド設定

ワード列

トレーニングに使用される単語列。

パラメーター設定

単語特徴寸法

単語の次元の数。 有効な値: 0 ~ 1000 デフォルト値:100

言語モデル

トレーニングに使用される言語モデル。 有効な値: Skip-gramおよびCbow デフォルト値: Skip-gram

Wordウィンドウのサイズ

単語のウィンドウサイズ。 値は正の整数でなければなりません。 既定値:5

ランダムウィンドウ

ランダムウィンドウを使用するかどうかを指定します。 デフォルトでは、ランダムウィンドウが選択されています。

最小ワード切り捨て周波数

切り捨ての単語の最小頻度。 値は正の整数でなければなりません。 既定値:5

階層Softmax

階層型softmaxを使用するかどうかを指定します。 デフォルトでは、Hierarchical Softmaxが選択されています。

ネガティブサンプリング

負のサンプリングのウィンドウサイズ。 デフォルト値は0で、負のサンプリング機能が使用できないことを示します。

ダウンサンプリングしきい値

ダウンサンプリングのしきい値。 デフォルト値は0で、ダウンサンプリング機能が使用できないことを示します。

初期学習率

初期学習率。 値は0より大きい。 デフォルト値: 0.025

反復回数

反復回数。 値は1以上です。 デフォルト値は 1 です。

チューニング

コア数

コアの数。 デフォルトでは、システムが値を決定します。

コアあたりのメモリサイズ

各コアのメモリサイズ。 デフォルトでは、システムが値を決定します。

方法2: PAIコマンドを実行する

PAIコマンドを使用してWord2Vecコンポーネントを設定します。 SQLスクリプトコンポーネントを使用してPAIコマンドを実行できます。 詳細については、「SQLスクリプト」をご参照ください。 次の表に、このコンポーネントを設定するために使用されるPAIコマンドのパラメーターを示します。

pai -name Word2Vec
    -project algo_public
    -DinputTableName=w2v_input
    -DwordColName=word
    -DoutputTableName=w2v_output;

パラメーター

必須

説明

デフォルト値

inputTableName

入力語彙の名前。

None

inputTablePartitions

不可

入力ボキャブラリの単語セグメンテーションに使用されるパーティションの名前。 この値は、partition_name=value形式である必要があります。 マルチレベルパーティションを指定するには、name1=value1/name2=value2の形式を使用します。 複数のパーティションを指定する場合は、コンマ (,) で区切ります。

None

wordColName

単語列の名前。 単語列の各セルは、単一の単語のみを含む。 </s> タグは改行を示します。

None

inVocabularyTableName

不可

入力語彙に対して実行されるwordcount操作の出力。

システムが出力テーブルに対して実行するwordcount操作

inVocabularyPartitions

不可

ワードカウント操作が入力語彙に対して実行された後の出力のパーティションの名前。

inVocabularyTableNameの出力にあるすべてのパーティション

layerSize

不可

単語の次元の数。 有効な値: 0 ~ 1000

100

cbow

不可

トレーニングに使用される言語モデル。 有効な値: 0と1。 0の値はスキップ・グラム・モデルを示し、1の値はCBOWモデルを示す。

0

ウwindow

不可

単語のウィンドウサイズ。 値は正の整数でなければなりません。

5

minCount

不可

切り捨ての単語の最小頻度。 値は正の整数でなければなりません。

5

hs

不可

階層型softmaxを使用するかどうかを指定します。 有効な値: 0と1。 0の値は、階層的softmaxが使用されないことを示し、1の値は、階層的softmaxが使用されることを示す。

1

ネガティブ

不可

負のサンプリングのウィンドウサイズ。 値は正の整数でなければなりません。 0の値は、ネガティブサンプル機能が利用できないことを示します。

0

サンプル

不可

ダウンサンプリングのしきい値。 有効値: 1e-3 ~ 1e-5。 値0は、ダウンサンプリング機能が利用できないことを示します。

0

アルファ

不可

値は0より大きい。

0.025

iterTrain

不可

値は1以上です。

1

randomWindow

不可

単語ウィンドウを表示するために使用されるモード。 有効な値: 0と1。 値が0の場合はwindowパラメーターで指定されていることを示し、値が1の場合は1から5までのランダムな値を示します。

1

outVocabularyTableName

不可

出力ボキャブラリの名前。

None

outputTableName

出力ベクトルテーブルの名前。

None

ライフサイクル

不可

出力テーブルのライフサイクル。 値は正の整数でなければなりません。

None

coreNum

不可

コアの数。 このパラメーターとmemSizePerCoreパラメーターは、両方が設定されている場合にのみ有効になります。 値は正の整数でなければなりません。

自動割り当て

memSizePerCore

不可

各コアのメモリサイズ。 このパラメーターとcoreNumパラメーターは、両方が設定されている場合にのみ有効になります。 値は正の整数でなければなりません。

自動割り当て

よくある質問

エラーメッセージ "Vocab size is zero! 辞書が空の場合、vocab_size: 0 "が報告されます。 この問題を解決するには、minCountパラメーターを小さい値に設定します。