Minha pergunta pode ser tola. Então, peço desculpas antecipadamente.
Eu estava tentando usar o modelo GLOVE pré-treinado pelo grupo da PNL de Stanford ( link ). No entanto, notei que meus resultados de similaridade mostraram alguns números negativos.
Isso imediatamente me levou a olhar para o arquivo de dados vetoriais de palavras. Aparentemente, os valores nos vetores de palavras foram negativos. Isso explicava por que vi semelhanças negativas no cosseno.
Estou acostumado ao conceito de similaridade de cosseno de vetores de frequência, cujos valores são delimitados em [0, 1]. Eu sei que o produto escalar e a função cosseno podem ser positivos ou negativos, dependendo do ângulo entre os vetores. Mas eu realmente tenho dificuldade em entender e interpretar essa similaridade negativa do cosseno.
Por exemplo, se eu tenho um par de palavras que dão similaridade de -0,1, elas são menos semelhantes que outro par cuja similaridade é 0,05? Que tal comparar semelhança de -0,9 a 0,8?
Ou devo apenas olhar para o valor absoluto da diferença mínima de ângulo de ? Valor absoluto das pontuações?
Muitíssimo obrigado.
An angular-type similarity coefficient between two vectors. It is like correlation, only without centering the vectors.
A única diferença entre os dois é que os desvios de correlação (momentos) - que estão sendo multiplicados cruzadamente - são da média, enquanto que os desvios de cosseno são do 0 original - ou seja, são os valores como são. .Respostas:
Deixe dois vectores de e , o ângulo é obtida pelo produto escalar e a norma dos vectores:a b θ
Como o valor de está no intervalo :cos(θ) [−1,1]
Exemplo : dois usuários e e a semelhança entre esses dois usuários de acordo com seu gosto por filmes:U1 U2 sim(U1,U2)
fonte
Não use os valores absolutos, pois o sinal negativo não é arbitrário. Para adquirir um valor de cosseno entre 0 e 1, você deve usar a seguinte função de cosseno:
(Código R)
(Código Python)
fonte
A semelhança de cossenos é como a correlação de Pearson, mas sem subtrair os meios. Portanto, você pode comparar a força relativa de 2 semelhanças de cosseno observando os valores absolutos, assim como você compararia os valores absolutos de 2 correlações de Pearson.
fonte
É certo que a semelhança de cosseno entre vetores de frequência não pode ser negativa, pois a contagem de palavras não pode ser negativa, mas com a incorporação de palavras (como luvas), você pode ter valores negativos.
Uma visão simplificada da construção de incorporação do Word é a seguinte: Você atribui cada palavra a um vetor aleatório em R ^ d. Em seguida, execute um otimizador que tente deslocar dois vetores semelhantes v1 e v2 um para o outro ou afaste dois vetores diferentes v3 e v4 (como em alguma distância, por exemplo, cosseno). Você executa essa otimização para iterações suficientes e, no final, possui incorporação de palavras com o único critério de que palavras semelhantes tenham vetores mais próximos e vetores diferentes estejam mais distantes. O resultado final pode deixar você com alguns valores de dimensão negativos e alguns pares com similaridade negativa de cosseno - simplesmente porque o processo de otimização não se importava com esse critério. Pode ter introduzido alguns vetores nos valores negativos. As dimensões dos vetores não correspondem à contagem de palavras,
fonte