WizardLMの解説です。
公開日:2023年4月27日
※動画を再生してから読むのがオススメです。
WorldofAIのYouTubeビデオにまたまたようこそ。
今日のビデオでは、WizardLMという新しいプロジェクトを紹介します。これは大規模な言語モデルを強化することを目的としたエキサイティングな新しいプロジェクトで、これは複雑な指示に従う能力を向上させるというものです。
OpenAIのChatGPTのような言語モデルはすでに印象的な言語生成能力を示し、それが人工知能を用いてどのように実現されているかの能力を見ることができます。
しかし、指示に従う能力は、これらのモデルにとってユニークな挑戦となります。
複雑さのレベルが異なる大量の命令データを作るのは、かなり時間と手間がかかる。
また、人間は複雑性の高い命令の作成に苦労することがあり、これはOpenAIのような異なるモデルでも見られることです。
そこで、LLMそのものを使って命令データを生成するという解決策が提案されています。
これは、本プロジェクトの研究者が構築したEvolveInstructというメソッドで行います。
これにより、LLMの微調整に使われる命令データを進化させることができ、WizardLMというプロジェクトが誕生しました。
今日のビデオでは、実際にどのようにできるかをデモします。
このプロジェクトが何を達成しようとしているのか、その利点や制約、そしてChatGPTとWizardLMのデータの複雑さや文脈生成に関する深い比較を見ていきたいと思います。
もしまだ私の過去のビデオをご覧になったことがなければ、ぜひご覧になってください。
多くのコンテンツがあり、多くの価値から間違いなく利益を得ることができます。
もし、まだ購読していないなら、購読して、通知ベルをオンにして、このビデオに「いいね!」してください、本当に、本当に感謝します。
それでは、さっそくビデオに入りましょう。
では、実際にどのように彼らのアプローチを貫いているのでしょうか?
さて、提案されたEvolveInstructは、主に2つのコンポーネントで構成されています。それは、Instruction InvolverとInstruction Filterです。
インストラクション・インボルバは、LLMを使って難易度の異なるオープンドメイン命令を大量に生成する役割を担っています。
制約の追加、深化、批判、推論ステップの増加、複雑な入力という5種類の操作で、深化進化を実現するのです。
また、与えられた課題に基づいて複雑な新しい命令を生成するインブレッド・エボルビングも同様です。
この図で示されているアプローチで、最初の指示から始めて、深さ優先進化で5種類の操作に焦点を当てたさまざまなことを行っていくことができます。
これらの制約は、基本的に、与えられた最初の指示に役立つさまざまなことに焦点を当て、そのために複雑な答えを見ることによって、答えを進化させるさまざまな方法を探ります。
そして、これはすべてLLMを活用することによって行われます。
そして、素晴らしいのは、それがインストラクションプールに送られ、基礎となるLLMを洗練させるということです。
この場合、Alpacaを使っていると思いますが、そのパラメータは80億しかなく、これは後ほどお話しする制限の一つです。
しかし、ChatGPTのようなLLMと比較して、答えの複雑さが非常に印象的なので、さまざまなサイズのLLMに活用できる素晴らしいタイプのモデルです。
この点については、後ほどビデオで見ていきます。
この図から、進化を排除することがあり、関連するデータを取り除くことがあることがわかります。これらはすべて、指示プールに送られます。
そして、このアプローチではWizardLMの作成でそれを見ることができます。
さて、このことについてもう少し詳しく説明する別の図をお見せしましょう。
ここでは、進化指示法のフローチャートがありますが、これは、異なるLLMを使用して、開放ドメイン指示を自動的に生成し、難易度を変える方法です。
この場合、プロセスは最初の1プラス1の指示から始まり、それを深さ優先進化または幅優先進化の2種類の選択に送り出して、最初の指示をより複雑なタスクにアップグレードします。
そして、この実際の図では、5種類のオペレーションを利用していることもわかります。
そして、これらのオペレーションは、LLMに特定のプロンプトを出すことで実行されます。
さて、一方、インブレッド・エボルビングは、最初に与えた命令に基づいて、まったく新しい複雑な命令を生成します。
これは、WizardLMのような別のシステムで実現しようとしている複雑なタスクを、実際に進めていくための非常にユニークな方法です。
このように、1+1などの簡単なマニュアルを解くことで、私自身は非常に高度だと感じています。
このような簡単な質問で、定義された、そして洗練された答えを得ることができるのです。
また、この場合、ちょっと関係ないかもしれませんが、さまざまなタイプの基本的な答えを排除することで、アプローチすることもあります。
しかし、私が考える唯一の限界は、そのために多くのハードウェアとトークンを利用していることです。
ですから、実際のアプローチの妨げになり得るのは、その点だけかもしれません。
しかし、このような単純な作業には使いたくないものです。
非常に難しい問題を複雑に解決し、最適な生成解を得るために使用したいものです。
このように、様々なことに利用することができるのです。
前回お話したように、WizardLMは命令に従うタスクのための大規模言語モデルの分野において、いくつかの利点を提供します。
さて、私が考えることができた主な利点の1つは、複雑さのレベルが異なるオープンドメインの命令について、大量のオープンデータを生成することができるということです。
しかも、これは自動化された方法で、人間による時間のかかる手動の作成は必要ありません。
そしてこれは、LLMを活用して複雑さと多様性のレベルが異なる命令を生成する、同社のEvolve Instructメソッドを使うことで明らかに達成されます。
つまり、単にそれを受けて、より効率的で効果的なものにするだけでなく、課題を解決するための有益な方法で、そのような複雑な答えを得ることができるのです。
さてさらに、私はWizardLMがLLMや命令追従タスクのパフォーマンス向上において有望な結果を示しているとも考えてきました。
WizardLMの評価を見れば一目瞭然です。
WizardLMは、AlpacaやVaikunasの70億パラメータよりもはるかに優れた結果を出しています。
これは、彼らの実際の論文にも書かれていることです。
ChatGPT、Alpaca、Vaikunasの3種類のLLMベースラインで実験しています。
また、実験の詳細には、トレーニングデータや、実際にこの数値に近づくためのウェイトなども含まれています。
ですから、この論文を読んで、彼らが実際にどのようにアプローチしたのか、より深く理解することを強くお勧めします。
さて、このような素晴らしいプロジェクトには、当然ながら何らかの制約があるはずです。
なぜなら、WizardLMは非常に多くの利点を提供しますが、考慮すべきいくつかの限界もあるからです。
その1つは、WizardLMがChatGPTに遅れをとっていることです。
これは多くの点で実際にそうであり、基本的にはこのシステムを少し改善するために必要となるさらなる改善を示しています。
これは、WizardLMがChatGPTと比較して実際のトークン・サイズが大きいためです。
この論文では、Wizard LMの訓練に使用したデータセットのサイズについて、具体的な詳細を提供することをあまり強調していません。
しかし、WizardLMの微調整プロセスでは、さまざまなレベルの複雑さを持つ生成された命令データを混合して使用していることに触れています。
この論文で参照されているOpenAIのChatGPTモデルと比較して、Wizard LMのトレーニングデータセットのサイズは80億にすぎないのに対し、ChatGPTは非常に大きく、何兆もの規模だということがわかります。
つまり、チームの規模や提供されるリソースが小さいため、トレーニングの規模は明らかに異なるのです。
彼らの主な目的は、ChatGPTが達成しようとしていることを再現することではなく、指示ベースのモデルに沿って、より複雑な回答を効率的に生成できるようにすることです。
次に、ビデオの次のステップに進み、ChatGPTと比較して、複雑なデータや生成内容の点でどのように異なるかを実例で示します。
研究チームは実際に様々な要素に着目し、アカデミックライティングのスキルレベルについて話し、コード生成に着目し、最後にもう一つ、スポーツにも着目していたと思いますね。
このように、難解で複雑な課題に対する答えを開発する際に、実際に比較することができるのです。
この場合、与えられたデータなどをもとに、テーブルのLaTeXコードを生成する方法を指示しており、これによって、実際の指示内容を非常に複雑かつ正確に把握することができます。
そして、ChatGPTと比較すると、同じような結果は得られません。これは、コード生成と同じ原因であり、同じ考えです。
C++を使って簡単なバージョン管理システムを書くように頼むと、WizardLMが非常に複雑で詳細な回答と対応を生成できることがわかります。
一方、ChatGPTはそのような答えを出すことができません。
このように、さまざまなタイプの例で見ることができます。
もちろん、ChatGPTの方が優れている場合もありますが、複雑な回答や指示の場合、Wizard LMで最適な回答が得られることがほとんどです。
そこで、ChatGPTと比較して、wizard LLMで実際に複雑なアプローチをどのように活用できるかを、少しテストしてみたいと思います。
あ、私自身は、ウィザードLMで基本的に詳細なレスポンスがどのように出力されるかを比較しようとしただけなんですけどね。
基本的には、最初の月面ミッションとそれが社会に与えた影響に関する詳細な物語を書くように頼んだところ、かなり詳細な回答が得られました。
ChatGPTにも聞いてみたのですが、こちらも検索やデータの活用ができるので、良い答えが返ってきました。
しかし、私は、このユースケースは、よりインストラクション、より詳細なインストラクションベースのプロンプトに適していると考えています。
例えば、会計ソリューションのように、さまざまなことを尋ねる場合、私はそれを試してみただけなのです。
この場合、私はそれに、この問題を私のために解決できますか、と尋ねるようなことをしましたが、基本的にシステムは、前述のフレームワークを使用して解決するアプローチを取ります。
そして、これをChatGPTに与えたとしても、指示ベースの複雑な問題を作成することはできません。
これは、特定のことができる一方で制限もあるのに対し、WizardLMは私たちが話したフレームワークのおかげで実際に問題解決に取り組むことができるためです。
これは、このプロジェクトの素晴らしい点のひとつです。
最後に、良いお知らせではないですが、注目すべき点として、これは研究論文や研究目的のためのものであり、現時点では商用目的で使用することはできません。
後々、継続的に実現に向けて取り組んでいくものなんです。
このプロジェクトは、大規模な言語モデルを微調整するという意味で、非常に画期的なものになると思いますので、皆さん、注目しておいてください。
このビデオ、参考になりましたでしょうか?
多くの異なる大規模言語モデルの微調整という点で、かなり革命的なものになるはずです。
このビデオはとても参考になると思います。
もし、私の過去のビデオをチェックしたいのであれば、間違いなく有益なコンテンツがたくさんあります。
それでは、また次回もよろしくお願いします。
では、また。
素晴らしい一日をお過ごしください。