1

私は RBM を実装しようとしています。次に、プレイ テニス ケースを使用して rbm をテストしました。

以前にオートエンコーダーを試したことがありますが、結果は良好でした。実際、RBM 自体の機能と混同しています。オートエンコーダーと同じように、特徴抽出のために入力 (各インスタンス) をエンコードし、モデル (ネットワーク) をテストまたは検証して、いくつかのインスタンスのエンコードとデコードを試みることができると思います。

しかし、私が直面した問題は、RBM の一部の関数の結果が奇妙に思われることでした。

たとえば、ギブス サンプリングの結果、サンプリング データの結果は実際のデータに非常に近いです。効果は、サンプリング データからの h(x) の結果であり、実際のデータは十分に近いものです。

そのため、非表示層のすべてのユニットを実際の値にデコードした結果を比較しようとすると、結果は悪く、各機能 (ユニット) の結果はほぼ同じで、約 0.4 から 0.5 です。

そして、失われた関数の f(x) = 1/m*sigma(log(p(x))) 自体は約 0.07142857142857142 であり、決して変化しません (約 0.00000000000000001 または 0.0000000000000002 の変化)。

入力範囲の値が 0 から 1 になるように、標準の正規化を使用して、各機能に継続値を使用しました。

誰にも提案がありますか?

*下手な英語でごめんなさい:D

4

0 に答える 0