20歳でJDLAのG検定・E資格に合格した話とその後の変化

##G検定・E資格とは

JDLA(日本ディープラーニング 協会)が実施する、AIスキルが問われる試験です。

[JDLAさんの公式サイト](https://www.jdla.org/business/certificate/?id=certificate_No01)によりますと、G検定とE資格は以下のように位置づけされています。

**G検定**
*ディープラーニング の基礎知識を有し、適切な活用方針を決定して事業応用する能力を持つ人材*

**E資格**
*ディープラーニングの理論を理解し、適切な手法を選択して実装する能力を持つ人材*

では、どのように勉強したかを紹介していきます。

##G検定の勉強法

僕は以下の手順で勉強しました。

1. [G検定の公式テキスト](https://www.amazon.co.jp/dp/4798157554/)を読んで概要を掴む
2. 「[これならわかる深層学習](https://www.kspub.co.jp/book/detail/1538283.html)」でより専門的に深層学習について知る
3. [Study-AI](http://study-ai.com)の模擬試験を受け、間違えたところを徹底的に調べる
4. [AI白書2019](https://www.amazon.co.jp/dp/4049110148/)のうち、AIの利用動向や法律の部分を読む(全部読む時間はない

おそらく他の方もこれと同じような勉強をなされていると思います。

この4つはかなり重要なので、絶対に行うようにしましょう。

特に、2の模擬試験に関しては自分の抜けていた部分を知ることができるのでおすすめです。

##G検定を受けた感想

上記1〜3をきちんとやっていれば、7割以上は楽勝で解けると思います。

**問題数が多いので、解ける問題からやっていきましょう！**

つまり、7割の問題をササッと解いて、あとの３割はじっくり考えるといった感じです。

##E資格の勉強法

1. [JDLA認定プログラム](https://www.jdla.org/business/certificate/?id=certificate_No04)を受ける
2. 生のPythonでCNNを構築できるようにする
3. LSTMの核となる重要な数式は覚える

G検定と大きく違うところは、実装部分が問われるところですね。

また、JDLA認定プログラムを受ける必要があるのも相違点です。

##1.JDLA認定プログラムを受ける

E資格を受ける前に、このプログラムを修了しないといけません。

僕はAIジョブカレという企業の講座を受講しました。

会場で講義を受ける奴ではなく、**動画講義のみ**のコースで18万円ほどでした。

動画での講義にした理由は以下の通りです

- 自分のペースで勉強したかった
- 会場まで行くのが面倒
- 動画講義でも、講義資料PDFは別にもらえる

会場に行かなくてもしっかりと勉強できるので問題ないと感じました。

###講義内容

以下の3つの講座を受講しました。

- Python・数学講座
- 機械学習講座
- ディープラーニング講座

数学講座は授業で習ったことがほとんどで、微積分や情報理論や線形代数がメインです。

機械学習講座はsklearn,numpy,pandasを使いこなせるようになります。

ディープラーニング講座はCNN,LSTM,DQN,VAE,GANなど幅広く知ることができます。

また、サンプルプログラムももらえるので実装対策もできるようになっています。

###終了テスト

認定プログラムを終了する証明をもらうために、終了テストを受ける必要があります。

合格ラインは８割とかだった気がします。

しかし、講座を受けた人なら簡単に解けるものばかりです。


##2.生のPythonでCNNを構築できるようにする

ディープラーニングの理論をプログラムの観点から理解するために、TensorflowやKerasを用いずにディープラーニングが構築できるようになっておくと良いです。

- **シグモイド、ソフトマックス、ReLUの実装**
- **勾配降下法(SGD,Momentum SGD, AdaGrad等)の実装**
- **各レイヤーの順伝播、逆伝播の実装**
- **畳み込み槽の出力サイズの算出法**
- **numpyの操作**

この辺りが実装できるようにしておきました。

画像データのロードやグラフへの出力等の細かい部分は覚えなくても良いですが、上記のような「ディープラーニングの本質的な部分」に関しては実装問題として出題されることがあります。

ちなみに、生のPythonでの実装は全て「[ゼロから作るDeep Learning](https://www.amazon.co.jp/ゼロから作るDeep-Learning-―Pythonで学ぶディープラーニングの理論と実装-斎藤-康毅/dp/4873117585/ref=sr_1_1?adgrpid=78743629850&gclid=EAIaIQobChMIvuSIqsTG5wIVRaSWCh3yQwjnEAAYASAAEgIB8fD_BwE&hvadid=396578621885&hvdev=c&hvlocphy=1009279&hvnetw=g&hvpos=1t1&hvqmt=e&hvrand=4075857265438394413&hvtargid=kwd-851214457148&hydadcr=27494_11564719&jp-ad-ap=0&keywords=ゼロから作るdeep-learning&qid=1581322223&sr=8-1)」の本に載っています（または本に書いてあるリンクからサンプルプログラムをダウンロードすると入手できます）。

##3.LSTMのLSTMの核となる重要な数式は覚える

LSTMの構造や、順伝播・逆伝播の実装は覚えておいた方がいいです。


##E資格を受けた感想

思ってたより難しかったですが、合格ラインが低く設定されているのか、合格できました。

中には「何それ！？」というような、全く知らないモデルやアルゴリズムが出てきてびっくりしました。

また、SSDやYOLOの詳細なアルゴリズムの説明など、細かいところも出題されていた気がします。

**ディープラーニングに気を取られすぎて、機械学習や数学の勉強を疎かにするときついかも。**と言った印象です。


##合格後、何か変わったか

合格してから1年ほど経ちますが、受けた恩恵は以下の通りです。

- JDLA主催のイベントに招待され、AIに興味がある方たちと交流できた
- AI関連のインターンへのお誘いがきた
- AIに強い興味関心があるという証明になった

これぐらいです。

E資格を取得するとAIに関係する一通りの知識や実装能力は持っているという証明にはなります。

ですが、やはり機械学習の実務経験があったり、Kaggleで高成績を収めていたりした方が企業側からすると良い印象を受けるみたいです。

他の方がおっしゃる通り、企業にスカウトされたりすることはありませんね（笑）

##最後に

僕がE資格を取得した時点で、大学生の中でE資格を取得している人は全国に30人ほどしかいなかったようです。

学生がG検定・E資格を取るメリットがもう少しあると嬉しいですね。

最後までお読みくださりありがとうございました。