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

Defense against Adversarial Attacks Using High-Level Representation Guided Denoiser

CVPR2018採択論文"Defense against Adversarial Attacks Using High-Level Representation Guided Denoiser"のレビュー. 元論文はこちら Classifierの誤分類を誘発するAdversarial Attacksに対する防御手法の提案. 入力画像に載せられている,悪意のあるノ…

Adversarial Examples for Semantic Segmentation and Object Detection

ICCV2017採択論文"Adversarial Examples for Semantic Segmentation and Object Detection"のレビュー. 元論文はこちら. 分類タスクにおいて,ニューラルネットワークの誤分類を誘発する攻撃手法であるAdversarial AttacksがSemantic SegmentationおよびOb…

Decision-Based Adversarial Attacks: Reliable Attacks Against Black-Box Machine Learning Models

ICLR2018採択論文"Decision-Based Adversarial Attacks: Reliable Attacks Against Black-Box Machine Learning Models"のレビュー. 元論文はこちら 問題設定としては,クラウドでAPIとして提供されているような機械学習モデルに対して,最終的な分類結果の…

Universal adversarial perturbations

CVPR2017採択論文"Universal adversarial perturbations"のレビュー. 元論文はこちら 複数画像に対して汎用的に使えるuniversal perturbationを用いた分類機に対する攻撃が可能であることを示した論文. Abstract ニューラルネットワークに対して,一つのAd…

Boosting Adversarial Attacks with Momentum

CVPR2018採択論文"Boosting Adversarial Attacks with Momentum"のレビュー. 元論文はこちら 既存のAdversarial Attacksの手法にモーメンタムの概念を導入して,攻撃性能とtransferabilityの両立を達成. 同時に,攻撃手法のアンサンブル化によって複数モデ…

Facebookの可視化ツールVisdomを色々試す

visdomはFacebook AI Researchが公開しているオープンソースの可視化ライブラリ,Torchとnumpyに対応している. GitHub repo Visdom aims to facilitate visualization of (remote) data with an emphasis on supporting scientific experimentation. (adsby…

Practical Black-Box Attacks against Machine Learning

ニューラルネットワークのアーキテクチャおよび勾配情報なしに攻撃を行うBlack-Box Adversarial Attackについての論文. Adversarial Attackについての概要とPyTorchを用いた実装については以下の記事を参照. noconocolib.hatenablog.com 概要 paper link W…

PyTorchの便利な周辺ライブラリまとめ

PyTorchの便利な周辺ライブラリのメモ. CV系 NLP Audio 確率的プログラミング 可視化 その他 チュートリアル,入門など (adsbygoogle = window.adsbygoogle || []).push({}); CV系 torchvision: コンピュータビジョンで便利なtransforms, モデル,データセ…

Library not loaded: libmklml.dylib use c++ front

Mac OSでPyTorchのC++ APIのコードを実行しようとすると以下のエラーが出る. dyld: Library not loaded: @rpath/libmklml.dylib Referenced from: /Users/hzq/Documents/www/test/libtorch/lib/libcaffe2.dylib Reason: image not found Abort trap: 6 libm…

PyTorchでKerasのmodel.summary()みたいなやつ

pytorch-summaryを使うとKerasのmodel.summary()のようにモデルの表示ができる. GitHub repo Keras has a neat API to view the visualization of the model which is very helpful while debugging your network. Here is a barebone code to try and mimi…

TensorFlow推奨のデータ形式TFRecordを使う

概要 Tensorflow推奨のデータ形式.あらかじめ画像などをTFRecord形式で吐いておくとかなり効率的に学習・推論ができる. コンバータも簡単に書けるのでおすすめ.変換速度もまあまあ速い. 使い方 Convert Images to TFRecord def convert(data_root): image…

PyTorchでレイヤーごとに違う学習率を設定する

PyTorchで各レイヤーごとに違うLearning Rateを設定する方法. 例として,以下のようなネットワークを想定する. class Net(nn.Module): def __init__(self): super(Net, self).__init__() self.fc1 = nn.Linear(784, 128) self.fc2 = nn.Linear(128, 256) s…

SaaS: Speed as a Supervisor for Semi-supervised Learning

ECCV2018採択論文"SaaS: Speed as a Supervisor for Semi-supervised Learning"の論文読みメモ. paper link 概要 ニューラルネットの学習スピードそのものを活用したsemi-supervised learningのアルゴリズムであるSaaSを提案.教師あり学習時の学習速度は学…

jupyter notebookでPyTorch C++ APIを試してみる

jupyter notebookでC++を動かすカーネルであるxeus-clingとPyTorchのC++ APIであるlibtorchを利用して,jupyter notebook上でPyTorchをC++から使ってみる. (adsbygoogle = window.adsbygoogle || []).push({}); 準備 LibTorchのインストール はじめに,PyTo…

ICLR2019気になった論文メモ(4)

ICLR2019採択論文のうち,気になったものをメモしていく. その3. noconocolib.hatenablog.com Efficient Augmentation via Data Subsampling AdaShift: Decorrelation and Convergence of Adaptive Learning Rate Methods A Closer Look at Few-shot Class…

PyTorchでGrad-CAMによるCNNの可視化.

Grad-CAMはConvolutional Neural Networksの可視化手法の一種.CNNが画像のどの情報を元にして分類を行なっているのかを可視化するのに用いられる. Arxiv Project page 今回はこのGrad-CAMをPyTorchで試してみる. (adsbygoogle = window.adsbygoogle || []…

PyTorch C++ APIでGPUを使ってみる

今回はPyTorchのC++ APIでGPUを使った学習と推論を試してみる. (adsbygoogle = window.adsbygoogle || []).push({}); GPUの使い方 C++でGPUが使えるかどうかは,以下のように確認できる torch::cuda::is_available() ここはpythonとほとんど変わらない GPU…

PyTorch C+ APIで自作データセットを定義する.

PyTorchのC++ APIで自作のデータセットの定義の仕方を紹介. 今回は以下のようなデータセットを作る, データセットクラス:ImageDataset(root, labelfile) 画像が格納されたルートディレクトリ:root 画像は以下のように格納 $ tree test_data/ test_data/ …

PyTorchでTorch Hubに自作モデルの登録

PyTorchの自作モデルをTorch Hubに登録してみる. GitHub repo hubconf.pyの設置 以下のようにhubconf.pyをレポジトリの直下に設置する. # -*- coding: utf-8 -*- from models import MobileNet_v2 def mobilenet_v2(pretrained=False, *args, **kwargs): m…

PyTorchのC++ APIを試してみる

PyTorchではC++ APIが提供されている. pytorch.org (adsbygoogle = window.adsbygoogle || []).push({}); 多層パーセプトロン版 ビルド $ mkdir build $ cd build $ cmake .. $ cmake -DCMAKE_PREFIX_PATH=/absolute/path/to/libtorch .. $ make #include <torch/torch.h> </torch/torch.h>…

ICLR2019気になった論文メモ (3)

ICLR2019採択論文のうち,気になったものをメモしていく. その2. noconocolib.hatenablog.com Combinatorial Attacks on Binarized Neural Networks Exemplar Guided Unsupervised Image-to-Image Translation with Semantic Consistency The Unusual Effec…

PyTorchでTorch Hubを使ったpre-trained modelの共有

Torch Hubは研究の再現性のために,PyTorchのpre-trained modelの共有のための機能. https://pytorch.org/docs/master/hub.html hubconf.py 以下のフォーマットでentrypointを定義する entrypointはPyTorchのモデルを返す関数 def entrypoint_name(pretrain…

ICLR2019気になった論文メモ (2)

ICLR2019採択論文のうち,気になったものをメモしていく. その1. noconocolib.hatenablog.com その3. noconocolib.hatenablog.com Pay Less Attention with Lightweight and Dynamic Convolutions Transferring Knowledge across Learning Processes Lar…

ICLR2019気になった論文メモ

ICLR2019採択論文のうち,気になったものをメモしていく. その2. noconocolib.hatenablog.com Slimmable Neural Networks Deep Decoder: Concise Image Representations from Untrained Non-convolutional Networks Three Mechanisms of Weight Decay Reg…

PyTorchでConditional GANs

GANsの学習フレームワークの中に明示的にラベル情報を入れるConditional GANsをPyTorchで実装してみる. Conditional Generative Adversarial Nets paper link モジュールのインポート 必要なライブラリをimportしておく ちなみにjupyter notebookの場合は f…

PyTorchでAdversarial Attack. モルモットをインドゾウに誤認識させる

PyTorchを用いて分類器に対する攻撃手法であるAdversarial Attackを実装してみる. これは,分類器に対して故意に誤分類を誘発させるような画像を生成する攻撃手法である.例えば, 自動運転車に対する標識の誤検出の誘発 顔認識システムの第三者による誤認…

PyTorchとPyroでベイジアンニューラルネットワーク

PyTorchと,確率的プログラミングフレームワークであるPyroを用いてベイジアンニューラルネットワークを試してみる. Pyro Uber AI Labsによって開発が行われている github link blog post Pyro is a flexible, scalable deep probabilistic programming lib…