はじめに
AIの資格試験であるG検定を受けてみました。まずは申し込んでから勉強を始めるというスタイルです。ITパスポートもデータサイエンティスト検定も何とかなったので、何とかなるだろうと思ってお高い受験費用を支払いました。
しかし、その考えは甘かった・・・
勉強したもの
AIは興味はあって、生活の中ではお世話になっている程度の素人です。一応ITリテラシーは備えているつもりでしたが、AIは本当に特殊な世界で、とにかくとっつきにくかったです。
公式本を読む
kindleの電子版を買って読みました。馴染みのない言葉ばかりで内容が全く頭に入ってこない苦痛の読書。シグモイド関数とかシンギュラリティはまだ良いとしてCNNとかRNNとかDQNとか、さらにはカタカナの人名もたくさん出てくるのがつらかったです。下記のサイトでまとめのまとめをしてくれていたので、一読した後はこちらがおすすめです。
Udemyで学ぶ
本だけでは全く頭に入ってこなかったので、おなじみUdemyに頼ります。
この講座はとてもかみ砕いていろいろ説明してくれるのは良いですが、講師の方が特徴的すぎて万人向けではない感じがしました。説明の途中急に沈黙したかと思ったら大きなクシャミをしたりするので、心臓に悪いです。
なかなか頭に入らないのとボリュームが多いので、思ったよりも進捗せず、結局試験当日の朝に一通り読み終わり、Udemy視聴がひと回りしました。そして不安な状態のまま試験を受けます。
試験当日
自宅のPCで受験しました。190問を120分で解くので、1問あたり37秒!問題が多すぎます。残り時間が足りなくなったらラストスパートをしようと思っていたのですが、気づいたらタイミングを逃しており、最後の3分で15問くらい処理しましたが、何問かは残してしまいました。時間配分は本当に大事です。
おわりに
これは本当に入門者向けの資格なのかな、と何度もくじけそうになり、さすがに今回は合格を逃したと思ったのですが。。。なんと合格!
次回の試験日程も発表されて、2周目の勉強を始めようかと思っていたタイミングだったので、通知メールを見た瞬間の解放感は強力でした。
おまけ
覚えにくかった言葉を自分なりにまとめたカンペです。少しだけ役に立ちましたが、実際の試験では公式本になかった言葉もしばしば出てきたので参りました。
強化学習は環境から得られる情報をもとに、どのような行動をとるべきかを学習する方法
LSTM(Long Short Term Memory)における忘却ゲートはシグモイド関数である。
RNNはBPTT(Back Propagetion Through Time)を用いた学習が有効な場合がある。
RNNでは、入力データと過去の隠れ層の状態から出力を計算する。
SegNetはセマンティックセグメンテーションタスクに用いる手法の一つで、エンコーダで得た特徴マップをデコーダで画像サイズまで徐々に拡大する。
GAN(敵対的生成ネットワーク)においてジェネレータでランダムなベクトルから画像を生成して、ディスクリミネータで本物か偽物化を予測する。
画像生成モデルの代表は変分オートエンコーダとGAN(敵対的生成ネットワーク)
MobileNetは、計算量削減を目的としたモデルで、その要素技術は深さごとに分離可能な畳み込み
Faster R-CNN、YOLO、SSDは画像の分類と一の特定とを同時に拘束に行う手法
fastTextでは辞書に登録されていない単語を文字ベースのn-gramを用いて推定する
自然言語処理の形態素解析においてある文章・句を意味を持つ最小の単位に分割する。
word2vecで2つのベクトルの角度によりコサイン類似度が求められる。
WaveNetは音声生成のためのディープラーニングのネットワーク
DQNは行動価値関数(Q関数)ベース
モデルフリー強化学習=(Q学習、方策勾配法)、モデルベース学習=(Alpha Zero、世界モデル)
トランスフォーマーは多頭注意、位置符号化器、マスクか言語モデル
Word2Vecは階層的ソフトマックス、CBOW
ResNetはMicrosoftが開発した物体認識を競うILSVRCでスキップ結合で高い認識率を示した
LSTMは内部にゲート構造を設けて長い系列を遡ると学習が困難になる問題を解決した
seq2seqは翻訳元言語をエンコーダにいれて翻訳先言語をデコーダから出す