タグ

ブックマーク / studylog.hateblo.jp (8)

  • Chainerのcleargradsと旧zerograds - studylog/北の雲

    1.15.0よりzerogradsが非推奨になりcleargradsというものが導入されたらしい。 github.com 0埋めはメモリいっぱい使うし意味が無いからNone埋めにする!みたいな感じ。 変更されたコードはこちら。上がclearで下がzero。 def cleargrad(self): """Clears the gradient array.""" self._grad = None def zerograd(self): """Initializes the gradient array by zeros. .. deprecated:: v1.15 Use :meth:`cleargrad` instead. """ warnings.warn( 'Variable.zerograd is deprecated. Use Variable.cleargard instea

    Chainerのcleargradsと旧zerograds - studylog/北の雲
  • KerasがTensorFlow本体に統合される? - studylog/北の雲

    TensorFlowをバックエンドとして使用しており、PythonDeepLearningライブラリとしては頭5つぐらい抜け出している感じのあったKerasですが、TensorFlow体に取り込まれる?動きがあるようです。TensorFlow/Keras人気はさらに加速して他のライブラリを寄せ付けないでしょう。 自分が使いやすいライブラリを使えばいいと思いますし各ライブラリごとにいい所はあるので多様性万歳ではあるんですが、TensorFlow体にKeras由来の使いやすいAPIが統合されちゃうと、DeepLearningライブラリのシェア争いという観点ではほぼ勝負あったかなという感じがします。 以下ソースなど。fcholletさんはKerasの開発者でGoogleにお勤めの人です。 @rbhar90 @tensorflow we will be integrating Keras (

    KerasがTensorFlow本体に統合される? - studylog/北の雲
  • 今年(2016)参考にさせてもらったChainerの論文実装、サンプルコード集 - studylog/北の雲

    去年書いたサンプルコード集の2016年版です。 個人的な興味範囲のみ集めているので網羅的では無いとは思います。 基的に上の方が新しいコードです。 QRNN(Quasi-Recurrent Neural Networks) 論文ではchainerを使って実験しており、普通のLSTMはもちろんcuDNNを使ったLSTMよりも高速らしい。 一番下にchainer実装コードが埋め込まれている。 New neural network building block allows faster and more accurate text understanding [1611.01576] Quasi-Recurrent Neural Networks Softmaxなどに要している時間を除き純粋にRNN部だけで比較すると相当速くなっているのがわかる。 このように実験でchainerが使われている研

    今年(2016)参考にさせてもらったChainerの論文実装、サンプルコード集 - studylog/北の雲
  • chainerのサンプルコードを集めてみた(チュートリアルも追加) - studylog/北の雲

    (2016.1.21追記)最近あまりメンテナンスしてないので1.5以上のバージョンを使ってる人には役に立たなくなったかもしれません。 (2015.12.15追記)当初はサンプルコードにリンクを貼っただけの記事でしたがチュートリアル等も含めたものに加筆中。また古くなった情報は順次削除・更新してます。 バージョンごとの互換性など こっちに移しました。1.5以上を強くお勧めします。 chainerのバージョンごとの違い(2016年1月19日現在) - studylog/北の雲 1.0 1.1 1.2 黎明期バージョン 1.3 1.4 CuPy導入 1.5 1.6 色々とパワーアップした現世代 概要・チュートリアル 概要を掴むのに適したスライド 1.5以上から始めるならこちら。 Chainerチュートリアル -v1.5向け- ViEW2015 内容は重複していますが1.4以前のバージョン時代のチュ

    chainerのサンプルコードを集めてみた(チュートリアルも追加) - studylog/北の雲
  • chainer-Variational-AutoEncoderを使ってみた - studylog/北の雲

    最近早起きした日は北海道神宮・円山公園へリスに会いに行ってます。山のリスと違って人馴れしまくってて自分から足元にやってくるエゾリス。多分エサやってる人がいるんだろうな。こんな至近距離で撮れたのは初めてなので記念にアップ。 近所を散歩してたらリスに囲まれるなんて、北海道ってやっぱりすごい。贅沢。 Variational-AutoEncoder 略してVAEとやらを最近勉強してますが論文・日語の解説・コードを見ても何がなんだかわからない。わからないんだけど面白そう。 応用例。 http://deeplearning.jp/wp-content/uploads/2014/04/dl_hacks2015-04-21-iwasawa1.pdf http://www.slideshare.net/beam2d/semisupervised-learning-with-deep-generative-

    chainer-Variational-AutoEncoderを使ってみた - studylog/北の雲
  • 非負値行列因子分解(NMF) - studylog/北の雲

    行列を分解して特徴を抽出する?非負値行列因子分解について勉強中。 導入 非負値行列因子分解 - sonoshouのまじめなブログ Non-negative Matrix Factorization(非負値行列因子分解) - あらびき日記 集合知プログラミング10章 雑感 ドキュメント群を教師無しのカテゴリ分けする場合に使えるか? 潜在意味解析(LSA)してk-meansするのとどう違うのかわからない pythonライブラリ https://code.google.com/p/pymf/ http://nimfa.biolab.si/index.html python3に対応してないっぽい? scikitのサンプル http://scikit-learn.org/stable/modules/decomposition.html#non-negative-matrix-factorizati

    非負値行列因子分解(NMF) - studylog/北の雲
  • Chainer1.5の変更点についてのメモ - studylog/北の雲

    あけましておめでとうございます。今年もChainer中心に遊んでいきたいと思います。 過去最大のアップデート 1.5。あまりにも変わりすぎていて以前のコードを1.5対応に書き換えるが結構大変です。 正直1.4のままでいいかな…と思いましたが、最新版についていかないと損しそうなので箱根駅伝見ながら勉強しました。1.5でCuPyがだいぶ速くなったようですし。 未解決なところ、曖昧・あやふやな情報がありますがご了承下さい。一部1.4以前に既にあったものも含まれてるかもしれません。 自信が無いところはこの色で書いてます。 まずは1.5版チュートリアル和訳から、後はサンプルコードとドキュメントを見ながら試行錯誤しました。 i101330.hatenablog.com ChainとLink __call__ WeightDecay、GradientClippingはadd_hookで optimize

    Chainer1.5の変更点についてのメモ - studylog/北の雲
  • 可変長データのミニバッチをchainerのwhereでやる - studylog/北の雲

    以前にもちょこっと書いたのだけど、自然言語はたいてい次元(単語数、文字数など)が合わない。 データA 1 2 データB 1 2 3 こんな感じで次元が合っていないデータをミニバッチで学習したい。 末尾をEOSで埋めてミニバッチ 可変長のミニバッチの時に末尾をEOSで埋めてそのまま学習するとまずいのでwhereを使うといいらしい。以前から挑戦していたのだけれどもなかなかうまくいかず、先日ようやく中の人にtwitterで教えてもらって出来ました。 まず末尾を0や-1など特殊なもので埋めて次元を固定する。仮に0をEOSに該当するIDだとしたらこのように埋められる。これでAもBも4次元で揃った。 データA 1 2 0 0 データB 1 2 3 0 転置(numpyの.T)したらそのまま入力に使える形式になってくれる。 A B 1 1 2 2 0 3 0 0 実際のコードだとこう。 a = nump

    可変長データのミニバッチをchainerのwhereでやる - studylog/北の雲
  • 1