大規模言語モデルは、もっともらしい文章を作る一方で、誤った答えを自信ありげに出すことがある。この弱点を逆手に取ったのがGoogle DeepMindの「FunSearch」で、論文は2023年12月にNatureへ掲載された。名前は「関数空間での探索」に由来する。

仕組み

FunSearchは、言語モデルに答えそのものではなく、解法となる短いプログラムを書かせる。生成されたプログラムは自動の評価器で実行・採点され、成績の良いプログラムが次の生成の材料になる。この繰り返しでプログラムが進化していく。評価器が正しさを判定するため、数学的に検証できる形で結果が残る点が特徴である。

何が見つかったか

適用例の一つが、組み合わせ数学の「キャップ集合」問題である。論文では、8次元で大きさ512の構成が見いだされ、この種の構成としては過去20年で最大の進展と著者らが位置づけた。もう一つの例では、荷物の詰め込みを扱うオンラインビンパッキングで、従来の代表的な手法を上回る方策が得られたと報告されている。

注意点

解くべき問題や評価器の設定は研究者が与えており、AIが自律的に問いを立てたわけではない。また大量の試行の中から良い結果が得られる設計であり、どんな問題にもそのまま使える方法ではない点も論文の前提として理解しておきたい。なお、数値や計画は発表時点のものであり、変更される可能性があります。最新の内容は出典の一次情報をご確認ください。

読み解くポイント

FunSearchの設計で重要なのは、言語モデルの出力をそのまま信じるのではなく、実行して採点できる形に限定した点である。プログラムという形式にしたことで、正しさの判定を人間の印象ではなく機械的な評価に任せられた。この「生成と検証の分業」は、創薬や材料探索など他の分野のAI活用でも参照される考え方になっている。一方で、評価器を作れる問題でなければこの方法は使えず、検証が難しい問いへの適用には別の工夫が要る。数学の未解決問題そのものを解いたという表現は正確ではなく、既知の最良の構成を更新したという範囲で理解するのが、論文の内容に沿った読み方である。

FunSearchの評価が次に変わるのは、評価器を用意できる別の問題でも、既知の最良の構成を更新するようなプログラムが得られるかどうかです。キャップ集合やオンラインビンパッキングで示された進展が、この二例にとどまるのか、生成と検証の分業が他の問題にも広がるのかが焦点となります。問いや評価器は研究者が与える前提があるため、適用範囲の広がり方を続報で見ていく必要があります。

出典:Romera-Paredes et al., Mathematical discoveries from program search with large language models, Nature(2023年12月) https://doi.org/10.1038/s41586-023-06924-6

あわせて読みたい