株式会社エヌ・アンド・アイ・システムズ

営業時間 9:00~18:00(土・日・祝日は除く)

株式会社エヌ・アンド・アイ・システムズ

Event&Seminar

DXエンジニアリングサービス事業部のYです。

2020年10月2日から12月18日にかけて、『インプレス × 武蔵野大学 社会人育成プログラム 第3期 データサイエンス講座<AIビジネス編>&<AIエンジニア編>』がオンラインにて開催され、参加しました。

AIビジネス編、AIエンジニア編で各6回ずつ(計12回)、企業や大学等の第一線で活躍されている講師の方々から毎週貴重なお話を聞くことができました。ここでは、「AIエンジニア編」の各回で学んだことや感想をお話します。

<筆者のプロフィール>
IT未経験中途入社(2019.06)。前職は建設業界でトンネルの施工管理を3年間していました。趣味でPythonスクールに通っているうちに、ITの開発がしたいと思い転職し、当社へ入社しました。

 

本講座を受講した理由

私はPythonエンジニア認定基礎試験に合格しているものの、Pythonを使った機械学習やアルゴリズムの考え方、データ分析手法についての知識や実務経験が菲薄だったため、知識を増やしたいと思い受講させていただきました。

 

ここからは講義のテーマ毎に感想を述べます。(全6回)

 

第1, 2回 「Pythonを使った機械学習実践」

(講師 株式会社フォトロン 研究開発センター センター長上席研究員 卯木 輝彦氏)

<受講内容>
ディープラーニングの歴史/Google Colaboratory (Colab)の使い方/TensorFlowによる手書き文字分類プログラムの実行/学習済みモデルの利用/転移学習の実装/勾配ブースティングの概要/xgboostによる実装/特徴量の重要度

<感想>
毎回、受講内容の量が多く、受講後に送られる講義動画を見返しながら復習していました。初心者には少し難しい専門用語が登場するため、その度に意味を調べながら聞いていました。Python未経験者が受講生の大半を占めており、Python初心者向けの説明が多くされていました。Google ColabというGoogleのアカウントがあれば自分のPCに環境構築せずにPythonのプログラムをブラウザ上で実行できるサービスがあるので、このツールなら誰でも簡単にPythonを使えるなと思いました。また、手書き文字分類のモデルを作成するためのプログラムについては、関数毎にどのように処理しているか説明してくれているので、処理の流れを詳しく理解できました。この2回の講義で私が得た知識は、データが大量にあれば、わずか数行のプログラムで分類作業ができること、学習済みモデルの処理速度はGPU、TPUの性能に左右されることです。

 

第3, 4回 「機械学習のアルゴリズムの考え方 ―機械学習の数理的背景を理解しよう」

(講師 学習院大学 教授 申 吉浩氏)

<受講内容>
機械学習の基本手順「特徴設計→類似度関数設計→データ正規化→パラメータ最適化→学習アルゴリズム適用→結果分析」のサイクルを一巡し、機械学習アルゴリズムを適用した結果に基づき、問題点を洗い出し、改善策を探索する。改善策をもとに、サイクルをもう一度まわし、結果が改善されることを確かめる。この過程で、データ正規化、k最近傍法、多次元尺度法、サポートベクトルマシン、交叉検証など、機械学習の基本手法を学ぶともに、混合行列、正答率、適合率、再現率、Fスコアといった基本的な評価尺度を学ぶ。ニューラルコンピューティングの基礎理論を学ぶ。

<感想>
この回では、専門用語が登場する際は必ず補足説明を入れていただけたり、計算式を使う際などに考え方を必ず絵やグラフに書き起こしていただけたので、非常に分かりやすかったです。この2回の講義で私が得た知識は、機械学習の基本的な考え方(1.訓練データを与える/2.学習させる/3.モデルができる/4.試験データをモデルに与える/5.予測ができる/6.予測がどれくらい当たるか正答率を導く)です。データが少なくても訓練データの予測精度とテストデータの統計信頼度を担保できるクロスバリデーション(交差検証)という手法。データの分析結果は答えが1つとは限らないので、他の分析手法を検討し直して実践すること。そして、データの正規化次第で同じ分析手法でも正答率が上がることがあることです。一番印象に残ったことは、ニューラルネットの設計で必ず目にするシグモイド関数が使われるようになった経緯が、ニューラルネットの歴史と大きく結びついていたことです。

 

第5, 6回 「二刀流でKaggleに挑戦! 実践的な機械学習の使い方を学ぶ」

(講師 武蔵野大学データサイエンス学部 准教授 福原 義久氏 / 武蔵野大学 データサイエンス学部 助教 岡田 龍太郎氏)

<受講内容>
Kaggleについて/Kaggleの画像識別課題にディープラーニングを使って取り組む/学習曲線の見方/モデルの調整/性能向上のための前処理/学習データの水増し/データの整形/欠損データの埋め方について

<感想>
私はデータ分析業務をしたことがないので、Kaggleについては無知でした。この講義でKaggleの使い方を丁寧に教えていただいたので、自分でKaggleを利用することができるようになりました。この2回の講義で私が得た知識は、機械学習によるデータ分析のプロセス(1.データを観察する/2.仮説を立てる、データ分析方針を立てる/3.前処理[欠損値の処理](データクレンジング/特徴量エンジニアリング)/4.訓練データ、テストデータを作る/5.機械学習にかける/6.モデルを検証する/7.1に戻って修正する/8.パラメータチューニング)の中で、「1.データを観察する」ことが欠損値の処理方法やデータの正規化など、データの取り扱い方が複数読めるようになるので重要である、ということです。

 

最後に

今回の「AIエンジニア編」全6回の講義を受けて、私が知りたかったPythonを使った機械学習やアルゴリズムの考え方、データ分析手法について理解できました。今後の抱負としては、分析手法やデータ処理時に使われるPythonのライブラリや関数を覚え、Kaggleでコンペに参加して実績を積み、Pythonマスターになることです。この講義に参加させていただき、ありがとうございました。

 

DXエンジニアリングサービス事業部 Y

株式会社エヌ・アンド・アイ・システムズ

株式会社エヌ・アンド・アイ・システムズ