Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
 
      
  
 
  
  このIntel® Movidius™ Neural Compute Stickは、イメージ最高。。。1万円でRasPiが高性能なDLマシンになっちゃう♬ ということで、半年以上たったので安定しているはずということで試してみました。 というか、RasPi使っていろいろ物体検出とかやれそうだなということで期待してやってみました。 結果から書くと、出来ました! 残念ながら、ここにたどり着けたのは幸運だったかもしれません。 ということで、苦労話は無しで、マネしてもらえればほぼ出来ると思います。 ※参考はたくさんありますが、。。すべての記載は控えます メモリは4GB以上空きがないと厳しいと思います。 ※ウワンはSTRETCH完了時2GB残ってましたが、途中削除しつつ進めましたが最後はぎりぎりになりました やるべきこと (1)ほぼ公式のとおりやる Intel® Movidius™ NCS Quick
 
      
  はじめに 今回は、今年(2018)の4月に発表された、物体検出モデルPeleeについて調べてみました。 Peleeについて Peleeの論文のタイトルは、「Pelee: A Real-Time Object Detection System on Mobile Devices」です。 タイトルの通り、モバイル端末でのリアルタイムでの物体検出に適したモデルらしいです。 つまり、処理速度を上げつつ、モデルの大きさ(パラメータ数)を抑えたモデルらしいです。 Peleeモデルのテクニック PeleeモデルはDenseNetベースのモデルで、これをSSDと組み合わせたようです。 [Densely Connected Convolutional Networks](https://arxiv.org/pdf/1608.06993v3.pdf) Peleeの主なテクニックとして、以下のようなものが上げら
 
      
  def build_generator(self): model = Sequential() model.add(Dense(input_dim=(self.z_dim + CLASS_NUM), output_dim=1024)) # z=100, y=10 model.add(BatchNormalization(momentum=0.8)) model.add(LeakyReLU(0.2)) model.add(Dense(128*8*8)) model.add(BatchNormalization(momentum=0.8)) model.add(LeakyReLU(0.2)) model.add(Reshape((8,8,128))) model.add(UpSampling2D((2,2))) model.add(Convolution2D(128,5,5,border_mo
![[失敗談]GANで戦車画像の生成 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/0737d01a5cdab4e898fcf7781564be0fa31cfab2/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fcdn.qiita.com%25252Fassets%25252Fpublic%25252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFtYXpvbmF3cy5jb20lMkYwJTJGMjY0NzgxJTJGcHJvZmlsZS1pbWFnZXMlMkYxNTMyMDA1MTAzP2l4bGliPXJiLTQuMC4wJmFyPTElM0ExJmZpdD1jcm9wJm1hc2s9ZWxsaXBzZSZiZz1GRkZGRkYmZm09cG5nMzImcz02MDZlNTIxOGZmOWMwYzZlZWNiNTkzZTUxNGU0ZjNmYw%2526blend-x%253D120%2526blend-y%253D467%2526blend-w%253D82%2526blend-h%253D82%2526blend-mode%253Dnormal%2526s%253Dab003d877daf7bedfb9e51e3ca792485%3Fixlib%3Drb-4.0.0%26w%3D1200%26fm%3Djpg%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JUVGJUJDJUJCJUU1JUE0JUIxJUU2JTk1JTk3JUU4JUFCJTg3JUVGJUJDJUJER0FOJUUzJTgxJUE3JUU2JTg4JUE2JUU4JUJCJThBJUU3JTk0JUJCJUU1JTgzJThGJUUzJTgxJUFFJUU3JTk0JTlGJUU2JTg4JTkwJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LXBhZD0wJnM9YzBmMGQ4YzY2NDQ2MGE1MjY0YjNiYTA4ODJhMjZlNGY%26mark-x%3D120%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDBzaGlubXVyYTAmdHh0LWNvbG9yPSUyMzFFMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtcGFkPTAmcz0yOGZhMTBiM2MzYmJiZWQwMDU4NzVhNDRmNWZjOWIyNw%26blend-x%3D242%26blend-y%3D480%26blend-w%3D838%26blend-h%3D46%26blend-fit%3Dcrop%26blend-crop%3Dleft%252Cbottom%26blend-mode%3Dnormal%26s%3D8c1f95ba86699d328cb28826ccb08b93) 
      
  Caffeを使ってみた Caffe2があるのですが、WindowsではGPUで現状(2018.6)は使うことが出来ないので、Caffeにしました。 WindowsのCaffeはビルドなどしても良いのですが、バイナリバージョンが公式で出ているので、動かすだけであれば簡単です。 以下の手順で動かしていきます。 学習画像、テスト画像、評価画像の3種類を用意する データベースを作る 平均値画像を作る 学習する 評価する はじめに はじめに,Windows版のCaffeを入手します。 かつては,ビルドなどをしなければならないのですが,とりあえずいろいろと改良しなければビルド版を入手したらOK GPU,CPUなど好きなものをダウンロードしてください。 プログラムはここ ダウンロード後は解凍して、フォルダの中に[tools]と[example]のフォルダを作成しておきましょう。 [tools]には、後に
 
      
  NVIDIA主催のAI講習でAI開発の手ほどきを受けてウキウキの会社員のみなさんがいきなりぶち当たる壁「Linux機」の手配。おじさんはそんな辛い気持ちよくわかります。 そんな事情はわかりつつ、NVIDIA DIGITS 6.0をWindowsで使う! - 夜間飛行ではwindows版BVLC/CaffeでDIGITSを動かしたのですが、オリジナルがビルドできないのって気になります。 cmakeの扱いやCIツールのお勉強、WindowsとLinuxの差異へのさらなる習熟を目指してNVIDIAのNVCaffe 0.15をWindows機向けにbuildしましたのでご報告です。 とりあえずバイナリ欲しい人向け この辺にリンク貼っておいたんで… Prebuild binariesから持っていってくだされ。 caffe/README.md at caffe-0.15-win · Chachay/c
 
      
  KerasのImageDataGeneratorはData Augmentation(水増し)にとても便利ですが、最近水増しの方法がいろいろ研究されてきて物足りないなと感じることがあります。KerasオリジナルのImageDataGeneratorを継承・拡張して、独自のImageDataGeneratorを作る方法を考えてみました。 クラス継承なのでオリジナルのImageDataGeneratorと全く同じ感覚で使えます。 参考 以下のサイトを参考にしました。 Kerasでデータ拡張(Data Augmentation)後の画像を表示する flow_from_dirctoryで流した画像をpyplotで表示させる方法について解説されています。 新たなdata augmentation手法mixupを試してみた Mix-upの原著論文やその実装について解説されています。 Extending
 
      
  画像用のネットワークを調整する際、入力サイズを増やしたら、画像読込時にメモリに乗り切らなくなった問題を解消した際のメモです。 前提環境 Ubuntu 16.04 Keras 2.1.6 課題 学習に使う画像データの総容量が大きくなり、一度に読込できなくなった。 そのため、一定サイズ毎に区切りながらデータを読み込む必要が発生した。 概要 Model.fitの代わりに、Model.fit_generatorメソッドを使って学習する。 fit_generatorメソッドには、学習・検証データとして、Generatorオブジェクトを渡す。 Generatorオブジェクトは、バッチ単位にデータを提供する仕組みを実装する。 実装例 class MyGenerator(Sequence): """Custom generator""" def __init__(self, data_paths, dat
 
      
  前編では、ヒートマップを使って異常個所を可視化しました。 後編では、従来手法と提案手法を数値的に比較してみます。 使うツールは、ROC曲線です。 ROC曲線 ROC曲線は、ラベル間のデータ数に差があるときに使われます。 ROC曲線について、詳しく知りたい方はこちら↓を参考にしてください。 http://www.randpy.tokyo/entry/roc_auc 今回は、ラベル間のデータ数に大きな差はありませんが、論文にならって ROC曲線を描画します。最終的に、AUCを算出して、これが大きい方が優れた 異常検知器といえます。 コードの解説 コードの一部を解説します。 異常スコアの算出 論文によると、異常判定の基準は以下のとおりです。 このパッチ全てに関して異常度を算出し、少なくとも1枚が閾値を 超えてる場合、テストデータは異常であると判断した. パッチというのは、前編でお伝えした小窓に相
 
      
  「PyTorchは速いぞ」という記事がいろいろ出てて気になったので、何番煎じかわかりませんが、どのぐらい速いんだろうと思って実験してみました。実験するのはこの前作ったDenseNetです。 環境 Google Colab GPUはTesla K80、ハードウェアアクセラレータはON Kerasのバージョンは2.1.6、PyTorchのバージョンは0.4.1 条件 Dense Netの論文の条件を若干アレンジしたものです。Data Augmentationはシンプルにしました。 成長率K=16とし、DenseNet-121と同じ構成のDenseNetを作る CIFAR-10を分類する Data Augmentationは左右反転、ランダムクロップのみ。 L2正則化(Weight Decay)に2e-4(0.0002)。ドロップアウトはなし オプティマイザーはAdam、初期の学習率は0.001
 
      
  Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 顔の識別、検索をしたいがデータを集めて切り取りする作業があまりにも鬼畜な作業なので自動化したくて頑張ってみる。 open cv では傾いた顔を認識しない、顔じゃないものを顔と認識するなどなどイマイチ。 物体検出というものがあるらしい ここ https://github.com/pierluigiferrari/ssd_keras にあるコードが自分の環境(TensorFlow 1.x、Keras 2.x)で動きそうだったので試してみた。 ssd300_inference.ipynbかssd512_inference.ipynbに従ってポ
 
      
  images_train = mnist.train.images labels_train = mnist.train.labels images_test = mnist.test.images labels_test = mnist.test.labels images_train_3d = np.reshape(images_train, [-1, 28, 28]) images_test_3d = np.reshape(images_test, [-1, 28, 28]) images_flip_train_3d = images_train_3d[:, :, ::-1] images_flip_test_3d = images_test_3d[:, :, ::-1] images_flip_train = np.reshape(images_flip_train_3d, [-1
 
      
  images_train = mnist.train.images labels_train = mnist.train.labels images_test = mnist.test.images labels_test = mnist.test.labels # for train data indices = np.random.choice(55000, 10000, replace = False) images_train_0 = images_train[indices] images_train_0_2d = np.reshape(images_train_0, (-1, 28, 28)) labels_train_0 = labels_train[indices] images_train_flip_2d = images_train_0_2d[:, :, ::-1] i
 
      
  2018-08-19 13:25:37.227703: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 2018-08-19 13:25:37.534817: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1405] Found device 0 with properties: name: GeForce GTX 1060 3GB major: 6 minor: 1 memoryClockRate(GH
 
      
  class DecisionTree(): def __init__(self): pass def weight_variable(self, name, shape): initializer = tf.truncated_normal_initializer(mean = 0.0, stddev = 0.01, dtype = tf.float32) return tf.get_variable(name, shape, initializer = initializer) def bias_variable(self, name, shape): initializer = tf.constant_initializer(value = 0.0, dtype = tf.float32) return tf.get_variable(name, shape, initializer
 
      
  リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く
