GluonTSで多変量時系列を扱う

データセットの作り方 N = 10 # number of time series T = 100 # number of timesteps prediction_length = 30 freq = '1H' custom_datasetx = np.random.normal(size=(N, 2, T)) start = pd.Timestamp("01-01-2019", freq=freq) train_ds = ListDataset( […

GluonTSを使ってみる (2)

archive.ics.uci.edu 「Bike Sharing Dataset Data Set」で値を予測する。 use no features use 'feat_dynamic_real' and 'feat_dynamic_cat' コード import numpy as np import pandas as pd from matplotlib import pyplot as plt df = pd.read_csv('day.c…

GluonTSについて(1)

docs.aws.amazon.com If your dataset contains the dynamic_feat field, the algorithm uses it automatically. All time series have to have the same number of feature time series. The time points in each of the feature time series correspond on…

GluonTSを使ってみる (1)

やったこと 50個のシリーズを作成した そのうちの48個を訓練データ、残りの2個をテストデータとした 訓練後にテストデータで予測をし、実際とくらべてみた。 コード import pandas as pd import numpy as np from matplotlib import pyplot as plt from gluo…

GluonTSで日経平均を予測してみる

今回やってみたこと データのダウンロード データの前処理 コード 結果 動作環境 今回やってみたこと 1年前までの株価のデータからその先1年の株価を予測してみた 予測するために過去2年間のデータ(24回分のデータ)を使用するモデルとした データのダウン…

たった20行弱で行動認識のデモ(gluoncv)2

初めに 環境 バージョンの確認(pip freeze) 写真(「sample.jpg」) コード 結果 感想 初めに GluonCV 0.5.0が公開された。 「inceptionv3_kinetics400」のpretrained modelが使用できるようになった。 今回は静止画のデモのみ行った。 環境 Windows 10 Pr…

異常検知

数少ない画像(正常画像:500、異常画像:10)をうまく分類する方法を検討する。 FashionMNIST画像を使用する。 正常画像としてスニーカー画像500枚 異常画像としてブーツ画像10枚 データの準備 今回はグレー画像をカラーに変換して使用する。 import cv2 impo…

NDarrayをつなげてバッチデータを作る

import mxnet as mx import numpy as np a1 = np.random.randint(0, 256, (8, 8, 3)) a2 = np.random.randint(0, 256, (8, 8, 3)) a3 = np.random.randint(0, 256, (8, 8, 3)) a4 = mx.nd.array(a1) a5 = mx.nd.array(a2) a6 = mx.nd.array(a3) np_img = [a1…

「im2rec.py」の使い方(クラス分類)

python im2rec.py --list --recursive sample_list ./sample_data/data/python im2rec.py sample_list ./sample_data/data/with open('sample_list.lst', 'r') as f: id_lists = f.readlines() id_to_class = {} for id_list in id_lists: line = id_list.sp…

MXNetでCIFAR-100を扱う

from mxnet import gluon #fine_label (= Classes) data = gluon.data.vision.CIFAR100(train=False, fine_label = True, root='cifar100') with open('cifar100/fine_label_names.txt', 'r') as f: fine_labels = f.read().rstrip().split() fine_id = [y f…

Windowsで「EnhanceNet」を試してみる

github.com backports.weakref==1.0rc1 bleach==1.5.0 html5lib==0.9999999 Markdown==3.1.1 numpy==1.17.0 Pillow==6.1.0 protobuf==3.9.1 scipy==1.0.0 six==1.12.0 tensorflow==1.2.1 Werkzeug==0.15.5上記バージョンで動作確認ができた。 インストールし…

複数の人が写りこんだ写真から最も人らしい人を抽出する

「最も人らしい人」=「人である確率が最も高い物体」 コード 結果 動機 WGANの結果 コード import numpy as np from PIL import Image from matplotlib import pyplot as plt from gluoncv import model_zoo, data, utils net = model_zoo.get_model('mask_…

写真に写っている人を数える

from gluoncv import model_zoo, data img_file ='Abdullah_Gul_0016.jpg' net = model_zoo.get_model('faster_rcnn_fpn_resnet101_v1d_coco', pretrained=True) x, img = data.transforms.presets.rcnn.load_test(img_file) class_IDs, scores, bounding_bo…

GluonCV「Object Detection」pretrained modelの比較

「yolo3_darknet53_coco」 「ssd_512_resnet50_v1_coco」 「faster_rcnn_fpn_resnet101_v1d_coco」

DeepLabV3でSemantic Segmentation(gluoncv)

初めに 環境 バージョンの確認(pip freeze) 実行ファイル 結果 初めに 「deeplab_resnet152_voc」のデモのみ実行してみた。 以前も同様の記事を書いたが最新のmxnetではコードを一部書き換える必要があった。 環境 Windows10 Pro NVIDIA GeForce GTX1080 C…

1年ぶりにGANで顔を書いてみる

はじめに 環境 バージョン データの取得 コードの書き換え オリジナル画像 結果1 追加実験1 結果-追加実験1 追加実験2 結果-追加実験2 追加実験3 結果-追加実験3 はじめに 1年前に書いたのがこちら。 touch-sp.hatenablog.com 精度がでないので今回は…

「gluon.data.vision」について

以下はどちらも通る。 from mxnet.gluon.data.vision.datasets import MNIST from mxnet.gluon.data.vision import MNIST from mxnet.gluon.data.vision.datasets import ImageFolderDataset from mxnet.gluon.data.vision import ImageFolderDataset 「__in…

2年ぶりに「dogs vs cats」をやってみる

2年前に書いたのがこちら。 touch-sp.hatenablog.com RからPythonに切り替えてどれだけ簡単に書けるかに挑戦。 まずはデータをフォルダに分ける。 Kaggleからデータをダウンロードすると「train」フォルダに猫の画像、犬の画像それぞれ12500枚入っている。 …

GANにおけるパラメータの更新について

DCGANではこのようなコードをよく見かける。 ########################### # Update G network ########################### noise = mx.nd.random_normal(0, 1, shape=(batch_size, 100, 1, 1)) with autograd.record(): fake = netG(noise) output = netD(…

Gluonでの移転学習の時にパラメータを固定する方法を調べてみた

GluonCVのpretrained modelは「features」部分と「output」部分からできている。 「features」部分のパラメータを固定する方法についていろいろ調べてみた。 ①「setattr('grad_req', 'null')」を使用する(おそらく推奨される方法) ②「Trainer」部分のパラ…

「d2l」

「d2l」のコードを眺めていて使えそうなものを見つけた。 class Accumulator(object): def __init__(self, n): self.data = [0.0] * n def add(self, *args): self.data = [a+b for a, b in zip(self.data, args)] def reset(self): self.data = [0.0] * len…

FCNでSemantic Segmentation(gluoncv)

初めに 環境 バージョン確認 実行ファイル 結果 メモ1 メモ2 初めに 今回はデモのみ実行してみた 環境 Windows10 Pro NVIDIA GeForce GTX1080 CUDA 10.1 Python 3.6.8 バージョン確認 certifi==2019.6.16 chardet==3.0.4 cycler==0.10.0 gluoncv==0.5.0b20…

COCOAPIをWindows10のPythonにインストールするメモ

はじめに 0:あらかじめやっておくこと 1:COCO APIをダウンロード 2:インストール 3:最後にひと仕事 はじめに qiita.com github.com 上記2サイトを参考にさせていただいた。 「Git」が使えない人のためのメモ 0:あらかじめやっておくこと 「Cython…

ARANで超解像(MXNet)

環境 バージョン確認(pip freeze) ARANの学習済みモデルをダウンロード サンプル画像のダウンロード 実行スクリプト 結果の表示 警告 追記 環境 Windows10 Pro NVIDIA GeForce GTX1080 CUDA 10.1 Python 3.6.8 バージョン確認(pip freeze) certifi==2019…

たった20行弱で行動認識のデモ(gluoncv)

初めに 環境 バージョンの確認(pip freeze) 写真(「sample.jpg」) コード 結果 感想 初めに 今回はGluonCVのデモ(静止画)のみ行った。 環境 Windows 10 Pro GPUなし Python 3.6.8 バージョンの確認(pip freeze) 「mxnet-mkl」「gluoncv」だけをpip経…

MXNetにcuDNNのインストールは必要か?

以前このような記事を書いた。 mxnet-cu**について - パソコン関連もろもろ All cu packages ship cudnn in default, there is no need to install it separately.最近CUDA Toolkitを9.2から10.1にアップデートした。 あえてcuDNNをインストールせずにmxnet-…

「mxnet-mkl」パッケージについて

公式ページにこのように書かれていた。 MXNet offers MKL pip packages that will be much faster when running on Intel hardware.古い公式ページにはこのように書かれていた。 When using Intel Xeon CPUs for training and inference, the mxnet-mkl pack…

短くかつわかりやすくMNISTを解く

今更感があるがMXNetのコードの書き方がだんだんわかってきたので、できるだけ短くそしてわかりやすく書いてみた。 import mxnet as mx from mxnet import gluon, autograd from mxnet.gluon import nn, rnn, data mnist = mx.test_utils.get_mnist() x_trai…

今さらながらMXNetでの画像の扱い方

直接numpy ndarrayへ from PIL import Image import numpy as np filename = 'sample.jpg' img = np.asarray(Image.open(filename)) バイナリデータとして読み込んだ後、numpy ndarrayに変換 from PIL import Image from io import BytesIO import numpy as …

MXNet Gluon のLSTMについて

>>> model = mx.gluon.rnn.LSTM(512, num_layers=1) >>> model.initialize() >>> input = mx.nd.random.uniform(shape=(15,10,200)) >>> h0 = mx.nd.zeros(shape=(1,10,512)) >>> c0 = mx.nd.zeros(shape=(1,10,512)) >>> out, state = model(input, [h0,c0]…