きょうも亀だけど

機械学習やデータサイエンスの勉強記録など

Python 3 エンジニア認定データ分析試験に合格しました

先日、 Pythonエンジニア育成推進協会の「Python 3 エンジニア認定データ分析試験」のベータ試験を受験し、無事合格しました。
次回受ける方の参考に、そして己の振り返りとして書きます。

受験時のスペック

  • データサイエンスや機械学習セミナーには数回参加
  • 業務でPythonを使った分析はしたことがない

G検定に合格してからしばらく経ちますが、相変わらず業務で分析はしていません。 その間にE資格に合格しています(後で記事にしたい)。

受験理由

1. 分析と名のつく試験を受けたかった
分析に特化した資格はまだ少ないため、簡単に他者に分析力をアピールできるこの資格は貴重だと思います。資格を取れば一定のスキルの証明になると考えました。

2. 他者へのアピール
1.と関連しますが、スキルを証明することで他者へアピールできると考えました。G検定を取得してから徐々にですが、先輩や上司、他部署のメンバーから「こいつは分析や機械学習のスキルを持ってるんだな」と認知されるようになりました。さらにアピールをするいい手段だと考えました。

3. スキルアップが面白い
いつもの動機です。徐々に取得資格が増えてきたので、どれをアピールするか悩むようになってきました。順調に使える呪文が増えているので楽しいです。

4. ライブラリの機能を広く知りたかった
Numpyやpandas、Matplotlibの機能は必要に応じて調べることで徐々に習得してきました。ただ、一般的には基本とされる機能も自分が使う機会がないとそもそも調べないので、抜け落ちている部分も多いんだろうと感じていました。どこまでをまずは把握しておくとよいかの指針を知りたいと思いました。

勉強方法

主教材である以下の書籍を購入しました。
https://www.shoeisha.co.jp/book/detail/9784798158341

試験チケットとセットで売っていたものを買いました。データエンジニアの役割や数学の章は知識として固まっていると感じたので流し読みしました。Numpy、pandas、Matplotlib、scikit-learnの章はざっくりと全体を把握し、自分が知らなかった機能を中心に読み込みました。できればJupyter Notebookですべて写経したかったのですが、サボってしまいほとんどできませんでした。試験当日早朝に慌てて叩き込みました。

試験について

思ったよりも簡単で、時間が余りました。満点も十分狙えたと思います。Twitterで受験報告している方も大体8割以上は取っていたようです。
正直、「これに受かったからバリバリ分析できるぜ!」とはならないと思いました。どちらかというと、「分析を行うにあたってこういう基本的なことを知っておいてね」というレベルだと感じました。今後、上位資格が出てくることを期待したいなと思います。

今回はベータ試験ということもあり、試験後にアンケートがありました。問題の誤記や違和感があるところを試験中にメモし、アンケートに回答する形でした。入力文字数が制限されていたので、メモした内容すべてを記入できなかったのが残念でした。今回のアンケートをもとに試験の精度が上がっていくのだと思います。

合格後の効果

知識の幅が広がった
勉強の過程で初めて知った機能がいくつかありました。こういう機能があるというインデックスを貼れたのは良かったと思います。

これから

次は専門統計調査士を受けるつもりです。今年こそリベンジし、専門統計調査士の認定証をゲットします。

LightGBMではOne-hot encodingは不要

blog.amedama.jp

orizuru.io

LightGBMではpandasのカテゴリ列の型をcategoryにしてあげれば、数値変換するだけでカテゴリとしての分岐をしてくれるとのこと。

One-hot encodingだるいと思ってたけど、とても便利。
is or is notで分岐するという仕組みも分かったので良かった。

G検定に合格しました

先日、日本ディープラーニング協会のG検定(ジェネラリスト検定)を受験し、無事合格しました。
次回受ける方の参考に、そして己の振り返りとして書きます。

受験時のスペック

データサイエンスや機械学習セミナーには長期のものを中心に数回参加していました。そのため、ある程度の基礎知識は把握できていたと思います。

業務ではディープラーニングを使ったことは一切なかったため、その辺の知識は上記セミナーで学んだ内容のみです。

受験理由

1. ディープラーニング周りの知識が薄いためその習得
スペックに記載の通り、ディープラーニング周りの知識が薄く、実装面含めて基礎知識を習得する必要があると感じていました。

2. 他者へのアピール
セミナーで得た内容を社内勉強会でフィードバックするなど、個人としてこういう分野に興味があるとアピールをしていました。ただ、それだけだとアピールとしてはまだ弱く、「ふーん」くらいで終わっているなと思っていました。
また、普段の業務において技術力に自信があるとは言えず、先輩や上司からも技術力があるとはみなされていません。
資格を取ることで、一定の努力をし、知識があるということを証明できると考えました。

3. スキルアップが面白い
単純に保有資格が増えるのは面白いですよね。話のネタにもなりますし、ドラクエで新しい呪文を使えるようになったときのワクワク感が得られます。

勉強方法

以下の書籍を購入しました。
www.shoeisha.co.jp

公式テキストが発売されたのはかなりありがたかったです。G検定の推薦図書は3冊ありますが全てに目を通すのはしんどそうだなと思っていたので、1冊でいけるのはいいぞと。
帰宅時の電車の中で読み込んでいきました。章末問題を解きつつ1周目はざっくりと読んで全体を把握しました。2周目はしっくり来ていないところ、覚え切れていないところを中心に読み込みました。
G検定の翌日に統計検定を受験する予定だったため、11月前半にG検定の勉強をし、試験直前は時々脳内で復習する程度でした。

試験について

とにかく時間が足りませんでした。オンライン試験であるため書籍やネットで調べられるのですが、ある程度自信がある問題も念のためにと調べてしまったことが原因です。一応問題を1周してから残しておいた問題に取り組みましたが、時間切れで埋められなかった問題も結構あった気がします。正直不合格だろうと思ってました。
問題のバリエーションは様々なものがあり、計算問題も出ました。公式テキストに載っていない時事的な問題も出題されたので、公式テキストだけで満点取るのはほぼ無理だろうと感じました。

合格後の効果

1. 自信がついた
合格という成果が出せたため、自信がつきました。AIやディープラーニングの話を他の人とするときに「あっ、この話G検定で見たことある!」的なこともあり、はっきり回答できることが増えたのはよかったです。

2. 職場で聞かれるようになった
社内のベンダー資格報奨制度に適用できるか管理部署に確認したところ、流れで上司陣に合格したことが伝わりました(適用可否が分かり次第、自分から伝えるつもりではいました)。
まだマイナーな資格であることからG検定について調べたようで、AI関連の資格に合格したと理解したようです。その後、上司から個別に呼び出され、AIをビジネスに活かすに当たってのアドバイスを求められました。元々この分野に興味を持っていることについて上司は把握していましたが、改めて私が勉強を続けていることを認識したようです。当初目的の1つである「他者へのアピール」は無事達成できたようです。

これから

次はE資格を受けるつもりです。仕事の関係上、セミナーを受けるのは来年度以降になりますが、技術面でのスキルアップを図ろうと思います。

文字列からクラス名を取得してインスタンス生成

これのgetattrを使うパターンでうまくいった。

前回の記事で書いたyamlファイルから情報を取得する方法を利用し、

必要に応じてインスタンスを作成する仕組みを作れた。

便利。

qiita.com

yamlの読み込み

設定ファイルを読み込む形を作りたくて調べた。

最初はxmlでやろうと思ったけど、yamlの方が可読性が高いとのことで

使ってみることにした。

 

python.swift-studying.com

これでうまくいった。

 

時系列分析の交差検証の方法

どうやってやるのか全くわからなかったけど以下のやり方があるとのこと。

ask.fm

medium.com

最後のp日を残して検証用にするのか。

なるほど。

前処理大全にも似たようなことが書いてあった。

覚えよう。