Поисковая система "Яндекс"
Рассмотрение принципов поисковой системы и процедуры проведения поиска по запросам пользователей "Яндекса". Изучение структуры запросов, вспомогательных программ поиска, модулей и этапов их преобразования. Описание дополнительной информации в сниппете.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 27.12.2014 |
Размер файла | 135,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство образования и науки Российской Федерации
Федеральное государственное автономное образовательное учреждение высшего профессионального образования
Национальный исследовательский ядерный университет "МИФИ"
Факультет Кибернетики и информационной безопасности
Кафедра Финансового мониторинга
Реферат
Поисковая система "Яндекс"
Выполнил
студент группы Р01-75М
А.П. Шереметьев
Преподаватель Н.А. Евстифеева
Москва 2014
Содержание
Введение
Раздел I. Обработка запроса и архитектура ответа на вопрос
1.1 Архитектура ответа на вопрос
1.2 Определение языка
1.3 Морфология
1.4 Расширение запроса
1.5 Выделение объектов
1.6 Работа над ошибками
Раздел II. Результаты поиска
2.1 Формирование результатов поиска
2.2 Оформление результатов поиска
2.3 Дополнительная информация в сниппете
Заключение
Список использованной литературы
Введение
В наши дни наша жизнь настолько разнообразна и разносторонняя и мы не можем ее себе представить без интернета, при условии, даже если мы используем его на самом минимальном уровне (т.е. не уделяем время социальным сетям, не используем в работе и т.д.), наверняка каждый из нас задавался каким либо вопросом, на который можно получить ответ только после того, как пересмотришь ряд источников из той или иной области и проинспектируешь не один том энциклопедий. Но эта задача упрощается с появлением интернета, как проявлением научно-технического прогресса в нашей жизни. И одним из самых используемых ресурсов интернета являются поисковые системы, которые способствуют нахождению самой разнообразной информации, в соответствии с заданными запросами.
Темой моего реферата является поисковая система "Яндекс", принадлежащая российской компании ООО "Яндекс", предоставляющая наравне с услугой поиска ряд других сервисов и услуг. В теле реферата рассматриваются принципы поисковой системы и процедура проведения поиска по запросам пользователей "Яндекса".
Актуальна эта тема тем, что скорость развития сервисов, аналогичных Яндексу, очень велика, и они играют очень важную роль в нашей жизни и в нашем обществе. Необходимо донести важность развития, изменений и оптимизации систем работы Яндекса.
Задачей работы является рассмотрение Яндекса, как сложной системы поиска, и показать необходимость существования и использования сервисов компании, а также их постоянное совершенствование. Рассмотрение структуры запросов в Яндексе, вспомогательные программы принципы поиска, распределение задач, модули и этапы их преобразования с течением времени. Реферат состоит из введения, трех разделов, выводов и заключения.
Раздел I. Обработка запроса и архитектура ответа на вопрос
поиск яндекс информация программа
1.1 Архитектура ответа на запрос
Каждый день пользователи задают Яндексу десятки миллионов запросов, и поисковая система должна не только точно отвечать, но и быстро обрабатывать весь этот поток. Для этого Яндекс использует заранее подготовленные данные -- индекс. Безусловно, поиск с помощью индекса ускоряет процесс ответа пользователю, как, например, предметный указатель в книге помогает быстрее найти нужное слово. Но размеры самого "предметного указателя" в поиске -- огромны. Чтобы обрабатывать такие объемы данных и делать это быстро, Яндекс использует тысячи серверов. Сервера объединены в кластеры и даже в кластеры кластеров.
Все пользовательские запросы сначала попадают в компьютерную систему "метапоиск". Метапоиск обрабатывает каждый запрос в реальном времени -- выясняет все необходимые данные про запрос (из какого региона он был задан, к какому классу относится и т.п.), проводит лингвистическую обработку. Затем метапоиск проверяет, формировались ли в последнее время результаты поиска для этого запроса. Результаты поиска по часто задаваемым запросам некоторое время хранятся в памяти метапоиска, а не формируются каждый раз заново. И если вновь пришедший запрос оказался популярным, метапоиск покажет пользователю заранее сохраненные результаты.
Если же ответа в памяти нет, то метапоиск передаёт запрос на сервера другой компьютерной системы -- "базового поиска". На базовом поиске хранится слепок интернета, по которому ищет Яндекс, -- поисковая база. Она разбита на части, которые хранятся на разных серверах -- искать ответ одновременно по нескольким частям базы данных быстрее, чем по всей базе целиком. Кроме того, у каждого сервера есть несколько копий. Это позволяет распределять нагрузку и не терять данные -- если один из серверов не сможет своевременно ответить, информация всё равно найдется на дублирующих серверах. Из тысяч серверов базового поиска метапоиск выбирает наименее загруженные - таким образом, чтобы вместе они содержали целую поисковую базу.
Каждый из серверов отдаёт список документов, в которых есть слова из запроса, обратно в метапоиск. Там они объединяются, ранжируются с помощью технологии Матрикснет и попадают на страницу результатов поиска.
Благодаря такой организации поиск Яндекса может отвечать пользователю за доли секунды.
1.2 Определение языка
Каждый раз, когда пользователь вводит запрос в поисковую строку Яндекса, поисковая система проводит лингвистический анализ этого запроса. Система определяет язык на котором пишет пользователь и исправляет ошибки, проводит морфологический разбор каждого слова, находит синонимы и устойчивые сочетания и, в конечном счете, решает, документы с какими словами нужно искать. И всё - за доли секунды.
Анализ запроса начинается с определения языка. Например, слово "дружина" в русском языке означает "военная рать", а в украинском - "военная рать" и "жена". Чтобы понять, что имеет в виду пользователь, нужно выяснить, на каком языке он общается с поисковой системой. Для этого Яндекс смотрит, какой алфавит использует человек, какие в запросе есть характерные слова и сочетания букв.
Так, по запросу [дружина князя игоря] Яндекс будет искать информацию о войске, а по запросу [дружина князя iгоря] - еще и о жене полководца, княгине Ольге.
Кроме того, при определении языка поисковая система обращает внимание на регион пользователя и язык интерфейса. Например, если человек задает вопрос из Украины и использует интерфейс на украинском языке, это будет дополнительным фактором, чтобы посчитать запрос украиноязычным. Яндекс умеет работать с кириллическими запросами на русском, украинском, белорусском, казахском, татарском и башкирском языках.
1.3 Морфология
Определив язык запроса, Яндекс переходит к морфологии и определяет, к какой части речи относятся написанные слова.
Это позволяет находить документы, содержащие разные формы одних и тех же слов. Например, по запросу [стали для ножей] Яндекс будет искать документы, в которых есть не только это словосочетание, но и варианты: "сталь для ножа", "ножи сталь" и т.д. Анализируя запрос, Яндекс составляет список возможных словоформ для каждого слова.
По словоформе, которая есть в запросе, не всегда можно точно сказать, какое слово имел в виду человек. Например, в запросе [стали для ножей] слово "стали" - это не только существительное "сталь", но и глагол "стать". И в случае [стали для ножей] нужно искать формы существительного, а в случае [стали выпадать волосы что делать] - формы глагола.
Нужно избавиться от неоднозначности, снять омонимию - совпадение слов с разным лексическим значением.
Чтобы выбрать для поиска наиболее вероятный список форм, система проверяет - как часто слова из запроса встречаются вместе, для этого она обращается к собственной статистике.
Например, в морфологическом разборе по запросу [стали для ножей] система выберет для поиска слово "сталь".
Во-первых, по статистике слово "сталь" чаще встречается со словом "нож", чем "стать". А во-вторых, существительное в именительном падеже "сталь" часто сочетается с существительным в родительном падеже "ножей".
Для сбора статистики Яндекс использует Национальный корпус русского языка, где собрано огромное количество текстов в электронном виде.
1.4 Расширение запроса
После снятия омонимии поисковая система не будет искать слова, которые пользователь точно не имел в виду. Но если ограничить поиск только словами из запроса, в поле зрения поисковой системы не попадут многие нужные документы. Ведь для одного и того же понятия в разных текстах могут использоваться разные слова, например на одном сайте может стоять аббревиатура, а на другом - полное наименование.
Для того чтобы учесть все возможные варианты, Яндекс дополняет запрос, добавляя новые формулировки с тем же смыслом. Например, вместе со сложносокращенным [физтех] Яндекс будет искать и официальное "Московский физико-технический институт", а по запросу [установка скайп] - ещё и skype. Точно так же Яндекс добавляет в запрос разные написания чисел - "Пётр I" и "Пётр Первый", близкие по смыслу однокоренные слова, варианты написания и синонимы. Если в запросе есть "воронежский", система может добавить к нему однокоренное "воронеж", к [авто-сервис мицубиши] - "автосервис мицубиси", а к [ветерок] - похожее "бриз". Выбирая, какое слово добавить, а какое нет, Яндекс смотрит, как часто это слово встречается с другими словами в запросах пользователей и вообще в текстах. Однокоренные слова и синонимы система берет из собственных словарей, которые Яндекс составляет специально для таких случаев.
1.5 Выделение объектов
Анализируя запрос, поисковая система выделяет в нём различные объекты -- географические названия, имена людей, названия организаций и т.д. Например, если поисковая система поймет, что [Сергей Зубов] - это человек, она не будет дополнять запрос словоформой "зубным" или искать стоматологические клиники. А если в запросе [аптеки на парке культуры] система обнаружит, что "Парк культуры" -- это место, она учтёт это при ранжировании: в результатах поиска первые строчки займут документы, в которых слова "парк" и "культуры" идут подряд. Для выделения устойчивых фраз и объектов Яндекс тоже составляет различные словари: географических названий - топонимов, имен и фамилий, названий организаций и другие. Получив запрос, система каждый раз проверяет по словарям, есть ли в нём устойчивые словосочетания.
1.6 Работа над ошибками
По статистике Яндекса, около 12% запросов содержат ошибки. Это опечатки, орфографические ошибки или абракадабра, которая получается при неправильной раскладке клавиатуры. Если искать ровно то, что указано в поисковой строке, человек так и не получит нужный ему ответ - на большинстве сайтов слова написаны грамотно. Поэтому поисковая система проверяет запрос на грамотность.
Слова, в которых часто допускают ошибки - "агентство", "винегрет" или по которым нет хорошего ответа на вопрос, Яндекс сразу исправляет и показывает ответ на исправленный запрос. Разумеется, предупреждая пользователя, что запрос был исправлен.
В некоторых случаях сложно определить, ошибся пользователь или нет. Например, ресторан "фуджияма" очень похож на вулкан "фудзияма", а фамилия футболиста "Массад" на "Моссад", "массаж" и крепость "Массада". В таких случаях, показывая ответ на исходный вопрос, Яндекс спрашивает, не ошибся ли человек и не хочет ли он увидеть ответ на исправленный запрос. Есть ещё один вариант - когда система не уверена, опечатался человек или нет. Тогда она покажет на странице результатов поиска ответы сразу на два вопроса - на заданный, в котором предположительно есть опечатка, и на исправленный.
На работу с ошибками и весь лингвистический анализ уходят доли секунды. За это время система успевает определить язык запроса, разобрать каждое слово, найти синонимы и устойчивые сочетания и в конечном счете решить, документы с какими словами нужно искать.
Раздел II. Результаты поиска
2.1 Формирование результатов поиска
Страница результатов поиска -- это ответ Яндекса на вопрос, который пользователь задал в поисковой строке. Яндекс находит и показывает все подходящие ответы: колдунщики своих сервисов, контекстные объявления Яндекс.Директа, и, конечно, сами результаты поиска по интернету.
Результаты поиска по интернету -- это ссылки на найденные документы с краткой информацией о них. Информация подбирается так, чтобы помочь пользователю понять -- какой из ответов подходит ему лучше всего. Яндексу важно не просто показать релевантный ответ, но и описать его максимально информативно.
Для заголовка результата поиска Яндекс чаще всего использует заголовок самого документа. Если он слишком длинный, Яндекс выбирает фрагмент, который больше всего подходит по смыслу к заданному запросу.
Бывает, что у документа нет заголовка или заголовок не соответствует содержанию. Например, названия файлов в формате doc или pdf часто короткие и малоинформативные. В таких случаях Яндекс создаёт заголовок самостоятельно, основываясь на текстах ссылок на документ, заголовках в самом тексте документа и его содержании.
Для формирования описания страницы, которое помещается в сниппете, программа выбирает все фрагменты текста документа со словами из запроса. Каждый из таких фрагментов разбивается ещё на несколько частей -- например, со словами из запроса в начале, в конце и в середине. Затем программа сравнивает их все между собой и выбирает лучшие -- они и попадают в сниппет.
При выборе программа учитывает несколько десятков факторов. Некоторые из них повышают шансы попадания фрагмента в сниппет, а некоторые -- наоборот. Например, если слово содержится в длинном предложении, больше вероятность, что это часть повествования, а не навигационная ссылка. Это хороший фрагмент для сниппета. Также в сниппет скорее попадут фрагменты из разных частей текста -- так можно полнее описать содержание страницы. А вот фрагмент, схожий с заголовком текста страницы, вряд ли попадёт в сниппет -- чтобы не дублировать информацию.
Для каждого фактора компьютерная система рассчитывает коэффициент. С помощью машинного обучения система учится сама понимать значимость факторов, основываясь на данных от специалистов-асессоров (они просматривают некоторые наборы сниппетов, вручную разделяют их на хорошие и плохие и сообщают эти оценки системе). Затем компьютерная система уже без помощи людей строит формулу, по которой создает сниппеты.
2.2 Оформление результатов поиска
Результат поиска оформляется так, чтобы пользователю было легче его воспринимать. Заголовки выделены синим цветом и подчеркнуты -- так на веб-страницах традиционно выделяются ссылки. Узнать знакомый ресурс помогает фавиконка -- небольшой фирменный значок сайта -- слева от заголовка результата поиска. Если заголовок или текст описания содержит прописные буквы, Яндекс старается сделать их строчными -- так проще читать.
А чтобы было легче "зацепиться глазом", все слова из запроса в результатах поиска выделены жирным шрифтом. При этом Яндекс умеет сопоставлять аббревиатуры и их расшифровки, полные имена, сокращения и инициалы, числа и их текстовое написание. Например, по запросу [петр 1] Яндекс найдет документы, которые содержат и "Петр I", и "Петр первый", и выделит в сниппетах разные варианты написания имени.
Чтобы помочь пользователю быстрее понять содержание документа, Яндекс может выделить некоторые слова, которых нет в запросе. Это происходит при ответе на общие, многозначные запросы. Например, для запроса [снежная королева] в разных сниппетах будут дополнительно выделены слова "мультфильм", "сказка", "магазин". Дополнительные слова Яндекс узнаёт, анализируя переформулировки запросов. Специальная программа следит за тем, как пользователи уточняют свои запросы, и рассчитывает значимость таких уточнений. Затем эти знания используются при формировании сниппета.
2.3 Дополнительная информация в сниппете
Яндекс старается сделать так, чтобы пользователи могли быстро найти ответ -- иногда даже сразу на странице результатов поиска. Для разных ответов нужна разная дополнительная информация. Например, если человек задаёт в запросе название организации, возможно, ему нужно узнать, где она находится или как с ней связаться. Чтобы не пришлось тратить время на поиски страницы с контактами на сайте организации, Яндекс добавляет её телефон и физический адрес с ссылкой на карту в сниппет.
Если Яндексу известна структура сайта, он показывает её пользователю. Над текстом сниппета сайта появляются ссылки на его наиболее посещаемые страницы -- чтобы при желании пользователь мог перейти в нужный раздел, тратя меньше кликов и трафика. А адрес документа Яндекс преобразует в навигационную цепочку -- названия разделов и подразделов сайта, из которых состоит путь до документа.
Для некоторых предметных областей Яндекс создаёт специальные сниппеты. Например, для страниц с описаниями товаров или для сайтов гостиниц, ресторанов, кинотеатров. Основная информация появляется в сниппете -- цена товара, "звёздность" гостиницы, кухня ресторана, количество залов кинотеатра. Благодаря таким специальным сниппетам пользователь экономит время и трафик, а организация получает посетителя сайта, заинтересованного именно в её услугах.
Заключение
За помощью к системе "Яндекс" ежедневно обращается миллионы человек со всего мира, и отчасти никто не задумывается, как это все работает. Ведь все операции производятся за считанные доли секунд. В реферате рассмотрены основные поисковые технологии системы и показано, что для каждого поискового запроса применяется ряд отдельных, последовательных процедур, которые технически очень сложные. К тому же огромное количество серверов компании могут обеспечивать бесперебойное выполнение всех вышеуказанных процедур, обеспечивая удобные и комфортные условия своим пользователям. Также "Яндекс" обеспечивает своих пользователей удобной навигацией, что позволяет гораздо быстрее найти точный ответ на запрос. Показывая более посещаемые источники с более точной информацией, поисковая система обеспечивает экономию трафика своих пользователей.
Каждый день Яндекс отвечает на десятки миллионов запросов. Около четверти из них -- неповторяющиеся. Поэтому невозможно написать для поисковой системы такую программу, в которой предусмотрен каждый запрос, и для каждого запроса известен лучший ответ. Поисковая система должна уметь принимать решения самостоятельно, то есть -- сама выбирать из миллионов документов тот, который лучше всего отвечает пользователю. Для этого нужно научить ее обучаться.
В связи с постоянным и непрерывным развитием комплекса предоставляемых услуг и сервисов "Яндекс" находится на первом месте среди пользователей рунета. Поисковая система компании является самой популярной в России. Также одна из систем Яндекса предлагает самим пользователям улучшить поисковую систему с помощью сервиса Яндекс.Вэбмастер.
То есть в итоге имеет место утверждение, что, не смотря на то, что для большинства людей - пользователей Яндекса, это всего лишь "поисковик", нужно понимать, что это сложный технический комплекс, который непрерыввно развивается и один запрос - это целый механизм устройства, которое не прекращает свою работу.
Список использованной литературы
1. https://company.yandex.ru/technologies/search/
2. http://www.yandex.ru
3. https://company.yandex.ru/about/history/
4. http://ru.wikipedia.org/wiki/Яндекс
5. http://www.seoded.ru/istoriya/internet-history/istoriya-yandeksa.html
6. https://tech.yandex.ru
7. http://company.yandex.ru/technologies/crypta/
8. https://academy.yandex.ru/events/kit/
Размещено на Allbest.ru
Подобные документы
Система поиска в сети и интернет-портал "Яндекс". Образование компании "Яндекс" в 2000 году, ее выход на самоокупаемость в 2002 году. Основное и приоритетное направление компании - разработка поискового механизма. Порядок введения запроса, его диапазон.
презентация [211,7 K], добавлен 03.02.2011Рассмотрение и анализ моделей и алгоритмов семантического поиска в мультиагентной системе поддержки пользователей. Ознакомление с интерфейсом чата с ботом. Изучение и характеристика экспериментальных оценок релевантности и пертинентности запросов.
дипломная работа [3,0 M], добавлен 13.10.2017Яндекс как крупнейшая российская поисковая система и интернет-портал, история появления. Поиск системы: охват форматов, язык запросов. Мультимедийно-поисковые, рыночно-поисковые, справочно-информационные, рекламные и персонализированные веб-сервисы.
курсовая работа [105,3 K], добавлен 21.05.2013Понятие и принципы работы, внутренняя структура и элементы, история формирования и развития поисковой системы "Rambler". Исследование и анализ, а также оценка эффективности данной поисковой системы для поиска экономической информации в интернете.
курсовая работа [4,0 M], добавлен 10.05.2015Анализ автоматизированных информационных технологий, применяемых в экономике. Особенности экономической информационной системы, предназначенной для поиска, хранения и выдачи информации по запросам пользователей. Поиск информации с помощью баз данных.
курс лекций [1,4 M], добавлен 27.01.2010Информационная поисковая система Яндекс; характеристика услуг и сервисов портала: каталог, новости, города, энциклопедии. Полезные ссылки главной страницы. Формирование и активизация поискового запроса: морфология, контекст, порядок слов, результат.
презентация [2,6 M], добавлен 10.03.2015Обеспечение высокой релевантности поиска с помощью поисковой системы Google. Быстрота и надежность работы, большее количество ссылок в русскоязычном секторе Интернета. Службы, отсутствующие у других поисковых систем. Google как законодатель моды.
презентация [1,5 M], добавлен 10.03.2015Анализ существующих поисковых систем и используемых ими алгоритмов поиска документов. Разработка информационно-поисковой системы словарного типа, способной осуществлять релевантный поиск документов, особенности ее структуры и информационно-поисковой базы.
дипломная работа [942,1 K], добавлен 19.05.2011Основные методы объектно-ориентированного программирования поисковой системы. Выбор языка программирования и среды разработки приложения. Реализация паттерна, использование принципа сохраняемости. Описание пользовательского интерфейса поисковой системы.
курсовая работа [781,4 K], добавлен 29.04.2015Разработка web-приложения для оперирования данными с помощью базы данных и web-браузера в качестве клиента пользователя. Основные преимущества языка программирования Java. Осуществление редактирования, добавления информации и поиска по архивам данных.
дипломная работа [2,1 M], добавлен 30.09.2016