パーソナルアシスタントは通常どのように文を生成しますか?


8

これは、言語学分野におけるNLG研究の方向性に関するこの質問のフォローアップのようなものです。

Siri、Google Now、Cortanaなどのパーソナルアシスタントツールはどのように自然言語生成(NLG)を実行しますか?具体的には、文章テキスト生成部。私は、テキストを音声に変換する部分ではなく、テキスト生成部分だけに関心があります。

その情報がおそらく入手できないので、私はそれぞれがそれをどのように行うか正確に探していません。

その品質の文生成を実装するにはどのような設定が必要なのでしょうか。

  • データベースにはどのようなデータが必要ですか(高レベル)?
    • 可能なすべての単語とその意味の辞書に加えて、注釈が付けられ、統計的に分析された多くの本/コーパスに辞書を追加する必要がありますか?
    • それは実際に人々が自然な方法で話した(テレビ番組やポッドキャストなどから)録音をしてテキストに変換し、それを何らかの形で "システム"に追加することを必要としますか?(本当に「人間」のような文章を得るために)
    • あるいは、彼らが使用している単純な構文ベースの文パターンだけがあり、巨大な意味論的「意味」データベースがないのですか?誰かが正規表現タイプのものをたくさん書いたところ。
  • そのような自然に書かれた人間のような文章に使用されるアルゴリズムは何ですか?

質問する理由の1つは、NLG分野がSiriやGoogle Nowなどが成し遂げていることを実行することは非常に遠いようだということです。では、彼らはどんなことをしているのでしょうか?(ちょうど文のテキスト生成部分)。


1
おそらく多くのアプローチがありますが、そのうちの1つは少なくともルールベースのシステムと統計ベースのシステムの組み合わせであると私は思います。グーグルは明らかに自由に使えるテキストサンプルをたくさん持っているので、「私はswしたい」と入力すると、それらのサンプルを見て、「水泳」と「木にスイング」を与えるでしょう。ルールベースのシステムでは、文法構造は同じだが内容が異なるサンプル(たとえば、「泳ぎたかった」)をGoogleで検索することもできます。しかし、それは多くのアプローチの1つにすぎません。
Jeroen Vannevel

質問には、おそらく2つの非常に明確な側面があります。適切な文を作成し、自然に聞こえるテキストを音声に変換します。あなたは、あなたが最もに関心のある方を明確にしたいかもしれません。
バートバン隠元Schenau

3
通常、これらの文は生成されませんが、インターネットが現在構成している無限のコーパスから取得さます。Peter NorvigはBeautiful Codeに素晴らしい項目があり、1兆語のコーパスにアクセスした後、いくつかのNLP問題が基本的にどのように解決するかを示しています。有用な文の生成は、明らかなセグメンテーションやハイフネーションとはまったく異なる難易度であると信じたいのですが、実際はそうではありません。選択するサンプルデータがそれほど多くない場合はそうではありません。
Kilian Foth、2015年

@BartvanIngenSchenauが更新されました。テキスト読み上げの部分には興味がなく、テキスト文を自然に構成する方法のみに関心があります。
ランス

@KilianFothああ、非常に興味深いです。洞察に感謝します。さらに詳しく調べます(これがこのnorvig.com/ngramsだと思います)。今日、他の方法を試す価値はないと言っていますか?
ランスポラール2015年

回答:


3

通常、Siriは文章を「生成」しません。彼女のような、あなたの言うことを解析し、特定のキーワードを「認識」、彼女はテンプレートを使用しますが、必ず、共通の応答のためI found [N] restaurants fairly close to youか、I couldn't find [X] in your music, [Username].

しかし、彼女のあなたのスピーチの解釈に応じて、彼女の応答のほとんどは缶詰になっています。加えて、ばかげた質問に対する創造的な答えを選択するための乱数ジェネレーターに加えて。Siriに「ウッドチャックでチャックできる木材の量は?」と尋ねるだけです。または「人生の意味は何ですか?」さまざまな答えのいずれかを生成します。Siriがテキストの大部分を自発的に生成しているだけでなく、何らかのデータベースからそれを引き出していることを比較的確実に証明する、多数の文化的参照やジョークが組み込まれています(逐語的に繰り返されています)。受信した質問は中央サーバーに保存される可能性が高く、そこでAppleの従業員がこれらの質問に対する新しい応答を作成して、Siriが「学習」できるようにします。

彼女のテキスト読み上げ部分は十分ですが、答えが生成されているように見えることがあります...


1

read(he、book)など、生成したいもののいわゆる深い構文表現がある場合、その線形表現を生成するのは比較的簡単です。言語の構文を説明する正式な文法と、活用形の形態学的語彙集が必要です。生成は分析よりも桁違いに簡単です(解決するのではなく、「あいまいさを生み出す」ためです)。

論理表現のみ(たとえば、1次論理)がある場合、状況はさらに複雑になります。たとえば、buy(John、book)∧read(John、book)があるとします。ジョンが本を買ったような2つの文を生成することができます。ジョンは本を読みましたが、不自然に感じます。より良い出力は、ジョンが本を買ったでしょう彼はそれを読んだ。さらに、とで 1つの複合文を生成することをお勧めします。論理表現は上記の深い構文表現に似ているかもしれませんが、代名詞や句の境界などはありません。純粋に論理的な表現を伝えたいもののより「人間のような」ものに翻訳するフェーズは、「言語」と呼ばれます計画」または「文の計画」であり、プロセスのより難しいタスクです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.