Tf-Idf, использующий косинусное сходство для сходства документов почти аналогичного предложения

Я использую tf-idf с косинусным сходством для вычисления сходства описания (предложения)

Строка ввода:

    3/4x1/2x3/4 blk mi tee

Ниже приведены предложения, среди которых мне нужно найти предложение, похожее на строку ввода.

      smith-cooper® 33rt1 reducing pipe tee 3/4 x 1/2 x 3/4 in npt 150 lb malleable iron black
      smith-cooper® 33rt1 reducing pipe tee 1 x 1/2 x 3/4 in npt 150 lb malleable iron black
      smith-cooper® 33rt1 reducing pipe tee 1-1/4 x 1 x 3/4 in npt 150 lb malleable iron black 
      smith-cooper® 33rt1 reducing pipe tee 1-1/2 x 3/4 x 1-1/2 in npt 150 lb malleable iron black
      smith-cooper® 33rt1 reducing pipe tee 1-1/2 x 1-1/4 x 1 in npt 150 lb malleable iron black 
      smith-cooper® 33rt1 reducing pipe tee 2 x 2 x 3/4 in npt 150 lb malleable iron black 
      smith-cooper® 33rt1 reducing pipe tee 2 x 1-1/2 x 1-1/4 in npt 150 lb malleable iron black
      smith-cooper® 33rt1 reducing pipe tee 2-1/2 x 2 x 2 in npt 150 lb malleable iron black
      smith-cooper® 33rt1 reducing pipe tee 3 x 3 x 2 in npt 150 lb malleable iron black

Поскольку предложения почти одинаковы, я использую подход tf-idf, который дает низкий балл для слов, которые появляются во всем документе ( Idf), и дает больший балл уникальным словам, что помогает легче найти похожий документ.

Есть ли подход, который работает лучше, чем этот?

1 ответ

Конечно, есть и другие подходы, такие как скрытый семантический анализ, но то, что будет работать лучше всего, полностью зависит от ваших данных / корпуса. По моему опыту, TF-IDF является хорошей отправной точкой. Более сложные подходы могут не соответствовать TF-IDF или обеспечить незначительное улучшение по сравнению с их сложностью.

Что-то, с чем можно поэкспериментировать с использованием TF-IDF, - это n-граммы разных размеров и другие стратегии предварительной обработки для вашего корпуса. Учитывая ваш пример, вы можете не хотеть токенизировать свои слова на основе разбиения границ слов; может быть, вы хотите рассмотреть некоторые из этих компонентов предложения как один термин, например 3/4 x 1/2 x 3/4 как один термин. Сначала я бы поэкспериментировал с n-граммами разных размеров.

В вашем примере предложения идентичны, за исключением измерений / размеров. Если этот образец является репрезентативным, вы можете подумать, как измерить расстояния между этими измерениями.

Другие вопросы по тегам