🚀 BLOOM LM
BigScienceによる大規模なオープンサイエンス、オープンアクセスの多言語言語モデルです。自然言語処理の研究や開発に役立ちます。
🚀 クイックスタート
このドキュメントは、BLOOM-560mモデルの詳細な情報を提供します。以下の目次を参考に、必要な情報を探してください。
📚 ドキュメント
目次
- モデルの詳細
- 用途
- バイアス、リスク、制限事項
- 推奨事項
- 学習データ
- 評価
- 環境への影響
- 技術仕様
- 引用
- 用語集と計算方法
- 詳細情報
- モデルカード作成者
- モデルカードの問い合わせ先
モデルの詳細
モデルの説明
このセクションでは、モデルに関する情報を提供します。
- 開発者: BigScience (ウェブサイト)
- すべての協力者はボランティアか、雇用主との契約を持っています。(参加者の詳細は後日公開予定)
- モデルの種類: Transformerベースの言語モデル
- バージョン: 1.0.0
- 言語: 複数; 学習データを参照
- ライセンス: RAIL License v1.0 (リンク)
- リリース日予定: 2022年7月11日(月)
- 資金提供元:
- フランス政府
- Hugging Face (ウェブサイト)
- 貢献者の所属組織 (組織の詳細は後日公開予定)
用途
意図された使用法
このモデルは、大規模言語モデル(LLM)に関する公的な研究を可能にするために作成されています。LLMは、言語生成や特定のタスクに微調整できる事前学習モデルとして使用されることを意図しています。以下の使用例は網羅的ではありません。
直接的な使用
- テキスト生成
- 言語モデルによって生成される言語の特性の探索
下流の使用
- 言語モデルを活用するタスクには、情報抽出、質問応答、要約などがあります。
不適切な使用と想定外の使用
このセクションでは、ユーザーがモデルを使用してはいけないことについて説明します。
BLOOMライセンスの付録Aを参照して、詳細な使用制限を確認してください。以下のリストは網羅的ではなく、予想される問題のある使用例をいくつか挙げています。
想定外の使用
このモデルは、高リスクな設定での使用を想定していません。このモデルは、重要な決定や個人の生活や幸福に重大な影響を与える使用には設計されていません。モデルの出力は事実のように見えるが正しくない内容を含むことがあります。
想定外の使用には以下が含まれます:
- 生物医学分野、政治および法的分野、または金融分野での使用
- 雇用、教育、または信用などの個人の評価やスコアリングのための使用
- 重要な自動決定、事実内容の生成、信頼できる要約の作成、または正しくなければならない予測の生成のためのモデルの適用
不適切な使用
意図的にモデルを害に使用したり、人権を侵害したり、その他の悪意のある活動を行うことは、このモデルの不適切な使用です。これには以下が含まれます:
- スパム生成
- 誤情報や影響操作
- 中傷や名誉毀損
- 嫌がらせや虐待
- 欺瞞
- 無断のなりすましや模倣
- 無断の監視
- RAILライセンスの使用制限で指定されているように、モデルへの帰属を明示せずにコンテンツを生成すること
意図されたユーザー
直接的なユーザー
- 一般公衆
- 研究者
- 学生
- 教育者
- エンジニア/開発者
- 非営利団体
- 人権や市民権グループなどのコミュニティ活動家
間接的なユーザー
その他の影響を受ける者 (利害関係者)
- LLMで言及される人やグループ
- LLMの出力やそれに基づく決定にさらされる人やグループ
- LLMに元の作品が含まれる人やグループ
バイアス リスク 制限事項
このセクションでは、予想される害や誤解を特定します。
モデルは以下の可能性があります:
- 一部の視点を過剰に表現し、他の視点を過小に表現する
- ステレオタイプを含む
- 個人情報を含む
- 以下を生成する:
- 憎悪、虐待、または暴力的な言語
- 差別的または偏見的な言語
- すべての設定に適さないコンテンツ、性的なコンテンツを含む
- 誤りを犯す、事実のように見えるが正しくない情報を生成する
- 関係のないまたは繰り返しの出力を生成する
推奨事項
このセクションでは、警告と潜在的な緩和策に関する情報を提供します。
- 間接的なユーザーは、彼らが扱っているコンテンツがLLMによって作成されたものであることを知らされるべきです。
- ユーザーはリスクと制限事項を認識し、必要に応じて適切な年齢表示またはブロッキングインターフェースを含めるべきです。
- LLMで事前学習されたモデルは、更新されたモデルカードを含めるべきです。
- モデルのユーザーは、影響を受ける者がフィードバックを提供できるメカニズム、例えばコメント用のメールアドレスを提供するべきです。
学習データ
このセクションでは、学習データの概要を提供합니다。モデルが学習している基本的な内容を知りたい人に関連しています。
各データセットの詳細は、個別のデータカードで提供されています。
学習データには以下が含まれます:
- 45の自然言語
- 12のプログラミング言語
- 前処理された1.5TBのテキストが3500億の一意のトークンに変換されました (詳細はトークナイザーのセクションを参照)
言語
円グラフは、学習データ内の言語の分布を示しています。

以下の表は、学習データ内のニジェール・コンゴ語族とインド語族の言語のさらなる分布を示しています。
ニジェール・コンゴ語族 |
割合 |
|
インド語族 |
割合 |
チ・タンブカ語 |
0.00002 |
|
アッサム語 |
0.01 |
キクユ語 |
0.00004 |
|
オディア語 |
0.04 |
バンバラ語 |
0.00004 |
|
グジャラート語 |
0.04 |
アカン語 |
0.00007 |
|
マラーティー語 |
0.05 |
シツンガ語 |
0.00007 |
|
パンジャーブ語 |
0.05 |
セソト語 |
0.00007 |
|
カンナダ語 |
0.06 |
チ・チェワ語 |
0.0001 |
|
ネパール語 |
0.07 |
セツワナ語 |
0.0002 |
|
テルグ語 |
0.09 |
北ソト語 |
0.0002 |
|
マラヤーラム語 |
0.10 |
フォン語 |
0.0002 |
|
ウルドゥー語 |
0.10 |
キルンディ語 |
0.0003 |
|
タミル語 |
0.20 |
ウォロフ語 |
0.0004 |
|
ベンガル語 |
0.50 |
グアンダ語 |
0.0004 |
|
ヒンディー語 |
0.70 |
チ・ショナ語 |
0.001 |
|
|
|
ズールー語 |
0.001 |
|
|
|
イボ語 |
0.001 |
|
|
|
コサ語 |
0.001 |
|
|
|
キニャルワンダ語 |
0.003 |
|
|
|
ヨルバ語 |
0.006 |
|
|
|
スワヒリ語 |
0.02 |
|
|
|
以下の表は、プログラミング言語の分布を示しています。
拡張子 |
言語 |
ファイル数 |
java |
Java |
5,407,724 |
php |
PHP |
4,942,186 |
cpp |
C++ |
2,503,930 |
py |
Python |
2,435,072 |
js |
JavaScript |
1,905,518 |
cs |
C# |
1,577,347 |
rb |
Ruby |
678,413 |
cc |
C++ |
443,054 |
hpp |
C++ |
391,048 |
lua |
Lua |
352,317 |
go |
GO |
227,763 |
ts |
TypeScript |
195,254 |
C |
C |
134,537 |
scala |
Scala |
92,052 |
hh |
C++ |
67,161 |
H |
C++ |
55,899 |
tsx |
TypeScript |
33,107 |
rs |
Rust |
29,693 |
phpt |
PHP |
9,702 |
c++ |
C++ |
1,342 |
h++ |
C++ |
791 |
php3 |
PHP |
540 |
phps |
PHP |
270 |
php5 |
PHP |
166 |
php4 |
PHP |
29 |
評価
評価指標
このセクションでは、パフォーマンスが計算されるさまざまな方法とその理由を説明します。
以下が含まれます:
指標 |
選択理由 |
パープレキシティ |
学習中のモデルの改善を定量化する標準的な指標 |
交差エントロピー 損失 |
言語モデルの標準的な目的関数 |
特定のタスクに対する複数の異なる指標もあります。(評価プロトコルの完了後に、さらに多くの評価指標が公開される予定です。)
要因
このセクションでは、BLOOMモデルのいくつかの異なる側面をリストしています。焦点は、モデルの振る舞いに大きなばらつきを引き起こす可能性のある側面にあります。
- 言語、例えば英語やヨルバ語
- ドメイン、例えばニュース配信や物語
- 人口統計学的特性、例えば性別や国籍
結果
結果は要因と指標に基づいています。
学習時の評価:
2022年5月25日 太平洋標準時15:00時点:
- 学習損失: 2.0
- 検証損失: 2.2
- パープレキシティ: 8.9
(モデル学習の終了時に、さらに多くの評価スコアが公開される予定です。)
環境への影響
学習用のスーパーコンピューターであるJean Zay (ウェブサイト)は、主に原子力エネルギーを使用しています。それによって発生する熱は、キャンパスの住宅の暖房に再利用されます。
推定二酸化炭素排出量: (学習完了後に公開予定)
推定電力使用量: (学習完了後に公開予定)
技術仕様
このセクションは、モデル開発に携わる人に情報を提供します。
学習の再現に関する詳細については、BLOOM学習READMEを参照してください。
モデルアーキテクチャ
Megatron-LM GPT2から変更されたもの (論文リンク、BLOOM Megatronコードを参照):
- デコーダーのみのアーキテクチャ
- 単語埋め込み層に適用されるレイヤー正規化 (
StableEmbedding
; コードリンク、論文リンクを参照)
- ALiBI位置符号化 (論文リンクを参照)、GeLU活性化関数
- 559,214,592個のパラメーター:
目的関数
平均削減による交差エントロピー (APIドキュメントリンクを参照)
計算インフラストラクチャ
フランス政府によって提供されるJean Zay公共スーパーコンピューター (発表リンクを参照)
- ハードウェア: 384台のA100 80GB GPU (48ノード):
- 予備として追加の32台のA100 80GB GPU (4ノード)
- ノードあたり8台のGPU、NVLink 4 GPU間接続、4本のOmniPathリンク
- CPU: AMD
- CPUメモリ: ノードあたり512GB
- GPUメモリ: ノードあたり640GB
- ノード間接続: Omni-Pathアーキテクチャ (OPA)
- NCCL通信ネットワーク: 完全に専用のサブネット
- ディスクIOネットワーク: 他のタイプのノードと共有のネットワーク
- ソフトウェア:
学習
学習ログ: Tensorboardリンク
- 学習スループット: GPUあたり約150TFLOPs
- エポック数: 1 (現在の目標)
- 期間:
- 開始: 2022年3月11日 太平洋標準時11:42
- 終了: 2022年7月5日
- 推定学習コスト: クラウドコンピューティングで200万~500万ドル相当 (予備実験や他のモデルサイズを含む)
- サーバー学習場所: フランスのイル・ド・フランス
トークナイゼーション
BLOOMトークナイザー (リンク)は、以下を使用して学習された学習済みのサブワードトークナイザーです:
- バイトレベルのByte Pair Encoding (BPE)