最適化理論(2022)
第10回. 6/22 (水) ベイズ計算の基礎:,周辺確率,条件付確率,ベイズ推論,事後確率最大化
第11回. 6/29 (水) 動的計画法.コンピュータプログラムの作り方
第12回. 7/6(水) コード作成:動くコードを完成させる方法
口頭試問・
第13回. 7/13(水) コード作成:プログラミング実践(C言語,Python)
--------- 7/18 (月)口頭試問締切
第14回. 7/20 (水) 自由課題について.少し高度な話題:事後確率の具体的な計算
--------- 7/26(火) 18:00 レポート提出締切(厳守.ともかく提出)
第15回. 7/27 (水) まとめ (レポート講評)
第15回. 7/27水 10:30〜
第14回. 7/20水 10:30〜
補足
テストしてみる
テストとは:自分が書いたコードが正しく動いているかどうかチェックすること
講義で実演したのは,関数,クラスを使わない,シンプルな書き方(numpy は使った)
guthub 上には,関数,クラスを使った (numpy は使っていない)コードの例を置いている
新しいプログラミング言語を学ぶときに,この課題に取り組めば,とっつきやすい(Java, Ruby, Javascript,...).
代入,配列,for文,if文,乱数,関数,print文,...
https://gyazo.com/f37e0d9628b5b566897f83599188e1fa
https://gyazo.com/18efc569ca958ef9abf063e8b80adf6d
https://gyazo.com/3ca398c9a233794ff1a6a93cbcef0eeb
https://gyazo.com/79eb691411dd7930ab0cea14413e3f84
https://gyazo.com/d518262463bc0bf371f5bb2e72f233cc
https://gyazo.com/44be7493f97b8fb08f54a1277af718bf
https://gyazo.com/deb91398f357cc10403f9ebbbaf76e93
https://gyazo.com/8e85603402be193411f5fd888b9514fe
第13回. 7/13水 10:30〜
キーワード
実験.実験結果の観察.丁寧に観察
生成モデル
モデル化,modeling
「現実世界の現象をモデルに埋め込む」
https://gyazo.com/09372af34cf0dede729d9510d888f320
漢字.書けなくなってきた....
『観察』
https://gyazo.com/79ff769c0eea4149fa88bd19c05b1b96
『属する』
第12回. 7/6
https://gyazo.com/fa094fcf9431fa8d8682e6aa524dac8fhttps://gyazo.com/e21c394063eeb5993cfbd73197e4878a
https://gyazo.com/f76dbb9d8b9cbb93f25909c7c225331e
第11回. 6/29
動的計画法
第10回. 6/22
学籍番号のチェックデジットについて
6 7 2 0 0 _ _ ?
学籍番号を構成する個々の数字:偶数と奇数に分けてそれぞれを足し算.
第9回. 6/15 (水) 統計的最適化に必要な基礎知識
最終課題の概要
https://gyazo.com/bc927987f5d7e0b123033960ee8277e3
確率,正規分布,最尤推定,対数尤度
疑似乱数,乱数の種とは
Python で乱数生成
https://gyazo.com/f37e0d9628b5b566897f83599188e1fa
正規分布からの疑似乱数生成(2022 最新版).ヒストグラムの表示.いろいろ試す.
code:code
import numpy as np
import matplotlib.pyplot as plt
mu = 0 # mean
sigma = 1.0 # standard deviation
N = 10000 # generate N samples
rng = np.random.default_rng(20220615)
# print(rng) # Generator(PCG64)
s = rng.normal(mu, sigma, N)
count, bins, ignored = plt.hist(s, 30, density=True)
plt.plot(bins, 1/(sigma*np.sqrt(2*np.pi))*np.exp(-(bins-mu)**2/(2*sigma**2)), linewidth=2, color='r')
plt.show()
# print(bins)
第10回. 6/22 (水) ベイズ計算の基礎:,周辺確率,条件付確率,ベイズ推論,事後確率最大化
第11回. 6/29 (水) 動的計画法.コンピュータプログラムの作り方
第12回. 7/6(水) コード作成:動くコードを完成させる方法
口頭試問・
第13回. 7/13(水) コード作成:プログラミング実践(C言語,Python)
--------- 7/18 (月)口頭試問締切
第14回. 7/20 (水) 自由課題について.少し高度な話題:事後確率の具体的な計算
--------- 7/26(火) 18:00 レポート提出締切(厳守.ともかく提出)
第15回. 7/27 (水) まとめ (レポート講評)
https://gyazo.com/6c58228ad0a7fc145285a22697804908
成績の評価基準
口頭試問(50%)とレポート(50%)
口頭試問では,動的計画法の考え方を理解しているかを確認,
code:ccc
# -*- coding: utf-8 -*-
import random
import matplotlib.pyplot as plt
T = 1000
Mu = 0.0
Sigma = 1.0
# random.seed( 20131107 )
y = []
n1 = 0; n2=0; n3=0
for i in range(T):
r = random.gauss(Mu, Sigma)
y.append(r)
if r > Mu - Sigma and r < Mu + Sigma:
n1 +=1
if r > Mu - 2.0*Sigma and r < Mu + 2.0*Sigma:
n2 +=1
if r > Mu - 3.0*Sigma and r < Mu + 3.0*Sigma:
n3 +=1
# キャンバス
fig = plt.figure()
ax = fig.add_subplot(111)
ax.hist(y, bins=101, range=(-5, 5), density=False, facecolor='g')
ax.set_xlim(-5, 5)
ax.grid(True)
print (float(n1)/float(T))
print (float(n2)/float(T))
print (float(n3)/float(T))
# plt.savefig(ss108.jpg) # 図のファイルを作りたいとき
plt.show()