理工学研究科Graduate School of Science and Engineering
NAN500X2(ナノ・マイクロ科学 / Nano/Micro science 500)機械学習特論Advanced Topics on Machine Learning
神野 健哉Kenya JINNO
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 理工学研究科Graduate School of Science and Engineering |
添付ファイル名Attached documents | |
年度Year | 2023 |
授業コードClass code | YA546 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 春学期授業/Spring |
曜日・時限Day/Period | 金5/Fri.5 |
科目種別Class Type | |
キャンパスCampus | 小金井 |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | |
単位数Credit(s) | 2 |
備考(履修条件等)Notes | |
実務経験のある教員による授業科目Class taught by instructors with practical experience | |
カテゴリーCategory | 電気電子工学専攻 |
すべて開くShow all
すべて閉じるHide All
Outline (in English)
To understand the various basic theories in machine learning and artificial intelligence, and to be able to use them in practice.
After learning the basics, we will understand various algorithms that have been proposed in recent years.
Each algorithm introduced in the lecture will be implemented using Python to deepen understanding.
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
機械学習・人工知能における様々な基礎理論を理解した上で実際に使えるようにする。
さらに基礎的事項を学んだ上で近年提案されている様々なアルゴリズムを理解する。
講義で紹介した各アルゴリズムは Pythonを用いて実装し、理解を深める。
到達目標Goal
与えられたデータの中から関係性を自動的に見出して、未知のデータの解析に役立てるのが機械学習である。機械学習は大別して回帰、分類、強化学習に分類することができる。
さらに各入力データに対応した出力が与えれている場合と与えられていない場合にも大別することができる。これらは教師あり学習、教師なし学習と言われる。
本講義では回帰、分類に着目し、教師あり学習と教師なし学習とはどどのようなものであるかを理解できるようにする。
与えられたデータに依存してシステムのパラメータが決定する機械学習では、観測データの標準化、正規化がまず重要である。また観測データに含まれるノイズを評価し、これらを的確に判断するための交差検証などの手法を使えるようにする。
また古典的な手法だけでなく、近年脚光浴びている比較的新しい手法に関しても実装したプログラムを動作させながらアルゴリズムを理解し、実際に使えるようにする。
単にアルゴリズムを実装し、動かすだけでなく結果の考察ができるようにする
この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連)Which item of the diploma policy will be obtained by taking this class?
ディプロマポリシーのうち、「DP1」「DP2」「DP3」に関連
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
講義中に課題を課す
及びPythonでのアルゴリズム実装の実習を課す。
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
あり / Yes
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
授業形態/methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
第1回[対面/face to face]:機械学習の概要
機械学習とは
機械学習の歴史
データの標準化、データの関係性
NumPy, matplotlib, pandas
第2回[対面/face to face]:回帰分析
最小二乗法
単純回帰
重回帰
非線形回帰
第3回[対面/face to face]:過剰適合と正則化
クロスバリデーション
リッジ回帰(L1正則化)
Lasso回帰(L2正則化)
第4回[対面/face to face]:最尤推定法
最尤推定とは
最小二乗法との関係
第5回[対面/face to face]:カーネル回帰
カーネル法とは
2点間類似度
ガウス基底
第6回[対面/face to face]:線形判別
ロジスティック回帰
パーセプトロン規準
多クラス分類
第7回[対面/face to face]:Support Vector Machine による線形分類
線形分類
サポートとは
ハードマージンとソフトマージン
双対問題
第8回[対面/face to face]:Support Vector Machine による非線形分類
カーネル関数
非線形分類
第9回[対面/face to face]:深層学習
多層パーセプトロン
パーセプトロン
誤差逆伝播法
深層学習
混同行列
第10回[対面/face to face]:Auto Encoder
特徴抽出
第11回[対面/face to face]:Convolutional Neural Networks
畳み込み
プーリング
第12回[対面/face to face]:自然言語処理
単語分散表現
単語共起行列
CBOW と Skip-gram
word2vec
第13回[対面/face to face]:テキスト分類
テキスト分類
RNN
LSTM
第14回[対面/face to face]:本講義のまとめ
本講義で取り上げた機械学習アルゴリズムの振り返り
最終課題レポートの説明
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
【本授業の準備・復習時間は、各4時間を標準とします。】
毎回紹介するアルゴリズムは実際にプログラムを実装し、それを動作させることで理解するようにすること。
テキスト(教科書)Textbooks
Pythonでプログラミングして理解する機械学習アルゴリズム、神野健哉、近代科学社、ISBN: 9784764906365
参考書References
・パターン認識と機械学習(上)、C.M.ビショップ、丸善出版、ISBN:9784621061220
・パターン認識と機械学習(下)、C.M.ビショップ、丸善出版、ISBN:9784621061244
・わかりやすいパターン認識(第2版)、石井 健一郎, 上田 修功, 前田 英作, 村瀬 洋、オーム社、ISBN:9784274224508
・続・わかりやすいパターン認識―教師なし学習入門―、石井 健一郎, 上田 修功、オーム社、ISBN:9784274215308
成績評価の方法と基準Grading criteria
毎回の講義時に課題を課す。成績はそれらの結果(50%)ならびに期末レポートの結果(50%)を総合して100点満点で評価し60点以上のものに所定の単位を与える。
学生の意見等からの気づきChanges following student comments
近年提案されている機械学習アルゴリズムも取り上げて欲しいという要望を反映し、講義の後半は比較的新しいアルゴリズムをテーマに取り入れた。
学生が準備すべき機器他Equipment student needs to prepare
Pythonでプログラムを作成、実行ができる PC