結論
BERTは、Transformerのエンコーダを使い、文中の隠した単語を前後両方の文脈から当てる課題などで事前学習したモデルで、文章の理解を要するタスクに強みがあります。GPTは、Transformerのデコーダを使い、前の単語から次の単語を順に予測する課題で事前学習したモデルで、文章の生成に向いています。
比較表
| 観点 | BERT | GPT |
|---|---|---|
| 発表 | Google(2018年) | OpenAI(最初のモデルは2018年) |
| 名前の意味 | Bidirectional Encoder Representations from Transformers | Generative Pre-trained Transformer |
| 使うTransformerの部分 | エンコーダ | デコーダ(Source-Target Attentionを除いた構造) |
| 各単語が参照できる文脈 | 前と後ろの両方 | 前だけ(後ろの位置はマスクで隠す) |
| 事前学習の課題 | マスク言語モデル(MLM)と次文予測(NSP) | 次の単語(トークン)の予測 |
| 得意なタスク | 文書分類、質問応答での答えの範囲の抽出、固有表現の抽出など、文章の理解 | 文章の続きの生成、対話、要約など、文章の生成 |
| タスクへの使い方 | 出力層を加え、ラベル付きデータでファインチューニングする | 最初のGPTはファインチューニング。GPT-3以降は、プロンプトに例を示すだけで使う方法も広がった |
| シラバス項目 | 技術分野 項目27 自然言語処理(キーワード「BERT」) | 技術分野 項目27 自然言語処理(第1.4版でキーワード「GPT-n」は削除。「大規模言語モデル(LLM)」の代表例) |
最終確認日:2026年10月30日
それぞれの説明
BERTとGPTは、どちらもTransformerを土台に、大量の文章で事前学習した言語モデルです。違いは、Transformerのどちら側を使い、どんな課題で事前学習するかにあります。
BERT
BERTは、2018年にGoogleが発表したモデルです。Transformerのエンコーダを積み重ねた構造で、各単語の表現を作るときに、前と後ろの両方の単語を参照します。名前のBidirectional(双方向)は、この性質を指しています。
事前学習では、入力の単語の約15%を予測の対象に選び、その多くを[MASK]という記号に置き換えて、元の単語を前後の文脈から当てさせます。2つの文が本当に続いているかを判定する次文予測も組み合わせました。その後、タスクに合わせた出力層を加え、ラベル付きデータでモデル全体をファインチューニングします。文書分類や、質問応答での答えの範囲の抽出など、文章の理解を要するタスクで高い性能を示しました。
GPT
GPTは、OpenAIが2018年に最初のモデルを発表したシリーズです。Transformerのデコーダ側を積み重ねた構造で、各単語は自分より前の単語だけを参照します。
事前学習では、文章の先頭から順に、次の単語を予測します。予測した単語を入力に加えて次を予測することを繰り返せば、文章を生成できます。最初のGPTは、BERTと同じくファインチューニングで文の分類などに使われました。GPT-3以降は規模を大きくし、プロンプトに少数の例を示すだけでタスクをこなす使い方が注目されました。
2つの関係
BERTの論文は、比較のためにBERT-Baseの大きさを最初のGPTとそろえ、前後両方を参照する事前学習の効果を示しました。一方、文章を生成する用途では、前から順に予測するGPTの方式が広く使われています。G検定のシラバス第1.4版では、キーワードから「GPT-n」が削除されました。GPT系のモデルは、キーワード「大規模言語モデル(LLM)」の代表例として押さえておきます。
見分けるコツ
- 名前で覚えます。BERTのBはBidirectional(双方向)、EはEncoderです。GPTのGはGenerative(生成的)です。
- 事前学習の課題で見分けます。「隠した単語を前後から当てる穴埋め」はBERT、「次の単語を順に予測する続き書き」はGPTです。
- 「BERTは理解専用、GPTは生成専用」と言い切る選択肢に注意します。最初のGPTも、ファインチューニングで文の分類などの理解系タスクに使われました。違いは向き不向きです。
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
GPTの事前学習では、文中のランダムな位置の単語を隠し、その単語を前後の文脈から当てる課題を解かせる。
答えを見る
答え × 誤り
前後の文脈から隠した単語を当てるのは、BERTのマスク言語モデルです。GPTは、文章の先頭から順に、それまでの単語だけを手がかりに次の単語を予測します。
-
BERTの論文では、比較のため、BERT-Baseのモデルの大きさを最初のGPTとそろえていた。
答えを見る
答え ◯ 正しい
どちらも12層のTransformerです。大きさをそろえたうえで、前後両方を参照する事前学習の効果を示し、GLUEで比較したすべてのタスクで最初のGPTを上回る結果を報告しました。
-
BERTをタスクに合わせてファインチューニングするときは、追加した出力層だけでなく、事前学習済みの部分の重みも含めて全体を追加学習する。
答えを見る
答え ◯ 正しい
BERTの論文の基本の使い方は、全パラメータのファインチューニングです。事前学習済みの部分を固定し、取り出した表現を別のモデルの入力に使う方法は、特徴量ベースの使い方と呼ばれます。
関連問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目27 自然言語処理)
- Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova, BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (2018) (3 BERT、4.1 GLUE、5.3 Feature-based Approach with BERT)
- Alec Radford, Karthik Narasimhan, Tim Salimans, Ilya Sutskever, Improving Language Understanding by Generative Pre-Training, OpenAI (2018)
- Ashish Vaswani et al., Attention Is All You Need (2017)
ほかの違い比較
- アジャイルとウォーターフォールの違い 進め方とAI開発での使い分け
- 赤池情報量規準(AIC)とベイズ情報量規準(BIC)の違い 罰則の重さ
- バギングとブースティングの違い 並列か逐次か、減らす誤差の違い
- バッチ正規化とレイヤー正規化の違い 平均と分散を計算する範囲の違い
- バッチ学習・ミニバッチ学習とオンライン学習の違い 更新回数とぶれ
- CBOWとスキップグラムの違い 予測の向きと学習の速さ
- 分類問題と回帰問題の違い 出力の形で見分けるコツと評価指標
- CNN・RNNとTransformerの違い 得意なデータと計算の並列性
- 協調フィルタリングとコンテンツベースフィルタリングの違い 仕組み
- 共分散と相関係数の違い 式の関係と単位・値の範囲
- データ汚染とAdversarial Attackの違い 学習時か推論時かと対策
- 決定木とランダムフォレストの違い 解釈のしやすさと精度・安定性
- 深さ優先探索と幅優先探索の違い 調べる順番・最短解・メモリ
- 営業秘密と限定提供データの違い 3つの要件と刑事罰の有無
- Faster R-CNNとYOLOの違い 2段階型と1段階型、速度と精度
- GANと拡散モデル(Diffusion Model)の違い 学習と生成の仕組み
- GANとVAEの違い 識別器の有無と学習の仕組み
- GDPRと個人情報保護法の違い 法的根拠・本人の権利・制裁金
- 勾配降下法と誤差逆伝播法の違い 勾配を使う側と求める側
- グリッドサーチとランダムサーチの違い 試行回数の決まり方と効率
- ホールドアウト検証と交差検証の違い 分割回数・計算量・使い分け
- 画像分類(物体識別)と物体検出の違い 出力の形と使い分け
- 委託・第三者提供と共同利用の違い 同意の要否と受け手が使える範囲
- k-means法と階層的クラスタリングの違い クラスタ数を決める時期と計算量
- 個人情報・個人データと保有個人データの違い 範囲の入れ子とかかる義務
- 個人情報と個人識別符号の違い 包含関係と当たる例・当たらない例
- L1正則化とL2正則化の違い 罰則の形と重みが0になるか
- 最小二乗法と最尤法の違い 推定の基準と結果が一致する条件
- LIMEとSHAPの違い 局所近似とシャープレイ値の使い分け
- LSTMとGRUの違い ゲートの数と記憶セルの有無
- 機械学習とディープラーニングの違い 包含関係と特徴量の決め方
- 平均絶対値誤差(MAE)と平均二乗誤差(MSE)の違い 外れ値への強さ
- 正規化と正則化の違い 目的と代表的な手法を表で整理
- 主成分分析(PCA)と特異値分解(SVD)の違い 目的と計算の関係
- 主成分分析(PCA)とt-SNEの違い 線形か非線形か、保つ構造の違い
- 適合率と再現率の違い 分母の違いと重視する場面
- プルーニング・量子化と蒸留の違い 何を減らすかと元モデルの扱い
- Q学習とSARSAの違い 更新式の1か所と方策オン・オフ
- RNNとLSTMの違い 記憶セルと勾配消失の起きにくさ
- Self-AttentionとSource-Target Attentionの違い Q・K・Vの出どころ
- セマンティック・インスタンスとパノプティックの違い 背景と個体の扱い
- 新規性と進歩性の違い 比べ方とAI発明での論点
- シグモイド関数とソフトマックス関数の違い 出力の合計と使い分け
- ソフトローとハードローの違い 法的拘束力の有無と日本・EUの例
- 強いAIと弱いAIの違い 心をもつと考えるかの違い
- 教師あり学習・教師なし学習と強化学習の違い 学習の手がかりと代表例
- 特許権と著作権の違い 発生・保護対象・期間とAIでの使い分け
- 匿名加工情報と仮名加工情報の違い 加工の程度と第三者提供の可否
- 転移学習とファインチューニングの違い 重みを固定するか更新するか
- 請負契約と準委任契約の違い 完成義務とAI開発での使い分け
- Zero-shotとFew-shotの違い 与える例の数と重みを更新しない点