Блок-схема синтаксического анализатора поисковой системы

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

Это не должен быть Google.

Обновленный вопрос синтаксическому анализатору поисковой системы

6
задан forme 9 January 2010 в 05:24
поделиться

2 ответа

Сначала нужно лучше разобраться в поисковых системах. Обычно существует

1) веб гусеничный движок, который получает документы, которые вы хотите добавить в поисковое пространство. Обычно это полностью выходит за рамки того, что вы называете "поисковой системой".

2) парсер, который берет документ и разбивает его на индексируемые текстовые фрагменты. Если обычно работает с различными форматами файлов, человеческими языками и препроцессирует текст в некоторых фиксированных записях и потоковом тексте. Здесь также применяются лингвистические алгоритмы (например, стеммеры - поиск Porter Stemmer для получения простого).

3) Индексатор, который может быть простым, как перевернутый список слов на документ, или таким же сложным, как вы хотите, если вы попытаетесь быть таким же умным, как Google. Построение индекса - это действительно волшебная часть успешной поисковой системы. Обычно существует несколько алгоритмов ранжирования, которые собираются вместе.

4) Фронтенд с дополнительным языком запросов. Это то, где Google действительно плохо, но, как вы можете видеть на успех Google, он может быть не так важен для 98% людей. Но я очень скучаю по этому.

Я думаю, вы просите (3) индексатор. В основном есть 2 различных типа алгоритмов, которые вы найдете в классической литературе по поиску информации. Векторная модель пространства и Булевский поиск. Последнее простое, просто проверьте, есть ли слова поиска внутри документа, и верните булевое значение. Каждому поисковому термину может быть присвоена вероятность релеванца. А для различных поисковых терминов вы можете использовать Байесовскую вероятность, чтобы подвести итог релеванцу и добавить возвращаемые документы с наивысшим рейтингом. Векторная модель рассматривает документ как вектор всех его слов, вы можете построить скалярное векторное произведение между документами, чтобы судить, близки ли они друг другу - это гораздо более сложная теория. Отцом IR (информационный поиск) был Джеральд Салтон, под его именем вы найдете много литературы.

Таково было состояние ИК-искусства до 1999 года (я написал дипломную работу о поисковой системе юзенет-новостей в 1998 году). Потом пришел гугл и вся теория ушла в мусорный бак академической глупости и пратичного бездействия.

Google не был построен на основной теории ИК. Читайте в ссылке, которую Шриранган дал вам об этом. Это всего лишь рекламная функция relevanz, построенная на множестве различных источников. Вы не найдете ничего в этой области, кроме белой бумаги маркетинга blablabla. Эти алгоритмы являются бизнес-секретом и капиталом компаний, работающих в поисковых системах.

Для простых поисковых систем посмотрите на люцентную библиотеку или на dtsearch, который всегда был моим выбором для встраиваемой поисковой библиотеки.

В мире с открытым исходным кодом не так много примеров кода и доступной информации о ИК-технологиях. Большинство из них, как и lucense, просто реализуют самые примитивные операции. Чтобы получить доступ к научной литературе, нужно купить книги и пойти в университетскую библиотеку.

В качестве литературы я бы рекомендовал начать с этой книги ссылочный текст alt text http://ecx.images-amazon.com/images/I/41HKJYHTQDL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01_.jpg

6
ответ дан 16 December 2019 в 21:40
поделиться
[

][] Анатомия крупномасштабной гипертекстовой веб-поисковой машины [] Сергей Брин и Лоуренс Пейдж []http://infolab.stanford.edu/~backrub/google.html[][

]
2
ответ дан 16 December 2019 в 21:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: