この記事はChainer Advent Calendar 2017の23日目の記事です。 僕は普段、Chainerを使って研究開発しています。 このとき、クラスをどう分けるべきかよく悩みます。 いろいろやってみてある程度固まってきたので、自分なりにまとめてみました。 ChainerなどのDeepLearningフレームワークを使う理由は大きく分けて3段階ほどあります。 再現実験 試行錯誤を伴う実験 学習済みモデルを用いたシステムづくり 世の中に転がっているChainerサンプルプログラムは大体(1)のもので、こちらは綺麗にまとまっているものが多いです。 一方で、何か新規に実験していると、どうしても試行錯誤が発生してコードが煩雑になります(2)。 そしてさらには、(1)や(2)で学習したモデルを使ってサービス応用しようとすることもあります(3)。 今回は研究開発用のコード、つまり、サービス応
Chainer チュートリアル 数学の基礎、プログラミング言語 Python の基礎から、機械学習・ディープラーニングの理論の基礎とコーディングまでを幅広く解説 ※Chainerの開発はメンテナンスモードに入りました。詳しくはこちらをご覧ください。 何から学ぶべきか迷わない ディープラーニングを学ぶには、大学で学ぶレベルの数学や Python によるプログラミングの知識に加えて、 Chainer のようなディープラーニングフレームワークの使い方まで、幅広い知識が必要となります。 本チュートリアルは、初学者によくある「まず何を学べば良いか」が分からない、 という問題を解決するために設計されました。 初学者は「まず何を」そして「次に何を」と迷うことなく、必要な知識を順番に学習できます。 前提知識から解説 このチュートリアルは、Chainer などのディープラーニングフレームワークを使ったプログ
KerasとChainer Keras Chainer 比較 Kerasの役割 Chainerの役割 Kerasでの実装 Chainerでの実装 使い分け Chainerがいいなあ Googleの強さ 使い分け KerasとChainer Keras KerasはTensorFlowあるいはTheanoをバックエンドとして、簡単にニューラルネットを記述することができます。もともとはTheano用でしたが、TensorFlow登場後に対応しました。開発者の中にはGoogleの方もいます。 s0sem0y.hatenablog.com Chainer 日本製の深層学習ライブラリ。 ニューラルネットワークに必要な計算を柔軟に設計できます。行列などの計算としてはNumpy(GPU用にCupy)をしようしており、純粋にPythonで実装されているライブラリです。 s0sem0y.hatenablog
はじめに 前回Chainerの新機能、trainerを使ってCIFAR-10の画像分類に挑戦しようとしたのですが、マシンパワーの都合上、動作を確認できずに終わってしまいました。 そこで今回はMNISTを使ったAutoencoderの作成を通してtrainerの使い方を確認していこうと思います。 Autoencoderに関してはこちらの記事を参考にしました。 【ディープラーニング】ChainerでAutoencoderを試して結果を可視化してみる。 ChainerでDeep Autoencoderを作ってみる 実装 MNISTの手書き文字1000個を入力とし、隠れ層を1層通して入力と等しくなるような出力を得るネットワークを作成します。 コード全体はこちらにあげています。 ネットワーク部分 隠れ層のユニット数は64まで絞っています。 また、hidden=Trueで呼び出すと隠れ層を出力できるよ
Chainerのモデルのセーブ・ロードについて Chainerは作成したモデルを書き出すためのserializersを含んでいます。しかし、セーブの方法は多くのページに書いてありますが、ロードの方法がよくわからなかったため自分の環境でうまく行った方法をまとめます。 モデルのセーブ Chainerでモデルをセーブするにはchainer.serialisersを使います。この時にGPU用に変換したものはCPU用に変えておいたほうが後で混乱しないで済むので統一しておくといいと思います。 from chainer import serializers gpu = 0 model = myDNN(100, 500, 10) chainer.cuda.get_device(gpu).use() model.to_gpu(gpu) # GPUを使うための処理 # --------------------
Chainerを使った深層強化学習ライブラリChainerRLを公開しました. https://github.com/pfnet/chainerrl PFNエンジニアの藤田です.社内でChainerを使って実装していた深層強化学習アルゴリズムを”ChainerRL”というライブラリとしてまとめて公開しました.RLはReinforcement Learning(強化学習)の略です.以下のような最近の深層強化学習アルゴリズムを共通のインタフェースで使えるよう実装してまとめています. Deep Q-Network (Mnih et al., 2015) Double DQN (Hasselt et al., 2016) Normalized Advantage Function (Gu et al., 2016) (Persistent) Advantage Learning (Bellemar
はじめに 少し時代遅れかもしれませんが、強化学習の手法のひとつであるDQNをDeepMindの論文Mnih et al., 2015, Human-level control through deep reinforcement learningを参考にしながら、KerasとTensorFlowとOpenAI Gymを使って実装します。 前半では軽くDQNのおさらいをしますが、少しの強化学習の知識を持っていることを前提にしています。 すでにいくつか良記事が出ているので紹介したいと思います。合わせて読むと理解の助けになると思うので、是非参考にしてみてください。 DQNの生い立ち + Deep Q-NetworkをChainerで書いた DQNが生まれた背景について説明してくれています。Chainerでの実装もあるそうです。 ゼロからDeepまで学ぶ強化学習 タイトルの通り、ゼロからDeepま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く