From 6e282546de63c731d8761f64a68ecbffb7d087d0 Mon Sep 17 00:00:00 2001 From: Alice BRENON <alice.brenon@ens-lyon.fr> Date: Thu, 25 Jul 2024 22:40:24 +0200 Subject: [PATCH] Add a function to the LexicalSimilarities to compute the projection of a vector on the subspace it shares with another vector (useful to explain how keysIntersection can be lower than colinearity) --- GEODE/Visualisation/LexicalSimilarities.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/GEODE/Visualisation/LexicalSimilarities.py b/GEODE/Visualisation/LexicalSimilarities.py index ed7ba84..8f60903 100644 --- a/GEODE/Visualisation/LexicalSimilarities.py +++ b/GEODE/Visualisation/LexicalSimilarities.py @@ -10,6 +10,10 @@ def keysIntersection(d1, d2): def scalarProduct(d1, d2): return sum([d1[k] * d2[k] for k in set(d1.keys()).intersection(d2)]) +def commonProjection(d1, d2): + s2 = set(d2) + return {k: v for k, v in d1.items() if k in s2} + def norm(d): return math.sqrt(scalarProduct(d, d)) -- GitLab