質問編集履歴
1
重たい処理「tensorflowのModel定義とCompile」を記載しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
|
3
3
|
複数の子Vueで変更して表示させるために、VuexのStateを変更すれば、親Vueの表示文字が変更されるようにしています。
|
4
4
|
|
5
|
-
親Vueでは、
|
5
|
+
親Vueでは、VuexのGetters関数をそのまま、{{ getMessage }}と記載し表示しています。
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
ただ、子Vueで
|
9
|
+
ただ、子Vueで「tensorflowのModel定義とCompile」を実施させると、該当処理が終わるまで数秒も親Vueの表示が変更されません。
|
10
10
|
|
11
11
|
StoreでConsole.logを見るとStateのデータはすぐに変更されているように表示されますが、親VueでStateの変更が即時反映されずにGetters関数が働いていないように見えています。
|
12
12
|
|
@@ -117,3 +117,53 @@
|
|
117
117
|
</script>
|
118
118
|
|
119
119
|
```
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
tensorflowのModel定義とCompile
|
124
|
+
|
125
|
+
```ここに言語を入力
|
126
|
+
|
127
|
+
const model = tf.sequential()
|
128
|
+
|
129
|
+
model.add(tf.layers.conv2d({
|
130
|
+
|
131
|
+
inputShape: [this.height, this.width, 3],
|
132
|
+
|
133
|
+
kernelSize: 3,
|
134
|
+
|
135
|
+
filters: 32,
|
136
|
+
|
137
|
+
activation: 'relu'
|
138
|
+
|
139
|
+
}))
|
140
|
+
|
141
|
+
model.add(tf.layers.conv2d({kernelSize: 3, filters: 64, activation: 'relu'}))
|
142
|
+
|
143
|
+
model.add(tf.layers.maxPooling2d({poolSize: 2, strides: 2}))
|
144
|
+
|
145
|
+
model.add(tf.layers.dropout(0.25))
|
146
|
+
|
147
|
+
model.add(tf.layers.flatten())
|
148
|
+
|
149
|
+
model.add(tf.layers.dense({units: 128, activation: 'relu'}))
|
150
|
+
|
151
|
+
model.add(tf.layers.dropout(0.5))
|
152
|
+
|
153
|
+
model.add(tf.layers.dense({units: this.output_classes, activation: 'softmax'}))
|
154
|
+
|
155
|
+
const optimizer = tf.train.adadelta()
|
156
|
+
|
157
|
+
model.compile({
|
158
|
+
|
159
|
+
optimizer: optimizer,
|
160
|
+
|
161
|
+
loss: 'categoricalCrossentropy',
|
162
|
+
|
163
|
+
metrics: ['accuracy']
|
164
|
+
|
165
|
+
})
|
166
|
+
|
167
|
+
return model
|
168
|
+
|
169
|
+
```
|