回答編集履歴
2
typo
test
CHANGED
@@ -28,7 +28,7 @@
|
|
28
28
|
|
29
29
|
|
30
30
|
|
31
|
-
`ideal = 1000 * (1/(1+exp(sum-theta);`
|
31
|
+
`ideal = 1000 * (1/(1+exp(sum-theta)));`
|
32
32
|
|
33
33
|
|
34
34
|
|
1
追記
test
CHANGED
@@ -5,3 +5,35 @@
|
|
5
5
|
シグモイド関数についてはよく分かりませんが、単に0~1の間の単なる定数として使っているように見えます。
|
6
6
|
|
7
7
|
また、単純に試行回数が足りないだけと思います。モンテカルロ法で1000回の試行で3桁の精度を期待するのは無理なのでは? sumとthetaを入れ替えて結果が一致したのは単なる偶然かと。
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
---
|
12
|
+
|
13
|
+
【追記】
|
14
|
+
|
15
|
+
まだ「回答」を記載していなかったのですね。
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
前者のプログラムは下記ですね。
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
`理論値 = 1000 * (1/(1+exp(theta-sum)));`
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
「回答」のnet_inputは最初のプログラムのsumと同じですね。ということは下記になります。
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
`ideal = 1000 * (1/(1+exp(sum-theta);`
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
最初のプログラムはtheta-sum、「回答」のプログラムはsum-thetaになっていますので、「シグモイド関数内のthetaとsumを入れ替えると結果が合う」のは当然と思います。
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
なお、ここは「プログラミング」に関するQAサイトですので、もし、シグモイド関数に関する質問でしたら掲示板違いに当たると思います。たまたま知っている人がいれば回答あるかもしれませんが、あまり期待できないかと思います。
|