人工知能に関する断創録

このブログでは人工知能のさまざまな分野について調査したことをまとめています(更新停止: 2019年12月31日)

Theano

深層学習ライブラリ Keras

ここ1年くらいDeep Learning Tutorialを読みながらTheanoというライブラリで深層学習のアルゴリズムを実装してきた。 深層学習の基本的なアルゴリズムならTheanoでガリガリ書くこともできたがより高度なアルゴリズムをTheanoでスクラッチから書くのはとても…

積層自己符号化器の性能評価

Theanoによる積層自己符号化器の実装(2016/1/22)の続き。 今回は、積層自己符号化器の事前学習(pretraining)の効果が本当にあったのか検証してみたい。ついでにもう一つTheanoによる雑音除去自己符号化器の実装(2015/12/9)で書いた雑音除去(denoising…

Theanoによる積層自己符号化器の実装

Theanoによる雑音除去自己符号化器の実装(2015/12/9)の続き。今回は自己符号化器を積み上げて積層自己符号化器を実装した。 多層パーセプトロンは隠れ層の数を増やす(Deepにしていく)とより複雑なモデルを表現できるようになるが、誤差が伝播されずに重…

Theanoによる雑音除去自己符号化器の実装

この記事はDeep Learning Advent Calendar 2015の9日目です。 Theanoによる自己符号化器の実装(2015/12/3)の続き。 今回は自己符号化器を継承して雑音除去自己符号化器(Denoising autoencoder)を実装した。 ソースコード全体はここ。 自己符号化器は入力…

Theanoによる自己符号化器の実装

今回からしばらくさまざまな自己符号化器(Autoencoder)を検証していきたい。深層学習のメリットである特徴の自動学習の基礎になるところなのでしっかり理解しておきたいところ。

Theanoによる畳み込みニューラルネットワークの実装 (2)

Theanoによる畳み込みニューラルネットワークの実装 (1)(2015/6/26)のつづき。今回は前回できなかった ConvLayerとPoolingLayerの分離 ReLUの導入 を試してみた。 ConvLayerとPoolingLayerの分離 Deep Learning Tutorialの実装では、LeNetConvPoolLayer()…

Theanoによる畳み込みニューラルネットワークの実装 (1)

Theanoによる多層パーセプトロンの実装(2015/6/18)のつづき。今回は、Deep Learning Tutorialの畳み込みニューラルネットワーク(Convolutional Neural Network: CNN, ConvNet)を実装してみる。 CNNは人間の視覚野を参考にした手法であり、画像認識に特化…

Theanoによる多層パーセプトロンの実装

Theanoによるロジスティック回帰の実装(2015/5/26)のつづき。今回は、Deep Learning Tutorialの多層パーセプトロン(Multilayer Perceptron)を実装してみる。タスクは前回と同じMNISTの手書き数字認識。多層パーセプトロンはこれまでも何回か実装してきた…

Theanoによるロジスティック回帰の実装

Theanoによる2クラスロジスティック回帰の実装(2015/5/19)のつづき。 今回からDeep Learning Tutorialの内容にそって実装していく。このチュートリアルのコードやデータはGithub上で公開されているのでcloneしておいた。 git clone https://github.com/lis…

Theanoによる2クラスロジスティック回帰の実装

Theanoの使い方 (2) 自動微分(2015/5/18)のつづき。今回は、前回までの知識を使ってTheanoで2クラスロジスティック回帰の実装をしてみたい。 Deep Learning Tutorialの最初に紹介されるアルゴリズムもロジスティック回帰なのだが、こちらはMNISTの数字認識…

Theanoの使い方 (2) 自動微分

Theanoの使い方 (1) シンボルと共有変数(2015/5/9)のつづき。 今回はTheanoの自動微分を試してみる。ロジスティック回帰やニューラルネットなど勾配降下法を使うアルゴリズムではパラメータの更新式にコスト関数(誤差関数) の微分が必要になる。 通常、…

Theanoの使い方 (1) シンボルと共有変数

今回からしばらくの間、Deep Learningの各種アルゴリズムをスクラッチから実装していきたい。Pylearn2などDeep Learningのアルゴリズムを実装したPythonライブラリもあるのでスクラッチから実装する意味はほとんどないのだけれど、今回はアルゴリズムの詳細…

Deep Learning リンク集

乗るしかないこのビッグウェーブに Deep Learning(深層学習)に関連するまとめページとして使用する予定です。Deep Learningに関する記事・スライド・論文・動画・書籍へのリンクをまとめています。最新の研究動向は全然把握できていないので今後研究を進め…

TheanoをWindowsにインストール

Deep Learningを実装するのによく使われるTheanoというPythonライブラリをWindowsマシンにインストールしたのでそのときの記録。ただ使うだけだったらPythonとnumpy/scipyをインストールした後にpip installs Theanoで普通に使えていた。実際、GPUが貧弱なMa…