見出し画像

Fully Connected Tokyo 速報レポート Part1

2023年10月11日に日本で初めてのWeights & Biases ユーザーカンファレンスである、Fully Connected Tokyo 2023が開催されました。本イベントは、日本をリードするW&Bユーザーの皆様からその最新のML開発・運用のノウハウをご共有いただくことを目的にして東京スクエアガーデンのコンベンションホールで開催され、約300人の参加者が集まり、大盛況となりました。

3つのパートからなる本イベントの最初のパートでは、W&B Japanカントリーマネージャーのシバタアキラの挨拶に始まり、幅広いスピーカーからお話を伺うことができ、W&Bが様々な用途でML開発を支えていることを実感できる内容でした。お一人ずつ講演内容をレビューしていきたいと思います。

今回のイベントのタイムテーブル

「CyberAgentにおける日本語LLMの開発について」 - CyberAgent 石上亮介様

自己紹介・会社紹介
石上さんはCyberAgentの基盤モデルプロジェクトのリードとして、大規模言語モデルを中心に数多くのモデル開発に関与しています。CyberAgentからはすでに最大68億パラメーターのLLMも一般公開されています。

LLMモデルの開発方法の振り返り

トップバッターということで、石上さんからはまず、「5分でわかるLLM」をご説明。書き出しから次の文章の予測をするシンプルなタスクを大量のデータと巨大なモデルで学習させることから始まるLLM開発は、その後ファインチューニングを通じて多様なタスクに対する適応性を高めます。例えばインストラクションチューニング(指示チューニング)を行うことで、チャット型のコミュニケーションができるようになり、私たちが「賢い」と思うモデルが出来上がります。さらに、RLHF(人間のフィードバックによる強化学習)などに代表される「アライメントチューニング」を行うことで、より人間の価値観に合った、Helpful, Honest, Ernest などの基準からより望ましい結果を得ることができるようになります。

OpenCalmの開発にみる実際のLLM開発
LLM開発ではまず学習に使用されるコーパスを用意する必要があります。日本語のデータセットとしてはWikipediaやMC4、CC100などが挙がりました。最近のコーパスは数テラバイトに及ぶ非常に大きいものも出てきましたが、多くは「汚いデータ」であり、データのクリーニングはLLMの開発において非常に重要なプロセスです。例えばRefined Webというデータセットでは、何段階ものフィルタリング処理を経て高品質なデータを作っています。

コーパスが揃ったら事前学習が始まります。LLMの開発で特に有名なものには、NVIDIAのMegatronLMやそれに基づいて開発されたMegatron-DeepSpeed, MosaicMLのllm-foundry, そして日本語LLMでよく使われるGPT-NeoXなどが挙げられます。CyberAgentではこれまでに130億パラメーターまでのサイズのLLMを構築しており、前述の学習データをNVIDIA A100で処理しています。この中で70億パラメーターまでのモデルは5月にHuggingFaceで公開されました。

W&Bは非常に重宝
LLMの学習過程や試行錯誤においては、突然勾配が爆発してしまうようなトラブルがしばしば発生しています。このような問題を解決するには実験過程のモニタリングが欠かせませんが、W&Bのモニタリングツールを使うことで、実験ごとの違いを比較したり、その結果をチームに共有したりしているそうです。石上さん自身は学習に失敗した時にメールが届く機能が特に重宝しているとのこと。

新しい取り組み
現在CyberAgentでは次世代のLLMモデルであるCalm2の開発を進めており、Llama2ベースでの開発に移行しているそうです。学習データ量を10倍の1兆トークン以上に増やし、GPUもH100を使うことで、この巨大なモデルの学習を可能にしています。H100のトランスフォーマーエンジンに関してはまだ検証していないものの、さらなる高速化に期待がかかっています。

日本語では、JGLUE、OpenQA、RCQA、英語でも複数のタスクで評価したところ、Calm2はCalm1よりも20ポイント近く平均スコアが上がっています。また、英語と日本語データの割合を変えたアブレーションスタディーでは、期待値通り、データの割合が多い言語での性能が高くなることが確認できました。また、フルファインチューニングとLoRAチューニングの違いを比較した際には結果に大きなばらつきが見られ、LoRAチューニングはデータの質により敏感に反応する傾向が見られたため、計算量が十分にある場合には、フルファインチューニングを優先する方が良いと考えてるそうです。

まとめ
石上さんからは、CyberAgentにおけるLLM開発について紹介をしていただきました。今後もCyberAgentではより質の高いLLM開発を行っていき、そこから学んだ知見を共有していきたいと考えていらっしゃるそうで、これからもその先駆者的なLLM開発への取り組みに、高い期待を感じました。

「日本経済新聞社におけるWandBの活用例」 - 株式会社日本経済新聞社 青田雅輝様

自己紹介
青田さんはKagglerとしての経歴を持つ一方、最近は音楽生成の分野に熱心に取り組んでおられます(今回のイベントでは、パート3で音楽生成を専門にする徳井さんもご登壇されています)。
日経新聞のデータサイエンスチームの役割としては日経のデータ(テキスト、画像、ユーザー行動など)を駆使して事業価値を高めることがミッションとなっているということで、147年分の紙面データを活用したプロジェクトやリアルタイムデータ処理基盤「Atlas」の構築など、幅広いプロジェクトに取り組んでいるそうです。今回のご講演では、そのような幅広い活動の中から、WandBが活用されている事例を三つご紹介いただきました。

WandBを利用した社内事例の紹介

  1. 学術研究の実験管理:まず最初に、マルチモーダル情報を利用したニュース記事のクリック率の予測を行う研究を紹介していただきました。マルチモーダルデータを取り扱うため、見出し、本文、サムネイルなど、多様な情報をもとにクリック率を予測しています。論文で掲載するためのテーブル作成は、モデルごとに使った特徴量ごとの結果をWandBに記録していくことで簡単に行うことができたそうです。また、WandBを用いた文章に対するBERTのアテンションの可視化は、モデルの出力に対する解釈を深めることに役に立ったとのこと。
    論文執筆時には査読結果を受けて改訂するときなど、執筆の間隔が長く開くこともあり、そのような際にも簡単に振り返りができ、著者間での結果共有が容易になったこともWandBのメリットだったと話してくれました。

  2. 画像圧縮アルゴリズムのパラメーター探索:機械学習事例ではないですが、日経の大量の画像データを処理する、効率的な画像圧縮アルゴリズムを見つけるために、WandBを使ってパラメーターの探索を行った例を紹介していただきました。たくさんの探索を行う中で、各モデルの結果を重ね合わせて比較することはこれまで簡単にできなかったものの、WandBを利用して、容量と画質のトレードオフを可視化したりしながら高速に実験を進め、結果的に通信コストを半分に削減できるアルゴリズムを見つけることができたそうです。

  3. 動画画像生成に関する研究:最後に、生成AIを利用した動画生成におけるパラメーター変更の試行錯誤を、WandBを活用して効率よく進めた事例を紹介していただきました。動画生成では、複数フレームの画像生成を行いますが、フレーム間における同位置するために、モデルのパラメーターの管理が不可欠でした。それまでこのパラメーターをNotionで管理していましたが、WandBを使うことで、手動のコピペ作業から解放され、再現性のある動画生成が可能になったようです。

まとめ
青田さんのプレゼンテーションでは、実践的なデータサイエンスの取り組みの中で、W&Bが幅広い課題の解決に役立つということをとてもわかりやすく示していただきました。私たちもまさに、「こんなふうにWandBを使って欲しい」と思っていたような事例をご紹介いただきました。

「Turingにおける自動運転モデルの開発とW&Bの活用」 - Turing株式会社 井ノ上雄一様

自己紹介
井ノ上さんはTuring株式会社ののブレインリサーチ(研究開発チーム)の一員として活動する傍ら、かなり前からKaggleをはじめとするデータコンペティションでもWandBを積極的にご利用いただいていたそうです。

完全自動運転EV車両の開発
Turingは新たな車メーカーになることを掲げており、今年3月にはAIを駆使してデザインしたコンセプトカーも発表されています。Turingが目指すのは完全自動運転。最終的にはハンドルすらないような車を目指しています。ただ、これまではそのような車を作るには高価なセンサーと高精度な3Dマップが必要でしたが、速い反応が要求されるdrivingと複雑な判断が要求されるnavigationを分離するDriver ModelとNavigator Modelという二つのモデルを組み合わせることで、この課題を解決することに取り組んでいるそうです。すでにこの自動運転システムを使って、自動運転率95%で北海道一周を実現しています。

機械学習システムとWandBの利用
モデルの開発システムは複雑なワークフローの組み合わせで成り立っています。データレイクに様々なデータを集め、ラベル付け後、前処理を行い、学習を使う中でWandBを「めちゃくちゃ」使っているそうです。さまざまな評価指標のプロットや、補助タスクの可視化を学習のステップごとに記録する使い方で、モデルの特性の考察を得ることができたそうです。
このようなプロセスから構築されたモデルはシミュレーターにデプロイされて評価され、その中から実際の車に実装されるモデルが選ばれるそうです。

Navigatorモデルの開発では、Vision Languageモデルを開発し、より複雑な状況への対応を目指しています。複雑な道標が出てきたときなど、これまでの画像モデルには解釈が難しかったハイコンテクストな状況を、LLMを使って解決しようとしているそうです。このモデルの開発においては、データの可視化、学習の進行の確認、結果の確認、評価などの各ステップで幅広くWandBが活躍しています。例えば学習においては、計算リソース(TFLOPS)をモニターすることで、GPUが無駄にならないように学習方法をチューニングし、学習済みモデルの精度は、Nejumi LLMリーダーボード風にWandBのテーブル機能を使い、これまでの結果をリーダーボードで一覧表示できるようにしているそうです。

まとめ
自動運転のように長く時間をかけて行う開発においては、その開発管理の重要性はますます高まります。Turingのように先進的なAI開発を行う企業でWandBがその開発基盤のコアコンポーネントとしてフル活用されているのは必然と言ってもいいかもしれません。


パート1は以上です。パート2のブログはこちらです。パート2もお楽しみください。

この記事が気に入ったらサポートをしてみませんか?