人工知能を動かしてみる(Keras を用いたニューラルネットワークの定義,コンパイル,学習,評価,予測)

Slides:



Advertisements
Similar presentations
白井ゼミ 豊田秀樹(2008)『データマイニング入門』 (東京図書)。4章
Advertisements

情報・知能工学系 山本一公 プログラミング演習Ⅱ 第3回 配列(1) 情報・知能工学系 山本一公
先端論文紹介ゼミ Tracking control for nonholonomic mobile robots: Integrating the analog neural network into the backstepping technique 非ホロノミック移動ロボットのための追従制御:
報告 (2006/9/6) 高橋 慧.
「データ学習アルゴリズム」 第3章 複雑な学習モデル 3.1 関数近似モデル ….. … 3層パーセプトロン
「データ学習アルゴリズム」 第2章 学習と統計的推測 報告者 佐々木 稔 2003年5月21日 2.1 データと学習
USB2.0対応PICを用いたデータロガーの製作
マイクロソフト Access を使ってみよう 第1回
教師あり学習と ディープラーニング 金子邦彦.
第5章 ニューラル ネットワーク 博士課程1年 原 祐輔.
Semi-Supervised QA with Generative Domain-Adaptive Nets
基礎プログラミング演習 第10回.
グラフアルゴリズムの可視化 数理科学コース 福永研究室 高橋 優子 2018/12/29.
確率的学習アルゴリズムを用いた有限状態オートマトンの抽出に関する研究
モデルの逆解析 明治大学 理工学部 応用化学科 データ化学工学研究室 金子 弘昌.
あらまし アンサンブル学習の大きな特徴として,多数決などで生徒を組み合わせることにより,単一の生徒では表現できない入出力関係を実現できることがあげられる.その意味で,教師が生徒のモデル空間内にない場合のアンサンブル学習の解析は非常に興味深い.そこで本研究では,教師がコミティマシンであり生徒が単純パーセプトロンである場合のアンサンブル学習を統計力学的なオンライン学習の枠組みで議論する.メトロポリス法により汎化誤差を計算した結果,ヘブ学習ではすべての生徒は教師中間層の中央に漸近すること,パーセプトロン学習では
ai-1. 人工知能を演習と実践で学ぶ シリーズ
第14章 モデルの結合 修士2年 山川佳洋.
確率的学習アルゴリズムを用いた有限状態オートマトンの抽出に関する研究
強化学習を用いたバックギャモンプレイヤーの生成 TD-Gammon
pp-9. Python のモジュール、パッケージ
深層学習を用いた音声認識システム 工学部 電気電子工学科 白井研究室 T213069 林健吉.
マイクロソフト Access での SQL 演習 第4回 並べ替え(ソート)
変数,式,関数,クラス,コンストラクタ, クラスの属性アクセス,メソッド,親クラ スからの継承
Data Clustering: A Review
ボルツマンマシンの定義 ボルツマンマシン(Boltzmann machine)は、スピン・システムをヒントに作られたモデルである。
OpenCV について OpenCV とは OpenCV の Python プログラム例 配列 画像の B, G, R の 3成分
or-3. 作業リスト,スケジューリング,PERT図 (オペレーションズリサーチを Excel で実習するシリーズ)
15K1117 下窪 聖人 15K1013 坂本 倖輝 15K1112 黒川 晶太 15K1015 関根 修斗
物体検出による視覚補助システム T215085 若松大仁 白井研究室.
第2回課題 配布した通り.氏名・学生番号を忘れないこと.
論文紹介: “Joint Embedding of Words and Labels for Text Classification”
Chapter5-2 その他の話題 15k1015 関根修斗.
ex-8. 平均と標準偏差 (Excel 実習シリーズ)
Pp-10. Python の numpy Python を演習と実践で学ぶシリーズ 金子邦彦.
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
プログラミング言語論 第六回 理工学部 情報システム工学科 新田直也.
「データ学習アルゴリズム」 第3章 複雑な学習モデル 報告者 佐々木 稔 2003年6月25日 3.1 関数近似モデル
DCGANを用いた 画像生成システム 電気電子工学科 T 山田 真司  白井研究室.
pp-1. Python を演習と実践で学ぶ シリーズ
統計ソフトウエアRの基礎.
ベイズ最適化 Bayesian Optimization BO
シミュレーション論Ⅰ 第7回 シミュレーションの構築と実施.
手書き文字の自動認識アプリケーション 15K1013 坂本 倖輝
データ構造とアルゴリズム (第5回) 静岡大学工学部 安藤和敏
自己組織化マップ Self-Organizing Map SOM
「ICAによる顔画像特徴量抽出とSVMを用いた表情認識」
Pp-12. Python の numpy Python を演習と実践で学ぶシリーズ 金子邦彦.
vc-3. ダンプリスト,配列 (Visual Studio C++ の実用知識を学ぶシリーズ)
ai-5. 人工知能の Python パッケージ TensorFlow と Keras の動作確認
ガイダンス 電子計算機 電気工学科 山本昌志 1E
pf-7. データ構造とアルゴリズム (Python プログラミング基礎を演習で学ぶシリーズ)
vc-1. Visual Studio C++ の基本操作 (Visual Studio C++ の実用知識を学ぶシリーズ)
pf-5. 関数呼び出し,スコープ (Python プログラミング基礎を演習で学ぶシリーズ)
pf-4. 式の抽象化と関数 (Python プログラミング基礎を演習で学ぶシリーズ)
vc-3. ダンプリスト,配列 (Visual Studio C++ の実用知識を学ぶシリーズ)
pf-6. スタック (Python プログラミング基礎を演習で学ぶシリーズ)
誤差逆伝播法による ニューラルネットワーク (BackPropagation Neural Network, BPNN)
pp-9. Python のモジュール、パッケージ
ex-8. 平均と標準偏差 (Excel を演習で学ぶシリーズ)
ディープラーニング顔画像解析基盤 システムによる顔解析へ向けて
cp-15. 疑似乱数とシミュレーション (C プログラミング演習,Visual Studio 2019 対応)
pp-1. Python を演習と実践で学ぶ シリーズ
ニューラルネットワークの仕組み (Raspberry PI 演習で学ぶ) AI DATA VASSEL 資料
pf-2. 条件分岐 (Python プログラミング基礎を演習で学ぶシリーズ)
rd-7. 主成分分析 (Rシステムでデータサイエンス演習)
mi-8. 自然言語処理 人工知能を演習で学ぶシリーズ(8)
mi-5. プロダクションシステム 人工知能を演習で学ぶシリーズ(5)
ns-3. Cloud FireStore で JSON を扱う (NoSQL データベースを学ぶシリーズ)
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
Presentation transcript:

人工知能を動かしてみる(Keras を用いたニューラルネットワークの定義,コンパイル,学習,評価,予測) Iris データセット ニューラルネットワークの作成 ニューラルネットワークの学習 ニューラルネットワークによる予測 リレーショナルデータベースのテーブル、フィールド、データ型について説明します 「パソコン実習」の資料を準備しています https://www.kunihikokaneko.com/dblab/keras/keras.html 人工知能を演習と実践で学ぶシリーズ 金子邦彦

ニューラルネットワーク利用の流れ 1. 定義 (define) ニューラルネットワークの作成 2. コンパイル (compile) ニューラルネットワークの学習過程(損失関数や最適化手法 など)を定めてからコンパイル 3. 学習 (train) ニューラルネットワーク内のパラメータの自動調整(fit と もいう) 4. 評価 (evaluate) 学習の結果できたニューラルネットワークの評価 ※ 前もって準備しておいた「テストデータ」を使用 5. 予測 (make prediction) ニューラルネットワークを用いて予測

層が直列になっているニューラルネットワーク 全結合 全結合 全結合 入力 出力 層数が4の場合(総数はいろいろ変わる)

ユニットと全結合 入力 出力 全結合 全結合 全結合 ※ 層の中には、ユニットが並ぶ

ユニットの活性化 全結合 全結合 全結合 入力 出力 活性化の度合いは数値(オン、オフではない) にするのが普通.活性化の数値は次の層に伝わる

ソフトマックス (softmax) に設定された出力層 全結合 全結合 全結合 入力 出力 出力層(出力を出す層)のユニットについて, 活性化の度合いが高くなるのは同時に1つにしたい

ソフトマックス (softmax) に設定された出力層 ソフトマックスに設定したとき ・各ユニットの活性化の度合いは,0  から1の数値   ※ 右図では,5個のユニットが    それぞれ違う度合いで活性化 ・最も値が高いものは「活性化してい  る」,それ以外は「活性化してな  い」と考える 出力層(出力を出す層)のユニットについて, 活性化の度合いが高くなるのは同時に1つにしたい

ニューラルネットワークのバリエーション Recurrent Network LSTM Recurrent Neural Network フィード バック付き 全結合 全結合 全結合 フィード バック フィード バック LSTM Recurrent Neural Network メモリユニット 付き 全結合 全結合 全結合 メモリユニット付き メモリユニット付き フィード バック フィード バック

ニューラルネットワークのバリエーション CNN 畳みこみ層付き 全結合 全結合 全結合 全結合 畳みこみ層

ニューラルネットワークの学習 中のパラメータが 自動調整される ペア [0 2 1 学習用データ 特徴量 ラベル

ニューラルネットワークの定義とコンパイル import tensorflow as tf import keras from keras.models import Sequential from keras.layers import Dense, Activation m = tf.keras.models.Sequential([ tf.keras.layers.Dense(units=64, input_dim=len(X_train[0]), activation=tf.nn.relu), tf.keras.layers.Dense(units=max(set(y_train)) - min(set(y_train)) + 1, activation=tf.nn.softmax) ]) m.compile(loss=keras.losses.categorical_crossentropy, optimizer=keras.optimizers.SGD(lr=0.01, momentum=0.9, nesterov=True)) 層は 直列(Sequential) 1層目のユニット数は 64 2層目のユニット数は 3 max(set(y_train)) - min(set(y_train)) で計算 「softmax」は「ソフトマックス」 損失関数は categorical_crossentropy, 最適化手法は SGD 「パソコン実習」の資料を準備しています https://www.kunihikokaneko.com/dblab/keras/kerasi.html

アヤメ属 (Iris) ◆多年草 ◆世界に 150種. 日本に 9種. ◆花被片は 6個 外花被片(がいかひへん) Sepal 3個(大型で下に垂れる) 内花被片(ないかひへん) Petal 3個(直立する) 内花被片 外花被片

Iris データセット Iris データセット(データ数は 50 × 3) のうち、先頭 10 行 ◆ 3種のアヤメの外花被 辺、内花被片を計測 ◆ 種類も記録 setosa versicolor virginica ◆ データ数は 50 × 3 作成者:Ronald Fisher 作成年:1936 外花被片(Sepal) の長さと幅 内花被片(Petal) の長さと幅 種類 特徴量 ラベル

Iris データセットと、Python の配列オブジェクト [0 Iris データセット(データ数は 50 × 3)のうち、先頭 10 行 特徴量(数値)が入った 配列オブジェクト サイズ:150 × 4 次元数: 2 ラベル(数値)が入った 配列オブジェクト サイズ:150 次元数: 1 setosa → 0 versicolor → 1 virginia → 2 ラベルの数値化

ニューラルネットワークの例 全結合 出力 入力 4 個の数値 層数: 2 構造は直列(Sequential) (入力層の全 活性化の値が 最大 入力 出力 4 個の数値 (入力層の全 ユニットに同じ入力) ユニット数 64 ユニット数3 ソフト マックス 層数: 2 構造は直列(Sequential)

ニューラルネットワークによる予測 0 である確率 0.0068 1 である確率 0.1592 2 である確率 0.8340 4つの数字 活性化の値が 最大 学習済み

ニューラルネットワークの評価 (良さを調べるには) 予測させてみる 0 である確率 0.0068 1 である確率 0.1592 2 である確率 0.8340 ニューラルネット 学習済み 前もって正解を調べておき、照合:   正解は 2

ニューラルネットワークの進展を助けているもの ニューラルネットワークの技術革新   基盤技術: Heの初期化, Batch Normalization, Dropout, CNN, LTSM, GAN系列   モデル: VGG16 など ニューラルネットワークを高速にシミュレーションで きる高性能のコンピュータ 高性能プロセッサ、GPU ニューラルネットワークの学習に役立つ大量のデータ データ計測、データ収集

終わりに 関連資料や教材は,次の Web ページで公開しています. http://www.kunihikokaneko.com/dblab/intro/ その他,さまざまな資料を金子研究室 Web ページで公開しています http://www.kunihikokaneko.com/index-j.html 金子邦彦

Iris データセット(データ数は 50 × 3)のうち、先頭 10 行 [0 サイズ:150 × 4 サイズ:150 主成分分析 [0 サイズ:150 × 2 x 座標と y 座標 サイズ:150 色