Deep Learningの訓練終了など任意のメッセージを特定のSlackチャネルに投稿できるボットを作りました。 Yatta Kun プログラミングは不要で curl というコマンドラインツールから簡単に投稿できるので非常に便利です。可愛いくて便利なので作り方を紹介します…
最近はすることリスト(TODO)に追いまくられていて落ち着けなかったので、とりあえず直近でやってみたい・調査してみたいと思ってメモしていたことをまとめてみた。他にもあったかもしれないけどとりあえず! Deep Learning fast.ai のレクチャービデオを全…
Long Short-Term Memory Networks With Python(2018/8/20)のつづき。 今回は、Damped Sine Wave Prediction Problemという時系列予測のタスクを対象にKerasとPyTorchでStacked LSTMの実装方法を比較してみます。 減衰するサイン波を系列データとみなして、…
Long Short-Term Memory Networks With Python(2018/8/20)のつづき。 今回は、Echo Sequence Prediction Problemという単純なタスクを対象にKerasとPyTorchのVanilla LSTMの実装方法を比較してみます。 Echo Sequence PredictionProblem Echo Sequence Pre…
最近、仕事でRNNを扱うアプリケーションが多くなっています。そのようなわけで、今回からしばらくRNN(Recurrent Neural Network)についてまとめていこうと思います。参考資料は、 です*1。 この本は、RNNの様々なアーキテクチャを Keras で実装して解説し…
最近、Kaggle始めました。登録自体は2年前にしてたのですが、興味起きなくてタイタニックやった後にずっと放置してました (^^; 今回、取り組んだのはFreesound General-Purpose Audio Tagging Challengeという効果音に対して3つのタグをつけるコンペです。2…
社内の輪講会でマルチモーダル深層学習の研究動向について発表する機会があったので資料を公開します。Deep Learningが言語・画像・音声・制御・その他のモダリティを統合することで、今まで想像もできなかったような面白いアプリケーションがたくさん出てく…
前回からずいぶん時間が空いてしまった (^^;) 今回からテキストや音声など系列データを扱う手法に進んでいこうと思っています。 最初のお題として文字レベルのRecurrent Neural Network (RNN) を試しました。PyTorchチュートリアルの Classifying Names with…
今回はCycleGANの実験をした。CycleGANはあるドメインの画像を別のドメインの画像に変換できる。アプリケーションを見たほうがイメージしやすいので論文の図1の画像を引用。 モネの絵を写真に変換する(またはその逆) 馬の画像をシマウマに変換する(または…
今回はDCGANをCelebAのデータで試してみた。このデータもよく見るけど使うの始めてだな。これまでのMNIST(2018/3/4)やFashion MNISTのGANと違ってカラー画像でサイズも大きいので少し修正が必要。 180303-gan.ipynb - Google ドライブ CelebA dataset Cele…
今回はDCGANをFashion MNISTのデータで試してみた。このデータは使うの始めてだな〜 画像サイズがMNISTとまったく同じで 1x28x28 なのでネットワーク構造は何も変えなくてよい (^^;) 今回は手抜きして変えたところだけ掲載します。 180303-gan-mnist.ipynb -…
前回(2018/2/28)の最後で次はConditional VAEだと言っていたけど思いっきり無視して (^^;) 今回はGenerative Adversarial Networks (GAN) やろう。いくつかのデータセットで実験しようと思っているけど今回は最初ということでMNISTから。 今回の実装は正確…
今回は、Variational Autoencoder (VAE) の実験をしてみよう。 実は自分が始めてDeep Learningに興味を持ったのがこのVAEなのだ!VAEの潜在空間をいじって多様な顔画像を生成するデモ(Morphing Faces)を見て、これを音声合成の声質生成に使いたいと思った…
Autoencoderの実験!MNISTで試してみよう。 180221-autoencoder.ipynb - Google ドライブ 28x28の画像 x をencoder(ニューラルネット)で2次元データ z にまで圧縮し、その2次元データから元の画像をdecoder(別のニューラルネット)で復元する。ただし、一…
前回(2018/2/17)は、アリとハチだったけど、今回はイヌとネコでやってみよう。 180209-dogs-vs-cats.ipynb - Google ドライブ vs. (*^_^*) import numpy as np import matplotlib.pyplot as plt import torch import torch.nn as nn import torch.optim as…
今回は、公式にあるPyTorch TutorialのTransfer Learning Tutorialを追試してみた! 180205-transfer-learning-tutorial.ipynb - Google ドライブ 前回(2018/2/12)取り上げたVGGやResNetのような大規模な畳み込みニューラルネット(CNN)をスクラッチ(ラ…
今回は、学習済みのVGG16を使ってImageNetの1000クラスの画像分類を試してみた。以前、Kerasでやった(2017/1/4)ことのPyTorch版。 180208-vgg16.ipynb - Google ドライブ import torch import torch.nn as nn import torch.optim as optim from torch.auto…
今回は畳み込みニューラルネットワーク。MNISTとCIFAR-10で実験してみた。 MNIST import numpy as np import torch import torch.nn as nn import torchvision.datasets as dsets import torchvision.transforms as transforms # Hyperparameters num_epochs…
今回は多層パーセプトロンでMNIST。おなじみ。 import torch import torch.nn as nn import torchvision import torchvision.datasets as dsets import torchvision.transforms as transforms # Hyperparameters input_size = 784 hidden_size = 500 num_cla…
次は〜ロジスティック回帰(Logistic Regression)!ロジスティック回帰は、回帰とつくけど分類のアルゴリズムで、隠れ層がなく、活性化関数にシグモイド関数(2クラス分類のとき)、ソフトマックス関数(多クラス分類のとき)を使ったニューラルネットとし…
まずは基本ということで線形回帰(Linear Regression)から。人工データとBoston house price datasetを試してみた。まだ簡単なのでCPUモードのみ。GPU対応はまた今度。 人工データセット import torch import torch.nn as nn import numpy as np import mat…
PyTorchの自動微分を試してみた。 import numpy as np import torch import torch.nn as nn まずは必要なライブラリをインポート。 # テンソルを作成 # requires_grad=Falseだと微分の対象にならず勾配はNoneが返る x = torch.tensor(1.0, requires_grad=Tru…
今年の目標(2018/1/1)で宣言したとおり今年はPyTorchを使えるようにしていこうと思ってます! ここにPyTorchのリソースをまとめる予定です。一気に追加すると収拾つかないため内容を吟味してから追加してこうと思います。外部リンク集の2つのサイトはPyTor…
PFN主催のNIPS2017読み会において Speech and Audio というテーマで発表してきました。 NIPS2017報告 SPEECH & AUDIO from Koichiro Mori ★初SlideShare★ 今回は複数の論文をまとめたテーマ発表を入れると聴いたのでどのテーマにするか悩みました。最初は、…
明けましておめでとうございます。ブログ書くの6ヶ月ぶりでずいぶんご無沙汰していますがちゃんと生きています (^^; 2017年の振り返り 2017年はいろいろなことがありました。 3月に運転免許証をゲットしました。そろそろ1年経つので初心者マーク取れそうです…
6/28から6/30に東京ビッグサイトで開かれた第1回 AI・人工知能EXPO*1に参加して、基調講演を聴いてきたので概要をメモ書き程度にまとめた。個別の展示はちょっと数が多いので省略^^; 今年の目標(2017/1/1)にも書いたけれど、AIをどうビジネスにしていくか…
今回はPractical Deep Learning for CodersのLesson1の結果をまとめてみた。題材はKaggleの犬・猫分類。
最近、fast.aiのPractical Deep Learning for CodersというMOOCを受講している。 この講座は 無料 動画形式の講義(1回2時間というボリューム) Jupyter NotebookとKerasを使用 CNN、Finetuning、VGG16、ResNet、RNNなどが実践的な例題を通して学べる 実務家…
Deep Learningの学習結果(重み)はブラックボックスで、隠れ層のユニット(特に深い層の!)が一体何を学習したのかがよくわからないと長年言われてきた。しかし、今回紹介する方法を使うとニューラルネットが何を学習したのか目で見える形で表現できる。 …
2017年2月21日で人工知能に関するブログ(というか自分のWebサイト)を初めてから15周年を迎えます。基本的に飽きっぽい性格ですが、こんなに続いたのは読んで応援してくださったみなさんのおかげだと思います。ありがとうございます! ここら辺で15年を振り…