Notebook

日記(4/3)

4/3

8:00起床、10:00再起床…

12:30に日吉のインド系のカレー屋で飯を食う。美味しい。

14:00から東京駅の八重洲の本屋へ繰り出た。品揃えは良かったが横浜で事足りるなーという感じだった。

 

体がなまってたので適当に色んな所を歩き回っていた。

 

20:00に帰宅し、Courseraを始めた。Week 5が終わった!

LSTMはいまいちどういう仕組みか理解できてなくKerasすごい!!完!みたいな状況なので、手元のお花畑を利用するなどして、深い理解を図ろうと思う。

 

酒が回っている。ストロングゼロ大脳新皮質をヘニャヘニャにするので日本語が話せない。

明日はどうやら新歓が始まるっぽい。とりわけやること無いけどこの時期の大学が一番楽しいと思う。

やりたいこと

いよいよ最終週、イメージキャプションなので非常に楽しみ。

このコースが終わったら次に何を受けるか迷っている。

順当に次のコースに行くとKaggleマスターになろうぜ的なことをやるっぽいがその次のベイジアンにも興味がある。

 

迷う。

日記(4/2)

4/2

11時起床、12時に昼食、18時に焼き肉、21時までぷよぷよ

7億年ぶりくらいに焼肉を食ったがやっぱりうまい。

 

13-17時は多分起きてたんでしょうけど、何をやっていたのか全く思い出せない。

何をするにもやる気のおきない一日だった。

 

こんなときストレス発散とかできる場所ないですかね。

 

TODO

  • Coursera

明日か明後日にはWeek 5 を終わらせたい

日記(4/1)

4/1

春休み、もう一ヶ月くらい欲しかった

起床は8:30だった。この調子で維持していきたい。

起床後大学の部室に学習結果を見に行ったのですが、多分電気を落とされたのか、進捗が葬り去られてしまった。毎日電気落としてるのか?たまたま年度末だったから?まあいいか。

なので、また今日も部室PCで走らせている。

総会でGTX1080買いますムーヴを起こしたい。パソコンサークルなんですから強いGPUを持っているのは当たり前でしょう!!!

 

久々にお花畑と黄色いやつ(Python 機械学習プログラミング第一版)を読んだ。

お花畑は14章を読み終えたが全く分からん…


お花畑14章

自己符号化器

自己符号化器とは入力のコピーを出力するように学習させたNNを指す。

といっても、完全なコピーを学習しても特に有用というわけではないので完全な学習を行わないように設計されることが多い。

自己符号化器の符号を記述する隠れ層を$h$、復号化された入力の模倣を$r$とし、符号化器関数と復号化器関数を$h = f \left( x \right) , r = g \left( h \right)$とする。

有用な特徴量を得るためには次の制約が加えられる

不完備性

符号の次元が入力の次元よりも小さい自己符号化器は不完備な自己符号化器と呼ばれる。

$$\rm{dim}~~\it{h} < \rm{dim}~~\it{x}$$

次元を減らすことで、訓練データの最も顕著な特徴量を学習することができる。

復号化器が線形かつ損失関数がMSEであるとき、AEはPCAで張られる部分空間を学習する。

$f,g$が非線形関数ならば、非線形汎化されたPCAの空間を学習することに等しい。

 

非常に強力な非線形符号化器を用いると符号が1次元だったとしてもたった1つの符号で訓練事例を学習するという危険性を孕んでいる。実際には、このようなことは起こりえないが、あまりにAEの「能力」*1 が高いと重要な性質を学習できなくなってしまう可能性がある。

そこで、以下のような正則化を行うことでモデルが能力過多になることを防ぐ。

さらに各正則化にある特有の性質損失関数を加えることで、符号が入力のコピーとなる性質以外に、様々な性質を付加することが可能となる。

スパース自己符号化器

普通のAEの損失関数に、疎性のあるペナルティ項を加えたものである。

$$\it{L}\it \left(x,g\left(f\left(x\right)\right)\right) + \Omega \left( x \right)$$

スパース自己符号化器は、入力の潜在因子を推定する生成モデルの最尤学習の近似を行っていると言える。

雑音除去自己符号化器

入力にノイズを加えたものをAEに通し、もとの入力との損失関数をとったものを雑音除去自己符号化器(DAE)という。

 

【スコアマッチングと多様体学習のところは読んでも全然わからんかった。】

 

縮小自己符号化器

ペナルティ項として、$$\lambda \left| \left| \frac{\partial f \left(x\right)}{\partial x} \right|\right|_{F}^{2}$$を加えたAEを縮小自己符号化器(CAE)という。

ただし$||~~||_{F}$はフロベニウスノルム(行列の各要素の自乗和の平方根)である。

微分項が加算されたことにより、局所的に特徴空間が縮まる。すなわち、とある入力に対する近傍は出力後、更に近傍に位置するようになる。

この項が大きく変化する方向は、言い換えれば多様体接平面方向となるため、CAEはデータの多様体構造が学習されるモデルと言える。

 

(メモ終わり)


CourseraのWeek 5に手を付けた。RNNも聞いたことはあったが実装したことがなかったのでいい機会だった。

自然言語処理はなぜかわかんないけど画像処理とかよりやる気が起きにくい。なんでだろ

 

ヘッドホンを買い替えたいのでおすすめを教えてくれると嬉しいです。

 

TODO

  • 早寝早起き*2

 

*1:お花畑では容量となっていたがcapacity=「能力」の方がしっくり来た

*2:早寝のノルマもう未達成じゃん

日記(3/31)

3/31

深層学習はいままでなぜうまく学習できるのか、どうして複雑な問題をうまく解決できるのかの理論的根拠に欠けていたが、どうやらそれがちゃんとした理論のもとに数学的に解明できるという論文があった。

https://arxiv.org/pdf/2018.00401.pdf

かなりすごい発見だったと思う。

 

あと、副業として加工師のアルバイトをはじめました。

https://www.baitoru.com/kanto/jlist/kanagawa/yokohamashiigai/a2p0r1i8l0f4o0o1l

時給制ではなく歩合制なのでまだ最初のうちは慣れず、一日あたり2000円程度でしたが、コツを掴んできて、大体平均して16000円は稼げるようになりました。

 

それと、キルミーベイベー2期おめでとうございます*1

 

 

 

 

 

 

 

 

 3/31

起床時間は10:00なので、まあいい時間だと思う。そろそろ体内時計を大学仕様にしないとツラいが、これがなかなかうまくいかない。

CycleGANをKerasで実装した。Kerasをそれなりに理解できるようになったんじゃないかなーと思う。

gist.github.com

 

問題点は未だ学習中(しかも部室のPCを拝借)なので結果が朝を迎えないとわからないという点です。

ひとえにすごいGPUが欲しい。そんな気分です。

 

新歓用の動画編集が終了した。肩の荷が下りた気分だ。ちかれた。

 

機械学習輪講会はGANのオススメ論文10個知れただけでも収穫が大きかった。

TODO

  • お花畑
  • Coursera

ここ3日くらい論文読んでいたのでやれていなかった。英語読めないのでネイティブの8101919倍くらい理解に時間かかる。

論文を読むと面白そうな参考文献に出会えていい感じですね。でもあれこれ集めていくとねずみ講的に読みたい量が爆発してしまう。

時間を遅らせる能力か、一瞬で何でも理解できる能力が欲しい

 

生成モデルの理論むつかしい。

*1:そうだったらいいのにね

日記(3/30)

3/30

諸種の方々、諸々おめでとうございます

 

朝、起床10:00。まあまあ早い。

新歓のポスターを貼った。

帰宅が18:30頃であった。

 

courseraの方で薦められてるGANとしてCycleGANなるものを発見したので、原著論文を読んでいる。

https://arxiv.org/abs/1703.10593

訓練用データとして、対となるようなデータが要らないことが特徴のようだ。

 

GeneratorとDiscriminatorを2対用意し、Genをグルっと回って得られる画像ともとの画像との損失を加えることで馬をシマウマにしたりできるらしい。

 

それなりに話題になった(のかな?)、写真をモネの絵や浮世絵に変換することもできるようだ。すごい!!

 

とりあえずKerasで実装を試みたい。

日記(3/29)

3/29

機械学習交流会を行っていたので見に行った。

ハイレベルすぎて件の宇宙ネコみたいな顔だった。

1.GoodfellowのGAN論文10本ノック

1.1 Progressive GANs

背景

高画質画像の生成が困難。

手法

低解像度の画像生成から始める。層を足していき高解像度画像を生成する。 従来のGANに比べて背景がぼやけない

1.2 Spectral Normalization

背景

多クラス画像の生成は困難。

手法

新しいWeight Normである、Spectral Normを導入。Discriminatorのリプシッツ連続性の制御を行うため、weight自体の値に基づき正則化を行う。 従来では入力ごとに正則化を行っていたので、Generatorの分布に依存していたが、この手法によりDiscriminator全体が正則化される。

1.3 Projection Discriminator

背景

従来のConditional GANでは条件を単純に入力にConcatされていた。

手法

生成データの条件付きラベルと正解のラベルを特徴量空間で比較する。 Loss項が1つであり( c )のように片方に偏って学習される懸念がない

1.4 pix2pixHD

すごい!!!

SegMapから高解像度画像を生成する

1.5 Are GANs created equal?

背景

GANの改良手法どれがいいの?

結果

チューニングしてFIDという手法を用いて判別したところ 然程、差がない。

1.6 Improved Training og WGANs

背景

WGANでも学習が失敗することがある。

手法

リプシッツ条件を満たすためWeightをクリップしていたが、Wasserstein距離を用いる。 最適解では$p'(x) = 1 a.e.$となる

1.7 StackGAN++

高画質画像の生成

1.8 Privacy-preserving

プライバシーの観点より公開できないデータに対して、個人を特定できないような制約を加え、GANを学習することで公開できるようにする。 学習時の勾配のノルムをクリッピングし、ガウシアンノイズを加えることで実現する。

1.9 GANs with encoders

背景

GANとVAEを組み合わせた手法も多々あったが理論的根拠がかけていた。

成果

VAEのように仮定を置く必要がない。

1.10 theory of GAN convergence

背景

GANの収束の理論的解析はあまりなされていなかった。

成果

力学系の理論に基づき、現実的仮定のもとでGANの収束は良い平衡点の近くで局所的に安定することを証明した。


2.汎用人工知能

意識とは?

考察->内部状態の観測

知覚感情、状態の遷移を俯瞰し、観測する機能こそが意識という概念を生んだのではなかろうか?

One model to learn them all


3.基礎からやる確率過程

機械学習と確率過程

深層学習の数学

  1. 統計学
  2. 多様体
  3. 測度論
  4. 集合論

確率変数$X$とは

実数?

ではなく可測空間から可測空間への写像、すなわち$\Omega_{2}$-値可測関数のうち、確率測度$\mu$が定まっているときの物を指す。


4. 論文略説

情報幾何学に対して確率熱力学的解釈を与えた。


5. Differentiable Neural Computer

https://qiita.com/yos1up/items/599ff75c876f6f94d249

 

後半力尽きてますやんか。

始めたばかりのぺーぺーには些か早すぎた。

 

おわり。

日記(3/27)

3/27

8:30 起床
9:30 学科ガイダンス
13:00 動画作成
15:00 Coursera
19:00 夕食
20:00 お花畑
21:30 Twitter(ずっと)

久々の大学だった。矢上は日吉よりかは坂が辛くないので良いと思う。

 

CourseraはWord EnbeddingとGenerative Adversarial Networkをやった。自然言語処理はまじで何も分からんという気持ちなので終始唸っていた。うーん

GANは名前だけ知ってておもしろそーだなという気はしてたので期待通り面白かった。生成器と識別器のいたちごっこなる説明も学んでみるとなるほどなーという説明だった。

学習におよそ5時間かかったのですがどうも赤みが強くなってしまった。なんで?めっちゃグロテスクなんだが…

f:id:Fgjiutx:20180327235249p:plain

30000Epoch目までは生きている人間の顔だったけど終わりに近づくに従って赤みがまして行った。これが人類の行く末か

やっぱりめっちゃ早く計算してくれるGPUが欲しい。

 

動画作成はやります。ちゃんとやります…

課題

  • 動画作成
  • 論文読む

GANの手法をイチから見てみたいのでGenerative Adversarial Nets - Goodfellow[2014]

をとりあえず読んでみることにしたい。

日記(3/26)

3/26

9:00 起床
10:30 外出(イオンモール)
14:00 coursera
17:00 多変量解析
19:00 帰宅開始
22:00 帰宅終了
24:00 おやすみ

イオンモールの件のツイート見た直後だったのでなっるほどなあといった感じ。たしかに他の商店が潰れるのも納得。周りなにもないけど。

30分位で実家に帰りたい。

 

CourseraはKerasでオートエンコーダを実装するなどの行為をした。なかなかすげーやつだった。

生成モデル関連の話の理論はなんかよく理解しがたいような感じだったのでじっくりと理解する必要があると感じた。

次の講義はWord Embeddingらしい。NLP勘弁してくれ~~

 

上には載ってないけどちまちま某映像を作った。メモリが全くたりず、ツラい

TODO

欲しい物

  • メモリ32GB
  • GTX 1080

 

日記(3/24-3/25)

またやってしまった

疲労とやる気の問題でまた書きそびれた

 

3/24

  • 終始やる気がなく家で
  • ゴロゴロしていた

たまにはこういった休暇も重要だと思う。という理由付けで正当化することにする。。。

 

3/25

10:00 起床
10:30 朝(?)食
11:00 基本情報技術者対策
13:00 昼食
14:00 Coursera
17:00 イカ
19:00 オデッセイ
20:00 深層学習お花畑
21:00 夕食
22:00 お花畑(予定)

起きたら朝食が用意されているとかいうVIP待遇はほんとうにありがたい。

CourseraはWeek 3が終わった。

転移学習とファインチューニングを学んだ。便利そう。

というわけでWeek 4に突入します。

教師なし学習すらいろいろ曖昧なのにオートエンコーダなるものに邂逅して、わからなくてうずくまっていた。

並行して、お花畑は該当する14章近辺を読むことにする。単調に頭から読破するより刺激が出てやる気が出るんじゃないかなーーと思う。

 

ビラを入稿した。一仕事を済ませた気分。

課題

  • 日記をさぼらない