質問編集履歴
1
質問がわかりにくいかなと思ったので、質問の文を変更しました
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
Chainerのエラー文の変数がわからない
|
body
CHANGED
@@ -5,11 +5,10 @@
|
|
5
5
|
|
6
6
|
まず、自分でイメージスキャナから得た19872枚の画像にデータセット制作のコードを実行することでラベルを振りました。
|
7
7
|
次に、以下のChainerのコードを実行した時に、trainer.run()でエラーが発生しました。
|
8
|
-
エラー文
|
8
|
+
エラー文で示されているin_types[0]はデータの値なのか、ネットワークの変数なのかどちらでしょうか。
|
9
|
+
修正する箇所を教えていただけるとありがたいです。
|
9
10
|
|
10
|
-
何が原因でエラーが出ており、修正するべき点を教えていただけるとありがたいです。
|
11
11
|
|
12
|
-
|
13
12
|
### 発生している問題・エラーメッセージ
|
14
13
|
|
15
14
|
```
|
@@ -88,41 +87,7 @@
|
|
88
87
|
### 該当のソースコード
|
89
88
|
|
90
89
|
```Python
|
91
|
-
#データセット制作のコード
|
92
|
-
import os
|
93
|
-
import numpy as np
|
94
|
-
import cv2
|
95
90
|
|
96
|
-
os.chdir("./validation")
|
97
|
-
cWD = os.getcwd()
|
98
|
-
filenames = os.listdir(cWD)
|
99
|
-
num_files = len(filenames)
|
100
|
-
|
101
|
-
h = 100 #画像の高さ
|
102
|
-
w = 100 #画像の幅
|
103
|
-
data = np.zeros((num_files,3,h,w)) #画像を入れる箱を用意
|
104
|
-
|
105
|
-
print(data.shape)
|
106
|
-
for i,filename in zip(range(num_files),filenames): #validationディレクトリのファイルとiを同時に回す
|
107
|
-
|
108
|
-
img = cv2.imread(filename,1)
|
109
|
-
one_data = img.reshape(3,h,w) #100*100*3を3*100*100に変換
|
110
|
-
data[i] = one_data #dataに読み込んだ画像(変換済み)を入れる
|
111
|
-
u = np.zeros((num_files),dtype='int32')
|
112
|
-
|
113
|
-
for i,filename in zip(range(num_files),filenames):
|
114
|
-
positive_or_negative = filename.split('e',1) #imageとnegaimageを区別する("imag"e,"n"egaimage)
|
115
|
-
|
116
|
-
if positive_or_negative[0]=="imag": #positiveの画像にラベルとして0を与える
|
117
|
-
u[i] = 0
|
118
|
-
if positive_or_negative[0]=="n": #negativeの画像にラベルとして1を与える
|
119
|
-
u[i] = 1
|
120
|
-
|
121
|
-
os.chdir("../")
|
122
|
-
np.savez('validation.npz',x=data,t=u) #data(画像)をxに、u(ラベル)をtとして保存する
|
123
|
-
|
124
|
-
|
125
|
-
#Chainerのコード
|
126
91
|
import numpy as np
|
127
92
|
import math
|
128
93
|
import random
|