AIエンジニアになりたいという方のために
以下を元に要点の要点だけを抽出して、全体像がわかるような情報をまとめました。
AIエンジニアとは
AI(人工知能)を使った開発を手がける技術者です。
ここでは、厳密には機械学習エンジニアです。
言語選定
機械学習だと言語は
・Python
・Julia
・C++
あたりが無難です。
僕らはPythonを使います。
数学
基礎的は数学は必要になります。
・統計学
・確率論
・線形代数
・微積
です。力まなくても実装してると意味がわかります。
アルゴリズムとデータ構造
アルゴリズムを学ぶというよりは必要なアルゴリズムを引っ張ってくるという感覚です。
アルゴリズム
・線形回帰
・ロジスティック回帰
・決定木
・ランダムフォレスト
・勾配ブースティング(例: XGBoost, LightGBM)
・サポートベクターマシン (SVM)
・ナイーブベイズ
・k-近傍法 (k-NN)
・k-平均法 (k-means)
・主成分分析 (PCA)
・アソシエーションルール学習(例: アプリオリアルゴリズム)
・階層型クラスタリング
・ディープラーニング(例: CNN, RNN, LSTM, GAN, Transformer)
データ構造
・配列(Array)
・行列(Matrix)
・リスト(List)
・キュー(Queue)
・スタック(Stack)
・連想配列(HashMap, Dictionary)
・セット(Set)
・グラフ(Graph)
・木(Tree, 例: Binary Tree, B-Tree)
・ヒープ(Heap)
ツールとフレームワーク
ツール
データ分析
・NumPy
・Pandas
・Matplotlib
・Scikit-learn
フレームワーク
・TensorFlow
・PyTorch
専門分野
以下はネクストステップで良いです。
ツールとフレームワークを身に着けたら深掘りしていきます。
・自然言語処理
・コンピュータビジョン
・強化学習
ネクストステップ
これらをひとつずつ実装できるように勉強していきます