spcua 2013 кожемякин-алексей
DESCRIPTION
SharePoint 2013 конференция Киев поиск Sharepoint SearchTRANSCRIPT
22 мая 2013, Киев
Успешные корпоративные поисковые порталы на основе SharePoint 2013
Алексей Кожемякин
22 мая 2013, Киев
Как сделать крутой поиск
Алексей Кожемякин
3
Обо мне
• Solution Architect @epam
• Focusing on search• Sharepoint Search FAST/2010/2013• Apache Lucene, Solr, elasticsearch,
Oracle Endeca…
• http://powersearching.wordpress.com
4
О чем будем говорить
• Корпоративный поисковый портал• Как «работает» поиск в SP2013• Ключевые изменения• Магия – расчет релевантности
• Полезные практики
5
Типичные сценарии поиска
• Я знаю что я ищу и я знаю где это найти
• Я знаю что я ищу, но НЕ знаю где это найти
• Я НЕ знаю что я ищу
http://aghy.hu/AghyBlog_EN/Lists/Posts/Post.aspx?ID=199
6
• Предпосылки:• Компания растет• Зоопарк из систем
• Решение: • поисковый портал, «маленький гугл»
• Быстрая бизнес польза от внедрения:• Единая точка поиска информации• Сокращение времени на поиск информации• Улучшение климата внутри компании
Поисковый портал
7
Но после внедрения…
• «Поиск плохо ищет»• Из коробки поиск ничего не знает про вас• «Но…• … Microsoft позаботились о хорошем алгоритме»• … мы не уверены что сделаем лучше»• ... нам не нужен поиск, у нас все знают что где лежит»• … сделайте нам как в Гугл\Бинг»
8
Почему это сложно
• Неоднозначные короткие запросы• Разнородный неоптимизированный контент• Разная терминология составителей и
потребителей контента• Ограниченность ресурсов, в то время как в
интернет-поисковиках• Ручное и автоматическое измерение качества
(асессоры)• Постоянное улучшение
9
Архитектура поиска в SP2013
10
Поиск - двухфазный процесс
• Матчинг – все документы с ключ.словами• Лингвистика: стемминг, фонетика• Синонимы
• Ранжирование• «Фичи»
• TF-IDF, BM25• Вес полей• Тип файла• Дата изменения• Популярность• …
11
Ранжирование в FAST
• Линейная комбинация фич
12
Ранжирование в FAST
• Вклад отдельных компонент в результат
1st 2nd 3rd 4th0
1000
2000
3000
4000
5000
6000
7000
8000
term:fast term:search freshness static rank proximity
13
Миграция FAST->SP2013
14
Ранжирование в SP2013
15
Ранжирование в SP2013
• Основная модель релевантности• Две последовательные нейронные сети• Дата документа не учитывается• Фичи Type Instance
BM25 BM25Static UrlDepthBucketedStatic InternalFileTypeBucketedStatic LanguageStatic ClickDistanceStatic QueryLogClicksStatic QueryLogSkipsStatic LastClicksStatic EventRateMinSpan - soft TitleMinSpan - soft TitleMinSpan - soft TitleMinSpan - soft Content
16
Ранжирование в SP2013
• Основная модель релевантности
17
Расшифровка релевантности
• /_layout/15/explainrank.aspx• rankdetail property
18
Расшифровка релевантности
• Ручная проверка в екселе
19
20
Успешные практики
1. Поисковая аналитика2. Тонкая настройка и адаптация3. Регулярное тестирование4. Анализ проблем с конфиденциальностью5. Популяризация6. Адаптация контента
21
1. Поисковая аналитика
• Поисковая аналитика
• Поисковая аналитика
• Поисковая аналитика
22
1. Поисковая аналитика
• Стандартно в SP2013• Наиболее популярные запросы• «Неудачные» запросы
• Сторонние системы (Google Analytics, Omniture, WebTrends)• Измерение качества поиска
• % кликов на результаты• на какие результаты• обратные переходы
• Анализ сессии• Сегментация запросов
23
Сегментация запросов
• Анализировать не только самые популярные, а классы запросов
24
2. Тонкая настройка
• Authoritative Pages• Быстрая выгода – приоритет источников контент
• Query Rules• Поиск становится умным в глазах пользователей
• Synonyms• Отдельный маппинг файл• Только экспансия• Синонимы термсетов не работают
• Модели релевантности
25
Authoritative Pages
• Влияет на ClickDistance• ClickDistance, UrlDepth имеют сильное влияние
на итоговую релевантность• Конфигурируются в CA, CSOM
26
Query Rules (Rule + Action)
• Основной инструмент имитации разума• Интерактивная реакция на запросы• Пост обработка запроса• Навигационные ключевые слова• …
27
Условия для Query Rules
• Query Matches Keyword Exactly• Advanced Query Text Match• Query Matches Dictionary Exactly
• Query Contains Action Term
• Query More Common in Source• Result Type Commonly Clicked
28
Действия для Query Rules
• Create and display a result block• Change ranked search results• Best Bets• XRANK
• Работает аддитивно• Не отображается в rankdetail• Правильный выбор веса?
29
Шаблоны для QueryRules
• Типичные комбинации из нашего портала• Software, soft, download, install• How to• Policy, Blog• Portal• Music, Video• Presentation, Documents, Report• Training, tutorial• Book, ebook
• У вас будут другие!
30
Custom Rank Models
• Сбор Query Judgments• Настройка коэффициентов нейронной сети
машинным обучением• Gradient Descent, Lambda Rank
• Microsoft.Office.Server.Search.RankerTuning
31
Custom Rank Models
• Модифицируйте простую модель сделанную руками• A/B тестирование весов• Измерение, метрики : Precision, NDCG
32
Custom Rank Models
• Пример – модель поиска людей
33
3. Тестирование поиска
• Зачем? Это компас.• «Юнит тестирование»• Ручное тестирование, периодически
34
4. Аудит «безопасности»
• Внедрение поиска выявляет проблемы с правами доступа • Security by obscurity
• Например:• «конфиденциально»• Зарплаты, подробности интервью
• Решение – автоматический мониторинг чувствительных запросов
35
5. Адаптация контента
• Работа с подразделениями• Помощь в мониторинге аналитики
• Гайдлайн по оформлению контента• Базовый SEO• Оформление заголовков• Оформление урлов• Мета тэги <meta name=…
• Title, description• Автоматически протянутся в crawled properties
36
6. Популяризация
• Имидж – «здесь найдется все»• Интеграция с другими системами• Поиск как сервис• Виджет «поискать во всех системах»
• Бэджи, гемификация
37
Популяризация
• Социальные Best-bets
38
Понимать естественный язык
• В общем виде задача не решается• Аналитика + кропотливая работа• см выше набор практик
• NLP – question answering• Rocket science• English only• Part of speech tagging, dependency parsing
• Stanford NLP, Open NLP, IR
39
«Литература»
• Patents - http://goo.gl/20sbR
• Explain Rank page - http://goo.gl/o3ZmN
• How SP2013 relevancy models works - http://goo.gl/arf0P
• MS Enterprise Search approach - http://goo.gl/x8SDO
• Customizing ranking models in SP 2013 - http://goo.gl/lBJAp
22 мая 2013, Киев
Спасибо за внимание
Skype: Alexey_KozhemiakinEmail: [email protected]: http://powersearching.wordpress.com
40