読者です 読者をやめる 読者になる 読者になる

Monthly Hacker's Blog

毎月のテーマに沿ったプログラミング記事を中心に書きます。

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
続きを読む

修論(卒論)の進捗を確認するslackbot「進捗どうですかbot」を作った

  • できること
  • 経緯
  • システムの全体像
  • pdfのページ数を取得する
  • slackbotを作る
  • botを定期的に実行する

できること

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

  • pdfのページを取得
  • slack APIを使った投稿
  • botの定期的な実行
続きを読む

PaintsChainerを数学知識ゼロでも分かるように解説してみた

  • PaintsChainerの仕組み
  • PaintsChainerの隠し機能
  • もっと詳しく知りたい人へ

今、chainerという自動着色アプリが流行っているようです。どういう仕組みで着色しているか気になった人も多いのではないでしょうか。そしてちょこっと調べてみると「最新の人工知能によって実現」みたいなお茶を濁す答えしか見つからずモヤモヤしていたはずです。そこでこの記事では、数式を一切使わずにPaintsChainerの仕組みを解説します。また、PaintsChainerについて調べるうちに見つけたPaintsChainerの隠し機能の紹介もします。

続きを読む