タグ

ブックマーク / musyoku.github.io (8)

  • ご注文は機械学習ですか?

    実装した論文やツールなど。 実装難易度は10段階です。記載がないものは容易に実装できます。 Chainer chainer.nn ChainerのChainをもっと書きやすくするために作りました Deep Learning Training RNNs as Fast as CNNs Simple Recurrent Unit RNNの高速な実装です LSTMに比べて10倍程度速いです Self-Normalizing Neural Networks 出力が自動的に正規化される活性化関数です 効く場合と効かない場合があります Learning Discrete Representations via Information Maximizing Self Augmented Training Regularized Information MaximizationとVirtual Adver

  • Semi-Supervised Learning with Deep Generative Models [arXiv:1406.5298]

    Semi-Supervised Learning with Deep Generative Models [arXiv:1406.5298] 概要 Semi-Supervised Learning with Deep Generative Models を読んだ Chainer 1.8で実装した モデルM1、M2、M1+M2の実装方法の解説 モデルM2で100ラベルのエラー率9%を達成した モデルM1+M2で100ラベルのエラー率4%を達成した はじめに Variational AutoEncoder(VAE)は、半教師あり学習に用いることのできるオートエンコーダです。 学習のベースとなる確率的勾配変分ベイズ(SGVB)については以前の記事をお読みください。 この論文では3つのVAEのモデル、M1、M2、M1+M2が提案されています。 M1 M1は教師なし学習のためのモデルです。 Chai

    Semi-Supervised Learning with Deep Generative Models [arXiv:1406.5298]
  • ガウス過程に基づく連続空間トピックモデル

    概要 ガウス過程に基づく連続空間トピックモデルを読んだ C++で実装した Doc2Vecとの比較など はじめに ガウス過程に基づく連続空間トピックモデル(以下CSTM)は、ガウス過程を用いて単語の確率を表すトピックモデルです。 実装はhttps://github.com/musyoku/cstmです。 gensimのDoc2Vecと比較し、その性質を調べました。 ちなみにガウス過程を知らなくても大丈夫です。 私はガウス過程やトピックモデルは初見なのですが普通に実装できました。 CSTMの考え方 CSTMでは、各単語$w$が$d$次元の潜在座標$\phi(w) \sim {\cal N}(\boldsymbol 0, I_d)$を持っていると仮定します。($I_d$は単位行列) つまり各単語は$d$次元のベクトルで表され、そのベクトルのそれぞれの要素は平均0、分散1の正規分布に従います。 次

    xiangze
    xiangze 2017/10/16
  • Least Squares Generative Adversarial Networks [arXiv:1611.04076]

    Least Squares Generative Adversarial Networks [arXiv:1611.04076] 概要 Least Squares Generative Adversarial Networksを読んだ Chainerで実装した はじめに Least Squares GAN(以下LSGAN)は正解ラベルに対する二乗誤差を用いる学習手法を提案しています。 論文の生成画像例を見ると、データセットをそのまま貼り付けているかのようなリアルな画像が生成されていたので興味を持ちました。 実装は非常に簡単です。 目的関数 LSGANの目的関数は以下のようになっています。 \[\begin{align} \min_D {\cal J}(D) &= \frac{1}{2}\double E_{\boldsymbol x \sim p_{\rm data}(\boldsymbo

    xiangze
    xiangze 2017/03/07
  • Wasserstein GAN [arXiv:1701.07875]

    概要 Wasserstein GANを読んだ Chainerで実装した はじめに Wasserstein GAN(以下WGAN)はEarth Mover’s Distance(またはWasserstein Distance)を最小化する全く新しいGANの学習方法を提案しています。 実装にあたって事前知識は不要です。 私はEarth Mover’s Distance(EDM)などを事前に調べておきましたが実装に関係ありませんでした。 またRedditのWGANのスレッドにて、GANの考案者であるIan Goodfellow氏や論文の著者Martin Arjovsky氏が活発に議論を交わしています。 Martin Arjovsky氏の実装がGithubで公開されていますので実装には困らないと思います。 私はChainer 1.20で実装しました。 https://github.com/mus

  • Categorical Reparameterization with Gumbel-Softmax [arXiv:1611.01144]

    Categorical Reparameterization with Gumbel-Softmax [arXiv:1611.01144] 概要 Categorical Reparameterization with Gumbel-Softmax を読んだ Auxiliary Deep Generative Modelsに組み込んで実験した はじめに Deep Learningなどでクラス分類を行う場合、カテゴリカル分布と呼ばれる分布を用いて属するクラスの確率を求めると思います。 たとえばMNISTであれば10個のクラスを用意し、10次元の出力ベクトルをsoftmax関数に通すことでカテゴリカル分布を作ります。 上の画像はクラス数が6個の場合の分布の例です。 この分布からサンプリングを行うとクラスを得ることができます。 Deep Learningではクラスを表す変数をスカラーではなくone

    xiangze
    xiangze 2016/11/25
  • Auto-Encoding Variational Bayes [arXiv:1312.6114]

    概要 Auto-Encoding Variational Bayes を読んだ はじめに 最近名前をよく聞くようになった変分オートエンコーダ(Variational AutoEncoder)の基礎となる確率的勾配変分ベイズ(SGVB)について自分なりにまとめます。 参考 20150717-suzuki.pdf SGVB vb-nlp-tutorial.pdf 変分下限 問題設定 データを$\boldsymbol x$、隠れ変数を$\boldsymbol z$、パラメータを$\boldsymbol \theta$とし、同時確率分布$p_{\boldsymbol \theta}(\boldsymbol x, \boldsymbol z) = p_{\boldsymbol \theta}(\boldsymbol x\mid\boldsymbol z)p_{\boldsymbol \theta}(

  • WaveNet - A Generative Model for Raw Audio [arXiv:1609.03499]

    WaveNet - A Generative Model for Raw Audio [arXiv:1609.03499] 概要 WaveNet: A Generative Model for Raw Audio を読んだ Chainer 1.12で実装した はじめに Google DeepMindが音声生成の新たな手法を開発し発表しましたが、これが従来手法を大きく超える高い品質の音声を生成できると話題になりました。 発表から数日でGitHubには様々な実装が公開されましたが、私もChainerで実装してみました。(→GitHub) このWaveNetを実装するにあたり、 実装の詳細が論文に書いていない 1秒の音声を生成するのに90分かかる 学習コストが大きい といった点に注意が必要です。 特に音声生成はリアルタイムで行えるような速度が出ません。 DeepMindの中の人のツイートによると

    xiangze
    xiangze 2016/09/30
  • 1