基本情報

学部 IT総合学部
科目 AIプログラミング
教員名 田中 頼人
年度 / 学期 2019年度春学期
開講期間 2019/4/4  ~  2019/8/8
科目履修区分 専門演習(選択)/専門応用(選択)/専門応用科目
単位 2
科目レベル 4

ページの先頭へ戻る

科目概要

人間の知的な振る舞いは知覚や推論、問題解決など幅広く、それらをコンピュータで実現するAI (人工知能) においても多くの手法が提案されている。本科目では人工知能分野の様々な手法を整理し、複数の代表的な考え方をコンピュータ上のプログラムを通じて実践的に獲得する。それぞれの手法についてプログラムの挙動を確認し、何ができるのかを把握したうえで動作の仕組みを考察していく。Python, Java, C言語など何らかのプログラミング言語の知識を前提とする。

ページの先頭へ戻る

科目目標

①「教師付き学習による分類」について1つ以上の手法の考え方を理解し、プログラムを記述できる
②「教師付き学習による予測」について1つ以上の手法の考え方を理解し、プログラムを記述できる
③「教師なし学習によるクラスタリング」について1つ以上の手法の考え方を理解し、プログラムを記述できる
④「教師なし学習による次元削減」について1つ以上の手法の考え方を理解し、プログラムを記述できる
⑤①~④のいずれにも該当しない機械学習について、1つ以上の手法の考え方を理解し、プログラムを記述できる
⑥Python プログラムによる数値計算の方法を理解し、実行できる

ページの先頭へ戻る

履修前提条件

・コンピュータのための基礎数学
・ソフトウェア開発論Ⅰ
の単位を修得していることが望ましい

※この科目では「実習環境利用料」として授業料とは別に3,000円が徴収されます。

何らかのプログラミング言語によるソフトウェア開発の経験を有すること。本科目の演習では Python を用いるが、その他のプログラミング言語 (Java, C, JavaScript等) の経験があるなら Python の経験は必須ではない。

※この科目では「実習環境利用料」として授業料とは別に3,000円が徴収されます。

ページの先頭へ戻る

授業教材

教科書 ※購入必須

題名 著者 出版社 発行年 備考
題名
なし
著者
出版社
発行年
備考

ツール

ツール名 発売元 バージョン 必要PCスペック 備考
ツール名
オンラインPython実行環境 "JupyterHub"
発売元
OSS
バージョン
必要PCスペック
任意のWebブラウザ
備考

参考資料 ※購入任意

題名 著者 出版社 発行年 備考
題名
マッチ箱の脳(AI) ―使える人工知能のお話 (Kindle 版)
著者
森川幸人
出版社
新紀元社
発行年
2000年
備考
556円 (税別)
題名
Pythonではじめる機械学習 ――scikit-learnで学ぶ 特徴量エンジニアリングと 機械学習の基礎
著者
Andreas C.Muller Sarah Guido
出版社
オライリー・ジャパン
発行年
2017年
備考
3,400円 (税別)

その他の資料

資料及びサイト 内容
資料及びサイト
なし
内容


ページの先頭へ戻る

期末試験実施方法について

Webテスト形式

ページの先頭へ戻る

授業時間外の学修と評価について

課題で直接問われていない箇所についても、疑問点があれば用語の調査やプログラム中の工夫を適宜行うこと。


ページの先頭へ戻る

評価配分

ディベート レポート 小テスト 期末試験 その他 合計
0 % 0 % 50 % 50 % 0 % 100 %
 0 %   0 %   50 %   50 %   0 %   100 % 

ページの先頭へ戻る

各回の授業内容

授業内容および目次 小テスト他 備考(教科書、参考資料等)
第1回 1)タイトル:
オリエンテーションとPython環境

2)学習目標:
科目の構成と進め方を知り、演習に必要な開発環境を導入する。

3)目次:
第1章 本科目の概要と構成
第2章 Python 実行環境の導入
第3章 演習
第4章 第1回のまとめ

この回の課題
・小テスト
 
第2回 1)タイトル:
多次元データと入出力

2)学習目標:
Python による制御構造と多次元データの扱い方を知る。

3)目次:
第1章 Python における配列
第2章 配列データの可視化
第3章 演習
第4章 第2回のまとめ

この回の課題
・小テスト
 
第3回 1)タイトル:
遺伝的アルゴリズムによる最適化

2)学習目標:
乱数と繰り返しによる組み合わせ最適化の方法を理解し、実装する。

3)目次:
第1章 生物の進化を模倣する
第2章 進化のためのプログラム
第3章 演習
第4章 第3回のまとめ

この回の課題
・小テスト
 
第4回 1)タイトル:
クラス分類とクラスタリング

2)学習目標:
教師あり学習と教師なし学習の概要を知り、両者から代表的な手法一つずつを実装する。

3)目次:
第1章 分け方にも種類がある
第2章 分類とクラスタリングのプログラム
第3章 演習
第4章 第4回のまとめ

この回の課題
・小テスト
 
第5回 1)タイトル:
回帰による予測

2)学習目標:
繰り返し処理による線形回帰の方法を知り、実装する。

3)目次:
第1章 未知の値を予測する
第2章 コスト関数と勾配法
第3章 演習
第4章 第5回のまとめ

この回の課題
・小テスト
 
第6回 1)タイトル:
ニューラルネットワークによる分類(1)

2)学習目標:
神経回路網をモデルにした学習の方法を知り、実装する。

3)目次:
第1章 可否のパターンを学習する
第2章 ニューロンと伝播のプログラム
第3章 演習
第4章 第6回のまとめ

この回の課題
・小テスト
 
第7回 1)タイトル:
ニューラルネットワークによる分類(2)

2)学習目標:
神経回路網モデルをベクトルと行列で表現し、実装に用いる。

3)目次:
第1章 入出力を一括して処理する
第2章 ベクトルと行列によるプログラム
第3章 演習
第4章 第6回のまとめ

この回の課題
・小テスト
 
第8回 1)タイトル:
ナイーブベイズによる分類

2)学習目標:
確率の更新による計算方法を知り、確率的な分類器を実装する。

3)目次:
第1章 あいまいなデータ
第2章 ベイズの定理とその応用
第3章 演習
第4章 第8回のまとめ

この回の課題
・小テスト
 
第9回 1)タイトル:
主成分分析による次元削減

2)学習目標:
次元削減の目的を知り、その一手法である主成分分析 (PCA) について実装する。

3)目次:
第1章 多次元データを要約する
第2章 主成分分析のプログラム
第3章 演習
第4章 第9回のまとめ

この回の課題
・小テスト
 
第10回 1)タイトル:
サポートベクターマシンによる予測・分類

2)学習目標:
予測・分類のためのマージンの考え方を知り、マージンを最大化する手順を実装する。


3)目次:
第1章 線の引き方を選ぶ
第2章 マージンを最大化するプログラム
第3章 演習
第4章 第10回のまとめ

この回の課題
・小テスト
 
第11回 1)タイトル:
機械学習モデルの評価

2)学習目標:
教師付き学習の評価に用いる複数の指標を知り、計算する。

3)目次:
第1章 分類の結果を評価する
第2章 評価指標のプログラム
第3章 演習
第4章 第11回のまとめ

この回の課題
・小テスト
 
第12回 1)タイトル:
半教師あり学習

2)学習目標:
少ない学習データによる学習手法を知り、実装する。

3)目次:
第1章 少量の教師データを活かす
第2章 少量のデータから分類器を作る
第3章 演習
第4章 第12回のまとめ

この回の課題
・小テスト
 
第13回 1)タイトル:
強化学習による判断の獲得

2)学習目標:
環境からの報酬に基づく学習手法を知り、実装する。

3)目次:
第1章 試行錯誤から学習する
第2章 報酬を最大化するプログラム
第3章 演習
第4章 第13回のまとめ

この回の課題
・小テスト
 
第14回 1)タイトル:
バンディットアルゴリズムによる最適化

2)学習目標:
選択行動における最適化の手法を知り、実装する。

3)目次:
第1章 選択の効率を考える
第2章 トレードオフに対応するプログラム
第3章 演習
第4章 第14回のまとめ

この回の課題
・小テスト
 
第15回 1)タイトル:
まとめと今後の発展

2)学習目標:
これまでに扱った各手法を整理し、扱わなかった手法と対比させて理解する。

3)目次:
第1章 各手法の特徴を整理する
第2章 機械学習ではない手法
第3章 演習
第4章 第15回のまとめ

この回の課題
・小テスト
 

ページの先頭へ戻る

open

Now Loading