シリーズPython① 「Python3エンジニア認定データ分析試験」時短学習法
はじめに
「Python3エンジニア認定データ分析試験」に合格しました。
得点は900点未満です(残念)。
この記事は主に「時短学習法」を取り扱います。
試験に興味をお持ちの方、学習中の方などの参考になれば幸いです。
1.Python3エンジニア認定データ分析試験の概要
(1)Python3エンジニア認定データ分析試験とは
Pythonを用いたデータ分析の基礎的なテーマを取り扱っています。
数学の基礎、NumPy、pandas、Matplotlib、scikit-learnなどを範囲に含んでいます。
試験制度の詳細は試験公式サイトをご覧ください。
(2)試験の概要
私が受験したときのことを例示します。
時間 60分
出題数 40問
合格得点 70%以上(満点1000点中、700点以上)
出題方式 CBT方式(パソコンで選択肢を指定する)
出題内容 明かせません
試験開始前に問題を漏らさないことの承諾を求められます。試験に持ち込みできるもの ありません
受験手続きの概要
オデッセイコミュニケーションズに登録をする必要があります。
試験会場はオデッセイコミュニケーションズのサイト等で探します。
試験会場の運営者に受験の申込み・決済をします。試験日は2.で申込みするときに選択します(通年開催されています)。
2.学習方法
(1)学習前の知識の状況
学習前の私は、ぼちぼちとPythonを用いた機械学習を試行していました。
Pythonのコードは主にコピペで書いていました。
ゼロから何も参照せずにコードを書くことには慣れていない状況です。
(2)実施した学習の概要
試験公式サイトがおすすめしている「3つの無料オンライン模擬試験」を実施する学習法を、約10日間にわたって実践しました。
無料で模擬試験をご提供してくださり、ありがとうございました!
①プライム・ストラテジーさん
第1回から第3回まで全3回の模擬試験を提供しています。
繰り返し試験を実施できますが、同じ回は同じ問題が出題されます。
私は全3回の模擬試験を1回ずつ実施しました。
②DIVE INTO CODEさん
実施の都度、ランダムに問題を出題する方式で提供しています。
私は複数回の模擬試験を実施しました。
③◯◯社
2023年7月改正前に模擬試験をご提供されていた◯◯社さんですが、2023年12月29日時点で模擬試験を提供していないようです、
(3)時短学習法
①無料のオンライン模擬試験の活用
上述の模擬試験と全く同じ問題は、本試験では出題されていない印象です。
しかし、模擬試験で獲得した知識があれば、本試験で合格できると思います。
模擬試験の出題問題を逐一掘り下げて理解を促進する方法を推します。
模擬試験を繰り返し実施して、毎回90%以上の得点を取れるようになったら、おそらく本試験の合格圏に達するでしょう。
しっかりと復習して知識を手放さないことが大切です。
②最初に取り組む無料模擬試験
手始めに「①プライム・ストラテジーさん」の第1回を受験することをおすすめいたします!
第1回には本格的な解説が付いているからです。
特に次の2点で、とても参考になりました。
・数学の基礎
・問題の傾向
数学の基礎については、微分、積分、指数、対数、三角関数、ベクトル・行列、確率・統計の基本を、丁寧に解説しています。
本試験で役に立つと思います。
本試験では、コンピュータや筆記用具を計算に使えませんので、模擬試験で暗算を訓練するのが良いと思います。
問題の傾向については、データエンジニアの役割、Pythonコードの補完や実行結果など、本試験の出題形式と傾向を掴めると思います。
本試験の雰囲気を模擬試験で慣れておく、これに尽きます。
③Pythonコードの学習法
模擬試験では、Pythonコードの穴埋め問題や、実行結果を問う問題が出題されます。
実行結果の出題には、値の代入が参照かコピーか、配列(ベクトル・行列)の計算結果(ブロードキャストを含む)、グラフの引数と描画結果などを含みます。
模擬試験のPythonコードをJupyter Notebookなどの実行環境で実際に動かすことをおすすめします!
自ら実際に動かすことで、記憶の定着に結びつけるのです。
実行環境はインストール不要な「Google Colab」を利用するのがお手軽です。
問題からコードをコピペする方法、写経(コードを自ら入力)する方法、どちらでも良いと思います。
そして、ぜひやっていただきたいのは、変数・配列・データフレーム等の中身を逐一確かめることです。
データ構造を理解しておくと、スムーズに解答できるようになります。
タプル、辞書、リスト、NumPy配列、pandasデータフレーム、pandasシリーズはそれぞれ、一癖二癖あるデータ構造を持っているのです。
値に加えて、型、形状などの出力結果を確認しましょう。
たとえば、AというNumPy配列(ndarray)があったら、次のコードを実行して、出力結果を理解します。
・A
・type(A)
・A.shape
・A.dtype
・A[0][0]
・A[0 , :]
模擬試験で出題された次の事項は、実際にコードを自環境で動かして確認したことで、いろいろと役に立ちました。
・データの形状
・参照渡しとコピー渡し
・ブロードキャスト
・データフレームの抽出と出力
また、機械学習の経験が少ない場合は、scikit-learnの前処理と基本的なアルゴリズムの「コードパターン」を押さえるとよいと思います。
前処理は正規化・標準化、エンコーディング、訓練/テストデータセット分割あたりでしょうか。
アルゴリズムは、線形モデル、サポートベクターマシン、決定木、ランダムフォレスト、K-means法、PCAなどです。
引数、fit、fit_transform、predict、predict_probaあたりは押さえておきたいです。
④自信のない問題・間違えた問題
自信のない問題は、模擬試験中に問題の番号(可能であれば画面のコピペ)を控えておきましょう。
そして試験終了後に、自信のない問題と間違えた問題の正誤の理由をネットで調べましょう。
4~5つの選択肢の全てについて調査して、「この選択肢は◯◯だから正しい/◯◯だから誤っている」と言えるレベルで理解して、模擬試験の2周目以降に確実に正解できるように取り組みましょう。
(4)本来的な学習法
時短学習法は試験対策のみに注力しがちになります。
体系的に学びたい方は、主教材である「Pythonによるあたらしいデータ分析の教科書 第2版」に取り組み、並行して模擬試験を受験するのが良さそうです。
プログラミング未経験の方に向けて、試験公式サイトが参考図書を紹介しています。
また、試験公式サイトでは、いくつかの学習支援サイトを参考教材として紹介しています。
さらに、ネットには受験記がたくさん公開されています。
こうした受験の諸先輩の経験も活用できそうです。
3.本試験の注意点
①時間配分
模擬試験に慣れると、20分程度で40問を解けるスピードを獲得できると思います。
しかし、本試験では初見の問題が多いでしょう。
したがって、模擬試験よりも解答に時間がかかることが予想されます。
時間配分に気をつけましょう。
たとえば、1問1分を予定する場合、10問ごとに時間経過を確認するのがよさそうです。試験用のPCに表示される時間を確認しましょう。
②見直し
40問解いたあと、1問目に戻って、解答の見直しをしましょう。
うっかりミスを見つけたり、クリックしたつもりなのにチェックできていない箇所を見つけたりと、意外に得点を伸ばすことができます。
類似問題が複数出題された場合には、解答の整合性を確認しましょう。
時間配分をコントロールして、時間に余裕を持てれば、見直し時間を確保できると思います。
結び
(1)結局、役に立つの?
個人の感想です。
時短学習法であってもとても役に立ちました!列挙します。
試験に合格しました!
いままで気にしなかった(避けてきた)データ構造の理解につながりました。
Pythonのコードを書くときに、動きの「当てが付く」レベルがアップしました。エラーの抑制につながります。
ブログのネタができました w
「すぐ役に立つことは、すぐ役に立たなくなる」という格言があるので、継続して役立つ「知恵」に昇華させたいです。
(2)おわりに
この記事をきっかけにして試験に挑戦する人が増えたなら、とても嬉しいです。
おわり