授業情報/Course information

開講学期/Course Start 2020年度/Academic Year  前期/First
開講曜限/Class period 月/Mon 7,月/Mon 8,月/Mon 9
授業区分/Regular or Intensive 週間授業
対象学科/Department 情報電子工学系学科
対象学年/Year 3年,4年
授業科目区分/Category 教育課程 主専門教育科目
必修・選択/Mandatory or Elective 必修
授業方法/Lecture or Seminar 実験科目
授業科目名/Course Title コンピュータ知能学実験/Laboratory in Computational Intelligence
単位数/Number of Credits 1.5
担当教員名/Lecturer 本田  泰,岡田吉史,小林 洋介
時間割コード/Registration Code B4313
連絡先/Contact 岡田吉史(教員室:V402
okada@csse.muroran-it.ac.jp)
小林 洋介(V612
46-5440
ykobayashi(at)csse.muroran-it.ac.jp
スパム対策のため@を(at)で表記しています。
緊急時を除き,極力E-mailで連絡ください))
本田 泰(R306
honda(アットマーク)csse.muroran-it.ac.jp)
オフィスアワー/Office hours 岡田吉史(木曜日 16:00-17:00 (V402室) )
小林 洋介(月曜日16:00-17:00)
本田 泰(火曜日,13:30−14:30)
実務経験/Work experience

更新日/Date of renewal 2020/04/15
授業のねらい
/Learning Objectives
講義で学んだ事柄を実際に自分で行うことによって,より深く理解する。
テーマによって利用するプログラミング言語が異なるため,特性の違いを理解しながら,プログラミング力(=開発力)を高めることもねらいとする。

<信号処理>
信号処理の実験では,並行して開講されるディジタル信号処理等の講義で学んだ離散データ処理の理論的事項をもとに,実際に様々な計算を行うことで実践的に理解する。課題の実施に際しては,数値シミュレーションで広く用いられているMATLAB互換のOctaveを用いる。実験の成果をレポートにまとめることで,信号処理の基礎と応用事例としての音声信号処理の理解を深める。

<微分方程式の数値解法>
科学技術計算において微積分の使用頻度は高い。特に,解析的に解くことが難しい微分方程式では,数値計算によってその性質が調べられる。しかし数値計算のためのアルゴリズムを適切に設計しないと誤差が増大するばかりか真の性質からかけ離れた結果となる恐れもある。本実験ではC言語により修正オイラー法を実装し,アルゴリズムに対する結果の変化をみることで,基礎知識を身につけることをねらいとする。

<情報推薦>
情報推薦とは,ユーザの好みに合う商品や情報を推定して提示する技術である。本実験では,Java言語を用いて情報推薦手法の1つであるユーザ相関法を実装し,その動作原理および性能評価方法を身につけることをねらいとする。
到達度目標
/Outcomes Measured By:
課題1.:信号処理
目標1-1:数式やグラフ等を用いた実践的な技術レポートを作成することができる。
目標1-2:離散信号処理にの応用に関する諸問題について理解し,離散信号処理のプログラムを作成することができる。
目標1-3:複数学生で取り組む音声処理の課題にチームで取り組み,個人差のある生体信号について考察することができる。

課題2: 微分方程式の数値解法
目標2-1 複数種類の数値解法について原理を理解し,プログラムによって実装できる。
目標2-2 異なるパラメータを用いた場合の精度評価を行うことができる。
目標2-3 シュミレーション結果の意味を理解しその妥当性を評価できる。

課題3: 情報推薦
目標3-1 ユーザ相関法の原理を理解し,それをプログラミングできる。
目標3-2 ユーザ間の類似度指標の計算法を理解し,精度評価を行うことができる。
授業計画
/Course Schedule
授業時間:145分×15週=2175分

1週目~5週目は信号処理,6週目~10週目は微分方程式の数値解法,11週目~15週目までは情報推薦の実験を行う。

1週目 ガイダンス,レポート作成法の説明とOctaveの基礎
2週目 Octaveを使ったプログラミングの応用と課題1の説明
3週目 音声の録音方法と解析法と課題2の説明
4週目 課題2の実施(聴取実験と統計処理),課題1レポートのフィードバック
5週目 課題2のまとめと提出
6週目 ガイダンス,対象とする微分方程式について
7週目 微分方程式を解くためののプログラミング
8週目 オイラー法と誤差の蓄積
9週目 修正オイラー法のプログラミング
10週目 球面振り子のシミュレーション
11週目 ガイダンス,情報推薦システム(ユーザベース方式)について
12週目 プログラミング1(ソースコードとデータセットの理解)
13週目 プログラミング2(ユーザ間の類似度計算法の実装)
14週目 プログラミング3(推薦精度の計算) 
15週目 性能評価実験

自己学習の取組
・各課題で複数回のレポート課題を課す。期限までに必ず提出すること。
・短期間で数多くの事柄を学びます。演習室の開放時間を利用して,十分な準備(プログラミング技法の習熟等)を行うこと。
・講義時間外には演習室を開放しています。この開放時間を利用して,各回の演習内容の自主的な予習復習などを前提とする。

※新型コロナウイルス感染症の流行状況に伴い、学生への十分な周知のもと、授業計画・授業実施方法は変更する可能性があります。
参考書等
/Required Materials
<情報推薦>
「情報推薦システム入門 -理論と実践」,Dietmar Jannachら,共立出版(ISBN:4320122968)
「情報検索の基礎」,Christopher D.Manningら,共立出版(ISBN:4889510478)
<微分方程式の数値解法>
「数値計算の常識」,伊理正夫ら,共立出版株式会社(ISBN:4320013433)
「数値計算法演習」,途川隼人,電子情報通信学会大学シリーズ演習3(ISBN:4339002526)
「シミュレーション技法入門」,矢部孝ら,日刊工業新聞社(ISBN:4526023329)
「Numerical Recipes in C【日本語版】」William H. Press etc., 技術評論社(ISBN:4874085601)
<信号処理>
「ゼロからはじめる音響学」青木直史, KS理工学専門書(ISBN:406156529X)
教科書・参考書に関する備考 この他のテーマは,実験の手引き書等をmoodleで配布する。
成績評価方法
/Grading Guidelines
到達度目標のすべての項目について、提出されたレポートの内容で成績を判定する。
各テーマの点数を平均し,100点満点中60点以上が合格点である。

課題1(信号処理)
目標1-1:レポートの完成度および考察で評価する。
目標1-2:レポートに記載されたソースコード,出力のグラフおよび考察で評価する。
目標1-3:複数名で取り組む音声信号分析課題 レポートの考察で評価する。
ただし,課題1と2のレポートを指定された再提出を含めて「両方」提出しない場合は,不合格とする。

課題2: 微分方程式の数値法
目標2-1 プログラムのソース・結果・考察を評価する。
目標2-2 精度評価実験の結果・考察を評価する。
目標2-3 シミュレーション結果を考察・評価する。

課題3: 情報推薦
目標3-1 プログラムのソース・結果・考察を評価する。
目標3-2 精度評価実験の結果・考察を評価する。


※新型コロナウイルス感染症の流行状況に伴い、学生への十分な周知のもと、成績評価方法は変更する可能性があります。
履修上の注意
/Notices
不合格の場合は再履修すること。
再履修する場合は,正規学年の学生と同様に出席し,レポートを提出すること。
関連科目の内容を調べ、理解して授業に臨むこと。
教員メッセージ
/Message from Lecturer
実験はこれまで学んできた知識の確認のみならず,知識を組み合わせた上で新しい知識を獲得していく科学的な行為です。特に講義では「わかったような気になっていた」事であっても,実験を通して知識を再確認する事で理解をより深める事ができます。

特に情報系2コースでは,プログラミングによるソフトウェア開発を伴う実験を行いますが,その成果はソースコードだけではありません。実験結果をまとめたグラフや表及び,実験内容を説明する「レポート」が必ず必要になります。どんな仕事でも,取り組んだ内容を報告することは必要です。報告書を書く人は実験結果の数値のような「生のデータ」を見ていますが,報告相手は詳しく知りません。自分よりも詳しくない人にきちんと報告する力を本実験のレポートで身につけてください。この力はきっと次年度の卒業研究を進める上で,皆さんの大きな力となると思います。
学習・教育目標との対応
/Learning and Educational Policy
この授業科目は情報電子工学系科(情報システム学コース・コンピュータ知能学コース)の学習目標の以下の項目に対応している。
・人[チームワーク力]他者と共同して仕事を進める能力を身につける。
・情報技術者「コンピュータサイエンス」情報工学の基礎知識と応用能力を身につける。
関連科目
/Related course
「プログラミング演習」,「オブジェクト指向言語」,「確率・統計」,「データベース」,「ディジタル信号処理」,「視覚情報処理」
No. 回(日時)
/Time (date and time)
主題と位置付け(担当)
/Subjects and instructor's position
学習方法と内容
/Methods and contents
備考
/Notes
該当するデータはありません
Active learning 1-1
/主体的学修(反転授業,小テスト,振り返り 等)
毎回の授業でプログラミング・実験・考察を行う課題を課す。
Active learning 1-2
/上記項目に係るALの度合い
50%超
Active learning 2-1
/対話的学修(グループ学習,協働,調査体験 等)
音声処理に関するグループ実験を通して個人差のある生体信号についての理解を深める。
Active learning 2-2
/上記項目に係るALの度合い
15%未満
Active learning 3-1
/深い学修(複数科目の知識の総合化や問題解決型学修 等)
1年前期から3年前期に学んだことを基礎として,総合的な学習を行う。
手順を全て与えられるのではなく,資料を読み理解することによって自ら実験手順を考え,実施する.
Active learning 3-2
/上記項目に係るALの度合い
50%超