質問編集履歴
1
重たい処理「tensorflowのModel定義とCompile」を記載しました
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
VuexのStateデータをGettersで取得し、親VueのHTMLに表示させています。
|
2
2
|
複数の子Vueで変更して表示させるために、VuexのStateを変更すれば、親Vueの表示文字が変更されるようにしています。
|
3
|
-
親Vueでは、
|
3
|
+
親Vueでは、VuexのGetters関数をそのまま、{{ getMessage }}と記載し表示しています。
|
4
4
|
|
5
|
-
ただ、子Vueで
|
5
|
+
ただ、子Vueで「tensorflowのModel定義とCompile」を実施させると、該当処理が終わるまで数秒も親Vueの表示が変更されません。
|
6
6
|
StoreでConsole.logを見るとStateのデータはすぐに変更されているように表示されますが、親VueでStateの変更が即時反映されずにGetters関数が働いていないように見えています。
|
7
7
|
|
8
8
|
親VueでVuexのState変更を即事Gettersで認識できる方法をご教授をお願いします。
|
@@ -57,4 +57,29 @@
|
|
57
57
|
}
|
58
58
|
}
|
59
59
|
</script>
|
60
|
+
```
|
61
|
+
|
62
|
+
tensorflowのModel定義とCompile
|
63
|
+
```ここに言語を入力
|
64
|
+
const model = tf.sequential()
|
65
|
+
model.add(tf.layers.conv2d({
|
66
|
+
inputShape: [this.height, this.width, 3],
|
67
|
+
kernelSize: 3,
|
68
|
+
filters: 32,
|
69
|
+
activation: 'relu'
|
70
|
+
}))
|
71
|
+
model.add(tf.layers.conv2d({kernelSize: 3, filters: 64, activation: 'relu'}))
|
72
|
+
model.add(tf.layers.maxPooling2d({poolSize: 2, strides: 2}))
|
73
|
+
model.add(tf.layers.dropout(0.25))
|
74
|
+
model.add(tf.layers.flatten())
|
75
|
+
model.add(tf.layers.dense({units: 128, activation: 'relu'}))
|
76
|
+
model.add(tf.layers.dropout(0.5))
|
77
|
+
model.add(tf.layers.dense({units: this.output_classes, activation: 'softmax'}))
|
78
|
+
const optimizer = tf.train.adadelta()
|
79
|
+
model.compile({
|
80
|
+
optimizer: optimizer,
|
81
|
+
loss: 'categoricalCrossentropy',
|
82
|
+
metrics: ['accuracy']
|
83
|
+
})
|
84
|
+
return model
|
60
85
|
```
|