2 ポイント 投稿者 GN⁺ 2023-07-22 | 1件のコメント | WhatsAppで共有
  • LLaMA2は商用利用とモデル出力の活用に制約があり、従来のオープンソースの定義には当てはまらないが、AIモデル領域ではオープンソース概念そのものの再進化が必要
  • リリース時点で700M MAU以上のサービスでの商用利用禁止、モデル出力を他のLLM学習に使うことの禁止など、OSSの精神と衝突する制約が存在
  • ソフトウェアの歴史で"free software" → "open source" → "source available"へと意味が変化してきたように、AIでも"open source"はダウンロード可能な重みを意味する言葉として通用している
  • モデル公開のレベルは Open models、Open weights、Restricted weights、Contaminated weights に分類され、LLaMA2は Restricted weights に該当
  • 最初から再学習可能な完全なオープンソースはコストの問題で非現実的であり、Metaが約$2M規模の計算量を公開したことは分野の発展にとってプラス

LLaMA2と「オープンソース」用語をめぐる論争

  • LLaMA2公開当時、多くのOSSコミュニティ関係者が、モデルに対して"open source"という用語を誤用しているとして不満を表明
  • モデルは概ね開放的だが、明確な制約が存在
    • リリース日時点で MAU 700M超の事業者はモデルを商用利用できない
    • モデル出力を他の大規模言語モデルの学習に使うことはできない
  • こうした制約は**オープンソースの精神(OSS ethos)**と整合しにくく、従来の意味でのオープンソースとは呼べない
  • ただし、それはそれほど重要ではないという立場であり、AIモデル時代には"open source"という用語が再び進化する必要がある

From Free to Open — 「自由」から「開放」へ

  • 1976年の"Open Letter to Hobbyists"以後、ソフトウェア企業の商業的利害と、制約を迂回しようとするハッカーたちの好奇心の間には緊張関係が存在してきた
  • "free software"運動は1970年代のMIT AI labでRichard Stallmanとともに始まり、1983年のGNUプロジェクトへとつながった
    • GPLの"copyleft"ライセンスが誕生し、Red Hat、MySQL、Git、Ubuntuが採用
  • "open source"という用語は1998年、MITのChristine Petersonによって生まれた
    • "Freeware Summit"で"free software"は正式に廃され、"open source software"に置き換えられた
  • その後、"free"と"open source"のコミュニティは意味解釈の違いによって分岐
    • Free Software Foundationが定義する free software は open source の部分集合であり、GPL、Apacheのような非常に寛容なライセンスを用いる
  • この10年で、商用オープンソース企業とクラウドのハイパースケーラーの緊張関係により、再び分岐が生じた
    • ElasticとMongoDBはSSPL(Server-Side Public License)へ移行し、ホスティング版の提供でない限り商用利用を許可
    • 目的は、AWSが製品をクラウドサービスとして再ホスティングし、収益化するのを防ぐこと
    • SSPLはOSSの枠を超えて制約を加えるため、OSIはオープンソースライセンスとして認めていない
    • それにもかかわらず、多くの開発者はいまなおMongoDBをオープンソースと呼んでいる
  • "open source"は自由(freedom)の含意を徐々に失い、開発者の認識の中では"source available"とほぼ同義へと変化しつつある

From Source to Weights — 「ソース」から「重み」へ

  • Dolly、MPT、LLaMAのような open model の台頭により、コミュニティ内で同様の分岐が起きている
  • 今日の多くのAIエンジニアにとって、"open source"とは**ダウンロード可能な重み(downloadable weights)**以上でも以下でもない
  • Heather Meekerが"open weights"の定義を提案したが、まだコミュニティの合意はない
  • 核心的な争点は、open weights だけでモデルをオープンソースと呼べるのかどうか
    • ソフトウェアにたとえるなら、最初から再ビルドできるソースコードなしにバイナリだけを公開するのと同じ
  • 最初から再学習可能な真のオープンソースにするには、学習コード、事前学習データセット、ファインチューニング用の選好データ、RLHFの例など、すべてを公開する必要がある
    • 問題は学習コストであり、すべて公開されていたとしても、大半の開発者や企業にとって最初から学習するのはコスト面で不可能
    • 結局、最終的な重みへのアクセスだけでも歓迎される

モデル公開レベルの4段階分類

  • Open models: RedPajama、MPT-7B などで、Apache 2.0ライセンスの下で商用利用可能な open weights を提供
    • データセットもオープンソースで、最初から再学習できる
  • Open weights: StabilityAIが学習したStableLMが該当し、重みはApache 2.0で公開されているが、学習データセットは非公開
    • READMEによれば、The Pileをベースに構築した新しい実験用データセットで事前学習されており、約1.5Tトークンで約3倍の規模
  • Restricted weights: LLaMA2が該当し、事前学習データセットは非公開で、重みは商用利用可能とされるが前述の特定の制限がある
  • Contaminated weights: Dolly 1.0、LLaMA1が該当し、重みは公開されているが、学習データセットが商用利用を許可していないため、技術的には開放されていても実質的には使えない

結び — 開放が向かう方向

  • 当面は open source と open weights が混用され続けるだろうが、それでも構わないという立場
  • 重要なのは、この取り組みがますます**可能な限りオープンに(as openly as possible)**行われるようになっている点
  • LLaMA2のライセンスに失望するのは自然だが、Metaが約**$2M相当のFLOPS**をGitHubリポジトリとして公開したことは、この分野の前進にとってプラス(net positive)

1件のコメント

 
GN⁺ 2023-07-22
Hacker Newsの意見
  • 文章のすぐ上で LLaMA を制限付き重みのカテゴリに入れておきながら、今後はオープンソースと公開重みが互換的に使われるようになると言うのはおかしい。
    著者が提案した定義で見ても、LLaMA 2.0はオープンソースではなく、そう呼ぶべきでもない。
    LLM 分野でオープンソースが「重みを入手できる」という意味で、利用制限は関係ないという意味なら、それは新しい文脈に合わせた用語の変化というより、Open Source の意味を安っぽくしているのに近いと思う。
    LLaMA は公開重みでもなく、せいぜいソース公開型ソフトウェアと比較できる、閉じた独占的な重みの束にすぎない。
    Facebook が LLaMA をオープンソースと呼ぶのは欺瞞的で、そのストーリーに乗るべきではない。
    重みに著作権が成立し得るかどうか自体は別の議論で、個人的には成立しないと思っている。

    • 元記事の著者だが、LLaMA2 はオープンソースではないという点に同意する。タイトルも元々そう書いていて、HN のタイトルが変わったものだ。
      ただ、普通の人たちはよく分かっていないので今後も「オープンソース」と呼び続けるだろうし、それを正すのは難しい、というのが要旨だった。
      「これはオープンソースではない」と言うだけでなく、より良い用語を作る必要がある。
      また、重みの利用は制限されていても、公開されている計算投資の規模は非常に大きい。学習トークン対パラメータ比が 285:1 で、損失グラフを見るとモデルがまだ飽和していないことも分かる。
      自分たちのモデルを学習させようとしている他のチームには価値のある情報だ。
      LLaMA1 は非常に制限が強かったが、論文に示されたデータ構成は RedPajama を生み、それは MPT の学習に使われた。
      従来のラベルに合わなくても、こうした取り組みからオープンソースへ流れ込む価値はまだ多い。
  • llama のライセンスが、出力を別のモデルの学習に使うことを禁止しているとは知らなかった。
    これは実質的に致命的な制約だ。今後は合成データが最も重要な学習データになるはずで、新しいモデルの学習に合成データを使うことを妨げるモデルは、大きく損なわれたモデルだ。

    • この分野の大手プレイヤーたちが、次の 2 つの考えを同時に一貫した立場だと見なしているのは笑える。
      アクセス可能だという理由だけで、許可やライセンスなしに任意のインターネットデータでモデルを学習するのはよいが、我々のモデルで別のモデルを学習するのはだめ、というわけだ。
    • 今の市場にあるほぼすべての AI 企業を潰さずに、こうした条項を法的に執行できるのか分からない。
      これらのモデルの法的前提は、著作権のある資料で学習することがフェアユースだというものだ。
      そうでないなら、Facebook は著作者の意向にかかわらずデータセットに著作権資料を含めることはフェアユースではない、と主張するつもりなのだろうか? だとすれば LLaMA には悪い知らせだ。
      「これで学習するには許可が必要だ」という立場は、どの AI 企業が取っても興味深い法的ポジションだ。
    • あまりに偽善的で呆れる。
      「我々はインターネットのかなりの部分を許可なく学習するが、我々のモデルの出力で学習するのは我々の許可なしには夢にも思うな!」ということだ。
      OpenAI も似たような制限を設けている。
    • 根本的に間違っているのに、これがトップコメントなのは気が滅入る。
      モデルの出力で別のモデルを学習することはできず、そうすると完全なデタラメにつながる。これはモデル崩壊と呼ばれる: https://arxiv.org/abs/2305.17493v2
      そして Llama 2 のライセンスは、ユーザーが派生モデルを学習することを認めている。人々が本当に気にしている部分はこちらだ: https://github.com/facebookresearch/llama/blob/main/LICENSE
    • それでも、それを執行するのは難しそうだ。いったいどうやって分かるというのか?
  • これは特に新しい問題ではない。ソフトウェアについて定義された厳格な Open Source の概念は、ソフトウェアではないものに正確に当てはまったことはない。
    だから Creative Commons ライセンスがある。写真画像を GPL2 で配布するのは、そもそも筋が通らない。
    新しいメディアでは常に再定義が必要になる。

    • LLM はメディアというよりソフトウェアに近い。
      GPL はソースコードを、修正に好ましい形式として定義し、ソースから実行ファイルを作るためのスクリプトも含めている。
      この場合、重みは処理フローから生まれた最適化済みの実行コードに近く、「ソース」は学習データと、それをモデルに変えるコードおよび手順だろう。
      非常に大規模な LLM ではほとんど誰も活用できないだろうが、小さな学術モデルでは研究者が互いの成果の上に積み上げられるので意味がある。
    • Creative Commons は、自分たちがオープンソースライセンスだと主張したことはなく、通常は自由文化という用語を使っている。
    • 写真、曲、動画のようなメディアにもソースはある。画像をレンダリングしたり、動画・音声出力を作ったりした元データとプロジェクトがそのソースだ。
      言語モデルのソースは実際には、特定のモデルを学習するために使われたコードの方に近く、モデル自体は機械語ではないものの、コンパイル済みバイナリに近い。
      だからモデルが本当にオープンソースになるには、それを生成するのに使ったソフトウェアを公開し、自分が修正して自分のデータで学習させて使える必要があると思う。
    • 再定義する必要はない。新しいメディアには新しい用語が必要だ。
    • 私が大学に入った頃には、厳格な「Open Source」自体がまだ定義ですらなかった。
  • 重みが著作権の対象になるかどうかも、まだ法廷で判断されておらず、その結果次第では多くのライセンスや制限がすべて無意味になる可能性もある

    • その条項は危うく見える
      「アーティストのみなさん、モデルは人間のように学習しているだけなので、みなさんの著作権を侵害することはできません。たまたま本の一部を出力したのなら、それは単なる偶然の剽窃です。私たちもみんなやりますよね、はは! 弁護士たちは、米国では剽窃は違法ではないと思い出させてくれます」
      「エンジニアのみなさん、私たちのモデルの出力物には著作権があるので、それで自分のモデルを学習させたら、それは私たちが所有します」
      この2つがどうやって同時に真になり得るのか分からない
    • 同様によくある「このモデルの出力で別のモデルを改善してはならない」という条項は、私の知る限り著作権では執行できない
      せいぜい特定のユーザーを拘束する契約条項にすぎず、後からその改善されたモデルを使う人は問題なさそうに見える
    • 重みが著作権の対象ではないかもしれないという考えは非常に興味深く、魅力的ですらある
      ただ、実際にそういう世界が成り立つのかは想像しにくい
      なぜ重みが著作権の対象ではない可能性があるのかを要約するか、その見方を裏付ける資料を教えてもらえるとありがたい
    • 複数の立法府がモデル重みの著作権上の地位を明示的に定める法律を通すかどうかも、まだ分からない
      何が著作権の対象で、何がそうでないかは変わり得るという点を覚えておくべき
    • その通り。SSPLも似ている
      GPLはFSF対Cisco事件(2008年)で検証されたが、より制限的なライセンスはまだ検証されていない
  • 問題は、MPT-30bやFalcon-40bのように、本物のオープンソースライセンスを採用した大型モデルがすでに存在すること
    Llama2の重みにアクセスできるのはありがたいが、伝統的なOSIの意味で実際にオープンソースである競合モデルがあるのに、Llama2が「オープンソース」の功績を持っていくのは不公平に感じる
    ライセンス上の実質的な差は十分小さいので、私を含む大半の人はモデル品質の高いLlama2を選ぶ可能性が高い
    しかし、そうしたインセンティブが結局ぎこちない準オープンライセンスに閉じ込めることにもなり得る

  • すでにsource availableという言葉があるのに、なぜ「オープンソース」という用語が進化しなければならないのか分からない
    この場合なら「制限の少ないライセンスで提供される重み」と言えばよい

    • 新しい世代のプログラマーは、何らかのオープンソースや自由ソフトウェアがまったく存在しなかった時代を覚えていないため、その違いが実感ではなく学術的な区別のように感じられる
  • この記事の図は、GPLだけを自由ソフトウェアとして示し、MIT/Apacheはオープンソースだが自由ソフトウェアではないかのように見せていて、非常に誤っている
    FSF側は「オープンソース」という用語を好まないが、彼らでさえ「ほぼすべてのオープンソースソフトウェアは自由ソフトウェア」だと言っている
    特にMIT、Apache、LGPLライセンスは明らかに自由ソフトウェアライセンスである。そうでなければ、DebianやFSF承認ディストリビューションが選べるソフトウェアははるかに少なくなるはずだ
    図が区別しようとしていたのは、おそらくコピーレフトと、自由ソフトウェアまたはオープンソースだったのだろう
    許容範囲の観点で並べるなら、部分集合関係も逆であるべきだ。GPLはSSPLなどよりはるかに許容的だが、MIT/Apacheよりは許容的ではない

    • その通り。ライセンスの観点では、Open SourceFree Softwareはほぼ同じ意味で使ってよい
      違いは技術的なものではなく政治的なもの
      記事のこの部分もかなり誤解を招く:「Free Software Foundationが定義する自由ソフトウェアは、オープンソースソフトウェアの部分集合にすぎず、GPLやApacheのような非常に寛容なライセンスを使用する」
  • 図には理論上、「Restricted Weights」の外側だが「Completely Closed」全体よりは狭い、もう一つのカテゴリがあるべき
    たとえばブラックボックスの重みとモデルのように、無料で使えるが、実質的に中を見たり移したりできない形態である
    これは「無料で利用可能」なクローズドソースソフトウェアの姉妹カテゴリに当たる
    無料で使えるがバイナリの塊として提供されるAIはここに当てはまる
    あるいは、推論エンジンと重みを事前コンパイル済みバイナリとして呼び出すPythonモジュールだが、ソースがない場合も該当する
    現在のソフトウェア世界における伝統的な対応物は、オープンソースではないサードパーティ製Linuxドライバだ。無料だが開かれてはいない
    AIの世界では、まだこういうものはあまり見ていない。重みを公開する側はおおむね研究目的なので推論もオープンソースである必要がある場合が多く、閉じたモデルを持つ側は収益化したいので推論側も公開する理由がなく、API料金を取ればよいからだ。たとえば「OpenAI」のように

    • 含めてはいなかったが、それは「ビールは無料だが自由ではない」円に当たると思う
  • タイトルが編集されている。実際のタイトルは「LLaMA2 isn't "Open Source" - and why it doesn't matter」
    実際のタイトルとはかなり印象が違うものに変わっており、著者と投稿者がオープンソースの意味を違って捉えているのかもしれないと感じる

    • モデレーターがタイトルを変えたのであって、最初に投稿したときは元のタイトルを使っていた。なぜ変えたのかは分からない
    • 2人は同じ人物です :)
  • Open Sourceは技術文化の中にかなり定着しているため、そこから外れるものは嘲笑されてきた
    最近は、コミュニティがこうした「オープン」ライセンスにより寛容になっているように見える
    FOSSの基準に合わないプロジェクトへの非難はたいてい行き過ぎだが、私たちがあまりにも早く「open」の方向へ押し流されないことを望む
    LLaMa2に関する別の記事もある: https://opensourceconnections.com/blog/2023/07/19/is-llama-2...