情報工学科実験実習Ⅴ

科目基礎情報

学校 東京工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 情報工学科実験実習Ⅴ
科目番号 0122 科目区分 専門 / 必修
授業形態 実験・実習 単位の種別と単位数 履修単位: 3
開設学科 情報工学科 対象学年 4
開設期 前期 週時間数 6
教科書/教材 WEBによる教材の提供,小坂敏文,吉本定伸 共著,『はじめての応用数学 ラプラス変換・フーリエ変換編』,近代科学社
担当教員 鈴木 雅人,吉本 定伸,北越 大輔

到達目標

情報工学の専門分野における内容として
・信号処理に関する基本的な概念を理解し,計算やプログラミング等を行うことができる。

・与えられた課題に対するプログラムを実装することができる.
・ビット演算の概念を理解し,簡単な画像処理プログラムを作ることができる.
・数学に基づく評価式を検討し,実装することができる.

・ベイジアンネットの定義・特徴について理解する.
・ベイジアンネットの基本的な構造学習アルゴリズムについて理解し,当該アルゴリズムを活用した学習の過程を順序だてて説明できる.
・ベイジアンネットの基本的な確率推論アルゴリズムについて理解し,当該アルゴリズムを用いて確率を計算できる.

ルーブリック

理想的な到達レベルの目安(優)標準的な到達レベルの目安(良)最低限到達レベルの目安(可)未到達レベルの目安(不可)
信号処理に関する基本的な概念を理解し,計算やプログラミング等を行うことができる。信号処理やその関連する計算,アルゴリズム等について理解し,課題を提出することができる。基本的な信号処理やその関連する計算,アルゴリズム等について理解し,課題を提出することができる。信号処理の基礎を理解し,課題を提出することができる。課題を提出できない。
与えられた課題に対するプログラムを実装することができる効率よく課題を実現するための手法を自ら検討し実装できる与えられた実現方法に基づきプログラムを実装できるプログラムを完成させることができるプログラムを完成させることができない
ビット演算の概念を理解し,簡単な画像処理プログラムを作ることができる効率的な画像処理方法を自ら検討し実装することができる与えられた方法を理解し,画像処理プログラムを実装できるビット演算の概念が理解できない,または理解してもプログラムに実装できるビット演算の概念が理解できない,または理解してもプログラムに実装できない
数学に基づく評価式を検討し,実装することができる自ら評価式を検討し,効率的に課題を実現するプログラムを作ることができる与えられた評価式を理解し,それに基づきプログラムを実装することができる与えられた評価式のいいを理解できない,または評価式を実装することができる与えられた評価式のいいを理解できない,または評価式を実装することができない
ベイジアンネットの定義・特徴について理解するベイジアンネットの定義を理解し、背景に存在する同時分布を数式表現したり、定義を満たさないネットワークの誤りを指摘できるベイジアンネットの定義を理解しているベイジアンネットの定義を理解し、その基盤となるベイズ統計学に関する理解も十分であるベイジアンネットの定義を理解しておらず、その基盤となるベイズ統計学に関する理解も不十分である
ベイジアンネットの基本的な構造学習アルゴリズムについて理解し,当該アルゴリズムを活用した学習の過程を順序だって説明できるベイジアンネットの基本的な構造学習アルゴリズムについて理解し,当該アルゴリズムを活用した学習の過程を順序だって説明できるベイジアンネットの基本的な構造学習アルゴリズムについて理解しているベイジアンネットの基本的な構造学習アルゴリズムについて理解しているベイジアンネットの基本的な構造学習アルゴリズムについて理解していない
ベイジアンネットの基本的な確率推論アルゴリズムについて理解し,当該アルゴリズムを用いて確率を計算できるベイジアンネットの基本的な確率推論アルゴリズムについて理解し,当該アルゴリズムを用いて確率を計算できるベイジアンネットの基本的な確率推論アルゴリズムについて理解しているベイジアンネットの基本的な確率推論アルゴリズムについて理解できているベイジアンネットの基本的な確率推論アルゴリズムについて理解できていない

学科の到達目標項目との関係

教育方法等

概要:
情報工学で重要となる主要分野のとして知識工学,制御工学,ディジタル信号処理に関連する内容を取り扱い,より専門的な知識やスキルを身につける。

人間が日常的に行っている知的活動をコンピュータに完全に代行させることは不可能である。本講義では,パタン認識の課題を取り上げ,直感的手法に基づく自動認識には限界があることを学び,確率・統計に基づく認識手法の学習を通して,知識情報分野における数学の役割を理解する.

これまで学習してきた確率・統計の学習内容を主な基盤として,予測・推論の仕組みやパタン認識の理論について学ぶ.予測・推論の仕組みを習得を通して,人工知能分野における基盤の一つである「学習」や,未来の事象の確率的予測,結果から原因を確率的に推測する方法について学びながら,適切な予測が可能な確率的ネットワークの構築法と,ネットワークを利用した基本的な推論法を習得する.
授業の進め方・方法:
各回で完結する内容や複数回にわたって行われる課題もあり,内容により授業,演習,実験形式で行われる。教師室や電算室,実験室など状況に応じて実施場所が異なる。
プログラミングやエクセルなども利用し進める。

最終的な課題の内容および一般的な実現方法を解説した上で,それを実現するための小課題を提示する.小課題に関しては必要に応じて実現のためのヒントを与えるが,基本的には各自が考えてプログラムを作成する.
また課題全体が完成した時点で,作成したプログラムの性能評価実験を行い,実装したアルゴリズムの問題点について考察を行う.

機械学習およびベイジアンネットワークについて学び,それぞれの理論を幾つかの小テーマに分けて解説し,それらを用いたプログラムを実装することにより,理論に対する理解度を高める.
注意点:
課題等の提出物は設定された締切までに提出すること。予習や自学自習を取り入れ取り組むこと。

C言語のプログラムは一通り書けることを前提に授業を進めるので,プログラミング言語については十分に復習しておくこと.

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ベクトルと内積

画像処理関数の実装
課題を実現するために必要な画像処理関数を実装する
ベクトルの内積計算とその計算プログラミングを扱うことができる.

ビット演算の概念を理解し,モノクロ画像データを扱うプログラムが作成できる.
C言語の基礎を理解し,与えられた小課題に対するプログラムが作成できる.
2週 正弦波と直交関数,演習

画像処理関数の実装(続き)
正弦波を利用した直交関数について理解できる.

C言語の基礎を理解し,与えられた小課題に対するプログラムが作成できる.
3週 実フーリエ級数と係数,演習

画像処理関数の実装(続き)
認識アルゴリズムの検討
課題を実現するための手法を検討する.またそのための一般的手法を解説する
実フーリエ級数,係数の計算を理解できる.

C言語の基礎を理解し,与えられた小課題に対するプログラムが作成できる.
課題に対するプログラムが設計できる.
4週 複素数と複素フーリエ級数と係数,演習

認識プログラムの開発
決定した手法をプログラムとして実現する
複素数フーリエ級数,係数の計算を理解できる.

数学に基づく評価式を検討し,実装することができる.
5週 複素フーリエ級数とフーリエ変換,演習

認識プログラムの開発(続き)
フーリエ変換について理解できる.

数学に基づく評価式を検討し,実装することができる.
6週 フーリエ変換の性質,演習
基本的なフーリエ変換の性質を理科できる.

数学に基づく評価式を検討し,実装することができる.
7週 専門分野のフーリエ変換,演習

評価実験
完成したプログラムの性能評価を行うため認識実験を行う
専門分野におけるフーリエ変換について理解できる.

数学に基づく評価式を検討し,実装することができる.
8週 相関係数,演習,プログラミング演習

機械学習の基礎
確率計算の復習
離散信号を利用し,相関係数の計算とその計算プログラミングを扱うことができる.

人工知能分野における機械学習の位置づけについて理解する.
ベイズ統計学で用いる基本的な確率計算法を理解する.
2ndQ
9週 相関関数,プログラミング演習

ベイズの定理(1)
ベイズの定理(2)
離散信号を利用し,相関関数の計算とその計算プログラミングを扱うことができる.

ベイズ統計学の基盤となるベイズの定理について理解する.
ベイズの定理の一般形、および通常のベイズの定理との相違について理解する.
10週 離散フーリエ変換と窓関数,演習

ベイズの定理(3)
ベイズの定理(4)
離散フーリエ変換の計算を行うことができる.

ベイズ更新の計算法について理解する.
多値の確率変数を対象としたベイズの定理の計算法を理解する.
11週 離散フーリエ変換と窓関数,プログラミング演習

ベイジアンネットの基礎(1)
ベイジアンネットの基礎(2)
離散フーリエ変換の計算プログラミングを扱うことができる.

ベイジアンネットの活用対象である学習・適応の仕組みやデータマイニングの概要について理解する.
ベイジアンネットの定義や特徴について理解する.
12週 PCMとWAVEファイル,プログラミング演習

方向依存性分離
ノード間の確率的依存関係
WAVEファイルの操作を行うことができる.

ベイジアンネットを特徴づける方向依存性分離の概要を理解する.
ベイジアンネットにおける2ノード間の確率的依存関係を測る尺度について理解する.
13週 離散コサイン変換と圧縮,プログラミング演習.
ディジタルフィルタ,プログラミング演習

ベイジアンネットの結合構造の妥当性
ベイジアンネットの構造学習法
離散コサイン変換の計算とその計算プログラミングを扱うことができる.
ディジタルフィルタ処理のプログラミングを扱うことができる.

ベイジアンネットにおけるネットワーク全体の妥当性を測る尺度について理解する.
ベイジアンネットの結合構造を決定するアルゴリズムについて理解する.
14週 適応フィルタとアルゴリズム

ベイジアンネットの結合構造を用いた確率推論法(1)
ベイジアンネットの結合構造を用いた確率推論法(2)
適応フィルタの計算とその計算プログラミングを扱うことができる.

サンプリング法にもとづく確率推論法について理解する.
信念伝搬法を活用した確率推論法について理解する.
15週
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎工学実験技術(各種測定方法、データ処理、考察方法)工学実験技術(各種測定方法、データ処理、考察方法)物理、化学、情報、工学における基礎的な原理や現象を明らかにするための実験手法、実験手順について説明できる。3
実験装置や測定器の操作、及び実験器具・試薬・材料の正しい取扱を身に付け、安全に実験できる。3
実験データの分析、誤差解析、有効桁数の評価、整理の仕方、考察の論理性に配慮して実践できる。3
実験テーマの目的に沿って実験・測定結果の妥当性など実験データについて論理的な考察ができる。3
実験ノートや実験レポートの記載方法に沿ってレポート作成を実践できる。3
実験データを適切なグラフや図、表など用いて表現できる。3
実験の考察などに必要な文献、参考資料などを収集できる。3
実験・実習を安全性や禁止事項など配慮して実践できる。3
個人・複数名での実験・実習であっても役割を意識して主体的に取り組むことができる。3
共同実験における基本的ルールを把握し、実践できる。3
レポートを期限内に提出できるように計画を立て、それを実践できる。3
専門的能力分野別の専門工学情報系分野プログラミング与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。4
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。4
ソフトウェアアルゴリズムの概念を説明できる。4
与えられたアルゴリズムが問題を解決していく過程を説明できる。4
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。4
整列、探索など、基本的なアルゴリズムについて説明できる。4
時間計算量によってアルゴリズムを比較・評価できることを説明できる。4
領域計算量などによってアルゴリズムを比較・評価できることを説明できる。4
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。4
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。4
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。4
リスト構造、スタック、キュー、木構造などの基本的なデータ構造を実装することができる。4
ソフトウェアを中心としたシステム開発のプロセスを説明できる。4
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。4
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。4
情報数学・情報理論コンピュータ上で数値計算を行う際に発生する誤差の影響を説明できる。4
その他の学習内容メディア情報の主要な表現形式や処理技法について説明できる。4
ディジタル信号とアナログ信号の特性について説明できる。4
情報を離散化する際に必要な技術ならびに生じる現象について説明できる。4
分野別の工学実験・実習能力情報系分野【実験・実習能力】情報系【実験・実習】与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。4
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。4
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。4
フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。4
問題を解決するために、与えられたアルゴリズムを用いてソースプログラムを記述し、得られた実行結果を確認できる。4
要求仕様に従って標準的な手法によりプログラムを設計し、適切な実行結果を得ることができる。4

評価割合

報告書等提出物合計
総合評価割合100100
基礎的能力00
専門的能力100100
分野横断的能力00