ナンクル力学系

学んだ事を書き連ねていこう。

Archive for December 2008

2008年に書き溜めたログを見直してみる

leave a comment »

卒業研究やりながら取っていたメモを見直してみる。こういうアウトプット(?)も大事ではと思う。今年の目玉イベントは二回ほど壁にぶち当たったことなので、それに至る過程の復習になればと思いながら書く。

1月

  • まだメモ取り始めてない。
  • 研究室の異動の手続きとかしていた。前研究室の先生にはお世話になりましたm(_ _)m

2月

  • メモ取り始めた。
  • 具体的にどんな研究できるのかと思って修論読みに行ったり。
  • 修士(推薦・院試・留学?)どうするかとか悩んでいたらしい。
  • 新しい研究室の先生と面談。
  • 新しい研究室の班を見学した。
  • C言語使えないから練習だと思ってNN作ってみたりした。
  • 注:この時点ではNN使う班に行くとは思って無かったw

3月

  • メモがない。
  • 今の研究室の班配属が決まる。埼玉のとある研究所に飛ばされるw
  • 研究室始動日飲みで大失敗w

4月

  • RNNのプログラムを書いて勉強 > 面談とお話
  • 研究室に置いてあった本からモロに影響を受けて幼児のU字発達とかに興味を持っていた。
  • なぜか、スモールワールドとかの話とくっ付け始める。
  • 今考えると発想がぶっとんでいるw
  • boost graphの変態的なC++を使いはじめる。
  • boost graph使ってNN作ってたらしい。(アホだろw) >道具に振り回された先週.休みの多い今週.

5月

  • スモールワールドにしたRNNのリャプノフ指数(とリャプノフ次元)を求めるプログラムを書き始める。
  • QR分解とか使った。
  • CTRNNを力学系的に解析した論文を読んだり応用したりしたのは面白かった >もう少しで第一段階クリアかもしれない
  • この論文に影響を受けて変な勾配法とか作って試したりした。

6月

  • この辺で強化学習について勉強していたはずだけどログ残ってない。
  • Open Dynamics Engineを使い始める。
  • 隠れ状態ありの倒立振子の強化学習プログラムを作る。
  • ここで、自分が今までBPTTだと思って導出していた式がRTRLだと気づく。少し悲しくなる。
  • 強化学習をBPTT用で作り直す。
  • ほとんどブログ書いてない。多分精神的にやばい兆候。

7月

  • 強化学習にかなりてこずってる。
  • 隠れ状態ありを最初からやるのはきつかも、ってことで角速度も加えてリカレントなしでやり始めたのはこの時期?
  • 教示データのジェネレーションと学習のイテレーションは別にやらなきゃNNは学習しないよ、ってことを教わる。結構常識らしい。また悲しくなる。
  • ブログ書いてない。多分精神的にやばい。

8月

  • Open Dynamics Engineの使い方が間違っていたことに気づく。結構悲しくなる。
  • この辺まで、パラメタの調整とかプログラムをちょこちょこ修正したりとかばっか。かわいそうだなこいつ。
  • 隠れ状態無しの倒立振子の強化学習に成功。
  • ここまでで何回もNN作り直してるっぽいのに、また新しく作っているな。
  • NNのプログラムに汎用性もたせるための工夫とかやり始めたw
  • ロボットシミュレータを作り始める。
  • 色々新しいモデルを考え始める。どれも上手くいかないことに気づく。今考えると当たり前w
  • ブログ書いてない。多分精神的にそうとうやばい。

9月

  • 強化学習じゃない他のテーマでいけないかとか考え始める。
  • Python/C APIでNNを作るという変態的なことを始めた。
  • ワーキングメモリーのモデルできないかな、とか考え始める。
  • NNのジェネレータをPythonで書くとかド変態なことをした。

10月:壁①

  • 自分の考えたテーマで卒論を書くことをあきらめた。←壁①
  • この時点での反省はこの辺にまとめた >  卒論半ばの反省会
  • ボスと一緒に研究する感じになった。
  • 俺はプログラム担当に。プログラム的には色々と変なことしたけど今年最後のNNは純Cだったとさw
  • 色々と本を読んだりする時間をとるようにし始めた。楽しい!
  • ラボのセミナーに(再)参加し始める。

11月:壁②

12月

  • 実験大詰め。現時点で大体データそろった。ボス曰く、「まあこれで卒論は書けるね。」
  • 今月あんまりメモとってないな。(ぉぃ
  • 総数研ワークショップに行ってきた > 1日目メモ / 2日目メモ
  • ワークショップ素晴らしい。もっとじゃんじゃん参加すべきだな。

振り返ってみると、

  • 何かに没頭して抜け出せなくなるという自分の性格が表れたパターンが前半
  • まわりを見始めたらボコボコ壁にぶつかり始めたパターンが後半

という感じ。後半のパターンが多分正しい。研究が上手くいかないと結構落ち込むけどメモやブログで何を積み重ねてきたが分かるようにしてると案外大丈夫かもとか思ったり。今年はChangeLogでメモ取ってたけど、左のTabインデントがもったいないなと最近思う。来年はrstでとるかな。

プログラミングスキルは結構成長した年。
研究者的にはそれがどんなもんかある程度分かってきた年。
コーヒー的には充実した年。
そんな感じの2008年でした!

Written by tkf

December 30, 2008 at 2:12 pm

Posted in 研究日誌

Tagged with

PRMLの1~5章をとても荒めに理解した

leave a comment »

一応NNについて書いている5章まで読んだ。いつも、章の後半がきつい。ベイジアンっぽくなるからというより集中力が切れてるからのような。

とりあえず、理解した(というか頭に残っている)流れはとても荒いけど、過程大切なので書く:

  • 統計的に機械学習を考えるときは、尤度p(w|x,t) \propto p(t|x,w) p(w) の最大化として考えようね。(1章)
  • p(t|x,w) を正規分布とすると、二乗誤差を誤差関数とみて最小化と等価だね。これが回帰!(1,3,5章)
  • p(w)を正規分布とすると正規化項に。(1,5章)
  • p(t|x,w)を多項分布とすると、クロスエントロピー(またはKLダイバージェンス)を誤差関数とみて最小化と等価だね。これがクラス分類!(4,5章)

もうちょっと細かく思い出そうとすると、本を開いて読み直してしまいそうだ。全部確率分布で統一的に理解できる、という感覚に慣れてきたので今のところは満足(しちゃだめだけどw)。全然ベイジアンしてねー。笑

softmax関数を出力層に使ったNNで誤差関数をKLダイバージェンスにする論文に出会い、なぜって思った時の疑問が解消されたのはうれしかった。

ラボに戻ったら、誤差関数変えてNN作ってみたりしたい。

実家居る間に、EMとかもやりたい。

卒論概要書かいてな(ry

Written by tkf

December 29, 2008 at 9:39 pm

Posted in 数学

Tagged with , ,

十分統計量が少しわかった気がするのでメモ

leave a comment »

PRML読んでて出て来たけど、詳しく説明されてない(気がする)ので分からなかった。ベイズのあたりも分からないので、現実逃避(笑)のために調べてみた。当たり前すぎる事ばかりで晒すのが恥ずかしい気もするw

十分統計量について分かった事:

  • (パラメトリックな)確率分布を仮定している。
  • その分布の確率変数のみを引数にとる関数である。
  • この関数さえ分かれば、確率分布を再構成出来る。

十分統計量「確率変数のみを引数にとる関数」であれば何でも良い(例えば定数倍もOK)。名前から何か不変量かと思っていたけど、ようするに関数なんだなこれは。

求めた十分統計量から確率分布のパラメタへの変換があれば、以下の順番で確率分布を再構成出来る。

  • サンプルから十分統計量を求める。
    • さっきの言い方と少し矛盾。十分統計量はサンプルを引数にとる関数なので。サンプルに対する十分統計量とでも言うべき?
  • パラメタを求める。(普通はパラメタ=十分統計量)
  • 確率分布が出来た!

という感じか。関数だから、確率分布のパラメタを決めるために引数(=サンプル)を取る必要がある。ふむ。自然だ。

参考:

Written by tkf

December 26, 2008 at 6:10 pm

Posted in 数学

Tagged with

冬休みに読む本

leave a comment »

読む本,というか実家に持って帰る本.

  • PRML
  • 数理統計学
  • 情報理論の基礎
  • わかりやすいパターン認識
  • 動きが生命をつくる

本を持って帰ると,戻ってくる時に「あれこれで全部だっけ?」と心配になるのでブログに書いておくライフハック笑.

卒論の概要書書いたりとかしないといけないのでそんなに読む時間が確保出来るか謎だなー.

Written by tkf

December 25, 2008 at 9:19 am

Posted in Uncategorized

Tagged with

卒論タイトルビフォーアフター

leave a comment »

ボスと話してたら、めっちゃ短くなった。

ビフォー:

アフォー:

汎化ってむやみやたらと使っちゃいけませんよ!

○を埋めて正解すると俺がドキッとします。

Written by tkf

December 22, 2008 at 2:43 pm

Posted in 研究日誌

Tagged with

3次元ストレンジアトラクタ描画ソフトChaoscopeがやばい

leave a comment »

ストレンジアトラクタ大好きな人にお勧め!ただしWindowsユーザーに限る。

Chaoscopeは3次元ストレンジアトラクタを描画するためだけのソフト。何につかうとかはあまり深く考えない!

簡単な使い方:

  • Chaoscope Projectファイルを開く。File > Open してデフォルトで色々入ってるやつを使う。
  • ちょっと汚いグラフィックスが出るけど気にしない。後で細かく描く。
  • F3を連打して面白そうなアトラクタを探す。Alt + ← で戻れる。
  • 良さげなやつをF4でレンダー。

操作画面はこんな感じ:

Clipboard01

使えると思ったページ:

  • Manual : 使えるのはあたりまえか。
    • 2 Attractors : このページ、アトラクタの図+数式が載っているので、Chaoscope使わなくても面白いページではないだろうか。
    • 3 Rendering modes : レンダラの違いが分かる。
  • Chaoscope Wiki : 日本語のwikiページ。マニュアルの和訳とか。ちゃんと読んでいないけど、内容がかかれていないページが多い気がする。

何に使うか。例えば、twitterの背景:

Screenshot-Twitte

あとは、卒論発表資料の背景:

とか。

Written by tkf

December 22, 2008 at 10:42 am

Posted in PC, 数学

Tagged with ,

Ubuntuにmpeg2vidcodecをインストールする方法

leave a comment »

convertでmpegに変換するのに使うやつ。

あまり情報なかったけど、出来てしまったので書く。不具合ありまくるかもしれないけど。

% wget ftp://ftp.pld-linux.org/dists/2.0/PLD/i386/PLD/RPMS/mpeg2vidcodec-1.2-6.i386.rpm
% sudo alien -i mpeg2vidcodec-1.2-6.i386.rpm

とりあえず、警告がいっぱい出る。

i386以外の人は、wgetするrpmファイルをここから探して適当に変えると良いのかもしれない。

参考

Written by tkf

December 22, 2008 at 4:48 am

Posted in PC

Tagged with , , ,