2019-01-01から1年間の記事一覧

GluonTS 多変量時系列の評価

import numpy as np from matplotlib import pyplot as plt from gluonts.dataset.common import ListDataset from gluonts.model.deepar import DeepAREstimator from gluonts.distribution.multivariate_gaussian import MultivariateGaussianOutput from …

多変量時系列・GluonTSの動作確認(2019年11月29日)

はじめに GluonTS 0.4.2が公開されているので過去のコードで動作確認してみた。 環境 Windows10 Pro NVIDIA GeForce GTX1080 CUDA 10.1 Python 3.6.8 GluonTSのインストール pipでGluonTSをインストールした。 バージョン確認 boto3==1.10.28 botocore==1.13…

PyQt5を使ってみる(2) ラジオボタン

環境 バージョン 本文 環境 Windows 10 Pro(CPU only) Python 3.7.5 バージョン cycler==0.10.0 kiwisolver==1.1.0 matplotlib==3.1.1 numpy==1.17.4 pandas==0.25.3 pyparsing==2.4.5 PyQt5==5.13.2 PyQt5-sip==12.7.0 python-dateutil==2.8.1 pytz==2019…

GluonTSの「to_pandas」(from gluonts.dataset.util)は多変量に対応していない!

対応させてみた。 def to_pandas_multi(instance: dict, dim: int) -> pd.Series: target = instance["target"] start = instance["start"] freq = start.freqstr index = pd.date_range(start=start, periods=target.shape[1], freq=freq) return pd.Series…

PyQt5を使ってみる

環境 まずは最小画面の描画 つぎにボタンを押したときの動作を定義する(画像表示) matplotlibのグラフを表示させる 環境 Windows 10 Pro(CPU only) Python 3.7.5 まずは最小画面の描画 バージョン PyQt5==5.13.2 PyQt5-sip==12.7.0 コード import sys fr…

いんちき Image Captioning(物体検出モデルと行動認識モデルを組み合わせて画像説明文章を作成する)

はじめに 方法 使用したモデル コード 結果 日本語ファイル 環境 はじめに 以前PyTochrのImage Captioningについて書いた。 今回「いんちきImage Captioning」を作ってみた。 方法 ① Object Detectionモデルで画像内の人物を探す ② 見つかった人物をそれぞれ…

Visualizing CNN decisions(2)

はじめに 以前Grad-CAMについて書いた。 今回はCAMについて。 github.com 上記サイトを参考にさせて頂いた。 環境 Windows10 Pro Python 3.7.5 GPUなしcertifi==2019.9.11 chardet==3.0.4 cycler==0.10.0 gluoncv==0.5.0 graphviz==0.8.4 idna==2.6 kiwisolv…

Visualizing CNN decisions

はじめに Grad-CAMについて。 github.com 上記サイトのコードに少し変更を加えた。 gluoncvを使っているので少し短くなっている。 環境 Windows10 Pro Python 3.7.5 GPUなしcertifi==2019.9.11 chardet==3.0.4 cycler==0.10.0 gluoncv==0.5.0 graphviz==0.8.…

FBProphetとGluonTSの比較(株価を予想してみる)

Windows 10 Pro(CPU only) Python 3.6.8 環境構築 MXNetとGluonTSのインストール pip install mxnet pip install gluonts FBProphetのインストール 詳細はこちらを参照 pip install Cython pip install pystan==2.17.1 pip install fbprophet pip install …

GluonCVの「Pose Estimation」はゴルフ上達に役立つか?

環境 バージョン確認(pip freeze) 実行スクリプト 結果の表示 感想 環境 Windows10 Pro 64bit (GPUなし) Python 3.6.8 バージョン確認(pip freeze) certifi==2019.9.11 chardet==3.0.4 cycler==0.10.0 gluoncv==0.5.0 graphviz==0.8.4 idna==2.6 kiwisol…

【Excel】【VBA】行列を入れ替える

Dim last_row As Integer last_row = Cells(Rows.Count, 1).End(xlUp).Row Range("A1").Select Selection.CurrentRegion.Select Selection.Copy Cells(last_row + 1, 1).PasteSpecial Transpose:=True Rows("1:" & last_row).Delete Shift:=xlUp

Pandas備忘録

インデックスの変更 A B day_of_the_week 2018/1/1 1.2 13.5 Mon 2018/1/10 2.5 12.1 Wed 2018/1/15 1.4 10.9 Mon 2018/1/22 3.2 11.5 Mon 2018/2/5 1.8 10.6 Mon 2018/2/12 2.2 10.1 Mon 2018/2/19 2.8 11.7 Mon 2018/2/26 3.4 12.5 Mon 2018/3/5 1.9 10.0 …

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

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

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…

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_m…

【MXNet】写真に写っている人を数える(Faster RCNN resnet101を用いた物体検出)

2020年12月24日記事を更新しました。 はじめに たとえば上の写真に車が何台写っているかを数えてみる。 Pythonスクリプト import mxnet as mx from gluoncv import model_zoo, data, utils url = 'https://cdn-ak.f.st-hatena.com/images/fotolife/t/touch-s…

GluonCV「Object Detection」pretrained modelの比較

「yolo3_darknet53_coco」 「ssd_512_resnet50_v1_coco」 「faster_rcnn_fpn_resnet101_v1d_coco」

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

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

【画像分類】GluonCVの転移学習で「dogs vs cats」をやってみる

まずはデータをフォルダに分ける。 Kaggleからデータをダウンロードすると「train」フォルダに猫の画像、犬の画像それぞれ12500枚入っている。 今回はその中から各2000枚を訓練データ、各1250枚をテストデータとする。 ダウンロードした中には「test」フォル…

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(…

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

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

Semantic Segmentationで人物切り抜き(FCN_resnet101)

2021年2月24日記事を更新しました。 初めに 環境 バージョン確認 実行ファイル 結果 メモ1 メモ2 初めに 今回はデモのみ実行してみた 環境 Windows10 Pro NVIDIA GeForce GTX1080 CUDA 10.2 Python 3.6.8 バージョン確認 インストールが必要なのは「mxnet…

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

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

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

gluon-crash-course/mxnet_packages.md at master · mli/gluon-crash-course · GitHub ここにはこのように記載されている All cu packages ship cudnn in default, there is no need to install it separately.cuDNNをインストールしなくて良いってこと? 最…

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

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

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]…

GluonCVを使って物体検出(YOLO-v3) わずか11行でできた!

2020年12月22日記事を更新しました はじめに 実行ファイル 環境 GPUあり GPUなし その他 はじめにGluonCVの学習済みモデルを使って物体検出を行いました。 コードはたったの11行です。 実行ファイル import mxnet as mx from gluoncv import model_zoo, data…

GluonCVのpretrained modelについて

学習済みモデル モデルの構成 画像の前処理 画像の縮小 以下個人的メモ 学習済みモデル 学習済みモデルを使うことは非常に簡単 from gluoncv.model_zoo import get_model net = get_model('ResNet50_v2', pretrained=True) 「ImageNet」データセットを使って…