Learn more about Search Results ML - Page 354

人間のフィードバックからの強化学習(RLHF)の説明

この記事は以下の言語に翻訳されています:中国語(簡体字)とベトナム語。他の言語に翻訳に興味がありますか?nathan at huggingface.co までお問い合わせください。 言語モデルは、過去数年間に人間の入力プロンプトから多様で魅力的なテキストを生成する能力を示してきました。しかし、「良い」テキストとは何かは、主観的で文脈に依存するため、本質的に定義するのは難しいです。創造性を求める物語の執筆などの多くのアプリケーションでは、真実であるべき情報の断片、または実行可能なコードのスニペットなどが必要です。 これらの属性を捉えるための損失関数を作成することは困難であり、ほとんどの言語モデルはまだ単純な次のトークン予測の損失(例:クロスエントロピー)で訓練されています。損失自体の欠点を補うために、人々はBLEUやROUGEなど、人間の優先順位をより適切に捉えるように設計されたメトリクスを定義しています。これらのメトリクスは、パフォーマンスを測定する上で損失関数自体より適しているものの、生成されたテキストを単純なルールで参照テキストと比較するだけなので、制約もあります。生成されたテキストに対する人間のフィードバックをパフォーマンスの指標として使用するか、さらに進んでそのフィードバックを損失としてモデルを最適化することができれば、素晴らしいことではないでしょうか?それが「人間のフィードバックによる強化学習(RLHF)」のアイデアです。強化学習の手法を使用して、言語モデルを人間のフィードバックで直接最適化するのです。RLHFにより、言語モデルは一般的なテキストデータのコーパスで訓練されたモデルを複雑な人間の価値に合わせることができるようになりました。 RLHFの最近の成功例は、ChatGPTでの使用です。ChatGPTの印象的な能力を考慮して、RLHFについて説明してもらいました: それは驚くほどうまくいっていますが、すべてをカバーしているわけではありません。それらのギャップを埋めましょう! 人間のフィードバックによる強化学習(RL from human preferencesとも呼ばれます)は、複数のモデルのトレーニングプロセスと異なる展開の段階を伴うため、難しい概念です。このブログ記事では、トレーニングプロセスを次の3つの主要なステップに分解します: 言語モデル(LM)の事前トレーニング データの収集と報酬モデルのトレーニング 強化学習によるLMの微調整 まず、言語モデルの事前トレーニングについて見ていきましょう。 言語モデルの事前トレーニング RLHFの出発点として、クラシカルな事前トレーニング目標で既に事前トレーニングされた言語モデルを使用します(詳細については、このブログ記事を参照してください)。OpenAIは、最初の人気のあるRLHFモデルであるInstructGPTに対して、より小さなバージョンのGPT-3を使用しました。Anthropicは、このタスクのためにトレーニングされた1,000万から520億のパラメータを持つトランスフォーマーモデルを使用しました。DeepMindは、2800億のパラメータモデルGopherを使用しました。 この初期モデルは、追加のテキストや条件で微調整することもできますが、必ずしも必要ではありません。たとえば、OpenAIは「好ましい」とされる人間が生成したテキストを微調整し、Anthropicは彼らの「助けになり、正直で無害な」基準に基づいて元のLMを蒸留することで、RLHFのための初期LMを生成しました。これらは共に、私が高価な増強データと呼ぶものの一部ですが、RLHFを理解するために必要なテクニックではありません。 一般的に、「どのモデル」がRLHFの出発点として最適かは明確な答えがありません。このブログ記事では、RLHFのトレーニングにおけるオプションの設計空間が完全に探索されていないという共通のテーマになります。 次に、言語モデルが必要なデータを生成して、人間の優先順位がシステムに統合される「報酬モデル」をトレーニングする必要があります。 報酬モデルのトレーニング 人間の優先順位に合わせてキャリブレーションされた報酬モデル(RM、優先モデルとも呼ばれます)を生成することは、RLHFの比較的新しい研究の出発点です。その基本的な目標は、テキストのシーケンスを受け取り、数値で人間の優先順位を表すべきスカラー報酬を返すモデルまたはシステムを取得することです。システムはエンドツーエンドのLMであるか、報酬を出力するモジュラーシステム(例:モデルが出力をランク付けし、ランキングが報酬に変換される)である場合があります。出力がスカラーの報酬であることは、既存のRLアルゴリズムが後のRLHFプロセスにシームレスに統合されるために重要です。 報酬モデリングのためのこれらの言語モデルは、別の微調整された言語モデルまたは好みのデータでスクラッチからトレーニングされた言語モデルのいずれかです。例えば、Anthropicは、これらのモデルを事前トレーニング(好みモデルの事前トレーニング、PMP)の後に初期化するために専門の微調整方法を使用しています。彼らは、これが微調整よりもサンプル効率が高いと結論付けましたが、報酬モデリングのバリエーションの中で明確な最良の選択肢はありません。…

機械学習におけるバイアスについて話しましょう!倫理と社会に関するニュースレター #2

機械学習におけるバイアスは普遍的であり、また複雑です。実際には、単一の技術的介入では問題を意味のある形で解決することはできないほど複雑です。機械学習モデルは社会技術システムであり、その展開コンテキストに依存し、常に進化しながら、不平等や有害なバイアスを悪化させる社会的な傾向を増幅させます。 これは、慎重に機械学習システムを開発するためには警戒心が必要であり、展開コンテキストからのフィードバックに対応することが求められます。これには、コンテキスト間での教訓の共有や、機械学習開発のあらゆるレベルでバイアスの兆候を分析するためのツールの開発などが必要です。 このブログポストでは、Ethics and Societyのメンバーが学んだ教訓と、機械学習におけるバイアスに対処するために開発したツールを共有しています。最初の部分では、バイアスとそのコンテキストについて幅広く考察しています。既に読んでいて、具体的にツールについて戻ってきた場合は、データセットやモデルのセクションに移動してください! 機械学習におけるバイアスに対処するために🤗のチームメンバーが開発したツールの一部を選択 目次: 機械バイアスについて 機械バイアス:機械学習システムからリスクへ バイアスをコンテキストに置く ツールと推奨事項 機械学習開発全体でのバイアスの対処 タスクの定義 データセットのキュレーション モデルのトレーニング 🤗のバイアスツールの概要 機械バイアス:機械学習システムから個人および社会的なリスクへ 機械学習システムは、さまざまなセクターやユースケースで展開されるため、以前に見たことのないスケールで複雑なタスクを自動化することができます。技術が最も効果的に機能する場合、人々と技術システムの間の相互作用をスムーズにし、高度に繰り返しの多い作業の必要性をなくしたり、研究をサポートするための情報処理の新しい方法を開放することができます。 しかし、同じシステムは、特にデータが人間の行動をエンコードする場合、差別的で虐待的な行動を再現する可能性があります。その結果、これらの問題は大幅に悪化する可能性があります。自動化とスケール展開は、次のようなことができます: 時間の経過とともに行動を固定化し、社会的な進歩が技術に反映されるのを妨げる オリジナルのトレーニングデータのコンテキストを超えて有害な行動を広める 予測を行う際にステレオタイプな関連性に過度に焦点を当てて不公平を増幅させる バイアスを「ブラックボックス」システム内に隠すことで救済の可能性を排除する これらのリスクをよりよく理解し対処するために、機械学習の研究者や開発者は、機械バイアスやアルゴリズムのバイアスなど、システムが展開コンテキストでさまざまな人口集団に対して負のステレオタイプや関連性をエンコードする可能性のあるメカニズムを研究し始めています。…

モデルカード

イントロダクション モデルカードは、機械学習モデルの理解、共有、改善のための重要なドキュメンテーションフレームワークです。適切に行われた場合、モデルカードは境界オブジェクトとして機能し、異なるバックグラウンドや目標を持つ人々(開発者、学生、政策立案者、倫理学者、機械学習モデルに影響を受ける人々など)がモデルを理解するためにアクセスできる単一のアーティファクトとなります。 今日、私たちはモデルカードの作成ツールとモデルカードガイドブックを発表しました。モデルカードの記入方法、ユーザースタディ、MLドキュメンテーションの最先端について詳しく説明しています。この作業は、他の多くの人々や組織によるものを基にしており、異なるバックグラウンドや役割を持つ人々の包括的な参加を重視しています。私たちは、これが改善されたMLドキュメンテーションの道筋となることを願っています。 要約すると、今日は以下のリリースを発表します: プログラムを必要とせずにカード作成を容易にするモデルカードクリエーターツール。さらに、異なるセクションの作業をチームで共有するための支援をします。 huggingface_hubライブラリでリリースされた更新されたモデルカードテンプレート。学界や業界全体でのモデルカードの作業をまとめています。 カードの記入方法を詳しく説明した注釈付きモデルカードテンプレート。 Hugging Faceでのモデルカードの使用に関するユーザースタディ。 モデルドキュメンテーションの最先端に関するランドスケープ分析と文献レビュー。 現在までのモデルカード モデルカードは、Mitchellらによって提案され、自然言語処理のデータステートメント(Bender&Friedman、2018)やデータセットのデータシート(Gebruら、2018)といった主要なドキュメンテーションフレームワークの努力に触発されています。機械学習ドキュメンテーションの領域は拡大し進化しており、データ、モデル、およびMLシステムのためのさまざまなドキュメンテーションツールやテンプレートが提案され、開発されてきました。これには、何百もの研究者、関係者、提唱者などの信じられないほどの研究成果が反映されています。また、MLドキュメンテーションと責任あるAIの変革理論との関係について重要な議論も、MLドキュメンテーションエコシステムの発展に影響を与えています。 ML内のドキュメンテーションにおけるこれまでの取り組みは、さまざまな対象に対応しています。私たちは、今日共有する作業でこれらのアイデアの多くを取り入れています。 私たちの取り組み 私たちの作業は、モデルカードの現在の状況と将来の展望を示しています。私たちは、成長するMLドキュメンテーションツールのランドスケープを広範に分析し、Hugging Face内でユーザーインタビューを行い、モデルカードに関する多様な意見を補完しました。また、Hugging Face HubのMLモデルに対してモデルカードを作成または更新し、これらの経験を基に新しいモデルカードのテンプレートを提案しています。 モデルカードの標準化 ガイドブックでさらに詳しく説明されている背景調査やユーザースタディを通じて、一般の人々が理解する「モデルカード」の新しい標準を確立することを目指しました。 これらの調査結果に基づいて、HFモデルカードの構造と内容を標準化するだけでなく、デフォルトのプロンプトテキストも提供する新しいモデルカードテンプレートを作成しました。このテキストは、モデルカードのセクションの執筆を支援するためのものであり、特にバイアス、リスク、制限のセクションに焦点を当てています。 アクセシビリティと包括性 モデルカードの作成における参加のハードルを下げるために、モデルカード作成ツールを設計しました。これは、グラフィカルユーザーインターフェース(GUI)を備えたツールであり、コーディングやマークダウンの使用を必要とせずに、さまざまなスキルセットや役割を持つ人々やチームが簡単に協力してモデルカードを作成できるようにします。 この作成ツールは、モデルカードをまだ作成していない人々に簡単に作成するように促し、以前にモデルカードを作成したことがある人々にはプロンプトされた情報を追加するように促します。同時に、倫理的な要素を重視します。…

グラフ機械学習の概要

このブログ投稿では、グラフ機械学習の基礎をカバーします。 まず、グラフの定義、使用目的、および最良の表現方法について学びます。次に、人々がグラフ上で学習する方法について簡単に説明し、ニューラルメソッド(グラフの特徴を同時に探索する)から一般的にグラフニューラルネットワークと呼ばれるものまでをカバーします。最後に、グラフのためのトランスフォーマーの世界を垣間見ます。 グラフ グラフとは何ですか? 基本的に、グラフは関係でリンクされたアイテムの記述です。 グラフの例には、ソーシャルネットワーク(Twitter、Mastodon、論文と著者をリンクする引用ネットワークなど)、分子、知識グラフ(UML図、百科事典、ページ間のハイパーリンクを持つウェブサイトなど)、文を構文木として表現したもの、3Dメッシュなどがあります。したがって、グラフはどこにでも存在すると言っても過言ではありません。 グラフのアイテム(またはネットワーク)をノード(または頂点)と呼び、それらの接続をエッジ(またはリンク)と呼びます。たとえば、ソーシャルネットワークでは、ノードはユーザーであり、エッジはその接続です。分子では、ノードは原子であり、エッジは分子結合です。 ノードまたはエッジに型が付いたグラフは異種と呼ばれます(例:論文または著者のいずれかとなるアイテムを持つ引用ネットワークには型付きノードがあり、関係に型が付いたXMLダイアグラムには型付きエッジがあります)。これは単にトポロジだけで表現することはできず、追加の情報が必要です。この投稿では同種のグラフに焦点を当てています。 グラフはまた、有向(フォローネットワークのように、AがBをフォローしていることがBがAをフォローしていることを意味しない)または無向(分子のように、原子間の関係が両方の方向に進む)になります。エッジは異なるノードを接続することも、ノード自体に接続することもできますが、すべてのノードが接続される必要はありません。 データを使用する場合、最初に最適な特性(同種/異種、有向/無向など)を考慮する必要があります。 グラフはどのように使用されますか? グラフで行う可能性のあるタスクの一覧を見てみましょう。 グラフレベルでは、主なタスクは次のとおりです: グラフ生成:新しい可能性のある分子を生成するために薬剤探索で使用されます グラフの進化(与えられたグラフが時間とともにどのように進化するかを予測する):物理学でシステムの進化を予測するために使用されます グラフレベルの予測(グラフからのカテゴリ化または回帰タスク):分子の毒性を予測するなど ノードレベルでは、通常はノードの特性予測が行われます。たとえば、Alphafoldは、分子の全体的なグラフからノードの特性予測を使用して原子の3D座標を予測し、分子が3D空間でどのように折りたたまれるかを予測します。これは難しい生化学の問題です。 エッジレベルでは、エッジの特性予測または欠損エッジの予測が行われます。エッジの特性予測は、薬物の副作用予測に使用され、一対の薬物に対して副作用を予測します。欠損エッジの予測は、推薦システムで使用され、グラフ内の2つのノードが関連しているかどうかを予測します。 サブグラフレベルでは、コミュニティの検出やサブグラフの特性予測などが行われます。ソーシャルネットワークでは、コミュニティの検出を使用して人々がどのように接続されているかを判断します。サブグラフの特性予測は、旅程システム(Googleマップなど)で推定到着時間を予測するために使用されます。 これらのタスクに取り組む方法は2つあります。 特定のグラフの進化を予測する場合、すべて(トレーニング、検証、テスト)を同じ単一のグラフ上で行う転移学習の設定で作業します。この場合、単一のグラフからトレーニング/評価/テストデータセットを作成することは容易ではありませんので注意してください。ただし、異なるグラフ(別々のトレーニング/評価/テストデータセット)を使用して作業することもあります。これは帰納的な設定と呼ばれます。 グラフはどのように表現されますか? グラフを処理および操作するための一般的な方法は次のいずれかです: すべてのエッジの集合として表現する(すべてのノードの集合と補完される場合もあります)…

ゲーム開発のためのAI:5日間で農業ゲームを作成するパート1

AIゲーム開発へようこそ! このシリーズでは、AIツールを使用してわずか5日間で完全な機能を備えた農業ゲームを作成します。このシリーズの終わりまでに、さまざまなAIツールをゲーム開発のワークフローに組み込む方法を学ぶことができます。以下のようにAIツールを使用する方法を示します: アートスタイル ゲームデザイン 3Dアセット 2Dアセット ストーリー クイックビデオバージョンが必要ですか? こちらでご覧いただけます。それ以外の場合は、技術的な詳細をお読みください! 注意:このチュートリアルは、Unity開発とC#に精通している読者を対象としています。これらの技術に初めて触れる場合は、続ける前に「初心者向けUnityシリーズ」をご覧ください。 Day 1: アートスタイル ゲーム開発プロセスの最初のステップはアートスタイルを決定することです。農業ゲームのアートスタイルを決定するために、Stable Diffusionというツールを使用します。Stable Diffusionは、テキストの説明に基づいて画像を生成するオープンソースのモデルです。このツールを使用して、ゲームのビジュアルスタイルを作成します。 Stable Diffusionのセットアップ Stable Diffusionを実行するためのいくつかのオプションがあります:ローカルまたはオンラインです。デスクトップで十分なGPUを搭載しており、完全な機能を備えたツールセットを使用したい場合は、ローカルをお勧めします。それ以外の場合は、オンラインソリューションを実行できます。 ローカル Stable Diffusionをローカルで実行するためには、Automatic1111 WebUIを使用します。これは、Stable…

ゲーム開発のためのAI:5日間で農業ゲームを作成するパート2

ゲーム開発のためのAIへようこそ!このシリーズでは、AIツールを使用してわずか5日間で完全な機能を備えた農業ゲームを作成します。このシリーズの終わりまでに、ゲーム開発のワークフローにさまざまなAIツールを組み込む方法を学ぶことができます。以下に挙げる項目について、どのようにAIツールを使用できるかを紹介します。 アートスタイル ゲームデザイン 3Dアセット 2Dアセット ストーリー クイックビデオバージョンがほしいですか? こちらでご覧いただけます。それ以外の場合は、技術的な詳細を読み続けてください! 注意:このチュートリアルは、Unity開発とC#に精通している読者を対象としています。これらの技術に慣れていない場合は、続ける前に「Unity for Beginners」シリーズをチェックしてください。 2日目:ゲームデザイン このチュートリアルシリーズのパート1では、AI for Art Styleを使用しました。具体的には、Stable Diffusionを使用してコンセプトアートを生成し、ゲームのビジュアルスタイルを開発しました。 このパートでは、ゲームデザインのためのAIを使用します。The Short Versionでは、ChatGPTをゲームアイデアの開発ツールとして使用した方法について説明します。しかし、もっと重要なのは、ここで実際に何が起こっているのかです。ゲーム開発における言語モデルとその広範な使用法についての背景については、読み続けてください。 The Short Version 簡単なバージョンはシンプルです。ChatGPTにアドバイスを求め、自己責任でそのアドバイスに従ってください。農業ゲームの場合、私はChatGPTに次のように尋ねました。…

3Dアセット生成:ゲーム開発のためのAI#3

ゲーム開発のためのAIへようこそ! このシリーズでは、AIツールを使用してわずか5日間で完全な機能を備えた農業ゲームを作成します。このシリーズの終わりまでに、さまざまなAIツールをゲーム開発のワークフローに組み込む方法を学ぶことができます。以下のようにAIツールを使用する方法を紹介します: アートスタイル ゲームデザイン 3Dアセット 2Dアセット ストーリー 短いビデオバージョンが欲しいですか?こちらでご覧いただけます。それ以外の場合は、技術的な詳細を知りたい場合は読み続けてください! 注意:このチュートリアルは、Unity開発とC#に精通している読者を対象としています。これらの技術に初めて触れる方は、続ける前に「初心者向けUnityシリーズ」をご覧ください。 Day 3: 3Dアセット このチュートリアルシリーズの第2部では、ゲームデザインのためのAIを使用しました。具体的には、ChatGPTを使用してゲームのデザインをブレインストーミングしました。 このパートでは、AIを使用して3Dアセットを生成する方法について説明します。簡単な答えは「できません」です。テキストから3Dへの変換は、現在のところ実用的にゲーム開発に適用することはできません。ただし、それは非常に速く変わっています。続けて読んで、テキストから3Dへの現在の状態、なぜそれがまだ役に立たないのか、そしてテキストから3Dの未来について学びましょう。 テキストから3Dへの現在の状態 第1部で説明したように、Stable Diffusionなどのテキストから画像への変換ツールは、ゲーム開発のワークフローで非常に役立ちます。しかし、テキストから3D、つまりテキストの記述から3Dモデルを生成することに関しては、最近この分野で多くの進展がありました: DreamFusionは2D拡散を使用して3Dアセットを生成します。 CLIPMatrixとCLIP-Mesh-SMPLXは直接テクスチャ付きメッシュを生成します。 CLIP-Forgeは言語を使用してボクセルベースのモデルを生成します。 CLIP-NeRFはテキストと画像でNeRFを制御します。 Point-EおよびPulsar+CLIPは言語を使用して3Dポイントクラウドを生成します。 Dream TexturesはBlenderでシーンのテクスチャを自動的に生成するためのテキストから画像への変換を使用します。…

Optimum+ONNX Runtime – Hugging Faceモデルのより簡単で高速なトレーニング

はじめに 言語、ビジョン、音声におけるトランスフォーマーベースのモデルは、複雑なマルチモーダルのユースケースをサポートするためにますます大きくなっています。モデルのサイズが増えるにつれて、これらのモデルをトレーニングし、サイズが増えるにつれてスケーリングするために必要なリソースにも直接的な影響があります。Hugging FaceとMicrosoftのONNX Runtimeチームは、大規模な言語、音声、ビジョンモデルのファインチューニングにおいて進歩をもたらすために協力しています。Hugging FaceのOptimumライブラリは、ONNX Runtimeとの統合により、多くの人気のあるHugging Faceモデルのトレーニング時間を35%以上短縮するオープンなソリューションを提供します。本稿では、Hugging Face OptimumとONNX Runtimeトレーニングエコシステムの詳細を紹介し、Optimumライブラリの利点を示すパフォーマンスの数値を提示します。 パフォーマンスの結果 以下のチャートは、Optimumを使用したHugging Faceモデルのパフォーマンスを示しており、トレーニングにONNX RuntimeとDeepSpeed ZeRO Stage 1を使用することで、39%から130%までの印象的な高速化が実現されています。パフォーマンスの測定は、ベースライン実行としてPyTorchを使用した選択されたHugging Faceモデルで行われ、2番目の実行ではトレーニングのためにONNX Runtimeのみを使用し、最終的な実行ではONNX Runtime + DeepSpeed ZeRO Stage…

どのような要素が対話エージェントを有用にするのか?

ChatGPTの技術:RLHF、IFT、CoT、レッドチーミング、およびその他 この記事は、中国語の簡体字で翻訳されています。 数週間前、ChatGPTが登場し、一連の不明瞭な頭字語(RLHF、SFT、IFT、CoTなど)が公衆の議論を巻き起こしました。これらの不明瞭な頭字語は何であり、なぜそれらが重要なのでしょうか?私たちはこれらのトピックに関する重要な論文を調査し、これらの作品を分類し、達成された成果からの要点をまとめ、まだ示されていないことを共有します。 まず、言語モデルに基づく会話エージェントの現状を見てみましょう。ChatGPTは最初ではありません。実際、OpenAIよりも前に、MetaのBlenderBot、GoogleのLaMDA、DeepMindのSparrow、およびAnthropicのAssistant(このエージェントの完璧な帰属なしでの継続的な開発はClaudeとも呼ばれています)など、多くの組織が言語モデルの対話エージェントを公開しています。一部のグループは、オープンソースのチャットボットを構築する計画を発表し、ロードマップを公開しています(LAIONのOpen Assistant)。他のグループも確実に同様の作業を進めており、まだ発表していないでしょう。 以下の表は、これらのAIチャットボットを公開アクセス、トレーニングデータ、モデルアーキテクチャ、および評価方向の詳細に基づいて比較しています。ChatGPTには文書化された情報がないため、代わりにChatGPTの基礎となったと信じられているOpenAIの指示fine-tunedモデルであるInstructGPTの詳細を共有します。 トレーニングデータ、モデル、およびファインチューニングには多くの違いがあることが観察されますが、共通点もあります。これらのチャットボットの共通の目標は、ユーザーの指示に従うことです。たとえば、ChatGPTに詩を書くように指示することなどです。 予測テキストから指示の従属へ 通常、ベースモデルの言語モデリング目標だけでは、モデルがユーザーの指示に対して有益な方法で従うことを学ぶには十分ではありません。モデル開発者は、指示の細かいチューニング(IFT)を使用して、ベースモデルを、感情、テキスト分類、要約などの古典的なNLPタスクのデモンストレーションによって微調整し、非常に多様なタスクセットにおける指示の書かれた方針を学びます。これらの指示のデモンストレーションは、指示、入力、および出力の3つの主要なコンポーネントで構成されています。入力はオプションです。一部のタスクでは、ChatGPTの例のように指示のみが必要です。入力と出力が存在する場合、インスタンスが形成されます。特定の指示に対して複数の入力と出力が存在する場合もあります。以下に[Wang et al.、’22]からの例を示します。 IFTのデータは通常、人間によって書かれた指示と言語モデルを用いた指示のインスタンスのコレクションからなります。ブートストラップのために、LMは(上記の図のように)いくつかの例を使用してフューショット設定でプロンプトされ、新しい指示、入力、および出力を生成するように指示されます。各ラウンドで、モデルは人間によって選択されたサンプルとモデルによって生成されたサンプルの両方からプロンプトを受け取ります。データセットの作成における人間とモデルの貢献の割合はスペクトラムです。以下の図を参照してください。 一方は完全にモデル生成されたIFTデータセットであり、例えばUnnatural Instructions(Honovich et al.、’22)です。もう一方は手作りの指示の大規模な共同作業であり、Super-natural instructions(Wang et al.、’22)などです。これらの間には、Self-instruct(Wang et al.、’22)のような、高品質のシードデータセットを使用してブートストラップする方法もあります。IFTのデータセットを収集するもう1つの方法は、さまざまなタスク(プロンプトを含む)の既存の高品質なクラウドソーシングNLPデータセットを統一スキーマや多様なテンプレートを使用して指示としてキャストすることです。この研究の一環には、T0(Sanh et al.、’22)、自然言語指示データセット(Mishra et…

効率的で安定した拡散微調整のためのLoRAの使用

LoRA:Large Language Modelsの低ランク適応は、Microsoftの研究者によって導入された新しい技術で、大規模言語モデルの微調整の問題に取り組むためのものです。GPT-3などの数十億のパラメータを持つ強力なモデルは、特定のタスクやドメインに適応させるために微調整することが非常に高価です。LoRAは、事前学習済みモデルの重みを凍結し、各トランスフォーマーブロックにトレーニング可能な層(ランク分解行列)を注入することを提案しています。これにより、トレーニング可能なパラメータとGPUメモリの要件が大幅に削減されます。なぜなら、ほとんどのモデルの重みの勾配を計算する必要がないからです。研究者たちは、大規模言語モデルのトランスフォーマーアテンションブロックに焦点を当てることで、LoRAと完全なモデルの微調整と同等の品質を実現できることを発見しました。さらに、LoRAはより高速で計算量が少なくなります。 DiffusersのためのLoRA 🧨 LoRAは、当初大規模言語モデルに提案され、トランスフォーマーブロック上でデモンストレーションされたものですが、この技術は他の場所でも適用することができます。Stable Diffusionの微調整の場合、LoRAは画像表現とそれらを説明するプロンプトとの関連付けを行うクロスアテンションレイヤーに適用することができます。以下の図(Stable Diffusion論文から引用)の詳細は重要ではありませんが、黄色のブロックが画像とテキスト表現の関係を構築する役割を担っていることに注意してください。 私たちの知る限りでは、Simo Ryu(@cloneofsimo)がStable Diffusionに適応したLoRAの実装を最初に考案しました。興味深いディスカッションや洞察がたくさんあるGitHubのプロジェクトをご覧いただくために、彼らのGitHubプロジェクトをぜひご覧ください。 クロスアテンションレイヤーにLoRAトレーニング可能行列を深く注入するために、以前はDiffusersのソースコードを工夫(しかし壊れやすい方法)してハックする必要がありました。Stable Diffusionが私たちに示してくれたことの一つは、コミュニティが常に創造的な目的のためにモデルを曲げて適応する方法を見つけ出すことです。クロスアテンションレイヤーを操作する柔軟性を提供することは、xFormersなどの最適化技術を採用するのが容易になるなど、他の多くの理由で有益です。Prompt-to-Promptなどの創造的なプロジェクトには、これらのレイヤーに簡単にアクセスできる方法が必要です。そのため、ユーザーがこれを行うための一般的な方法を提供することにしました。私たちは昨年12月末からそのプルリクエストをテストしており、昨日のdiffusersリリースと共に公式にローンチしました。 私たちは@cloneofsimoと協力して、Dreamboothと完全な微調整方法の両方でLoRAトレーニングサポートを提供しています!これらの技術は次の利点を提供します: 既に議論されているように、トレーニングがはるかに高速です。 計算要件が低くなります。11 GBのVRAMを持つ2080 Tiで完全な微調整モデルを作成できました! トレーニングされた重みははるかに小さくなります。元のモデルが凍結され、新しいトレーニング可能な層が注入されるため、新しい層の重みを1つのファイルとして保存できます。そのサイズは約3 MBです。これは、UNetモデルの元のサイズの約1000分の1です。 私たちは特に最後のポイントに興奮しています。ユーザーが素晴らしい微調整モデルやドリームブーストモデルを共有するためには、最終モデルの完全なコピーを共有する必要がありました。それらを試すことを望む他のユーザーは、お気に入りのUIで微調整された重みをダウンロードする必要があり、膨大なストレージとダウンロードコストがかかります。現在、Dreamboothコンセプトライブラリには約1,000のDreamboothモデルが登録されており、おそらくさらに多くのモデルがライブラリに登録されていません。 LoRAを使用することで、他の人があなたの微調整モデルを使用できるようにするためのたった1つの3.29 MBのファイルを公開することができるようになりました。 (@mishig25への感謝、普通の会話で「dreamboothing」という動詞を使った最初の人です)。…

Find the right Blockchain Investment for you

Web 3.0 is coming, whether buy Coins, NFTs or just Coding, everyone can participate.

Advertising with us