Monthly Hacker's Blog

プログラミングや機械学習の記事を中心に書きます。

dockerでディープラーニング(chainer)環境を整える

  • できること
  • 経緯
  • dockerを使ったほうが良いケース
  • インストール
  • 一般的な環境構築
    • FROM
    • RUN
  • 機械学習に特化した環境構築
    • ARG
    • USER
  • ビルドする
  • イメージを使う
  • エイリアスを登録
  • nohupなどバックグラウンドで計算を回し続けたいとき(2017/10/22追記)
  • 最後に

できること

この記事では、次のことができるようになります。

  • dockerを使ったディープラーニング(chainer)環境構築
続きを読む

NNablaのImage Augmentationを試してみた

  • NNablaのimage augmentationの特徴
  • augmentation一覧
    • Random Crop
    • Random Flip
    • Random Shift
    • Image Augmentation
  • 最後に

NNablaがリリースされて1ヶ月以上経ちました。研究室の先輩が開発のコアメンバーということもあり、リリース直後から注目していたのですが、しばらくpython2系のみ対応ということで手を出せずにいました。

先日、件の先輩に「3系に対応したのでぜひ使ってくれ、image augmentationがイチオシだ」と教えていただいたので、早速試してみました。

github.com

続きを読む

chainerのtrainer機能を使ってDiscoGANを実装した

  • できること
  • はじめに
  • DiscoGANとは
  • CelebAデータセットのダウンロード
  • updaterの書き換え
  • extensionの追加
  • 前処理の追加
  • 結果

できること

この記事では、次のことができるようになります。

  • CelebAデータセットをダウンロードする
  • updaterを書き換える
  • make_extensionでextensionを追加する
  • 画像の前処理を追加する
  • chainerのtrainerを使ってCelebAでDiscoGAN
続きを読む

【保存版】chainerのconvolutionとdeconvolution周りを理解する


chainerのdeconvolutionがどういう演算をしているのか理解していなかったので、ソースコードとにらめっこしました。ちなみに、以下の可視化は非常に参考になりました。

github.com

この記事では次の関数について解説します。

  • ダウンサンプリング系
    • F.convolution_2d(L.Convolution2D)
    • F.max_pooling_2d(F.average_pooling_2d)
  • アップサンプリング系
    • F.deconvolution_2d(L.Deconvolution2D)
    • F.unpooling_2d
    • F.upsampling_2d
    • F.depth2space
続きを読む

chainerのtrainer機能を使ってWGAN(Wasserstein GAN)を実装した

  • できること
  • 経緯
  • コードを書き換えるときの注意点
  • WGANについて

できること

この記事では、次のことができるようになります。

  • updaterを書き換える
  • make_extensionでextensionを追加する
  • chainerのtrainerを使ってMNISTでWGAN
続きを読む