2016-07-07 5 views
-2

流れは次のようになります。スパークでニューラルネットワークを構築するには?

入力 - > Word2Vectors - >出力 - >ニューラルネットワーク

私はスパークのword2vec機能を試してみましたが、私は、入力としてフォーマット「MultilayerPerceptronClassifier」が必要で混乱していますか?

+0

あなたの質問は不明です。問題はMultilayerPerceptrionClassifierの入力ディメンション(使用しないNNのサブケース)またはWord2Vecに関するものですか?テキストコーパスでWord2Vecモデルを学習する場合は、出力ディメンションをパラメータとして設定できます。 word2vecモデルの出力ディメンションは、MultilayerPerceptionClassifierの入力ディメンションと一致する必要があります(使用しないでください。http://deeplearning4j.org/を参照してください)。 – uberwach

+0

私はMultilayerPerceptronNetworkの寸法と混同しています。何がすべきか?したがって、私は私のword2vecモデルの同じ次元を設定することができます – Aditi

+0

MultilayerPerceptronClassifierの最初の層は、Word2Vecの入力次元=出力(通常はフィーチャ次元と呼ばれます)を持つ必要があります。 – uberwach

答えて

1

MultilayerPerceptronClassifierを定義するときは、パラメータとしてArray[Int]layersとする必要があります。これらは、その順序で層ごとのニューロンの数を記述する。最初のレイヤの入力ディメンションは、出力ディメンションWord2Vecの長さと一致する必要があります。そのため、パラメータを

に設定してください。
val layers = Array[Int](featureDim, 5, 4, 5, ...) 

そして、モデルに含めるパラメータで数値を置き換えてください。 featureDimは、Word2VecModelが生成するベクトルの長さに設定する必要があります。残念ながら、その値を持つ属性はprivateアクセッサを介して隠されており、現在のところ実装されているゲッターメソッドはありません。

関連する問題