シラバス参照/View Syllabus |
科目一覧へ戻る/Return to the Course List | 2024/08/29 現在/As of 2024/08/29 |
開講科目名 /Course |
情報システム論a/INFORMATION THEORY OF SYSTEMS(A) |
---|---|
開講所属 /Course Offered by |
経済学部経営学科/ECONOMICS MANAGEMENT |
ターム?学期 /Term?Semester |
2024年度/2024 Academic Year 春学期/SPRING SEMESTER |
曜限 /Day, Period |
金3/Fri 3 |
開講区分 /semester offered |
春学期/Spring |
単位数 /Credits |
2.0 |
学年 /Year |
2,3,4 |
主担当教員 /Main Instructor |
今福 啓 |
遠隔授業科目 /Online Course |
- |
教員名 /Instructor |
教員所属名 /Affiliation |
---|---|
今福 啓 | 経営学科/MANAGEMENT |
授業の目的?内容 /Course Objectives |
この講義では人工知能の中心的な技術である機械学習のうち、ニューラルネットワークについての理論を学習すると同時に、プログラミング言語Pythonを使って機械学習を実現するプログラムを作成します。 理論だけではなく実習を行うことで、機械学習について詳細に理解することを目標とします。 プログラミング言語Pythonについては初歩から説明します。 これまでプログラムを作成したことがない場合でも受講できますので、他の講義でPythonを学習している必要はありません。 ---------- この講義では経済学部の学位授与方針に掲げる能力を育成するため、教育課程の編成?実施方針が示す学科専門科目としてコンピュータに関連する専門的な知識を習得し、コンピュータを実践的に使用するために必要となる力を身につけます。 履修後は、履修系統図が示す3年次以降の学科専門科目、教職関連科目、演習科目の学修を円滑に進めることができます。 |
||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
授業の形式?方法と履修上の注意 /Teaching method and Attention the course |
講義はPC教室で、通常の講義形式で理論的な内容の説明を行うと同時に、コンピューターを使ったプログラム作成を行います。 自分が所有するコンピューター(WindowsまたはMac)を持参してプログラム作成してもかまいません。 その場合、講義第1回で説明するソフトウェアを各自のコンピューターにインストールしてください。 |
||||||||||
事前?事後学修の内容 /Before After Study |
この講義の 授業計画詳細情報 にある 事前?事後学修の内容 を参照してください。 ---------- 大学設置基準が定める学修時間に従い、1回の講義につき事前学修120分、講義時間100分、事後学修120分の学修時間となることを想定しています。 |
||||||||||
テキスト1 /Textbooks1 |
|
||||||||||
テキスト2 /Textbooks2 |
|
||||||||||
テキスト3 /Textbooks3 |
|
||||||||||
参考文献等1 /References1 |
|
||||||||||
参考文献等2 /References2 |
|
||||||||||
参考文献等3 /References3 |
|
||||||||||
評価方法 /Evaluation |
講義時間中に作成したプログラムをGoogleフォームに提出し、その内容を評価します(100%)。 提出物へのコメントは、提出締切の次の講義で行います。 期末の試験やレポート提出はありません。 Googleフォームにノートを提出すると、自動で確認メールが送信されます。 届いたメールは課題を提出したことの証明となりますので、必ず保存してください。 締切後の課題提出は受け付けませんので注意してください。 |
||||||||||
関連科目 /Related Subjects |
コンピュータアーキテクチャ、情報通信ネットワーク、プログラミング論、データベース論、マルチメディア論、Webデザイン論、システムズ?エンジニアリング、データマイニング論、アルゴリズム論、AI入門、データサイエンス入門、情報システム概論 | ||||||||||
備考 /Notes |
|||||||||||
到達目標 /Learning Goal |
コンピュータ内部でのデータ構造、情報処理手順、およびコンピュータ自身が問題の変化に応じて解決手順を構築する手法等に関して専門知識を習得し、コンピュータを用いたより効率的な問題解決ができるようにする。 |
回 /Time |
授業計画(主題の設定) /Class schedule |
授業の内容 /Contents of class |
事前?事後学修の内容 /Before After Study |
---|---|---|---|
1 | 講義の準備、進め方、成績評価 | 講義で使用するGoogleアカウントの取得、Google Chrome、Google Colaboratory、講義の進め方、成績評価の方法を説明する。 | 【事前学修】講義で学ぶ内容を授業概要を通じて理解する。 【事後学修】講義で使用するソフトウェアを正しく使用できるか確認する。 |
2 | プログラミング言語Python | Pythonによるプログラム作成の手順を理解し、演算を行う簡単なプログラムを作成する。演算の結果を記憶する変数の使い方を学習する。 | 【事前学修】プログラミング言語にはどのような種類があるか、それぞれの違いを調べて確認する。 【事後学修】Google Colaboratoryを使ったPythonのプログラム作成手順を確認する。 |
3 | データ構造 リスト、タプル、辞書 | 複数のデータをまとめて処理する構造を理解し、プログラムを作成して使い方を習得する。 | 【事前学修】ベクトル、行列という用語を調べる。 【事後学修】各データ構造の使い方と特徴を復習する。 |
4 | 制御構文 if, for, while | プログラム実行の流れを変える if, for, while構文 の使い方を習得する。 | 【事前学修】制御構文がどのようなものか調べる。 【事後学修】制御構文が必要な理由を確認する。 |
5 | 関数 | プログラミング言語で関数を使う理由を理解し、関数の作成方法を習得する。 | 【事前学修】プログラムにおける関数について調べる。 【事後学修】関数を使うことの利点、作成方法について確認する。 |
6 | モジュール、クラス、オブジェクト | 複雑な処理を容易に利用できるモジュールの利用方法と、モジュールを理解する際に必要となるクラス、オブジェクトについて理解する。 | 【事前学修】モジュール、クラスについて調べる。 【事後学修】クラスを使うことの利点、プロパティ、メソッドについて理解しているか確認する。 |
7 | 機械学習の概要 パーセプトロン | 人工知能の中心的な技術である機械学習で何を行っているか理解する。 | 【事前学修】機械学習の概要を調べる。 【事後学修】パーセプトロンの計算方法を確認する。 |
8 | パーセプトロンの学習 | パーセプトロンの学習方法を理解する。 | 【事前学修】パーセプトロンの計算手順を確認する。 【事後学修】パーセプトロンの学習では入力に対する出力が教師信号に一致するよう学習により重みとバイアスを修正することを確認する。 |
9 | 複数のパーセプトロンを接続する | パーセプトロン1つでは正しく学習できない問題を扱うため、複数のパーセプトロンを接続して計算する方法を学ぶ。 | 【事前学修】パーセプトロンでは線形分離可能となる問題しか学習できないことを確認する。 【事後学修】作成したプログラムと、複数のパーセプトロンを接続した構造の対応を確認する。 |
10 | シグモイド関数、ReLU関数と学習 | パーセプトロンの出力を決定する関数としてシグモイド関数、ReLU関数を使った場合の出力計算と学習について学ぶ。 | 【事前学修】シグモイド関数、ReLU関数がどのようなものか調べる。 【事後学修】出力を決める関数を変更することで学習できる問題が広がることを確認する。 |
11 | クラス分類と回帰、損失関数 | 機械学習には、入力された写真が何の写真であるか判定するといったクラス分類と、分かっている情報から将来の株価を予測するといった回帰があることを理解する。 | 【事前学修】クラス分類、回帰という用語を調べる。 【事後学修】クラス分類、回帰が具体的にどのような問題に応用されているか調べる。 |
12 | ニューラルネットワークとバックプロパゲーションの概要 | パーセプトロンを複数並べてネットワークを構成したニューラルネットワークの構造と学習方法(バックプロパゲーション)の概要を学ぶ。 | 【事前学修】複数のパーセプトロンを接続した際の動作を復習する。 【事後学修】ニューラルネットワークでどのように学習が行われるか確認する。 |
13 | ニューラルネットワーク(プログラム作成) | 多数のパーセプトロンを組み合わせたニューラルネットワークのプログラムを作成し、動作を確認する。 | 【事前学修】ニューラルネットワークの理論を復習する。 【事後学修】複雑な構造となるプログラムと、ニューラルネットワークの計算との対応付けを確認する。 |
14 | モジュールを使ったニューラルネットワークのプログラミング | モジュールsklearnとKerasを使ってニューラルネットワークによる学習を行うプログラムを作成する。 | 【事前学修】これまで作成したパーセプトロンを使った機械学習のプログラムを確認する。 【事後学修】モジュールを使った機械学習のプログラム作成手順を確認する。 |