アラブ首長国連邦の首都アブダビに拠点を置く研究機関「Technology Innovation Institute」がオープンソースの大規模言語モデル「Falcon」をリリースし、機械学習関連のデータ共有サイト「Hugging Face」にてモデルを公開しました。

Falcon LLM - Home

https://falconllm.tii.ae/

The Falcon has landed in the Hugging Face ecosystem

https://huggingface.co/blog/falcon

tiiuae/falcon-40b · Hugging Face

https://huggingface.co/tiiuae/falcon-40b

Falconモデルは400億個のパラメーターをもつ「Falcon-40B」モデルと、70億個のパラメーターをもつ「Falcon-7B」モデルの2つがリリースされています。パラメーター数の多い40Bモデルの方が高性能なものの、動作させるのにGPUメモリを90GBも必要としており、一般的なユーザーからは手が出しづらくなっています。一方で、7Bモデルの方はGPUメモリが15GBあれば動作するとのこと。

注意点として、今回リリースされた40Bモデルと7Bモデルは事前学習を終えた段階であり、製品として利用する前にファインチューニングを行う必要があると述べられています。「実際に性能を試してみたいけどファインチューニングは難しいな……」と思ってしまいますが、そんな人のために実験的にチャット形式のデータでファインチューニングした「Falcon-40B-Instruct」「Falcon-7B-Instruct」も用意されていました。

Hugging Faceにはオープンソースな大規模言語モデル同士でスコアを競う「Open LLM Leaderboard」というランキングが用意されており、一目でどのモデルがどれほど優れているのかを確認できるようになっていますが、今回登場したFalconの40Bモデルはllama系のモデルを抜いて1位に躍り出ました。7Bモデルの方も同様のモデルのなかで最高の性能になっています。



Falconの品質が高い理由はトレーニングに用いたデータにあるとのこと。ウェブ上から集めた大規模なデータセットであるRefinedWebをベースに、重複排除やフィルタリングを通して他のコーパスと同様の品質まで高めたと述べられています。この重複排除・フィルタリング済みのデータについてもHugging Face上で公開されており、誰でも自分の言語モデルのトレーニングに利用することが可能になっています。



また、Falconのもう一つの特徴として「マルチクエリアテンション」がとりあげられています。従来のトランスフォーマー構造のマルチヘッド部分ではヘッドごとにクエリ・キー・値を保存していましたが、マルチクエリアテンションでは全てのヘッドにおいてクエリ・キー・値を共有するようになっています。



マルチクエリアテンションを採用することで動作時におけるキーと値のキャッシュ量を最大100分の1まで削減することができ、動作に必要なメモリの量を抑えることが可能とのこと。



Hugging Faceでは実際にFalcon-40Bを試せるページが用意されていますが、記事作成時点ではアクセスが多いためかエラーで利用できませんでした。



なお、Hugging Faceの記事では100億パラメーターを超えるような巨大モデルをトレーニングする方法として、QLoRAが紹介されていました。QLoRAについては下記の記事で解説しています。

GPUメモリが小さくてもパラメーター数が大きい言語モデルをトレーニング可能になる手法「QLoRA」が登場、一体どんな手法なのか? - GIGAZINE