現在、ベクトルで表されたテキスト入力があり、それらのカテゴリを分類したいと考えています。それらはマルチレベルのカテゴリーなので、Hierarchical Softmax
。
Example:
- Computer Science
- Machine Learning
- NLP
- Economics
- Maths
- Algebra
- Geometry
Tensorflowで実装する方法がわかりません。私が出会った例はすべて、他のフレームワークを使用しています。
ありがとう
最後に、Pytorchを使用するように変更しました。 Tensorflowよりも簡単で簡単です。
HSの実装にさらに関心のある方は、私のサンプル手順をご覧ください: https://Gist.github.com/paduvi/588bc95c13e73c1e5110d4308e6291ab
まだTensorflow実装を必要としている人のために、これはあなたのためです: https://github.com/tansey/sdp/blob/87e701c9b0ff3eacab29713cb2c9e7181d5c26aa/tfsdp/models.py#L205 。しかし、それは少し面倒です、そして著者はPytorchまたは他の動的グラフフレームワークを使用することを勧めました
実際には、カテゴリの総数が数百から数千の範囲(50K未満)である場合、階層的ソフトマックスの使用を考慮する必要はありません。語彙の単語数)。
私の経験では(ナイーブベイジアンおよびニューラルネットワークを使用)、トレーニング時に階層構造を利用しても分類の品質が向上するわけではありません。
ただし、とにかくHierarchical Softmaxの実装に興味がある場合は、別の話です。