ネットで調べ物をしていたら、下図のバナー広告を目にしました。
MatLab1を開発していることで知られているMathWorks社が自社製品の広告の一環でディープラーニング知識クイズを出題していることが分かりました。但し、解答解説は無し。そこで筆者がお節介ながら私家版解答解説を作成してみることにしました。2
実際のクイズはここからアクセス出来ます。
オープニング
バナー広告をクリックすると以下のページが表示されます。それでは、いよいよ問題を見ていこうと思います。
質問1: 予測結果と真のクラスを同時に比較する○○○○
正解は混合行列です。予測結果を横軸に、真のクラス(正解のこと)を縦軸に描画して、同時に比較出来る様にした物。
不正解の選択肢について。カオステーブルという用語は聞いたことが有りません。但し、カオステーブルというテーブルのブランドはどうやら有る様です。予測プロットも用語と言うよりは予測値をただプロットしただけのこと。残差プロットは重回帰分析での回帰診断のために用いられる散布図です。詳細は参考を参照。
質問2: ハイパーパラメータ
正解は学習アルゴリズムのパフォーマンスを向上させるためのパラメータ最適化です。ハイパーパラメータは最近でこそOptunaなど最適な数値を自動的に探してくれるライブラリが開発され、自動化されつつ有りますが、多くの場合、学習アルゴリズムの利用者自身で学習アルゴリズムの実行前に(手作業)で設定します。手作業でやっている時点で、最適化!?となりそうですが、それは近年学習アルゴリズムが複雑怪奇になっているからそう思うのかもしれません。
第3問: オーバーフィッティング
正解はモデルが学習データの情報を過剰に学習し、より大きなデータセットに対して一般化できなくなることです。過学習とも言います。徳川家康の遺訓に「及ばざるは過ぎたるより勝れり」(意味:やらないことはやり過ぎることより良い)というくだりが有ります。これは正に過学習のことを言っているという訳では有りませんが、学習データの特徴を忠実に学習し過ぎたために、本来の分類対象である未知のデータに対して性能が出ない(汎化できない)ことを意味しています。「〜し過ぎる」という日本語はネガティブな意味で使われることが多い様に思いますが、過学習もまた然りだと思います。
第4問: 画像分類
正解はセマンティックセグメンテーションです。動画や静止画の画像中に何が写っているかを認識する時の学習モデルに学習させる学習データを作成する時に利用されます。(MathWorks社による詳しい解説はこちら)
不正解の選択肢について。回帰分析は連続値の予測や、ある値Xに対する応答Yを求める分析です。シーケンス分類とは時系列データの分類を指します。(MathWoks社による詳しい解説はこちら)LSTM(Long Short Term Memory)が有名です。そして、紛らわしいのがピクセルセグメンテーション。画素(ピクセル)単位でクラス分類ということでこちらを選んでしまいそうですが、機械学習界隈の用語としてはセマンティックセグメンテーションです。
質問5: 回帰モデル
正解は気温、日付、時刻の変化などの数値の応答を予測するです。回帰分析では回帰モデルを用いて連続値を求めます。気温、日付、時刻の変化など、どれも連続的に数値が変動します。
不正か良いの選択肢について。予め定義されたカテゴリにデータを割り当てる、データの中から予測されたデータの分類と真のクラスラベルを比較するは教師有り学習で行われる行程です。類似性に基づきグループ内の応答をクラスタリングしてパターンを見つけるのは教師無し学習で行われる行程です。
質問6: データに内在するパターンの発見
正解は教師無し学習です。機械学習のアルゴリズムは大まかに教師有り学習、教師無し学習、強化学習の3つに分類されます。教師有り学習はラベル付けされたデータを学習、つまり問題とその答えを同時に学習させます。それに対して教師無し学習は問題は与えられますが、答えは与えられません。問題に内在するパターンを抽出(クラスタリング)します。強化学習はある行動をした時の報酬が最大となるのは?というパターン(所謂最善手)を探索しながら学習します。コンピュータが人間に勝つことは不可能と言われていた囲碁で圧倒的な性能を叩き出し、元囲碁の世界チャンピョンを破りました。
質問7: 生成モデル
正解は敵対的生成ネットワークです。英語ではGenerative Adversarial Network(GAN)と言います。警泥遊びに例えられたりします。詳しい解説はMathWorksによる解説が有ります。
不正解の選択肢について。長・短期記憶ネットワーク(LSTM)は時系列データの分類に使用します。YOLOv3ネットワークは動画像認識に、超解像度ネットワークは低解像度の画像から高い解像度の画像を生成するのに利用します。
質問8: 学習済みモデルの再利用
正解は転移学習です。事前学習済のネットワークを利用することで、学習時間の削減や、モデルの最適化が進みやすいことが知られています。
質問9: 時系列モデル
正解は長・短期記憶ネットワークです。Long Short Term Memory(LSTM)とも言い、人間の脳の長期記憶、短期記憶のメカニズムの工学的なモデルと言っても良いでしょう。流石はMathWorks。親切にも詳細なる解説が用意されています。
不正解の選択肢について。まず、アテンションネットワークは画像分類に、シャムネットワークは次元削減にそれぞれ使われます。ミニバッチアルゴリムはデータセットから少量のデータ(ミニバッチ)を取り出して、ミニバッチ単位でニューラルネットワークを学習させる方法です。
質問10: 検証データ
正解は学習中にモデルがどの程度一般化するかテストするためです。学習中にどの程度学習出来ているか検証するために、多くの場合、学習を開始する前に学習データを学習に使用するデータと検証データに分けます。検証データは学習には使用しません。さらに学習後にテストデータを学習データとも検証データとも異なるテストデータを用いて、学習の結果としてどれだけ汎化(一般化)が進んだか検証します。
因みに筆者は。。。
筆者の解答結果は以下でした。。。ハイパーパラメータとセマンティックセグメンテーションを間違えました。ハイパーパラメータは手作業で設定→モデルの最適化という発想に頭の中で繋がっていませんでした。。。(理解不足) セマンティックセグメンテーションはうろ覚えで間違えてしまいました。。。
但し、MathWorks社は数値計算ソフトウェアの大手。尚且つMatLabは黎明期からディープラーニングのMatLabへの取り込みに熱心でした。そんな企業から冗談でも「プロですね!」と言われるのは嬉しい3ものです。