ホームページ  >  記事  >  テクノロジー周辺機器  >  過剰解釈を避けるために大規模なモデルを導入する簡単かつ客観的な方法

過剰解釈を避けるために大規模なモデルを導入する簡単かつ客観的な方法

王林
王林転載
2023-05-12 18:13:06997ブラウズ

1. はじめに

この記事は、コンピューター サイエンスの背景がない読者に、ChatGPT とその類似の人工知能システム (GPT-3、GPT-4、Bing Chat、Bard など) に関する情報を提供することを目的としています。 . ) 動作原理。 ChatGPT は、会話型の対話のための大規模な言語モデルに基づいて構築されたチャットボットです。これらの用語はわかりにくいかもしれないので、説明します。同時に、それらの背後にある中心的な概念についても説明します。この記事では、読者が技術的または数学的な背景知識を持っている必要はありません。関連する概念をよりよく理解するために、比喩を多用して説明します。また、これらの手法の影響と、ChatGPT のような大規模な言語モデルで何ができると期待すべきか、何を期待すべきでないかについても説明します。

次に、専門用語を極力使わずに「人工知能とは何か」という基本的なことから始めて、徐々に大規模言語モデルやChatGPTに関連する用語や概念について深く議論していきます。 、比喩を使って説明します。同時に、これらのテクノロジーが何を意味するのか、そしてそれらのテクノロジーに何ができると期待すべきか、あるいは期待すべきでないかについても説明します。

2. 人工知能とは

まず、よく聞く基本的な用語から始めましょう。では、人工知能とは何でしょうか?

人工知能: 人間が知的であると考えるものと同様の動作を示すことができる存在を指します。 「知能」自体には明確な定義がないため、人工知能を定義するために「知能」を使用することにはいくつかの問題があります。ただし、この定義は依然として適切です。これは基本的に、興味深く、有用で、一見難しそうな動作を実行する人工物を見た場合、それらは知的であると言えるかもしれないことを意味します。たとえば、コンピュータ ゲームでは、コンピュータで制御されるキャラクターを「AI」と呼ぶことがよくあります。これらの役割のほとんどは、if-then-else コードに基づいた単純なプログラムです (例: 「プレイヤーが範囲内にいる場合は射撃し、そうでない場合は最も近い石に移動して隠れる」)。しかし、登場人物たちが明らかに愚かなことをせずに、私たちを惹きつけて楽しませてくれるのであれば、私たちは彼らが実際よりも複雑であると考えるかもしれません。

何かがどのように機能するかを理解すると、それが魔法のようなものであるとは思わないかもしれませんが、舞台裏ではもっと複雑なことが期待されています。それはすべて、舞台裏で何が起こっているかを私たちがどれだけ知っているかにかかっています。

重要な点は、人工知能は魔法ではないということです。魔法ではないので説明できます。

3. 機械学習とは

人工知能によく関連付けられるもう 1 つの用語は、機械学習です。

機械学習: データを収集し、モデルを形成し、そのモデルを実行することによって動作を作成する方法。複雑な現象 (言語など) を捕捉するために、大量の if-then-else ステートメントを手動で作成するのが難しい場合があります。この場合、大量のデータを検索し、データ内のパターンを見つけることができるアルゴリズムを使用してモデル化しようとします。

それでは、モデルとは何でしょうか?モデルは、複雑な現象を簡略化したものです。たとえば、自動車モデルは、実際の車の特性の多くを共有する、実際の車のより小型で単純なバージョンですが、もちろん、元のバージョンを完全に置き換えることを目的としたものではありません。モデルカーは本物のように見えるので、実験するときに役立ちます。

過剰解釈を避けるために大規模なモデルを導入する簡単かつ客観的な方法

より小型でシンプルな車を構築できるのと同じように、より小型でシンプルな人間の言語モデルも構築できます。これらのモデルは、使用する必要があるメモリ (ビデオ メモリ) の量の観点から非常に大きいため、「大規模言語モデル」という用語を使用します。 ChatGPT、GPT-3、GPT-4 など、現在生産されている最大のモデルは大規模なので、作成して実行するにはデータ センター サーバー上で実行されるスーパーコンピューターが必要です。

4. ニューラル ネットワークとは

データを通じてモデルを学習する方法は数多くあり、ニューラル ネットワークはその 1 つです。このテクノロジーは人間の脳の構造に大まかに基づいており、脳は相互接続された一連のニューロンで構成され、ニューロン間で電気信号を受け渡し、さまざまなタスクを完了することができます。ニューラル ネットワークの基本概念は 1940 年代に発明され、ニューラル ネットワークを訓練する方法の基本概念は 1980 年代に発明されました。当時、ニューラル ネットワークは非常に非効率でした。2017 年頃にコンピュータ ハードウェアがアップグレードされて初めて、ニューラル ネットワークを訓練する方法が実現されました。大規模に使用できます。

ただし、私は個人的には、ニューラル ネットワークをシミュレートするために回路のメタファーを使用することを好みます。抵抗、つまりワイヤを流れる電流を通じて、ニューラル ネットワークの動作をシミュレートできます。

高速道路を走行できる自動運転車を作りたいと想像してください。車の前後と側面に距離センサーを設置しました。距離センサーは、物体が近づくと値 1 を報告し、近くに検出可能な物体がない場合は値 0 を報告します。

ハンドル、ブレーキ、アクセルを操作するロボットも導入しました。スロットルが 1 の値を受け取ると、最大の加速が使用されますが、0 の値は加速がないことを意味します。同様に、ブレーキ機構に送信される値 1 は緊急ブレーキを意味し、0 はブレーキなしを意味します。ステアリング機構は -1 から 1 までの値を受け入れます。負の数は左に曲がり、正の数は右に曲がり、0 は直進を意味します。

もちろん、走行データを記録する必要があります。前方の道が空いている場合は、速度を上げます。前に車がいたら速度を落とします。左から車が近づきすぎると、右側に車がいないことを前提として、右にそれて車線変更します。このプロセスは非常に複雑で、さまざまなセンサー情報の組み合わせに基づいてさまざまな操作 (左折または右折、加速または減速、ブレーキ) が必要となるため、各センサーを各ロボット機構に接続する必要があります。

過剰解釈を避けるために大規模なモデルを導入する簡単かつ客観的な方法

道路を運転すると何が起こるでしょうか?すべてのセンサーからすべてのロボット アクチュエーターに電流が流れ、車両は左、右に曲がり、加速し、同時にブレーキをかけます。混乱が生じます。

過剰解釈を避けるために大規模なモデルを導入する簡単かつ客観的な方法

抵抗器を取り出して、回路のさまざまな部分に配置し始めて、特定のセンサーと特定のロボット アームの間で電流がより自由に流れるようにします。たとえば、ステアリング機構ではなく、フロント近接センサーからブレーキに電流がより自由に流れるようにしたいと考えています。また、スイッチをトリガーするのに十分な電荷が蓄積されるまで電流の流れを停止する (前後の近接センサーの両方が高い値を報告した場合にのみ電流を許可する)、またはスイッチをトリガーするのに十分な電荷が蓄積された場合にのみ電流が流れるようにする、ゲートと呼ばれる要素も取り付けました。入力パワー 強度が低いときに前方に電力を送ります(前方近接センサーが低い値を報告すると、より多くの電力をアクセルに送ります)。

しかし、これらの抵抗とゲートをどこに配置すればよいでしょうか?私にも分かりません。さまざまな場所にランダムに配置します。その後、もう一度試してください。もしかしたら、今回は車の運転が良くなったのかもしれません。つまり、データがブレーキとステアリングを行うのが最適であると示している場合に、ブレーキやステアリングを行うこともありますが、毎回正しく行われるわけではありません。さらに悪いこともいくつかあります(ブレーキが必要な場合があることをデータが示唆すると加速します)。そこで私たちは、抵抗とゲートのさまざまな組み合わせをランダムに試し続けました。最終的には、十分に優れた組み合わせを見つけて、成功を宣言します。たとえば、この組み合わせ:

過剰解釈を避けるために大規模なモデルを導入する簡単かつ客観的な方法

(実際には、ドアの追加や削除は行いませんが、より低いエネルギーで下から作動できるようにドアを変更します。より多くのエネルギーが下から出てくる必要があるか、下にエネルギーが非常に少ない場合にのみ大量のエネルギーが放出されるかのどちらかです。機械学習の純粋主義者はこの説明に不快感を感じるかもしれません。技術的には、これはチューニングによって行われます。これは、次のようなバイアスをかけて行われます。ゲート、これは通常そのような図には示されませんが、回路の比喩の観点からは、電源に直接接続され、他のすべてのワイヤと同様に動作できるケーブルとして考えることができます。ケーブルのように変更します。)

過剰解釈を避けるために大規模なモデルを導入する簡単かつ客観的な方法

#手当たり次第に試すのは良くありません。バックプロパゲーションと呼ばれるアルゴリズムは、回路構成の変更をかなり正確に推測します。アルゴリズムの詳細は重要ではありません。データが示唆するものに近づくように回路を微調整すること、そして何千回もの微調整の後、最終的にはデータと一致する結果が得られることだけを知っておいてください。

抵抗器とゲートは実際にはどこにでも存在し、逆伝播アルゴリズムでは各抵抗器がより強いか弱いかを宣言するため、これらをパラメータと呼びます。したがって、回路のレイアウトとパラメーター値がわかれば、回路全体を他の車両で複製することができます。

以上が過剰解釈を避けるために大規模なモデルを導入する簡単かつ客観的な方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。