Ukaru.資格試験オンライン講座

ディープラーニングの手法(CNN・RNN・Transformer・生成AI)

CNNの重み共有、LSTMのゲート機構によるRNNの勾配消失緩和、TransformerのSelf-Attention+位置エンコーディング、VAE・GAN・拡散モデルの生成原理——「どの課題をどの構造が解いたか」の対応を対比で説明できることが本章の得点を決める。

畳み込みニューラルネットワーク(CNN)は画像認識を中心に用いられる手法であり、福島邦彦のネオコグニトロンを源流とし、ヤン・ルカンのLeNetで実用化された。畳み込み層では、フィルタ(カーネル)を入力画像上でスライドさせながら積和演算を行い、特徴マップを得る。同一フィルタを画像全体で使い回す「重み共有」により、全結合層に比べてパラメータ数を大幅に削減できる。出力サイズはフィルタの移動幅であるストライドと、入力の周囲を埋めるパディングで調整する。プーリング層は最大値プーリングや平均値プーリングにより特徴マップを縮小し、位置の微小なずれに対する頑健性を与える。プーリング層自体には学習すべきパラメータが存在しない点は頻出論点である。これらの層を重ねた後、全結合層やGlobal Average Poolingを経て分類結果を出力する構成が典型である。

画像認識コンペILSVRCでは、2012年にジェフリー・ヒントンらのチームのAlexNetが従来手法に大差をつけて優勝し、ディープラーニングブームの起点となった。以後、小さな3×3フィルタを深く重ねたVGG、Inceptionモジュールで複数サイズの畳み込みを並列適用するGoogLeNet、スキップ結合(残差学習)により152層超の深層化を実現したResNet、幅・深さ・解像度を複合係数で同時に最適化するEfficientNetへと発展した。応用タスクでは、物体検出のR-CNN系(Faster R-CNN)と一段階検出のYOLO・SSD、セマンティックセグメンテーションのFCN・SegNet・U-Netが問われる。さらに学習済みモデルの活用として、出力層付近のみ付け替えて学習する転移学習と、全体を再学習するファインチューニングの区別、及び反転・切り抜き・Mixup等のデータ拡張(Data Augmentation)も出題実績が多い。

リカレントニューラルネットワーク(RNN)は、隠れ層の出力を次時刻の入力に戻す再帰構造により系列データの文脈を保持する手法である。学習は時間方向に展開して誤差逆伝播を行うBPTT(Backpropagation Through Time)によるが、系列が長くなると勾配消失・勾配爆発が生じ、長期依存関係の学習が困難になる。勾配爆発への対処としては勾配クリッピングが用いられる。LSTMは、誤差を内部に留め続けるCEC(Constant Error Carousel)と、入力ゲート・出力ゲート・忘却ゲートの3つのゲートで情報の書き込み・読み出し・忘却を制御することで勾配消失を緩和する。GRUはLSTMを簡略化した構造で、更新ゲートとリセットゲートの2つで同等の機能をより少ない計算量で実現する。過去と未来の両方向から文脈を捉える双方向RNN、エンコーダ・デコーダ構成で系列を別の系列に変換するseq2seqも併せて押さえる。

seq2seqはエンコーダの最終隠れ状態という固定長ベクトルに全情報を圧縮するため、長い系列では情報が失われる課題があった。これを補うのがAttention(注意機構)であり、デコーダが各時刻でエンコーダ側のどの部分に注目すべきかを重みとして学習する。2017年の論文「Attention Is All You Need」(Vaswani et al.)で提案されたTransformerは、再帰構造も畳み込みも用いず、Self-Attention(自己注意機構)のみで系列を処理する。各トークンをQuery・Key・Valueに変換し、系列内の全トークン間の関連度を一括計算するため、RNNのような逐次処理が不要となり並列計算が可能である。複数の注意を並列に走らせるMulti-Head Attentionで多様な関係性を捉える。ただし語順の情報は構造上保持されないため、位置エンコーディングを入力に加算して補う。この設計が現在の大規模言語モデルの共通基盤である。

Transformerを基盤として、大規模コーパスでの事前学習と下流タスクへのファインチューニングという枠組みが確立した。GoogleのBERT(2018年)はTransformerのエンコーダを用いた双方向モデルであり、文中の単語をマスクして予測するMLM(Masked Language Model)と、2つの文が連続するかを判定するNSP(Next Sentence Prediction)で事前学習する。一方、OpenAIのGPT系列はデコーダを用いた自己回帰型モデルで、次の単語を予測するタスクにより学習する。パラメータ数・データ量・計算量を増やすほど性能が向上するスケーリング則が経験的に知られ、GPT-3以降は少数の例示のみでタスクを解くfew-shot学習(文脈内学習)が可能となった。多様なタスクに適応可能なこれらの大規模事前学習モデルは基盤モデル(Foundation Model)と呼ばれ、シラバス上も独立の重要語である。

生成モデルはVAE・GAN・拡散モデルの3系統を対比して押さえる。VAE(変分オートエンコーダ)は入力を潜在変数の確率分布(平均と分散)として符号化し、そこからのサンプリングを復号して生成する。GAN(敵対的生成ネットワーク、Goodfellowら、2014年)は、偽データを作る生成器(Generator)と真偽を見分ける識別器(Discriminator)を競わせて学習する枠組みで、畳み込みを取り入れたDCGANも頻出である。拡散モデル(Diffusion Model)はデータに徐々にノイズを加える過程を逆向きに学習し、純粋なノイズから段階的に復元して生成する方式で、Stable Diffusion等の画像生成AIの中核をなす。大規模言語モデルの調整では、人間の選好を報酬モデル化して強化学習するRLHF(人間のフィードバックによる強化学習)が用いられる。事実に基づかないもっともらしい出力であるハルシネーションのリスクも試験で問われる。

この章の問題から3問

CNNの畳み込み層では、同一のフィルタ(カーネル)を入力全体で共有して用いるため、同規模の全結合層に比べてパラメータ数を大幅に削減できる。

正解 ○(正しい)

正しい。畳み込み層は「重み共有」により1つのフィルタを画像全体に適用するため、位置ごとに独立の重みを持つ全結合層よりパラメータ数が大幅に少ない。局所受容野と併せてCNNの本質的特徴であり、JDLA公式シラバス「畳み込みニューラルネットワーク(CNN)」の中核論点(LeCun et al., 1998, LeNet)。

CNNのプーリング層は、最大値プーリングなどの演算に用いる重みを誤差逆伝播によって学習する。

正解 ×(誤り)

誤り。プーリング層は最大値や平均値を取る固定的な演算であり、学習すべきパラメータ(重み)を持たない。学習対象となるのは畳み込み層のフィルタや全結合層の重みである。「畳み込み層=学習あり/プーリング層=学習なし」の対比を突くひっかけで、本試験の定番論点(JDLA公式シラバス:プーリング)。

GRUはLSTMよりも多くのゲートを持つため、表現力が高い代わりに計算コストが大きいモデルである。

正解 ×(誤り)

誤り。関係が逆である。GRU(Cho et al., 2014)はLSTMを簡略化したモデルで、ゲートは更新ゲートとリセットゲートの2つ。LSTM(Hochreiter & Schmidhuber, 1997)は入力・出力・忘却の3ゲートとCECを持つ。「簡略化=ゲートが少なく計算コストが小さい」がGRUの要点で、多い/少ないを入れ替えるひっかけが頻出。

この章の残り12問を解く

登録不要 ・ 採点と解説はその場 ・ 進捗は端末に保存

G検定(ジェネラリスト検定)の他の章

本ページの講義ノートと問題は、各試験の出題範囲に基づきAIが作成し、法令・基準に照らして別のAIレンズで敵対的に検証したものです(検証プロセス)。法改正等で誤りが見つかった場合は随時修正します。合格を保証するものではありません。