Я пытаюсь создать поддельный классификатор новостей, и я довольно новичок в этой области. У меня есть столбец "title_1_en", в котором есть заголовок для поддельных новостей, а другой столбец называется "title_2_en". Есть 3 метки цели; «согласен», «не согласен» и «не связан», если заголовок новости в столбце «title_2_en» согласен, не согласен или не связан с заголовком в первом столбце.
Я попытался вычислить базовое косинусное сходство между двумя названиями после преобразования слов предложений в векторы. Это привело к оценке косинусного сходства, но это требует значительного улучшения, так как синонимы и семантические отношения вообще не рассматривались.
def L2(vector):
norm_value = np.linalg.norm(vector)
return norm_value
def Cosine(fr1, fr2):
cos = np.dot(fr1, fr2)/(L2(fr1)*L2(fr2))
return cos