これは、言語学分野におけるNLG研究の方向性についての この質問 のフォローアップのようなものです。
Siri、Google Now、Cortanaなどのパーソナルアシスタントツールはどのように自然言語生成(NLG)を実行しますか?具体的には、文のテキスト生成部分です。私は、テキストを音声に変換する部分ではなく、テキスト生成部分だけに関心があります。
その情報がおそらく入手できないので、私は一人一人がそれをどのように行うか正確に探していません。
その品質の文生成を実装するにはどのような設定が必要かと思いますか?
質問する理由の1つは、NLGフィールドがSiriとGoogle Nowや他の人が達成していることを実行することは非常に遠いようです。それで、彼らはどのようなことをしていますか?(ちょうど文テキスト生成部分)。
通常、Siriは文章を「生成」しません。彼女はあなたの言ったことを解析し、確かに特定のキーワードを「認識」します。そして、一般的な応答には、I found [N] restaurants fairly close to you
やI couldn't find [X] in your music, [Username].
などのテンプレートを使用します。
しかし、彼女のあなたのスピーチの解釈に応じて、彼女の応答のほとんどは缶詰になっています。加えて、ばかげた質問に対する創造的な答えを選択するための乱数ジェネレーターに加えて。 Siri「ウッドチャックはどれだけの木材をチャックできますか?」または「人生の意味は何ですか?」 -in(および繰り返し逐語的)Siriはほとんどのテキストを自発的に生成するだけでなく、ある種のデータベースからそれをプルしていることを証明します。受信した質問は保存される可能性があります。 Apple従業員がこれらの質問への新しい応答を作成できる中央サーバーにSiriが「学習」することを許可します。
彼女のテキスト読み上げ部分は十分ですが、答えが生成されているように見えることがあります...
read(he、book)など、生成したいもののいわゆる深い構文表現がある場合、その線形表現を生成するのは比較的簡単です。言語の構文を説明する正式な文法と、活用形の形態学的語彙が必要です。生成は分析よりも桁違いに簡単です(解決するのではなく、「あいまいさを生み出す」ためです)。
論理表現のみ(たとえば、1次論理)がある場合、状況はさらに複雑になります。たとえば、buy(John、book)∧read(John、book)があるとします。 ジョンは本を買った。ジョンは本を読んだのような2つの文を生成できますが、不自然に感じられます。より良い出力はJohnは本を購入しました。彼はそれを読みました。andで1つの複合文を生成するのがさらに良いでしょう。論理表現は上記の深い構文表現に似ているかもしれませんが、代名詞や節の境界などはありません。人が伝えたいものの純粋な論理表現をより「人間のような」ものに翻訳するフェーズは、「言語」と呼ばれます計画」または「文の計画」であり、プロセスのより難しいタスクです。