質問編集履歴
1
cos_similarityの中の処理を一部変更しました。結果自体は変わらないと思います。またA,Bをコメントアウトに記載のサイトをもとに一部変更しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -50,13 +50,16 @@
|
|
50
50
|
b = model(y)
|
51
51
|
|
52
52
|
# cos類似度を求める(epsは母数がゼロにならないようにするため)
|
53
|
+
# cos_similarityの中の処理を一部変更しました。結果自体は変わらないと思います。
|
53
54
|
def cos_similarity(a, b, eps=1e-8):
|
54
|
-
|
55
|
+
cos = np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b)) + eps
|
55
|
-
nb = b / (np.sqrt(np.sum(b**2)) + eps)
|
56
|
-
return
|
56
|
+
return cos
|
57
57
|
|
58
|
-
A = a[2][11].detach().numpy()
|
58
|
+
A = (a[2][11]).to('cpu').detach().numpy()
|
59
|
-
B = b[2][11].detach().numpy()
|
59
|
+
B = (b[2][11]).to('cpu').detach().numpy()
|
60
|
+
# https://tzmi.hatenablog.com/entry/2020/02/16/170928#pytorch-tensor%E3%81%8B%E3%82%89-numpy-ndarray%E3%81%B8%E5%A4%89%E6%8F%9B
|
61
|
+
# このサイトをもとに一部A,Bを修正しました
|
62
|
+
|
60
63
|
cos = cos_similarity(A, B)
|
61
64
|
print(cos)
|
62
65
|
|