34

まだ未解決の問題であることはわかっているので、ここで完全な回答が得られるとは思っていません。次の問題を解決するためのいくつかのアプローチを見つけたいだけです。

私はモデル (それがボットの記憶であると仮定します) を持っており、モデル内のさまざまなオブジェクトにさまざまな単語が関連付けられています。ボットと話すことは、DB で SQL クエリを実行するようなものです。言語は非常に難しい形式化可能なプロトコルです。また、実際の言語を実装するために 100 万行のコードを書くことはできません。しかし、何らかの自己学習メカニズムを実装することは絶対に可能だと思います。どのように実装できますか?「ゼロから」または「いくつかの基本的な単語から」の学習を実装することは可能ですか? あなたのアイデアを聞きたいだけです。

実際、英語は非常に厳格な言語であり、AI を実験するのに最も簡単な言語の 1 つです。他の多くの言語では、単語の順序を変更できます (たとえば)。また、場合によっては、順序を変更すると、全体の意味が変わったり、単にイントネーションが追加されたりすることがあります。これらのことをボットに教える方法については、まったく考えがありません。

4

6 に答える 6

23

このゲームを次のレベルに引き上げるための最初のステップは...

...先行技術を非常に明確に把握するために!

(そして、私が言うことを許してください、質問はあなたがその問題についてそのような広範な洞察を持っていることを示唆していません[そしてあなたは一人ではありません、私を数えてください;-)])

特に、完全に新しい手法やモデルを適用することを意図している場合でも、現在および過去の慣行に関する文献を確認することが重要であると思われます。新しい実装で適応または再利用される可能性のある要素を特定する可能性は別として、ドメインの調査により、問題の性質を鋭く理解することができます。

私は個人的に、さまざまな機会に、広く定義された問題に取り組むための単純なアプローチまたはソフォモリックなアプローチのいずれかを試みました。単純なアプローチでは、問題の本質と範囲についてごくわずかしかわかりません。2年生は、私たちがドメイン知識と関連ツールをよりよく備えていると考えていますが、これは誤解を招く可能性もあります.多くのものが釘のように見える「ハンマーが得意」な人に少し似ています...)

NLP の分野では、特にこれらの間違いを犯しやすいです。その理由は

  • 必要なのは常識だけのようです: 結局のところ、母国語が英語である子供は、
       「彼は本当に専門家ではない」「彼は本当に専門家ではない」などの微妙    点理解します(OP の単語の順序への参照に小さなウィンク英語)

  • 私たちは非常にエキサイティングな時代に生きており、テクノロジーと知識に関しては、処理能力、プログラミング言語とツール、数学的手法、手頃な価格のコーパスの入手可能性など、この瞬間を非常に特別なものにしているものをいくつか挙げると.

チャットボットの取り組みであなたを思いとどまらせるという考えは私にはまったくありませんが、この長くて一般的な公開が、飛躍する前に見ることを奨励することを願っています.ふたつのやり方:

  • 参照のフレームをいくつか提供します(繰り返しますが、「これらの枠の外で考える」ことが意図されている場合でも)
  • たとえば、会話の特定の領域 (スポーツ、健康、または特定の大学キャンパスでの生活など) に限定したり、問題の特定の側面に焦点を当てたり (意味認識、スムーズ、自然に聞こえる文法、口語表現の使用...)

幸運を ;-)

于 2009-11-17T15:12:06.063 に答える
9

いくつかのアイデアについては、MegaHALの実装を確認してください。私たちはこのボットの変種を私たちのIRCチャネルで何年にもわたって使用してきましたが、彼は時折、私たちの支配的な性格の多くのインテリジェントな混合物であるように見えます。

于 2009-11-17T13:36:12.450 に答える
6

あなたはボットを「訓練」します-ボットが答えるたびに、あなたは答えをランク付けします(またはテスター)-答えが良い/論理的である場合-答えが悪い場合は高いランクを与えます...低い/負のランク。

将来のランキングを使用して答えを選択します。これがボットの学習方法です...

于 2009-11-17T13:36:36.893 に答える
4

AIプログラミングのパラダイムにエリザ素晴らしい説明があります。数日の作業で、単純なElizaボットを実装できるはずです。

これは学習アルゴリズムではありませんが、非常に単純なものからどれほど現実的な答えが得られるかは驚くべきことです。

于 2009-11-17T13:41:25.943 に答える
-1

BOT libre ( http://www.botlibre.com ) で独自のチャット ボットを作成できます。

ボットは学習、トレーニング、スクリプト作成が可能で、ユーザーがボットをプログラムすることも、ロボット自身にプログラムさせることもできます。

これらのサイトは、独自のサイトへのボットの埋め込みをサポートし、REST API アクセス、Android、IRC、Twitter を備えています。商用ボットでも無料でホスティング。

于 2013-12-30T20:05:42.760 に答える
-3

AliceBotプロジェクトのAIMLが役に立ちます。これは、関連する AI のブランチの XML スキーマ全体です (それがあなたを先延ばしにしなければ)。

ウィキペディアの例:

<category>
  <pattern>WHAT IS YOUR NAME</pattern>
  <template>My name is <bot name="name"/>.</template>
</category>

RebbeccaAIMLは、十分に文書化された実装の 1 つです。

于 2009-11-17T13:50:11.353 に答える