ゼミの風景

おそらくお気楽はしのすけゼミの諸風景

Top | ゼミ2016卒 | ゼミ2015卒 | ゼミ2014卒 | イベント | About

ダウトの数理(4年ゼミ)

f:id:okiraku894:20180727122647j:plain
ダウトゲームの数理.
必勝パターン探しにまじめに取り組むことになった2回目.
どうやら相手に自分の最小カードより小さなカードが複数枚あり,また相手の最大カードより大きなカードがこちらに複数枚あると必勝法がみつけられそうだ,というところに来た.
先週無理やり作ったゲームの図式化から,何らかの半不変量が見つけられると良さそうだ.
いわゆるGrundy数もどきのものだ.
もうちょっと実験をして経験を積むと,それらしい量が見つかる気配がしている.
が,これから3週間はゼミ休止.
免許更新やら高大連携やらオープンキャンパスやら,大変.

ダウトの数理(4年ゼミ)

f:id:okiraku894:20180720121035j:plain
ダウトゲームの数理.
前回から始まった必勝パターンの探求のつづき.
1枚だけ相手カードの最大値より小さいというカード配置であるときの必勝法について分析した.
ただ,こういった分析はひたすら日本語でダラダラ表現せねばならなくなり,余り好ましくない.
何らかの意味でこれを図式化して,更には計算できるようになると良いが,そうなるにはまだこの現象についての経験が足りないようだ.

遺伝的アルゴリズム(4年ゼミ)

f:id:okiraku894:20180719123316j:plain
遺伝的アルゴリズム.だけど今は蟻コロニーアルゴリズム.
前回,最適解を見つける確率を記述してみたところまで来た.
今度はその確率が世代とともに増えていくか,つまり最適解にちゃんと収束するのかを追う仕事に入っている.
とはいえ,まだ当分整理せねばならない事柄で時間を使いそうだ.

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

進化論的計算手法 (知の科学)

進化論的計算手法 (知の科学)

ニューラルネットワーク(4年ゼミ)

dl.sony.com
ニューラルネットワーク.
本日写真無し.代わりにSonyのNewral networl console 上でのシミュレーション結果をいろいろと見せてもらった.
先週は多数の手書き「4」と「9」の判定をシミュレーションしてみたのだが,このときは2次元画像データ.
では1次元データはできるのか,ということでCSVになった日経225を読み込んであれこれ実験してきたらしい.
持ってきたシミュレーションは過去3年分の日経225を学習し,過去5日のデータから次の日を予測するというものだ.
コンボリューションなしからありにすると,評価が上がる.ところがコンボリューション2層にすると計算量の割に評価が上がらない.
またコンボリューション1層にして世代を5000にして学習するとかなりの精度で225を再現する.
しかし,そもそも3年分の学習だからこの3年間データにover fittingしてしまってはいないか,ということで1970年からの225データを拾ってきて学習.
コンボリューション1層,1000世代学習が10分ほどで完了.
そしてなんとなんと,リーマンショックをはじめ様々な変動があったにもかかわらずこれまた良く予測できている.
うわぁ,本当に使えるんじゃない,これ!

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ニューロコンピューティングの数学的基礎

ニューロコンピューティングの数学的基礎

ダウトの数理(4年ゼミ)

f:id:okiraku894:20180713125010j:plain
ダウトゲームの数理.
一週開いたこの日,ちょっとした補題を提示してきた.
なるほど.必勝法があるならばまずそれが起こる場合を特定してしまえ,ということだ.
そしてこの補題は他のパターンにも使えるのでなかなか良い.
ということで,引き続き勝敗が確定するカード状況の探索を行ってもらうことになった.

遺伝的アルゴリズム(4年ゼミ)

f:id:okiraku894:20180712120228j:plain
f:id:okiraku894:20180712123814j:plain
遺伝的アルゴリズム.といいながら,マルチエージェントによる探索アルゴリズムに入っていた.
先回紹介されたアントコロニーモデルが最適解に収束するかどうかについての議論を進めることになった.
アルゴリズムから最適解に至る確率の漸化式を導出して,確率が実際に上がっていくのかを観察したい.
最後は不等式評価になるだろうから,できるだけ本質を残したままモデルを単純化して議論したいところだ.

なんとなく検索したら,こんなページを発見.結構盛んなんだね.
Ant Colony Optimization

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

進化論的計算手法 (知の科学)

進化論的計算手法 (知の科学)

遺伝的アルゴリズム(4年ゼミ)

f:id:okiraku894:20180705114728j:plain
f:id:okiraku894:20180705122543j:plain
遺伝的アルゴリズムとその周辺.
今回は群知能.さまざまなモデル化があるらしいが,その中から蟻コロニーをモデルにした最適化アルゴリズムについて.
蟻が餌探しに揮発性フェロモンを使うのをそのまま利用したモデルだ.
巡回セールスマン問題においては通常のGAより優秀らしい.
それでも確率的探査であるし,局所解に落ち着いてしまうこともありえる.
GAのような交叉がないのだが,複数経路の蟻が共通の道を通ったりすることでフェロモンが強化されるあたり,ある意味交叉のようなことをやっているのかもしれない.

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

進化論的計算手法 (知の科学)

進化論的計算手法 (知の科学)

ニューラルネットワーク(4年ゼミ)

f:id:okiraku894:20180704141044j:plain
ニューラルネットワーク.
畳み込みニューラルネットワークの意味について議論.
例えばそれが縦縞模様なのかそうでないかは,縦縞フィルターで畳み込むと特徴量が抽出できよう.
で,それが縦横に限らずとにかく縞模様かどうか判断するとなると多層ニューロンが必要だろう.
ではどうやって多層になると判断できるようになるのか,その仕組みを数理モデルとして記述できると数学の卒論に近づけるのだが,追えるだろうか.
このところ滞っているので,これまでの話題を振り返ってLaTeX化できるところはどんどんしてもらうことにした.

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ニューロコンピューティングの数学的基礎

ニューロコンピューティングの数学的基礎

ダウトの数理(4年ゼミ)

f:id:okiraku894:20180629122837j:plain
ダウトゲームの数理.
差し当たりランダム選択片側ダウトモデルについては考察が整った.
徐々に本来のダウトに近づけるため,ゲームルールを変えていく.
例えば互いのカードが何であるか互いに知っているとしたら戦略は変わるだろうか?
と言った考察をしてみると,じきに最善手が分かる.
ところがこれをミリオンダウト的にランダム選択で初期カードを設定すると話が変わってくる.
さて,この続きをやってごらん,というところで次回.

遺伝的アルゴリズム(4年ゼミ)

f:id:okiraku894:20180628115311j:plain
f:id:okiraku894:20180628123706j:plain
f:id:okiraku894:20180628124914j:plain
遺伝的アルゴリズム.
しかし今回は遺伝交叉や突然変異の無いEstimation of Distribution Algorithm (EDA)について.
要するに次世代個体の残し方の違いなのだが,突然変異といったものが無い分,最適解に速く収束するようにも思えるし,一方で多様性が生み出されない可能性があるから局所解に留まることも増えそうに思う方法だった.
いずれにしても極簡単なモデルにして最適解への収束の保証など,数学的にできそうなことは多々ありそうだ.
更に後半の話題はほぼニューラルネットワークに置き換えられる話になった.

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

進化論的計算手法 (知の科学)

進化論的計算手法 (知の科学)

ダウトの数理(4年ゼミ)

f:id:okiraku894:20180622115635j:plain
ダウトの数理.
先回から発想を変えて場合分けアプローチを諦めて,確率的な扱いに.
ダウトゲームに向けた最も簡単と思われるモデルを考え,カード枚数の増減についての期待値計算によって最適戦略を考える.
その結果として出すカードが全カードの数字の半分未満ならばダウトせず,半分を超えたらダウトする,という至極まっとうな結果になった.
さて,この後この単純すぎるモデルをどう実際のダウトに近づけていくか,が問われる.

ニューラルネットワーク(4年ゼミ)

f:id:okiraku894:20180620131156j:plain
f:id:okiraku894:20180620135138j:plain
久しぶりにニューラルネットワーク.というのも教育実習の研究授業が重なっていたからだった.
今回は逆伝播法の計算図の解釈のつづき.
アフィンレイヤーを扱うには行列による微分などが必要になってくる.その際の計算方法で前回つまづいていたところだった.
結局のところ多変数版の連鎖律をきちんと追っていけば理解できた.
さて,これで再びCNNへ戻っていくのかな.

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ニューロコンピューティングの数学的基礎

ニューロコンピューティングの数学的基礎

遺伝的アルゴリズム(4年ゼミ)

f:id:okiraku894:20180614113840j:plain
f:id:okiraku894:20180614120838j:plain
f:id:okiraku894:20180614123326j:plain
遺伝的アルゴリズム.
今回はNo Free Lunch Theoremについて,主張と証明.
どんな問題に対しても効率が上がるアルゴリズムは存在しない,という定理だ.
「どんな問題に対しても」をどう数学的に表現するのかと思っていたが,あらゆる評価関数についての評価期待値が変わらない,という主張だった.
なるほど,それなら数学に載る.
そしてその証明は結局のところ写像の個数を数えるところに落ち着くということだった.
さてさて,次は何をするのかな.

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

進化論的計算手法 (知の科学)

進化論的計算手法 (知の科学)

ダウトの数理(4年ゼミ)

f:id:okiraku894:20180608172442j:plain
ダウトゲームの数理.
当初は各状態に関する推移図を描いてマルコフ連鎖の話題に,と考えていたのだがまともに相手にするとなんとも収拾のつかない話になる.
そこで方針を大きく変えて各場合を見るのではなく全ての場合を一度に考え,期待値で考察を進めることにした.
更にはゲームをプレイヤーに関して対称にせず,カードを出す側とダウトする側を固定し,相手カードに関する情報ができるだけ増えないルールの下でゲームをまず考察することにした.
とりあえず数学に乗りやすい形の近似的なゲームを考えていこうということだ.

遺伝的アルゴリズム(4年ゼミ)

f:id:okiraku894:20180607132525j:plain
f:id:okiraku894:20180607135317j:plain
遺伝的アルゴリズム.
このところグレイコードについて議論しているが,今日で決着をつけたい.
アルゴリズム的に理解しているものをきちんと数式で書き下す作業も卒論として,かつ数学するにも必要だ.
そうしてよくよく見直したら前回の数式がアルゴリズム通りになっていないことに気付き,訂正.
ようやくn進数とそのグレイコードの対応が完成した.
つぎは"No Free Lunch theorem"だそうだ.

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

遺伝アルゴリズムとニューラルネット―スケジューリングと組合せ最適化

進化論的計算手法 (知の科学)

進化論的計算手法 (知の科学)