Материалы, подготовленные в результате оказания услуги, помогают разобраться в теме и собрать нужную информацию, но не заменяют готовое решение.
Подробнее о заявке
Дата заказа: 24.01.2014
Выполнено: 29.01.2014
Лабораторная работа по c/c++:

Реализация алгоритма индексирования документов и поиска по индексу вар. 1052881

Задание

Инвертированный индекс — структура данных, в которой для каждого слова коллекции документов в соответствующем списке перечислены все места в коллекции, в которых оно встретилось. Инвертированный индекс используется для поиска по текстам. Булев поиск опирается на использование инвертированного индекса ключевых слов, т. е. таблицы, в которой для каждого ключевого слова перечисляются все документы, где оно встречается. Главным достоинством этого алгоритма является возможность связывания слов запроса логическими операциями. К недостаткам этого алгоритма следует отнести невозможность определения релевантности запросу полученной выборки документов и, как следствие, невозможность ее сортировки. Опишем как решается задача нахождения документов в которых встречаются все слова из поискового запроса. При обработке однословного поискового запроса, ответ уже есть в инвертированном индексе — достаточно взять список соответствующий слову из запроса. При обработке многословного запроса берутся списки, соответствующие каждому из слов запроса и пересекаются. Пример. Пусть у нас есть корпус из трех текстов T0 = "it is what it is", T1 = "what is it" и T2 = "it is a banana", тогда инвертированный индекс будет выглядеть следующим образом: "a": {2} "banana": {2} "is": {0, 1, 2} "it": {0, 1, 2} "what": {0, 1} Здесь цифры обозначают номера текстов, в которых встретилось соответствующее слово. Тогда отработка поискового "what is it" запроса даст следующий результат {0,1}∩{0,1,2}∩{0,1,2}={0,1}. Таблицы индекса Для эффективной организации поиска документов необходимо задействовать несколько таблиц в базе данных. В самом простом случае используются следующие три. Таблица документов Documents. В ней хранится информация обо всех документах, проиндексированных системой, а именно название документа, его авторы, тип файла, путь к файлу/URL и т. д. При этом каждому документу необходимо присвоить уникальный идентификатор Doc_id. Таблица ключевых слов/словарь Words. Здесь хранятся все ключевые слова системы и соответствующие им номера Word_id. Инвертированный индекс Inverse, используемый для поиска. В этой таблице хранится идентификатор слова Word_id и соответствующий ему список документов, содержащих это слово. Эффективная организация словаря Одна из самых важных и трудных проблем индексации текстов связана с созданием и пополнением словаря ключевых слов. Главная сложность ее заключается в том, что для эффективной работы системы необходимо рассматривать только базовые словоформы ключевых слов.. Еще одна проблема индексирования связана с выявлением и удалением из текста так называемых стоп-слов. Они не несут смысловой нагрузки в текущей предметной области, и для эффективной работы системы их следует удалять при индексировании. Как правило, стоп-словами являются предлоги, союзы, артикли, вводные слова и т. п. Они очень часто встречаются в документах, но малоинформативны. Для их удаления можно либо использовать отдельный словарь стоп-слов, либо считать все слова с высокими частотами встречаемости в базе данных текстов стоп-словами и удалять их при индексировании. Ранжирование Обычно в поисковых системах после построения с помощью инвертированного индекса списка документов, содержащих слова из запроса, идет ранжирование документов из списка. Для каждого запроса необходимо вычислить значение Score документа – показатель релевантности документа запросу, на основании которого и производится ранжирование. Для расчета Score предлагается использовать аддитивную модель. В качестве слагаемых в данной модели предлагаются следующие: встречаемость слов из запроса в документе (Wsingle), встречаемость пар слов из запроса в документе (Wpair) и встречаемость текста запроса целиком (WPhrase). Помимо этого есть два слагаемых, дающих преимущество за наличие всех слов запроса в документе (WAl

Читать больше
Срок выполнения:
  • Бесплатные корректировки
  • Шпаргалки в подарок!
  • Предоплата всего 25%
от 2 дней
Похожие заявки по c/c++

Тип: Лабораторная работа

Предмет: C/C++

Разработка программу с использование win api

Стоимость: 4400 руб.

Тип: Лабораторная работа

Предмет: C/C++

Минимизировать булеву функцию

Стоимость: 1500 руб.

Тип: Лабораторная работа

Предмет: C/C++

код на С

Стоимость: 1428 руб.

Тип: Лабораторная работа

Предмет: C/C++

Лабораторная работ по дисциплине Структуры данных

Стоимость: 1140 руб.

Тип: Лабораторная работа

Предмет: C/C++

CLI C windows forms

Стоимость: 1176 руб.

Закажи Лабораторную работу с полным сопровождением до защиты!
Думаете, что скачать готовую работу — это хороший вариант? Лучше закажите уникальную и сдайте её с первого раза!

Отзывы студентов

Общий рейтинг
0.00 из 5 (0 голосов)
Наталья 13-10-2026
Спасибо огромное за помощь! Не первый раз к Вам обращаюсь и всегда всё на отлично!
Максим 13-10-2026
Хорошая работа. Руководитель похвалил
Анастасия 12-10-2026
Огромное спасибо за проделанную работу! Работу оценили на самую высокую оценку, в чем я и не сомневалась!
Марина 11-10-2026
Все понравилось, спасибо огромное. При любом вопросе отвечают сразу. Если вдруг, нужна помощь или нужно что-то скорек...
Константин 11-10-2026
Спасибо за работу! Продолжу сотрудничать с сервисом. Все понравилось.
Михаил 10-10-2026
Нет такого слова которое оценило все их великолепие. Спасибо
Надежда 09-10-2026
добрый вечер! работа оценена на отлично, спасибо автору, все выполнено раньше срока, без правок.
Мария 08-10-2026
Заказывала работы 3 раза все отлично сделано , буду пользоваться ещё )
Любовь 08-10-2026
Здравствуйте. Спасибо большое за разработку урока ,,Музыкальные портреты в кюях Даулеткерея Шигаева". Мне очень понра...
Татьяна 08-10-2026
Спасибо за работу. Очень выручили. Заказ выполнен в срок и в соответствии с заявленными требованиями
Лайфхаки по оформлению работ
Тезисы, план и конспект: чем различаются и что общего

Любая научная или творческая работа начинается с возникновения идеи. Чтобы ее развить и раскрыть, нужно написать план или тезисно обозначить основные моменты. Иногда необходимо сделать конспект источников. Мы расскажем, чем различаются план, тезисы и конспект и для каких задач их лучше использовать....

Читать дальше
Как вести читательский дневник: правила заполнения и оформления

Читательский дневник — не только тетрадка для учеников младшей школы, в которой они записывают содержание книги и впечатления от прочитанного. Такой дневник ведут студенты филологических факультетов и просто те, кто хочет, чтобы прочитанное лучше сохранилось в памяти. Мы расскажем, что можно написат...

Читать дальше

Предложение актуально на 16.10.2026