1. Network engineering

1.a Compareing TCP algorithms

ns-3で12種類のTCP輻輳制御アルゴリズムをシミュレートし,matplotlibで視覚化しました(Qiita, Github).

tcp.png

2. Algorithmic trading

2.a Animating alpha and beta

Pandasで世界株価時価総額トップ銘柄のアルファ値とベータ値を計算し,matplotlibでアニメ化しました(Qiita, Github).

ab.gif

3. Machine learning

3.a Predicting comic end

週刊少年ジャンプの掲載順から,短命作品を予測しました.掲載順のデータは文化庁メディア芸術データベースのWeb APIから取得し,予測にはTensorFlowで多層パーセプトロンを実装しました (Qiita part1, Qiita part2, Github).下図は,短命作品と継続作品の相関関係の分析結果です.

comic.png

3.b Deep learning in Japanese

UdacityのDeep learning foundation nanodegreeの公開教材を和訳しています(GitHub).

dlnd

4. Deep learning foundations nanodegree

Udacityで,Deep learning foundations nanodegree を修了しました.

Project 1 - First neural network

フルスクラッチでニューラルネットワークを実装し,貸自転車のユーザ数を予測しました.下図は予測結果です.

dlnd1.png

Project 2 - Image classification

TensorFlowでConvolutional neural networkを実装して,CIFAR-10の識別に挑戦しました.下図は予測結果です.

dlnd2.png

Project 3 - Generate TV scripts

TensorFlowでRecurrent neural networkを実装して,文章を自動生成しました.シンプソンズのスクリプトをもとに学習したモデルに,homer_simpsonを入力すると,下記のようにそれらしい会話文が生成されました.

homer_simpson:(upset) marge, you're making a complete fool of yourse...(belches)
homer_simpson:(moans) i wanna take a nap so i'm awake for the meteor shower.
waylon_smithers: well...(to self) three beers, that's it.
homer_simpson:(to moe, slightly concerned) do you care about all this?
moe_szyslak:(to homer) hey, i don't need your sharity!(cries)

Project 4 - Translate a language

TensorFlowでSeq2Seqを実装し,機械翻訳に挑戦しました.下記のように英語をフランス語に変換できました1

Input
  Word Ids:      [33, 146, 10, 75, 91, 24, 16]
  English Words: ['he', 'saw', 'a', 'old', 'yellow', 'truck', '.']

Prediction
  Word Ids:      [188, 260, 34, 209, 248, 35, 234, 97, 1]
  French Words: il a vu un vieux camion jaune . <EOS>

Project 5 - Generate faces

TensorFlowでgenerative adversarial networkを実装し,顔画像の生成に挑戦しました.下図は,celebAデータセットをもとに自動生成した顔画像です.

celeba.gif

  1. 正しい英語はan old yellow truckですが,今回はaanを学習するほどデータが無かったため,あえてa old yellow truckを入力しました.