授業の形態
|
講義、演習又は実験
|
|
アクティブラーニング
|
学生が文献や資料を調べる
|
|
授業内容と方法
|
注意:知能情報コースの専門科目(科目番号:知能334)と、他コース向けの融合選択科目(科目番号:知能984)の同時開講です。受講登録を間違えないようにしてください。
========= データの山を採掘することで「データの中に埋め込まれている(有用な)知識を発掘」することをデータマイニング(data mining)と呼ぶ。別の言い方では、データマイニングは、より良い意思決定をするために履歴データをうまく使って一般的な規則性を発見しようとする研究分野である。データマイニングの手続きとしては、(1)対象領域の理解、(2)データの準備、(3)パターン(知識)の発見、(4)パターンの事後処理(可視化、解釈など)、(5)結果の活用、といった一連のステップを繰り返すことが多い。 本授業においては、(a)前処理および特徴量エンジニアリングの観点から前述(1),(2)について概説し、(b)いくつかの代表的なデータマイニング手法を通して(3)を論じる。Python(Numpy, Pandas, scikit-learn等)を利用し、具体事例による演習も適宜行う。
用意したコード例を実行するための環境は各自で用意することを想定しています。相談にはのります。 環境構築できない人向けには Google Colab の利用を想定しています。ただしすべての課題を十分こなせるかどうかは未確認。
|
|
URGCC学習教育目標
|
社会性、情報リテラシー、問題解決力、専門性
|
|
達成目標
|
- 提示された問題において、データセットがどのような背景・状況でどのように構築されたのかを理解する。 - マイニングに必要なデータ(特徴/説明変数/素性)の前処理・特徴量設計を検討・実施することができる。 - 前処理・特徴量設計されたデータセットに対し、データマイニングを適用することで得られた知識を可視化・解釈する手段について検討・実施することができる。 - 目標に応じて問題設計・達成評価軸設計し、シミュレーションやテストにより比較検証することができる。 - (可視化・解釈した結果から有用な知識にについて説明することができる)
|
|
評価基準と評価方法
|
<評価基準> - 課題で用意された、もしくは自ら用意したデータセットについて説明できる。 - データの前処理・特徴量設計を検討し、実施することができる。 - 前処理・特徴量設計されたデータセットに対し、データマイニングを適用し、その結果について考察することができる。 - 問題設計・達成評価軸設計し、シミュレーションやテストにより比較検証することができる。
<評価方法> - レポート(70%)、口頭試問(10%)、ミニテスト(10%)、Q&A討論(10%) - 原則として全てのレポートを提出すること。レポートは数週間に一度、合計4〜6回を想定している。課題量は例年通りですが、課題を細分化して提出させることを想定しているため回数が未確定です。 - レポートのうち1回は口頭試問(レポートに関する口頭確認)を予定しているが、実施困難となる場合にはレポートに代替する。 - ミニテストは原則として毎週授業中に実施する。 - Q&A討論は、資料や課題に関する予習復習を通した疑問点について、Teamsもしくは授業中の討論である。討論への貢献度により採点する。具体的には (1) 相談する度に1点カウント、上限5点まで。(2)回答する度に2点カウント、上限10点まで。
|
|
履修条件
|
- プログラミング系科目。Python推奨。 - Pythonの説明はしません。初心者は https://prog-8.com/ で事前学習をおすすめします。 - 他コース学生でがっつりやりたい人は1年次の講義(2021年度版)をどうぞ。 https://ie.u-ryukyu.ac.jp/~tnal/2021/prog1/static/Readme.html - Numpy, Pandas等のPython標準ではない、追加パッケージについては説明します。 - 知能情報コースの「データサイエンス基礎」か、もしくは統計学・統計モデリング・数理統計系科目。
以下は履修しているとベターな科目です。 - 知能情報コースの「人工知能」や「機械学習」、それらに相当する同等科目。(機械学習外観は説明しますが、詳細は触れません)
演習環境について:知能情報コース外からの履修にあたっては、なるべく早めの相談を。少なくともGoogleアカウントを事前作成しておくこと。 より詳細は https://ie.u-ryukyu.ac.jp/~tnal/2022/dm/static/1-intro/env.html を参照ください。
|
|
授業計画
|
Part 1. 導入 1. イントロダクション 2. 機械学習概観(定義と演習) 3. モデルとその自由度、過学習
Part 2, 特徴量エンジニアリング(数値・カテゴリデータ) 4. 機械学習における特徴、数値データの取り扱い 5. 特徴毎の比較検討(演習) 6. カテゴリデータの取り扱い、復習
Part 3. 特徴量エンジニアリング(テキストデータ) 7. 自然言語における特徴例(bag-of-words, n-gram, 形態素解析, シソーラス等) 8. 分散表現と分布仮説 9. word2vec 10. 特徴毎の比較検討(演習)、タスク例
Part 4. タスクとマイニングアルゴリズムの例 11, 次元削減(PCA, t-SNE) 12. 頻出パターンマイニング(アソシエーション分析) 13, トピックモデル 14, 時系列データ分析(AR, ARIMA)
15. まとめ
Part 3 については、RNN・LSTM・seq2seq等の追加も検討中。 Part 4 については、推薦・可視化・グラフマイニング等、他例への変更も検討中。
|
|
事前学習
|
各回のキーワードについて参考文献やWeb検索等を通して気になる点をピックアップしておくこと(約1時間)
|
|
事後学習
|
授業中に理解が不十分な部分を配布資料で確認すること。別途用意するフォームを活用し、オンライン討論に参加すること。課題に取り組むこと。(約2時間)
|
|
教科書にかかわる情報
|
|
|
教科書全体備考
|
教科書は特に指定しない。可能な限り参考図書を示しつつ授業資料を用意する。
|
|
参考書にかかわる情報
|
|
978-4-87311-868-0
|
機械学習を具体的なタスクに適用しようとした際に直面する「あるある事例集」。
|
Alice Zheng, Amanda Casari著 ; ホクソエム訳
|
オライリー・ジャパン
|
2019
|
|
|
978-4595313738
|
代表的なアルゴリズムの解説本。1冊にまとめてるためにやや急ぎ足ですが、多数のアルゴリズムを概観するならオススメ。
|
秋光淳生著
|
放送大学教育振興会
|
2012
|
|
|
978-4-87311-821-5
|
タスク視点から整理した事例集。
|
有賀康顕、中山心太、西林孝 著
|
オライリー・ジャパン
|
2017
|
|
|
978-4-87311-794-2
|
データマイニングを含むより広い視点での取り組み方に関する話。
|
Jacqueline Kazil, Katharine Jarmul著 ; 長尾高弘訳
|
オライリー・ジャパン
|
2017
|
|
|
9780128042915
|
代表的なアルゴリズムとそれを用いた事例集。深層学習まで含みます。
|
Ian H. Witten ... [et al.]
|
Morgan Kaufmann
|
2017
|
|
|
|
|
参考書全体備考
|
・「word2vecによる自然言語処理」, https://www.oreilly.co.jp/books/9784873116839/ ・「時系列分析と状態空間モデルの基礎: RとStanで学ぶ理論と実装」, https://www.amazon.co.jp/dp/4903814874 ・ゼロから作るDeep Learning ❷ ――自然言語処理編, https://www.oreilly.co.jp/books/9784873118369/
|
|
使用言語
|
日本語
|
|
メッセージ
|
1. 知能情報コース以外の学生は、Googleアカウントを準備ください。 2. データマイニングは幅広いテーマであることから参考書提示に留めていますが、可能な範囲で参考文献や授業中に例示する文献等に目を通し、興味のある事例を掘り下げて勉強してみてください。少なくとも1つ以上のアルゴリズムについて、その中身を説明できる(≒実装できるレベルで理解する)ことを目指しましょう。
【更新情報】 [3/7] ・対面とオンラインの併用を想定しています。体調不良の場合には理由を問わずオンライン参加ください。 ・オンライン用のZoomリンクについては、一回目はwebclassにて当日告知します。 [4/13] ・Zoomリンクをwebclassに記載しました。また、授業ページ(最下部)にも記載しています。
|
|
オフィスアワー
|
時間帯:毎週木曜日、2時限目(調整中) 場所:工1-705室
|
|
メールアドレス
|
この項目は教務情報システムにログイン後、表示されます。
|
|
URL
|
https://ie.u-ryukyu.ac.jp/~tnal/2022/dm/
|
|
|