You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Apply degree normalization to property part of initial random vectors
A seemingly strange/buggy behavior was reported.
Somewhat simplified, it was expected that when
nodeSelfInfluence > 0 and propertyRatio is high (0.8),
that among (n1: {val: [0.1, 1.0]}), (n2: {val: [0.1, 1.0]}) and (n3: {val: [0.2, 1.0]},
it should "often" hold that SIM(emb(n1), emb(n2)) > SIM(emb(n1), emb(n3).
Whether this expectation is reasonable is out of the scope of this commit, but
to partly remedy this, something else was discovered and fixed:
The initial random vector is split into two segments corresponding to
embeddingDimension = baseEmbeddingDimension + propertyDimension.
The the first segment, entries were scaled by the degree of the node to the power of
`normalizationStrength`, however, the second segment of length propertyDimension was
not scaled by this scaling factor.
The current commit applies the scaling also to the second segment.
This removes the effect of reduced influence of entries in the second segment, that is
reduced node property influence, when normalizationStrength > 0 and deg(n) > 1.
0 commit comments