Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да изградим двигател за „свързани въпроси“?

Ако искате сами да изградите нещо подобно от нулата, бихте използвали нещо, наречено TF/IDF:честота на термините / инверсна честота на документа. Това означава, че за да го опростите значително, намирате думи в заявката, които са необичайни в корпуса като цяло, и намирате документи, които съдържат тези думи.

С други думи, ако някой въведе заявка с думите „Искам да купя слон“ в нея, тогава от думите в заявката думата „слон“ е може би най-рядко срещаната дума във вашия корпус. "Купете" вероятно е следващата. Така че класирате документите (във вашия случай предишните заявки) по това колко съдържат думата „слон“ и след това колко съдържат думата „купувам“. Думите "I", "to" и "an" вероятно са в списък за спиране, така че вие ​​ги игнорирате напълно. Класирате всеки документ (предишна заявка, във вашия случай) по колко съвпадащи думи има (претегляне според обратната честота на документа – т.е. голямо тегло за необичайни думи) и показвате първите няколко.

Опростих твърде много и ще трябва да прочетете това, за да го разберете правилно, но наистина не е много сложно за прилагане по прост начин. Страницата в Уикипедия може да е добро място за начало:

http://en.wikipedia.org/wiki/Tf%E2%80 %93idf



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Защо password_verify връща false?

  2. Кога да изберете Oracle пред MySQL?

  3. Заявка за актуализиране на MySQL с ляво присъединяване и групиране по

  4. MySQL изберете къде е равно на множество стойности

  5. Как да синхронизирам Mysql с Bigquery в реално време?