回答編集履歴

1

コード差し替え、説明追記

2022/06/15 01:30

投稿

jbpb0
jbpb0

スコア7651

test CHANGED
@@ -13,7 +13,7 @@
13
13
  from keras.preprocessing import image
14
14
  from PIL import Image
15
15
  import numpy as np
16
- #import urllib.request as urllib
16
+ import urllib.request as urllib
17
17
  import time
18
18
 
19
19
  # 手元の環境で実行させたい場合は下記2つも読み込んでください。
@@ -26,8 +26,9 @@
26
26
  size: 予測した結果を何件まで表示させたいか(初期値5件)
27
27
  """
28
28
  def predict(filename, size=5):
29
-
29
+ # 画像ファイルとして保存
30
+ filename = urllib.urlretrieve(filename, "sample.png")
30
- img = image.load_img(filename, target_size=(224, 224)) # 画像を読み込み
31
+ img = image.load_img(filename[0], target_size=(224, 224)) # 画像を読み込み
31
32
  x = image.img_to_array(img) # 画像ファイルを数値に変換
32
33
  x = np.expand_dims(x, axis=0) # 次元を増やす
33
34
 
@@ -46,16 +47,16 @@
46
47
  # VGG16を使用
47
48
  model = VGG16(weights="imagenet")
48
49
 
50
+ # 犬の判定処理
49
- filename = "eagle.jpg" # ファイルネームにアップロードしたファイル名を記述してください。
51
+ filename = "https://aiacademy.jp/dataset/dog1.jpg"
50
-
51
- results = predict(filename)
52
+ results = predict(filename, 10)
52
53
  for result in results:
53
54
  print(result)
54
55
  ```
55
56
 
56
57
  1回目の実行はモデルをダウンロードしたりいろいろやってるので、2回目の実行の時間です
57
- [CPU] elapsed_time:0.6170904636383057[sec]
58
+ [CPU] elapsed_time:0.7016515731811523[sec]
58
- [GPU] elapsed_time:0.06678915023803711[sec]
59
+ [GPU] elapsed_time:0.0678093433380127[sec]
59
- 何回か測定して平均したりはしてません
60
+ 何回か測定して平均したりはしてませんので、あまり正確な見積もりでは無いですが、この場合はGPUの方が10倍くらい速くなりました
60
61
 
61
62
  使うAIによっても当然結果は変わりますし、google colabで割り当てられたGPUの機種によっても変わると思いますので、あくまでも参考程度に