2021年度 : データマイニング
- シラバス
工学部工学科知能情報コース「知能334」、工学部選択「知能984」、情報工学科「情496、特別講義VI」の同時開講
- 連絡先:
- 當間愛晃 (Naruaki TOMA)@工1-705
- オフィスアワー: 木2予定
- E-mail: tnal@ie.u-ryukyu.ac.jp
- Twitter: @naltoma
- 講義資料
- Part 1. 導入
- Part 2. 機械学習入門
- 第2回: 機械学習概観、コード例(線形回帰)
- 第3回: 映画レビューデータを通したデータ処理演習 (numpy, matplotlib, pandas)
第4回: プログラミング演習- 第4回: 機械学習の中身
- Part 3. 特徴量エンジニアリング
- Part 4. 特徴量エンジニアリング(テキストデータ)
- Part 5. タスクとマイニングアルゴリズムの例(予定)
- 第13回: グラフマイニング
- 第14回: 頻出パターン・マイニング
- 第15回: 推薦システム
- 他候補: 時系列データ分析、トピックモデル、次元削減
第15回: まとめ
- 参考文献・サイト
第1回: イントロダクション
- 登録調整
- シラバス
- ミニテスト(出欠確認)
*次回から要Googleアカウント。来週までに作成して個別に連絡ください。
- 授業資料
- 予習
- 予習復習に対する質問:Teams推奨。
- 疑問等は、次回授業の前日までに、別途用意するフォームに入力すること。 *シラバスの「Q&A討論」のオンライン版として評価。
第2回: 機械学習概観
- 登録調整
- ミニテスト(出欠確認)
*要Googleアカウント。
- 授業資料
- 機械学習概観
- コード例(線形回帰)
- 環境構築&動作確認: macOS, Windows, or Google Colab
*授業中にはやりません。構築できない人は相談ください。おすすめはPyCharm, VSCode等のデバッガ付き開発環境の利用。デバッガ利用したことない人は別授業の資料を参考にしよう。
- 課題レポート1:機械学習してみよう
- 提出先:
Googleドライブ内のreport1に、「各自のアカウント名」のフォルダを作成し、そこに提出。
- 作成方法:
Googleドキュメント, Word, LaTeX(=>PDF)等、一般的に参照できるファイル形式なら自由。
- 提出期限:4回目の授業開始前。
- 提出先:
第3回: 映画レビューデータを通したデータ処理演習
- ミニテスト(出欠確認)
*要Googleアカウント。
- 授業資料
- Numpy入門
- Matplotlib入門
- 映画レビューデータを通したデータ処理演習 (pandas入門)
- 機械学習の中身を覗いてみよう *多分途中まで。
- 課題レポート1
提出締め切り来週?。忘れずに。
第4回: 機械学習の中身
- ミニテスト(出欠確認)
*要Googleアカウント。
- 授業資料
第5回: 特徴ベクトル、数値データに対する前処理
- ミニテスト(出欠確認)
*要Googleアカウント。
- 授業資料
- 課題レポート2:前処理してみよう
- 提出先:
Googleドライブ内のreport2に、「各自の学籍番号(6桁+アルファベット)」のフォルダを作成し、そこに提出。
- 提出期限:7回目の 授業開始前。
- 補足:7週目はレポート2に関する討論を予定しています。その際に自身のレポートを説明(発表)する人を数人募集します。発表者と討論参加者はQA討論点数としてカウントします。
- 提出先:
第6回: カテゴリデータの取り扱い
- 予告:課題2の発表、来週 or 再来週。
課題レポート2について紹介する人を数人、当日募集します。一人あたり10分程度で紹介。自由度の高い課題のため、独自にやった部分(どういうデータセットを選んだのか、それはどういうものか、前処理前と前処理後でどう変わったのか等)を中心に説明をお願いします。その後討論をします。
- ミニテスト(出欠確認)
*要Googleアカウント。
- 授業資料
- カテゴリデータに対する前処理
- コード例: カテゴリデータに対する前処理コード例
- 演習:授業資料の下部参照。
- 残り時間
- 演習:入力1次元・連続値出力に対するフィッティング(回帰)。
- 質問対応。
第7回: 課題2レポート討論 or 自然言語処理1: シソーラス、カウントと推論に基づいた設計
- ミニテスト(出欠確認)
*要Googleアカウント。
- case 1: 課題2レポート討論
- case 2: 授業資料
第8回: 課題2レポート討論
- ミニテスト(出欠確認)
*要Googleアカウント。
- 課題2レポート討論
- 時間あれば前回の残り
- シソーラス、カウントと推論に基づいた設計の「相互情報量による分散表現の高度化」以降。
- 課題レポート3:自然言語処理してみよう
- 提出先:
Googleドライブ内のreport3に、「各自の学籍番号(6桁+アルファベット)」のフォルダを作成し、そこに提出。
- 提出期限:11回目の 授業開始前。
- 補足:11週目はレポート2に関する討論を予定しています。その際に自身のレポートを説明(発表)する人を数人募集します。発表者と討論参加者はQA討論点数としてカウントします。
- 提出先:
第9回: コード例(bag-of-words, n-gram, 形態素解析, シソーラス等)
- ミニテスト(出欠確認)
*要Googleアカウント。
- 授業資料
- シソーラス、カウントと推論に基づいた設計の「次元削減」以降。
- コード例1: bag-of-words, n-gram, 形態素解析, シソーラス等 by NLTK
- 代表的な自然言語処理; 日本語編
- コード例2: 日本語, spacyコード編 by spacy + NLTK
- コード例3: 日本語, mecabコード編 by mecab + JUMAN + KNP + NLTK
第10回: word2vecによる分散表現
- ミニテスト(出欠確認)
*要Googleアカウント。
- 授業資料
- word2vecによる分散表現
- 分散表現の発展
- シンプルなファインチューニング例: [ gensim版 | spacy版 ]
- 討論:汎用表現 *「分散表現の発展」8.3.3。
第11回: レポート3討論、転移学習の考え方と討論
- ミニテスト(出欠確認)
*要Googleアカウント。
- レポート3討論
- 授業資料
第12回: レポート3討論、(グラフマイニング)
- ミニテスト(出欠確認)
*要Googleアカウント。
- レポート3討論
- 授業資料 *時間余るなら
- グラフマイニング
- コード例:グラフマイニングの例
- 課題レポート4:機械学習やデータマイニングにおけるFaireness(公平性)について論じよ。
- 資料1: Fairness
Video Lecture, Types of Bias, Identifying Bias, Evaluating for Bias, Programming Exercise
- 資料2: 機械学習・データマイニングにおける公平性
- Level 1: 資料1の「Types of Bias」まで取り組め。Reporting Bias、Selection Bias、Group Attribution Bias、Implicit Biasについて解説するとともに、教材には書かれていない事例を示せ。
- Level 2: 資料1の「Programming Exercise」まで取り組め。そのうえで、自分自身の興味のあるテーマについて fairness の視点から想定される問題点について論じよ。テーマが思いつかない場合には、UK police are using AI to inform custodial decisions – but it could be discriminating against the poorを題材として検討せよ。
- レポートにはテーマに関する説明(200字以上)と、考察(500字以上)を掲載すること。
- 特に上限は設けないが、長くなる場合には節や段落等を考慮し、全体を整理して書くこと。
- Option例: 資料2を読み、興味のあるものについて原本を参照し、自分なりの考えを述べよ。
- 提出先:
Googleドライブ内のreport4に、「各自の学籍番号(6桁+アルファベット)」のフォルダを作成し、そこに提出。
- 提出期限:15回目の 授業開始前。
- 補足:15週目はレポート4に関する討論を予定しています。その際に自身のレポートを説明(発表)する人を数人募集します。発表者と討論参加者はQA討論点数としてカウントします。
- 資料1: Fairness
第13回: グラフマイニング(続き)
- シラバス
- ミニテスト(出欠確認) 今日はアンケート。
*要Googleアカウント。
- 授業資料
- グラフマイニング
- コード例:グラフマイニングの例
第14回: 頻出パターン・マイニング
- ミニテスト(出欠確認) 今日はアンケート。
*要Googleアカウント。
- 授業資料
- 頻出パターン・マイニング
- コード例: アソシエーション分析の例
第15回: 推薦システム
- ミニテスト(出欠確認)
*要Googleアカウント。
- 授業評価アンケート *知能情報コース学生のみ
- Q&A討論について
- 評価基準にある通り「Q&A討論(10%)」です。一方、そもそも質問がほとんどないため回答するつもりでいた人にとっては点数を獲得する機会そのものがほぼありませんでした。そのため点数が足りていない人で希望する人は、以下の「解説書作成」で補います。
- 解説書作成課題(希望者のみ)
- 授業中に出てきた専門用語(授業資料、参考文献、口頭いずれも可)を最大10個選び、各々について100字以上で解説せよ。
- 出典元の説明文をコピーするのではなく、あなたが咀嚼し、自身の言葉で解説すること。
- 何かを参照した際には出典を必ず明示すること。出典は文字数に含みません。
- 1個あたり1点換算。第14回までのQ&A討論評価については Teams/scoreの「Q&A0719」を参照し、不足点を自分で確認ください。
- 締切は課題レポート遅延提出に準じる。
- 課題レポートの遅延提出について
- 期末試験期間である「8/11(水)まで」は受け取り保証。延長希望者は「8/12(木)まで」に個別相談すること。
- 提出後、メールで報告すること。(メール報告なしは採点されません)
- 授業資料
- 推薦システム
- コード例: 推薦システムのコード例
- 時間あれば時系列データ分析。2019年度の資料。
- 時系列データ分析
- コード例: statsmodels.apiを用いた例
- 勉強会について
- 7/30(金), 18時, 課題3解説メイン
- 8/6(金), 4限目. 希望確認後。
- 夏休み. テスト期間8/6の勉強会終了後、Teamsで希望確認予定。