私はニューラルネットワークの実験を開始したかったし、おもちゃの問題として、チャットするようにトレーニングしたかった、つまりcleverbotのようなチャットボットを実装したかった。とにかくそんなに賢くない。
ドキュメントを探してみたところ、一般的なタスクに関する多くのチュートリアルが見つかりましたが、この特定のトピックについてはほとんど見つかりませんでした。私が見つけたものは、実装について洞察を与えることなく結果を公開しただけです。実行したものは、かなり浅いものでした(seq2seqのテンソルフローのドキュメントページには、imhoが不足しています)。
さて、おおむね原理は理解できたと思うのですが、どうすればいいのかよくわかりません。したがって、私は問題にどのように取り組むかを説明し、この解決策についてのフィードバックを希望します。どこが間違っているのか、そしてプロセスに関する詳細な説明と実用的な知識へのリンクがあるかもしれません。
タスクに使用するデータセットは、私のすべてのFacebookとwhatsappのチャット履歴のダンプです。どれくらいの大きさかはわかりませんが、それでも十分な大きさではありません。ターゲット言語は英語ではないため、意味のある会話サンプルをどこにすばやく収集できるかわかりません。
各文から思考ベクトルを生成します。それでも実際にはどうなのかわからない。deeplearning4jのウェブサイトでword2vecの良い例を見つけましたが、文の例はありません。単語ベクトルがどのように構築されるのか、またその理由は理解できましたが、文ベクトルの完全な説明は見つかりませんでした。
入力と出力として思考ベクトルを使用して、ニューラルネットワークをトレーニングします。いくつのレイヤーが必要か、どのレイヤーがlstmレイヤーでなければならないかはわかりません。
次に、思考ベクトルを文を構成する文字のシーケンスに変換できる別のニューラルネットワークが必要です。異なる文の長さを補うにはパディングを使用する必要があると読みましたが、文字をエンコードする方法がありません(コードポイントで十分ですか?)。