質問編集履歴

5

修正

2017/06/11 08:01

投稿

trafalbad
trafalbad

スコア303

test CHANGED
File without changes
test CHANGED
@@ -56,7 +56,7 @@
56
56
 
57
57
 
58
58
 
59
- isinstance(n, float) #or isinstance(X_image, float)
59
+ isinstance(n, float) or isinstance(X_image, float)
60
60
 
61
61
  >>>False
62
62
 

4

修正

2017/06/11 08:01

投稿

trafalbad
trafalbad

スコア303

test CHANGED
@@ -1 +1 @@
1
- エラー「GraphDef cannot be larger than 2GB.」の解決
1
+ 乱数をfloat32に変換する方
test CHANGED
@@ -1,87 +1,63 @@
1
- DCGANで生成器と識別器を学習させようして、sees.run実行しよしたところ下記のよなエラーが出ました。
1
+ 以下生させた乱数データセットfloat32に変換するにはどうしたら良いでしょか?
2
-
3
-
4
-
5
- ```
6
-
7
- GraphDef cannot be larger than 2GB.
8
2
 
9
3
  ```
10
4
 
5
+ import numpy as np
11
6
 
7
+ M = 1000
12
8
 
13
- これは何を意味しているのでしょうか?解決策を教えていただけないでしょうか?
9
+ N = 3072
14
10
 
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
- 該当部分コード
26
-
27
- ```
28
-
29
- # loss
30
-
31
- d_loss_1, d_loss_2 = loss(d_output_from_given_data, d_output_from_noise_for_dtrain)
32
-
33
- g_loss = tf.reduce_sum(tf.log(1 - d_output_from_noise_for_gtrain))
34
-
35
-
36
-
37
-
38
-
39
- # training
40
-
41
- d_train_step = tf.train.AdamOptimizer(learning_rate=0.0001, beta1=0.5).minimize(-(d_loss_1 + d_loss_2))
42
-
43
- g_train_step = tf.train.AdamOptimizer(learning_rate=0.0001, beta1=0.5).minimize(g_loss)
11
+ n = np.ones((1,N)) * np.linspace(0.0, 1.0, M).reshape(M,1)
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
- sess=tf.Session()
52
-
53
- sess.run(init)
54
-
55
- num_steps = 512
56
-
57
- for step in range(num_steps):
58
-
59
- g_output_eval = sess.run(g_output, feed_dict = {g_input_placeholder: inputs})
60
-
61
- sess.run(d_train_step, feed_dict = {
62
-
63
- g_output_placeholder: g_output_eval,
64
-
65
- d_given_data_placeholder: X_image})
66
-
67
- sess.run(g_train_step, feed_dict = {g_input_placeholder: inputs})
68
-
69
- if step % (num_steps / 8) == 0:
70
-
71
- loss_1, loss_2 = sess.run([d_loss_1, d_loss_2], feed_dict = {
72
-
73
- g_output_placeholder: g_output_eval,
74
-
75
- g_input_placeholder: inputs,
76
-
77
- d_given_data_placeholder: X_image})
78
-
79
- print('step: %d, loss1: %f, loss2: %f'%(step, loss_1, loss_2))
80
-
81
-
82
-
83
- ValueError: GraphDef cannot be larger than 2GB.
84
12
 
85
13
 
86
14
 
87
15
  ```
16
+
17
+ 備考
18
+
19
+ ネット上で公開されている方法で変換してみましたが、instanceではFalseと出てしまいます。
20
+
21
+ ```
22
+
23
+ X_image=np.array(x_train, dtype=np.float32)
24
+
25
+ X_image
26
+
27
+
28
+
29
+ >>>
30
+
31
+ array([[ 0.23137255, 0.16862746, 0.19607843, ..., 0.54901963,
32
+
33
+ 0.32941177, 0.28235295],
34
+
35
+ [ 0.60392159, 0.49411765, 0.41176471, ..., 0.54509807,
36
+
37
+ 0.55686277, 0.56470591],
38
+
39
+ [ 1. , 0.99215686, 0.99215686, ..., 0.32549021,
40
+
41
+ 0.32549021, 0.32941177],
42
+
43
+ ...,
44
+
45
+ [ 0.56862748, 0.51372552, 0.4509804 , ..., 0.34901962,
46
+
47
+ 0.34509805, 0.35686275],
48
+
49
+ [ 0.57254905, 0.72549021, 0.97254902, ..., 0.57254905,
50
+
51
+ 0.65098041, 0.93333334],
52
+
53
+ [ 0.79607844, 0.78823531, 0.81568629, ..., 0.44705883,
54
+
55
+ 0.47058824, 0.49411765]], dtype=float32)
56
+
57
+
58
+
59
+ isinstance(n, float) #or isinstance(X_image, float)
60
+
61
+ >>>False
62
+
63
+ ```

3

修正

2017/06/11 08:00

投稿

trafalbad
trafalbad

スコア303

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
 
4
4
 
5
+ ```
6
+
5
- ``` GraphDef cannot be larger than 2GB. ```
7
+ GraphDef cannot be larger than 2GB.
8
+
9
+ ```
6
10
 
7
11
 
8
12
 

2

修正

2017/06/11 02:25

投稿

trafalbad
trafalbad

スコア303

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- GraphDef cannot be larger than 2GB.
5
+ ``` GraphDef cannot be larger than 2GB. ```
6
6
 
7
7
 
8
8
 

1

修正

2017/06/11 02:25

投稿

trafalbad
trafalbad

スコア303

test CHANGED
@@ -1 +1 @@
1
- tensorflow行列の掛け算規則について
1
+ エラー「GraphDef cannot be larger than 2GB.」解決法
test CHANGED
@@ -1,31 +1,83 @@
1
- 4つの持つ列の内積をしたいのですが、下記形式行列同士だと上手くできせん
1
+ DCGANで生器と識別器学習させようとして、sees.runを実行しようとしところ下記のようなエラーが出した
2
2
 
3
3
 
4
4
 
5
- 下記の変数①②③の内積をするためには変数②と③の形状をどのようにすれば良いでしょうか?
6
-
7
- ```
8
-
9
- 変数①tf.nn.tanh(out)
10
-
11
- #shape=(10000, 64, 64, 3)
5
+ GraphDef cannot be larger than 2GB.
12
6
 
13
7
 
14
8
 
15
- 変数②d_hidden1_weight_placeholder = tf.placeholder("float", [None, 64, 64, 3])
16
-
17
- 変数③d_hidden1_bias_placeholder = tf.placeholder("float", [3])
9
+ これは何を意味しているのでしょうか?解決策を教えていただけないでしょうか?
18
10
 
19
11
 
20
12
 
21
13
 
22
14
 
23
- tf.nn.relu(tf.matmul(tf.nn.tanh(out), d_hidden1_weight_placeholder) + d_hidden1_bias_placeholders)
24
15
 
25
16
 
26
17
 
27
- #エラーメッセージ
28
18
 
19
+
20
+
29
- Dimensions must be equal, but are 3 and 64 for 'MatMul_64' (op: 'BatchMatMul') with input shapes: [10000,64,64,3], [?,64,64,3].
21
+ 該当部分コード
30
22
 
31
23
  ```
24
+
25
+ # loss
26
+
27
+ d_loss_1, d_loss_2 = loss(d_output_from_given_data, d_output_from_noise_for_dtrain)
28
+
29
+ g_loss = tf.reduce_sum(tf.log(1 - d_output_from_noise_for_gtrain))
30
+
31
+
32
+
33
+
34
+
35
+ # training
36
+
37
+ d_train_step = tf.train.AdamOptimizer(learning_rate=0.0001, beta1=0.5).minimize(-(d_loss_1 + d_loss_2))
38
+
39
+ g_train_step = tf.train.AdamOptimizer(learning_rate=0.0001, beta1=0.5).minimize(g_loss)
40
+
41
+
42
+
43
+
44
+
45
+
46
+
47
+ sess=tf.Session()
48
+
49
+ sess.run(init)
50
+
51
+ num_steps = 512
52
+
53
+ for step in range(num_steps):
54
+
55
+ g_output_eval = sess.run(g_output, feed_dict = {g_input_placeholder: inputs})
56
+
57
+ sess.run(d_train_step, feed_dict = {
58
+
59
+ g_output_placeholder: g_output_eval,
60
+
61
+ d_given_data_placeholder: X_image})
62
+
63
+ sess.run(g_train_step, feed_dict = {g_input_placeholder: inputs})
64
+
65
+ if step % (num_steps / 8) == 0:
66
+
67
+ loss_1, loss_2 = sess.run([d_loss_1, d_loss_2], feed_dict = {
68
+
69
+ g_output_placeholder: g_output_eval,
70
+
71
+ g_input_placeholder: inputs,
72
+
73
+ d_given_data_placeholder: X_image})
74
+
75
+ print('step: %d, loss1: %f, loss2: %f'%(step, loss_1, loss_2))
76
+
77
+
78
+
79
+ ValueError: GraphDef cannot be larger than 2GB.
80
+
81
+
82
+
83
+ ```