Estou apenas trabalhando com o livro Inteligência Coletiva (de Toby Segaran) e me deparei com a pontuação da distância euclidiana. No livro, o autor mostra como calcular a semelhança entre duas matrizes de recomendação (ou seja, .
Ele calcula a distância euclidiana para duas pessoas e p 2 por d ( p 1 , p 2 ) = √
Isso faz completamente sentido para mim. O que eu realmente não entendo é por que ele calcula no final o seguinte para obter uma "semelhança baseada na distância":
Então, de alguma forma, entendo que essa deve ser a conversão de uma distância para uma semelhança (certo?). Mas por que o formulário se parece com isso? Alguém pode explicar isso?
distance-functions
similarities
navige
fonte
fonte
Respostas:
O inverso é mudar de distância para semelhança.
O 1 no denominador é para que o valor máximo seja 1 (se a distância for 0).
A raiz quadrada - não tenho certeza. Se a distância é geralmente maior que 1, a raiz tornará grandes distâncias menos importantes; se a distância for menor que 1, as distâncias maiores serão mais importantes.
fonte
Para medir a distância e a semelhança (no sentido semântico), a primeira coisa a verificar é se você está se movendo em um espaço euclidiano ou não. Uma maneira empírica de verificar isso é estimar a distância de um par de valores para o qual você conhece o significado.
fonte
Como você mencionou, você conhece o cálculo da distância de Euclidence, por isso estou explicando a segunda fórmula.
A fórmula euclidiana calcula a distância, que será menor para pessoas ou itens mais semelhantes. Por exemplo, se são iguais, a distância é 0 e, totalmente diferente, é maior que 0.
No entanto, precisamos de uma função que dê um valor mais alto, pois são semelhantes. Isso pode ser feito adicionando 1 à função (para que você não obtenha um erro de divisão por zero) e invertendo-o. Como se a distância 0 e a pontuação de similaridade 1/1 = 1
fonte