Информационно-поисковые модели индексации и ранжирования
Я не могу думать о структуре, которая соответствует этому вопросу (а).
Я думал об идее размещения списка 100х100 +1 записей, которые содержат точные данные любого пикселя, но мне кажется, что это пустая идея.
И если бы я мог получить некоторую помощь в следующих вопросах (б, в), я не понимаю, как мне это нужно.
1 ответ
Я даю идею, которую вы можете попробовать.
Поскольку у нас есть как изображение, так и подписи к нему, моя идея состоит в том, чтобы извлекать информацию различного типа из изображения и сохранять ее в виде текста вместе с заголовком. Когда пользователь отправит текстовый запрос и / или изображение, нам нужно преобразовать их в поисковый запрос. Модель ранжирования означает, что вам нужно оценивать проиндексированные документы (изображение + подпись) на основе сходства и некоторого предварительно определенного балла (если есть).
С изображениями мы можем сделать несколько вещей: (см. Ссылку)
(1) Мы можем запустить изображение через процедуру распознавания символов, чтобы извлечь любые слова из обозначений, видимых на фотографии. (или прочитать текст изображения мема, например)
(2) Мы можем узнать любые известные достопримечательности. (и у нас есть сложные методы их распознавания под любым углом)
(3) Мы можем распознавать лица знаменитостей и известных людей или, если говорить о ваших личных фотографиях, проиндексированных в поиске фотографий Google, мы можем узнать вашу семью и друзей по другим фотографиям. Даже если у нас нет имен, мы можем обнаружить знакомых лиц и сгруппировать их вместе в индексе. Мы также можем распознать домашних животных.
(4) Мы можем распознавать объекты - транспортные средства, здания, виды животных.
Список потенциальных вещей, которые мы могли бы извлечь из фотографии и подписи к ней, довольно длинный и разнообразный, но некоторые очевидные вещи дают более качественные условия, чем другие. Все извлеченные функции не обязательно достаточно актуальны. Например, функции, извлеченные из заголовка, должны уделять больше внимания при вычислении оценки релевантности.
Точно так же чтение текста футболки, которое появляется на фотографии, не так полезно, как чтение дорожных знаков и вывесок магазинов, которые могут легко помочь нам определить местоположение.
Поэтому, когда мы ищем вещи для включения в индекс, мы формируем большой длинный список вещей, связанных с фотографией, а также некоторую информацию о нашей уверенности в том, что эти термины точно отражают содержание фотографии. Мы можем корректировать эти оценки с течением времени, определяя, сколько людей нажимают на изображение после поиска определенного термина. Если он получает много кликов, то, вероятно, разумно повысить оценку за этот термин. Если он никогда не будет нажат, по сравнению с другими фотографиями рядом с ним по результатам, мы можем понизить его.
Когда пользователь отправляет запрос и фотографию, мы должны запустить нашу политику извлечения объектов и преобразовать ее в поисковый запрос. Затем мы должны выяснить набор фотографий, которые имеют термины, которые соответствуют запросу. Затем мы должны ранжировать эти фотографии в соответствии с релевантностью, основываясь на оценках соответствующих терминов. Затем мы можем показать результат пользователю.
Извлечение функций из изображений и оценка релевантности вычислений на основе извлеченных функций - задача не из легких. Какой тип модели ранжирования даст вам хороший результат, во многом зависит от извлеченных функций (функции означают ключевые слова, связанные с изображениями) и от того, насколько точно ваша система может придать вес терминам, связанным с изображениями.
Как только вы можете преобразовать заголовок и / или изображения в текстовую информацию, вы можете использовать функции ранжирования, такие как Okapi BM25, которая используется поисковыми системами для ранжирования соответствующих документов в соответствии с их релевантностью для данного поискового запроса.