ジョイジョイジョイ

ジョイジョイジョイジョイジョイ

2017-07-01から1ヶ月間の記事一覧

クリーネの不動点定理(とベルマンフォード法)

言語処理系で講義でクリーネの不動点定理をやった時にベルマンフォードの証明にも使えるなぁと思ったので紹介します。 クリーネの不動点定理 を完備半順序集合とし、 をその上のスコット連続写像とする。このとき、 は最小不動点を持つ。 ここで、完備半順序…

HashedNets

HashedNets [1] を chainer で実装しました。 HashedNets の説明 ニューラルネットワークのパラメータ数は非常に多く、パラメータは冗長な表現になっていることが多いです。 そこで、自由なパラメータの数を減らして、正則化と軽量化を達成するための手法の…

本質的に曖昧な文脈自由言語

本質的に曖昧な文脈自由言語が存在するという事実は色んなところで何度も目にしてきたのですが、証明を見たことが無かったのでここで紹介します。 流れは大体 [1] と同じですが、補題の証明はオリジナルも混ざってます(本質的には同じだとは思います)(間…

Adam

Adam [1] を chainer で実装しました。 Adam の説明 少ない時間・空間計算量で高い性能を出すということで、深層学習の分野で最近よく使われている最適化手法です。 をパラメータに取る関数 の(期待値)最小化を考えます。 の に対する勾配を とします。 一…

大学のソフトウェア実験用のプログラム自動生成

大学のソフトウェア実験でMLのインタプリタを作っているのですが、テスト用にMLプログラムの自動生成プログラムを書きました。 generator.sh は一部 @basemusi 君に書いてもらってます。 github.com 型推論器のデバッグ用に作ったのでこの名前ですが、インタ…

Dilated Convolution

Dilated Convolution を chainer で実装しました。 Dilated Convolution の説明 Dilated Convolution は、フィルターとの積を取る相手の間隔をあける畳み込みのことです。 例えば、以下のような画像において、 12 を中心に 3 x 3 の普通の畳み込みフィルター…

Batch Normalization

Batch Normalization [1] を chainer で実装しました。 色々な場合に適用できて、学習速度が速くなったり汎化性能が上がったりするすごいテクです。 Batch Normalization の説明 上層(出力層に近い層)の入力は、当然下層(入力層に近い側)のパラメータに…

Generative Adversarial Nets

Generative Adversarial Nets [1] を chainer で実装しました。 いわゆる GAN です。 最近いろいろ派生系が出ています。画像の生成モデルはほとんどこれの派生な気がします。 画像を生成する Generator (以下 G)と、画像が本物か G が生成したものかを識別…

Chromatic Polynomial と Acyclic Orientation

SRM717 の Hard で出題されて気になったので書き留めておきます。 Chromatic Polynomial について まず、無向グラフの頂点から色への対応を彩色、隣接する頂点が同じ色にならないような彩色のことを正しい彩色ということにします。これはこの記事限定用語で…