タグ

lstmとchainerに関するyukimori_726のブックマーク (9)

  • 可変長ミニバッチを使ったChainerの系列学習の実装 - Qiita

    はじめに Chainer 1.16.0 のリリースでNStepLSTMが実装されました。 NStepLSTMはその名のとおりLSTMの多層化が容易に実現できるモデルとなっています。 内部的にはcuDNNで最適化されたRNNが使われており、従来のLSTMに比べて高速に動作します。 さらにNStepLSTMではミニバッチのデータの長さをそろえる必要がなくなり、各サンプルをリストに入れたものをそのまま入力できるようになりました。 これまでのように-1でpaddingしてignore_label=-1とwhereを駆使したり、データの長さ順にソートしたリストを転置して入力したりという手順が不要になりました。 そこで今回はこのNStepLSTMを使って系列ラベリングの学習をしてみました。 従来のLSTMとのインタフェースの違い NStepLSTMはこれまでのLSTMと入出力が異なるので、今まで実装し

    可変長ミニバッチを使ったChainerの系列学習の実装 - Qiita
  • Chainer の Trainer 解説と NStepLSTM について

    レトリバセミナー 2017/03/15 Movie: https://www.youtube.com/watch?v=ok_bvPKAEaMRead less

    Chainer の Trainer 解説と NStepLSTM について
  • ニューラルネット勉強会(LSTM編)

  • LSTMを改良してconvLSTMにする - Qiita

    はじめに chainerでLSTMを実装する際に、備え付けのlinks/connection/lstm.pyなどを使わずに書いた場合、convLSTMへの変更が楽だと気づいた。そこでLSTMをconvLSTMへ改良してみる。 環境 GPU GTX1070 ubuntu 14.04 chainer 1.14.0 など convLSTMについて convLSTMはX. Shiらが提案しているconvolutionとLSTMを組み合わせた手法である。 https://arxiv.org/pdf/1506.04214.pdf 通常のLSTMはlinearな状態で処理されるので、画像などは位置的な情報が死んでしまう。convLSTMは画像の状態を維持したまま入力するので位置情報が保持される。linearの場合の行列演算はconvolutionに置き換えれられる。これによりLSTMの時間情報、conv

    LSTMを改良してconvLSTMにする - Qiita
  • LSTMにsin波を覚えてもらう(chainer trainerの速習) - Qiita

    RNNにsin波を学習させて予測してみた - Qiitaを参考に下記にトライ。 Chainerで時系列データ予測 with LSTM ChainerのtrainerでLSTM 必要なものなど chainerとmatplotlibがあれば動きます。 %matplotlib inline import numpy as np import chainer import chainer.functions as F import chainer.links as L from chainer import report, training, Chain, datasets, iterators, optimizers from chainer.training import extensions from chainer.datasets import tuple_dataset import

    LSTMにsin波を覚えてもらう(chainer trainerの速習) - Qiita
  • 【まさかの】ChainerでLSTMを使ってナンバーズの予測をする【当選】 - Qiita

    前置き(読み飛ばしていいです) 古巣(某ISP)が定期的にハッカソンを開催していて、ありがたいことに毎回お声掛け頂いています。 特にテーマは無い、もくもく会的なハッカソンです。 毎回美味しいお弁当が出ますが、今回は量は満足でしたが、質がいまいちでした やりたいなーと思っててやる時間がなかったことを毎回やってます。 今回はLSTMを使ってナンバーズの予測をやりました。 数字選択式宝くじ 平日は毎日抽選が行われる 数字を3つ選ぶナンバーズ3と、4つ選ぶナンバーズ4がある 数字と並びの両方を当てるストレート、並びは関係なく数字だけを当てるボックス、ストレートとボックスに半々にかけるイメージのセットがある。 当選金額は ストレート >> セットのストレート > ボックス > セットのボックス みたいなイメージ ナンバーズに関するオカルト「ひっぱり現象」 同じ数字が何回かにわたって連続して出現しやす

    【まさかの】ChainerでLSTMを使ってナンバーズの予測をする【当選】 - Qiita
  • ChainerでLSTMでミニバッチ学習する時に注意するべきこと - あおのたすのブログ

    自然言語処理でSequence to Sequenceモデルを学習する時や、単純にLSTMで入力文を固定次元ベクトルを計算したい時に、 入力が可変長であるため、ミニバッチ学習をする時に工夫が必要です。 他のフレームワーク(TensorFlowやTheano)でも同じような工夫は必要だと思われます。 例えば、 A B C D E F G A B C D E F G H I J 上記のような2つの入力があるとします。 1つ目は長さ7のSequenceで 2つ目は長さ10のSequenceとします。 オンライン学習で学習する場合は特に可変の入力でも問題ありません。 ミニバッチ学習する時に問題になるのは、 入力をmatrixで表現する時に 0 1 2 3 4 5 6 -1 -1 -1 0 1 2 3 4 5 6 7 8 9 このように1つ目の長さ7のデータに対して-1で空白を埋める必要があります。

    ChainerでLSTMでミニバッチ学習する時に注意するべきこと - あおのたすのブログ
  • 深層学習で自動作曲(Stacked LSTM編) [DW 6日目] - Qiita

    0. ざっくりいうと Stacked LSTMをChainerで書いた それを使って自動作曲してみた こうなった → 再生 (注意!すぐに音声が流れます) 1. LSTMとは 以下を参照。 Understanding LSTM Networks LSTMネットワークの概要 わかるLSTM ~ 最近の動向と共に Recurrent Neural Networks 【深層学習】再帰ニューラルネットワークに関する良ページまとめ [DW 5日目] 2. Stacked LSTMとは LSTMを多層に重ねたニューラルネット。多層にすることによって、各レイヤーで長い相関と短い相関を学習できると期待されている。 ちなみに、LSMTを縦横方向につなげて多次元化したGrid LSTMというネットワークもある。Wikipediaの文字予測タスクや中国語翻訳タスクで良い性能を出しているらしい。 - Grid L

    深層学習で自動作曲(Stacked LSTM編) [DW 6日目] - Qiita
  • Chainerで学ぶLSTM - kivantium活動日記

    このブログで何回も取り上げているように、ニューラルネットワークを用いた機械学習はかなりの力を発揮します。畳み込みニューラルネットワーク(convolutional neural network, CNN)は画像中で近くにあるピクセル同士の関係に注目するなど画像の特徴をうまくとらえたネットワークを構築することでかなりの成功を収めています。ノーフリーランチ定理が示唆するように万能の機械学習器は存在しないため、対象とするデータの特徴を捉えた学習器を構築することが機械学習の精度を上げる上で重要になります。 そこで今回は時系列データの解析に向いた回帰結合ニューラルネットワーク(recurrent neural network, RNN)の精度を上げるのに重要なLSTMを取り上げます。 この記事では誤差逆伝搬などのニューラルネットワークの基知識は説明しません。誤差逆伝搬についてはPRMLの5章やNe

    Chainerで学ぶLSTM - kivantium活動日記
  • 1