Saya memiliki DataFrame dengan IDF dari kata-kata tertentu yang dihitung. Sebagai contoh
(10,[0,1,2,3,4,5],[0.413734499590671,0.4244680552337798,0.4761400657781007, 1.4004620708967006,0.37876590175292424,0.48374466516332])
.... and so on
Sekarang berikan pertanyaan Q, saya bisa menghitung TF-IDF dari permintaan ini. Bagaimana cara menghitung kesamaan cosinus dari kueri dengan semua dokumen dalam kerangka data (ada hampir sejuta dokumen)
Saya bisa melakukannya secara manual dalam pekerjaan mengurangi peta dengan menggunakan perkalian vektor
Kesamaan Cosine (Q, dokumen) = Dot product (Q, dodcument) / || Q || * || dokumen ||
tetapi tentunya Spark ML harus secara alami mendukung penghitungan kesamaan cosinus dari suatu teks?
Dengan kata lain diberi kueri pencarian bagaimana cara menemukan cosinus terdekat dari dokumen TF-IDF dari DataFrame?