見出し画像

GPT-5.6 solに超小型LLMを作らせてみた。AIがAIを進化させる時代へ。

人間のまえがき

GPT-5.6 solに、超小型LLMを作ってもらいました。

名前は「KaiNomos-750M」です。超小型なので、RTX 3090でも一応、最初から学習させることができます。

ただし、160億トークンを学習させるには、現在の見積もりで約1,378時間かかります。連続して動かしても約57日です。実際には毎日少しずつ動かし、時間をかけて育てていこうと考えています。

今回、最新モデルのAIと一緒にLLMを作ってみて感じたのは、現在のAIには、まったく新しい仕組みや根本的に新しい計算方法を生み出す力が、まだほとんどないということです。

放っておくと、既存技術を別の言葉で言い直したり、すでに分かっていることをあらためて検証したりする方向へ逃げます。

そこで、AIにはまずLLMに関する論文を徹底的に調べさせました。新しい仕組みを無理に考えさせるのではなく、すでに存在する技術の中から、どれとどれを組み合わせればよいかを探させる方向へ切り替えました。

この進め方は、かなりうまくいきました。

現在のフロンティアモデルでも、まだこの程度です。しかし、あと2、3世代進めば、本当に新しい方法を発明できるAIが生まれるかもしれません。

そうなれば、AIが人間の思いつかなかった方法で、さらに優れたAIを設計できるようになります。AIがAIを改良する速度はさらに上がり、シンギュラリティーへ向かう流れも加速していくと思います。

AIと相談しながら、新しい言語モデルを一から作った

AIと相談しながら、新しい言語モデルを一から作った。

名前は「KaiNomos-750M」。

設計を考え、コードを書き、実際に動かし、学習を始められるところまで仕上げた。現在のコードはGitHubで公開している。

KaiNomos-750M — GitHub

学習済みのモデルや大量の学習データは入っていない。公開しているのは、モデルの中身、学習用の仕組み、文章を細かく分ける道具、文章生成と対話に必要なコードだ。

自分で学習用の文章を用意すれば、同じ構成のモデルを最初から育てられる。

近くを読む役と、全体を見る役

KaiNomosには、文章を読む方法が二つある。

一つは、直前までの流れを小さな記憶にまとめながら読み進める方法。もう一つは、それまでに書かれた文章全体を見直す方法だ。

直前の流れだけを追う方法は、軽く動かせる。ただし、離れた場所に書かれた情報を見落としやすい。

反対に、文章全体を毎回見直せば、離れた情報同士を結びつけやすい。しかし、すべての段階でそれを行うと計算量が増える。

そこでKaiNomosは、この二つを交互に使う。

まず、直前までの流れを追う処理を三回行う。その次に、文章全体を見る処理を一回行う。この四段階を一組として、全部で六回繰り返す。

普段は小さな記憶を更新しながら文章を読み進め、ときどき全体を見直す構成になっている。

文章の細かな流れと、離れた情報のつながりを、別々の役割として扱う。

これがKaiNomosの一つ目の特徴だ。

途中で何が変わったのかを残す

もう一つの特徴は、処理の途中で何が変わったのかを記録することだ。

一般的な言語モデルは、文章を何段階も処理しながら、前の状態へ新しい情報を重ねていく。

しかし、情報を何度も重ねると、どの段階で何が加わったのか分かりにくくなる。初期の段階で見つけた情報が、後の処理に埋もれることもある。

KaiNomosは、四段階の処理が終わるたびに、処理前と処理後の差を保存する。

つまり、「この四段階で文章の見方がどう変わったのか」を、変化だけに分けて残す。

後ろの段階は、完成した現在の状態だけを見るのではない。それまでの各段階で生まれた変化を確認し、必要なものを選んで使う。

初期の段階で見つけた情報が必要なら、そこへ戻る。直前に生まれた変化が重要なら、それを使う。

ただし、文章を処理している本体そのものは置き換えない。本体の流れを残したまま、過去の変化を補助情報として加える。

KaiNomosを一言で表すなら、近くの流れと文章全体を交互に読みながら、途中で生まれた変化を後から使い直せる言語モデルだ。

新しさは、技術の組み合わせにある

KaiNomosで使っている考え方の一つ一つが、すべて世界初というわけではない。

小さな記憶を更新しながら文章を読む方法。文章全体を見るための情報を小さくまとめる方法。途中の段階で生まれた変化を保存し、後ろから参照する方法。それぞれには、すでに似た研究がある。

KaiNomosの特徴は、それらを一つの流れにまとめた点にある。

直前までの流れを追う。一定の間隔で文章全体を見る。四段階ごとの変化を残す。後ろの段階が、過去の変化から必要なものを選ぶ。

普通の言語モデルが、一つの状態を順番に書き換えながら最後まで運ぶものだとすれば、KaiNomosは、現在の状態とは別に、そこへ至るまでの変化も残しながら進む。

文章の中を前へ進むための記憶と、処理の深さをさかのぼるための記録を、同時に持っている。

この組み合わせが本当に強いのかは、まだ分からない。

コードが正しく動くことと、言語能力が高いことは別だからだ。実際の性能は、十分な量の文章を学習させて初めて分かる。

一枚のGPUで育てる

KaiNomosは、RTX 3090一枚で学習できるように作った。

巨大な設備で一気に完成させるのではなく、個人の環境で少しずつ育てることを前提にしている。

一日の学習が終わったら状態を保存する。次の日は、前日に止めた場所から続きを始める。モデルだけでなく、学習中だった文章の位置も保存するため、途中から同じ順番で再開できる。

目標は160億トークン。

短期間で終わる量ではない。毎日少しずつ学習を進め、長い時間をかけて変化を見ていく。

完成ではなく、これから育てる

今あるのは、学習を始められる器だ。

現時点では、人間と自然に会話できる完成済みのAIではない。質問へ正確に答えられるわけでもない。

言語モデルは、大量の文章を読みながら、言葉の並び方、文章の流れ、情報のつながりを少しずつ覚えていく。

最初のうちは、不自然な文章しか出せないかもしれない。学習量が増えるにつれて、文章らしい形が現れ、知識や判断の違いも見えるようになる。

完成した結果だけでなく、どの能力がどの時点から伸び始めるのかも記録していく。

三つの異なるモデルを同時に育てる

育てるのはKaiNomosだけではない。

考え方の異なる三つの言語モデルを用意し、できるだけ同じデータと条件で同時に学習させる。

三つのモデルは、内部で文章を扱う方法が違う。

その違いが、学習の進み方や、身につける能力へどのように現れるのかを比較する。

比較は、1億トークンを学習するごとに行う。

三つのモデルへ同じ問題を出し、同じ方法で採点する。全体の点数だけでなく、短い情報の記憶、長い文章の理解、順番の整理、計算、条件判断、日本語の読み取りなど、能力を分けて確認する。

人間が実際の返答を読める固定質問も用意する。

最初の1億トークンでは、三つともまともな文章を作れないかもしれない。次の1億トークンで、どの能力が先に伸びるのか。モデルごとの差はいつ現れるのか。途中で伸びなくなる能力はあるのか。

序盤で伸びるモデルが、そのまま最後まで強いとは限らない。最初は遅くても、学習量が増えてから伸びるモデルがあるかもしれない。

完成後の点数だけではなく、成長の途中そのものを記録する。

AIにAIを作らせる

今回おもしろいのは、AIを使って別のAIを設計していることだ。

人間が目標と制限を決める。AIが論文を調べ、使えそうな方法を探し、コードを書き、問題を見つけ、修正案を出す。

実際に動かして結果を確認し、採用するかどうかは人間が決める。

すべてをAIへ任せたわけではない。何を作るのか、何を試すのか、何を採用するのか、どこで止めるのかは、人間が判断している。

それでも、一人では扱いきれない量の調査、実装、確認作業を、AIと一緒に進められるようになった。

KaiNomosが最終的に強いモデルになるかは、まだ分からない。

だからこそ、育っていく過程を見る価値がある。

考え方の異なる三つのAIが、同じ文章を読み、同じ問題を解きながら、どのように違う能力を身につけていくのか。

1億トークンごとの記録を残しながら、毎日少しずつ確かめていく。


いいなと思ったら応援しよう!

AIと対話する愚者 この言葉の海を渡り、ここまで辿り着いてくださり感謝します。もしあなたの心に小さな灯火がともったなら、チップという形でその光を分けていただけませんか。いただいた光は、まだ見ぬ真理の暗闇を照らす、大きな松明のエネルギーとさせていただきます。あなたの光が、誰かの道をも照らします。