ディープラーニング G検定(模擬試験)
【G検定】まとめノート(人物編)
勾配降下法
機械学習のゴール。予測値と実際値の誤差をなくすこと
誤差関数を最小化すること
誤差関数を微分(最小化)した値がゼロになるような重みを求める
勾配(接線の傾き)を坂道に見立て、その坂道に沿って降りれば、いずれ平らな道に行き着くはず。
傾きがゼロ。微分値がゼロの点が目的の点
目的のxが得られるまで、勾配に沿って降りていき解を探索。それを繰り返し計算する
何回繰り返し計算を行ったかがエポック
ニューラルネットワークの学習とはこの勾配降下法を用いて繰り返し計算を行うこと
勾配降下法においてパラメータの更新量を決める(ア)学習率の決定は重要である.例えば(ア)が小さすぎると(イ)収束が遅くなるなどの課題が生じるため,(ウ)Adam、RMSprop、モメンタムなどの様々な(ア)調整手法が提案されている.
バーニーおじさんのルール
学習には調整が必要なパラメタ数の約10倍のデータが必要であるという経験則
学習率
ハイパーパラメータ。勾配に沿ってどれくらい進むかを調整する値。
学習率が小さいと,収束に時間がかかり,コスト関数の最終的な値は小さくなる.また,局所的最適解から抜け出せずそのまま収束してしまうことがある.反対に学習率が大きい場合は,収束するのが早くなるが,コスト関数は大きな値になりやすい.
コスト関数?
過学習(オーバーフィッティング)
対策
バッチ正規化 … 一部の層の出力を正規化する.
ドロップアウト … 学習の際に一部のノードを無効化する.
データ拡張 … データの水増しをしてデータの不足を補う.
L2正則化 … パラメータのノルムにペナルティを課す.
転移学習
データが少量しかないなどの理由で,対象のタスクを学習させることが困難なときに,関連する別のタスクで学習し,その学習済みの特徴やパラメータなどを利用することで効率的に対象のタスクを学習することができる.これを(ア)という.
正則化
汎化誤差を下げるためには正則化が用いられることが多い。
正則化とは損失関数の値とともにモデルのパラメータの二乗和を最小になるように学習することで、パラメータが小さくなり過学習の対策となる。
正規化
データを0から1に収まるようにスケーリングすること(平均を0分散を1)
標準化
各特徴量を標準正規分布(平均を0分散を1)に従うように変換
アンサンブル学習
複数のモデルを使用し、全体の汎化性能をあげる手法をアンサンブル学習と呼ぶ。
ドロップアウト
ランダムに一定の割合のノードを削除して学習を行う
ディープラーニングではドロップアウトを使って汎化性能を向上させている。ドロップアウトは非常に効果があり、現在では欠かせない技術となっている。
Lasso正則化
正則化にはL1正則化であるLasso正則化と、L2正則化であるRidge正則化の二種類が存在する。L1正則化を使用するとパラメータがスパースになる。Ridge正則化はスパースにはならない。
Ridge正則化
パラメータのノルムを小さく抑える
スパースなデータ
ほとんどが0、稀に0以外が並ぶデータのこと。スパース性を用いて計算量を削減する。日本語に訳すと「疎」
勾配消失問題
ディープニューラルネットワークにおいて層が深いと、誤差逆伝播法のときに誤差がどんどん小さくなり学習が収束しない問題がある。これを勾配消失問題と呼ぶ。
事前学習
勾配消失問題はモデルのパラメータの初期値に対して依存する。モデルを事前学習させることで安定した学習が可能となり、勾配消失問題を克服できると考えられる。
ReLU関数(正規化線形関数)
正規化線形関数はReLU関数とも呼ばれ、微分値が0以上の場合はそのままの値、0以下の場合は0となる。この性質により誤差逆伝播の際に、重みが小さくなるのを防ぐことができる。
DistBelief(分散並列技術)
DistBeliefはGoogleが開発した深層分散学習のフレームワークである。これは論文も出されていて、深層分散学習の仕組みを理解できる。
内部共変量シフト
大規模なニューラルネットワークを学習すると、ある層の入力がそれより下層の学習が進むにつれて変化してしまうことがある。これにより学習が止まってしまうことが考えられる。このことを内部共変量シフトと呼ぶ。
バッチ正規化
内部共変量シフトの対策はバッチ正規化が使用される。各層で出力を正規化することで、層が深くなっても入力の分布の変化が少なくなると考えられる。
プーリング層
プーリング層では畳み込み層の出力を圧縮するプーリングを行う。
プーリングは周りの平均値で圧縮する平均プーリング、周りの最大値で圧縮する最大プーリング、周りの値をp乗しその標準偏差をとるLpプーリングなどが存在する。
ハイパーパラメータ
学習率、活性化関数、隠れ層の数
グリッドサーチ
グリッドサーチは適切だと考えられるパラメータを複数用意し、それらの値の組み合わせを全通り総当たりで行い、最も良いハイパーパラメータを探す方法である。
ベイズ最適化
近年では、ベイズ最適化もハイパーパラメータの最適化の方法として注目されている。これは過去の試行結果から次に行う範囲を確率分布を用いて計算する手法である。
自己符号化器(オートエンコーダ)
自己符号化器はニューラルネットワークによる教師なし学習の代表的な応用であり,出力が入力に近づくようにニューラルネットを学習させる.主に(イ)次元削減のために利用されることが多く,活性化関数に恒等写像を用いた場合の 3 層の自己符号化器は(ウ)主成分分析(PCA)と同様の結果を返す.自己符号化器を多層化すると,ディープニューラルネット同様に勾配消失問題が生じるため,複雑な内部表現を得ることは困難であった.この問題に対して 2006 年頃に(エ)ジェフリーヒントンらは,単層の自己符号化器に分割し入力層から繰り返し学習させる(オ)層ごとの貪欲法を積層自己符号化器に適用することで,汎用的な自己符号化器の利用を可能とした.また,自己符号化器の代表的な応用例として(カ)ノイズ除去、ニューラルネットの事前学習、異常検知がある.
RNN(リカレントニューラルネットワーク)
RNN は(ア)時間依存の情報が含まれる系列データの処理に長けているニューラルネットワークである.RNN は,(イ)時間軸に沿って深いネットワークになるため誤差を逆伝搬する際、過去に遡るに連れて勾配が消えていってしまう勾配消失問題が起きやすいという特徴を持っていたが,RNN の一種である LSTM では(ウ)メモリーセル、入力ゲート、忘却ゲートを含む LSTM Block を組み込むことで,長期間の系列情報に対しても勾配消失せずに学習を行うことができる.
DNN
ディープニューラルネットワーク(DNN)の学習の目的は(ア)誤差関数、損失関数、コスト関数を最小化することであり,この最適化のために勾配降下法が利用される.しかし,勾配降下法にはパラメータの勾配を数値的に求めると(イ)計算量が膨大になってしまう問題があり,このような問題を避けるために誤差逆伝播法が利用される.またディープラーニングには過学習の問題もある.過学習とは(ウ)訓練誤差は小さいにも関わらず,(エ)汎化誤差が小さくならないことであり,これらの問題を克服するために様々な手法の開発が進められている.
DNN
ディープニューラルネットワーク(DNN)のパラメータ最適化手法として(ア)バッチ勾配降下法、ミニバッチ勾配降下法、確率的勾配降下法などの勾配降下法が適用される.しかし,勾配降下法には(イ)谷での振動、プラトーへのトラップ、局所的最適解への収束などの問題があり,これらの問題に対処するために,学習率をパラメータに適応させることで自動的に学習率を調整することができる(ウ)Adagradや勾配の平均と分散をオンラインで推定し利用する(エ)Adamが利用されてきた.
いろんな定理
機械学習の分野において有名な二つの定理について扱う.(ア)醜いアヒルの子の定理は,認知できる全ての客観的な特徴に基づくと全ての対象は同程度に類似している,つまり特徴を選択しなければ表現の類似度に基づく分類は不可能であることを示している.(イ)ノーフリーランチ定理は,全てのタスクに対して常に他よりすぐれている万能的なアルゴリズムは存在しないことを示している.
ディープラーニングのモデルは,確定的モデルと確率的モデルに分類することができる.これらのモデルの例として,確定的モデルに(ア)畳み込みニューラルネット、積層自己符号化器、再帰型ニューラルネットや確率的モデルに(イ)深層ボルツマンマシンがある.
ディープラーニングを含めて機械学習において精度の高い学習をするためには,観測データの適切な前処理が必須である.異なるスケールの特徴量を同時に扱えるようにするために,平均を 0 に分散を 1 に規格化する(ア)標準化や,特徴量の線形結合からデータ内の分散が大きくなるような特徴量を得る(イ)主成分分析(PCA)などは広く利用されている.また,画像処理の分野においては,減算正規化と除算正規化の処理を行う(ウ)局所コントラスト正規化などが前処理として利用され,(エ)OpenCVなどの画像処理に特化したライブラリで行うことができる.また,自然言語処理の分野においては,文章に単語が含まれているかどうかを考えてテキストデータを数値化する(オ)bag-of-words(単語の袋/BoW)や文章に含まれる単語の重要度を特徴量とする(カ)TF-IDF(単語の出現頻度 - 逆文書頻度(Term-frequency-inverse document frequency)
などがある.
問60まで 2019/11/4