人工知能に関する断創録

人工知能、認知科学、心理学、ロボティクス、生物学などに興味を持っています。このブログでは人工知能のさまざまな分野について調査したことをまとめています。最近は、機械学習、Deep Learning、Keras、PyTorchに関する記事が多いです。



PyTorch

PyTorch (16) 文字レベルRNNで人名の分類

前回からずいぶん時間が空いてしまった (^^;) 今回からテキストや音声など系列データを扱う手法に進んでいこうと思っています。 最初のお題として文字レベルのRecurrent Neural Network (RNN) を試しました。PyTorchチュートリアルの Classifying Names with…

PyTorch (15) CycleGAN (horse2zebra)

今回はCycleGANの実験をした。CycleGANはあるドメインの画像を別のドメインの画像に変換できる。アプリケーションを見たほうがイメージしやすいので論文の図1の画像を引用。 モネの絵を写真に変換する(またはその逆) 馬の画像をシマウマに変換する(または…

PyTorch (14) GAN (CelebA)

今回はDCGANをCelebAのデータで試してみた。このデータもよく見るけど使うの始めてだな。これまでのMNIST(2018/3/4)やFashion MNISTのGANと違ってカラー画像でサイズも大きいので少し修正が必要。 180303-gan.ipynb - Google ドライブ CelebA dataset Cele…

PyTorch (13) GAN (Fashion MNIST)

今回はDCGANをFashion MNISTのデータで試してみた。このデータは使うの始めてだな〜 画像サイズがMNISTとまったく同じで 1x28x28 なのでネットワーク構造は何も変えなくてよい (^^;) 今回は手抜きして変えたところだけ掲載します。 180303-gan-mnist.ipynb -…

PyTorch (12) Generative Adversarial Networks (MNIST)

前回(2018/2/28)の最後で次はConditional VAEだと言っていたけど思いっきり無視して (^^;) 今回はGenerative Adversarial Networks (GAN) やろう。いくつかのデータセットで実験しようと思っているけど今回は最初ということでMNISTから。 今回の実装は正確…

PyTorch (11) Variational Autoencoder

今回は、Variational Autoencoder (VAE) の実験をしてみよう。 実は自分が始めてDeep Learningに興味を持ったのがこのVAEなのだ!VAEの潜在空間をいじって多様な顔画像を生成するデモ(Morphing Faces)を見て、これを音声合成の声質生成に使いたいと思った…

PyTorch (10) Autoencoder

Autoencoderの実験!MNISTで試してみよう。 180221-autoencoder.ipynb - Google ドライブ 28x28の画像 x をencoder(ニューラルネット)で2次元データ z にまで圧縮し、その2次元データから元の画像をdecoder(別のニューラルネット)で復元する。ただし、一…

PyTorch (9) Transfer Learning (Dogs vs Cats)

前回(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 (8) Transfer Learning (Ants and Bees)

今回は、公式にあるPyTorch TutorialのTransfer Learning Tutorialを追試してみた! 180205-transfer-learning-tutorial.ipynb - Google ドライブ 前回(2018/2/12)取り上げたVGGやResNetのような大規模な畳み込みニューラルネット(CNN)をスクラッチ(ラ…

PyTorch (7) VGG16

今回は、学習済みの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…

PyTorch (6) Convolutional Neural Network

今回は畳み込みニューラルネットワーク。MNISTとCIFAR-10で実験してみた。 180202-cnn.ipynb - Google ドライブ MNIST import torch import torch.nn as nn import torchvision.datasets as dsets import torchvision.transforms as transforms from torch.a…

PyTorch (5) Multilayer Perceptron

今回は多層パーセプトロンでMNIST。おなじみ。 180203-multilayer-perceptron.ipynb - Google ドライブ import torch import torch.nn as nn import torchvision import torchvision.datasets as dsets import torchvision.transforms as transforms from to…

PyTorch (4) Logistic Regression

次は〜ロジスティック回帰(Logistic Regression)!ロジスティック回帰は、回帰とつくけど分類のアルゴリズムで、隠れ層がなく、活性化関数にシグモイド関数(2クラス分類のとき)、ソフトマックス関数(多クラス分類のとき)を使ったニューラルネットとし…

PyTorch (3) Linear Regression

まずは基本ということで線形回帰(Linear Regression)から。人工データとBoston house price datasetを試してみた。まだ簡単なのでCPUモードのみ。GPU対応はまた今度。 180130-linear-regression.ipynb - Google ドライブ 人工データセット import torch im…

PyTorch (2) 自動微分

PyTorchの自動微分を試してみた。 180126-autograd.ipynb - Google ドライブ import numpy as np import torch import torch.nn as nn from torch.autograd import Variable まずは必要なライブラリをインポート。 # テンソルを作成 x = Variable(torch.Tens…

PyTorch (1) リンク集

今年の目標(2018/1/1)で宣言したとおり今年はPyTorchを使えるようにしていこうと思ってます! ここにPyTorchのリソースをまとめる予定です。一気に追加すると収拾つかないため内容を吟味してから追加してこうと思います。外部リンク集の2つのサイトはPyTor…