物知らずPGの覚え書き

「理解したこと」や「こうやって使えた」などのプログラムの覚え書きとなります

WindowsでTensorFlowを触ってみた

2016/11/29からWindowsでTensorFlow 0.12がサポートされたので色々触ってみたいと思います!!

 

環境のセットアップ 

 
まず、TensorFlowの環境を構築します 
 
参考にしたサイトを以下に示します。
とてもわかりやすく書いていらっしゃるので、とても助かりました!!
 

tilfin.hatenablog.com 

そして、このサイトの手順に従えば環境構築にすごい時間を取られるんだろなーと考えていましたが案外あっさりできました

 

ImageNetを使って画像推定

 
先のページを読んでいるとImgeNetで自分の画像の推定が出来ることを知ったので自分も試しにやってみた
 
画像はプロフィール画像にもしているしゃくれライオンを使用した

 

        f:id:YoiTaka:20160815093058p:plain

 

まず、サンプルプログラムがあるtensorflow内のimagenetに移動する

C:\>cd C:\tensorflow\tensorflow\models\image\imagenet 

 次に、推定したい画像のパスを指定して実行する

C:\tensorflow\tensorflow\models\image\imagenet>python classify_image.py --image_file c:\Lion.jpg

  

実行結果

 
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:128] successfully opened CUDA library cublas64_80.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:128] successfully opened CUDA library cudnn64_5.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:128] successfully opened CUDA library cufft64_80.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:128] successfully opened CUDA library nvcuda.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:128] successfully opened CUDA library curand64_80.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:885] Found device 0 with properties:
name: GeForce GTX 1060 6GB
major: 6 minor: 1 memoryClockRate (GHz) 1.8095
pciBusID 0000:01:00.0
Total memory: 6.00GiB
Free memory: 5.00GiB
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:906] DMA: 0
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:916] 0:   Y
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1060 6GB, pci bus id: 0000:01:00.0)
E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:586] Could not identify NUMA node of /job:localhost/replica:0/task:0/gpu:0, defaulting to 0.  Your kernel may not have been built with NUMA support.
W c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\framework\op_def_util.cc:332] Op BatchNormWithGlobalNormalization is deprecated. It will cease to work in GraphDef version 9. Use tf.nn.batch_normalization().
lion, king of beasts, Panthera leo (score = 0.07077)
maillot, tank suit (score = 0.05327)
face powder (score = 0.03132)
Band Aid (score = 0.02967)
sunscreen, sunblock, sun blocker (score = 0.02033)

 

人の手が移っているしゃくれライオンを用いても一番高い推定結果がライオン(king of beats)となっていることがわかる

他の画像を使用していろいろ遊んでいたのですが、このプログラムで使用する画像はjpgにしか対応していないので注意が必要です

/* パンくずリスト*/ /* カテゴリ階層化*/