t_wの輪郭

Feedlyでフォローするボタン

あれ

2023/7/26 0:04:00

学習においては実はこれはいらんかった説がある。極小値で勾配出すやつで問題ないというか、計算量的にそこまでヘヴィでない可能性が高い。

つまるところ、下記のコードでいったんは事足りる。速度が欲しくなったら微分の計算をガチれば良い。

func dcos_sim_minimum(X []float64, Y []float64, t float64) []float64 {
	d := 1e-10
	outputs := []float64{}
	for i := range X {
		dX := make([]float64, len(X))
		copy(dX, X)
		dX[i] += d
		outputs = append(outputs, math.Pow(cos_sim(dX, Y)-t, 2)/d)
	}
	return outputs
}