integrating advanced text analytics into solr - by steve kearns

22
Steve Kearns Product Manager www.basistech.com Integrating Advanced Text Analytics into Solr Lucene Revolution

Upload: lucenerevolution

Post on 13-Jul-2015

421 views

Category:

Technology


2 download

TRANSCRIPT

Steve Kearns

Product Manager

www.basistech.com

Integrating Advanced Text Analytics into Solr

Lucene Revolution

Agenda

• About Basis Technology

• Why Text Analytics and Solr?

• Overview and Uses of Text Analytics

• Integration Strategies

About Basis Technology

• HQ in Cambridge, MA, Offices in:

Tokyo, San Francisco, Washington DC

• Specialists in multilingual text analytics for

Web/enterprise search

Document/OSINT/media exploitation

• Rosette Linguistics Platform is widely used by

commercial enterprises and government

agencies

Why Text Analytics and Solr?

• More than Keyword Search and Result Lists

• More Metadata

New ways to visualize, navigate and explore

New knobs to tune relevance

New info to connect disparate data sources

• Solr can be the consumer, host, or broker

Overview of Text Analytics

• Document-Level

Language Identification, Categorization

• Sub-Document Level

Entity Extraction, Fact Extraction, Sentiment, Linguistics

• Cross-Document

Cross-Document Entity Resolution, Near Duplicate Detection, Unsupervised Clustering

Document Level Analysis: Language Identification

• Sub-document Lang ID is possible

La Grande-Bretagne a

de son côté jugé que

l'accord de Luxembourg

constituait un véritable

changement dans la

stratégie agricole de

l'Europe, tandis que

l'Irlande y a vu un gage

de stabilité et et de

sécurité pour les

agriculteurs.

Le président nigérian

Olusegun Obasanjo a

salué cette

l'engagement du G8,

déclarant que "la

condition majeure au

développement est

l'absence de conflit". La

porte-parole de la

présidence française,

Catherine Colonna, a

pour sa part qualifié la

réunion

d'"exceptionnelle".

Американская

софтверная компания

становится

пользующимся

спросом у спецслужб

США экспертом в

области лингвистики

(в частности, изучения

и обработки

информации на

арабском языке) после

терактов 11 сентября

2001 г.

В данный момент

правительство США,

обвиняющее

радикальную

мусульманскую

группировку "Аль

Каида" в терактах 2

года назад,

активизирует свое

внимание к арабскому

языку и программам

его обработки.

Грамматика языков

данной группы

「端末側で行単位に(あるいは一画面分)編集しておいて、

送信キーによりまとめて送信する」という方式と、

「端末には知能はなく、一字一字すべてがその都度送られ処理される」

という方式は、究極的に前者は半二重通信、後者は全二重通信とフィットします。

後者では、入力のエコーもコンピュータ側で制御されます。

つまり、入力した字の表示はキー入力がコンピュータに送られ、それが送り返されて表示されます。

FNPがコンピュータと端末の間に

あって、実際の端末とのやりとりを制御するのです。そして、コンピュータとFNPの間の通信は、

少量の転送には不向きで、大量の一括転送に向いていました。FNPによるコンピュータへの割り

込み要求は高価なものだったからです。Multicsでのプロセスのwake upも高価だということもありました。

私ごとになりますが、ちょうどこのころ大学院生でしたが、ACOS-6

用のある言語処理系の開発を請け負って作っていました。ACOS-6

はMulticsの概念に非常に近いものを持っていました、あるいは持とうとしていました。

また、ハードウェアも大変似ていました。シールをはがすと、

その下から別のアメリカの会社の名前が出てくるマシンでテスト

したこともありました。1年間ほとんど休みなしにマシンルーム

にこもっていて、ここでの議論と疑問を自分のテーマとしても扱ったことがあるのです。それで、よーくわかるのです。

Программное

обеспечение Basis

Technology позволяет

осуществлять поиск слов

с близкими значениями, а

также транслитерировать

арабские и фарси-буквы в

латинские. Продукт был

разработан по

специальному заказу

правительства США с

целью оптимизации

процесса анализа

арабских текстов.

La Grande-Bretagne

a de son côté jugé

que l'accord de

Luxembourg

constituait un

véritable

changement dans la

stratégie

Après avoir rencontré

les présidents de

quatre des cinq pays

africains (Afrique du

Sud, Algérie,

Sénégal, Nigeria)

membres du comité

de pilotage du

Le président nigérian

Olusegun Obasanjo a

salué cette

l'engagement du G8,

déclarant que "la

condition majeure au

développement est

French

Программное

обеспечение Basis

Technology позволяет

осуществлять поиск

слов с близкими

значениями, а также

транслитерировать

Американская

софтверная

компания

становится

пользующимся

спросом у

спецслужб США

экспертом в области

В данный момент

правительство США,

обвиняющее

радикальную

мусульманскую

группировку "Аль

Каида" в терактах 2

Russian

「端末側で行単位に(あるいは一画面分)編集しておいて、送信キーによりまとめて送信する」という方式と、「端末には知能はなく、一字一字すべてがその都度送られ処理される」

「端末側で行単位に(あるいは一画面分)編集しておいて、送信キーによりまとめて送信する」という方式と、「端末には知能はなく、一字一字すべてがその都度送られ処理される」

FNPがコンピュータと端末の間にあって、実際の端末とのやりとりを制御するのです。そして、コンピュータとFNPの間の通信は、少量の転送には不向きで、大量の一括転送に向いていまし

Japanese

Bild vergrößern

Berlin (AP) Der Kanzler

strahlte: «Ich gestehe, dass

ich 90 Prozent Zustimmung

EVIAN (AP) - Les membres du

G8 se sont engagés dimanche

soir à soutenir la

これはファンドマネージャー

さんが嘘をついているという

わけではありません。計算

ilHaaqa-n bikitaabinaa s-

sirriyyi r-raqiimi fii yurjae

ittikhaadha maa yulzamu

German

29%

French

33%

Japanese

21%

Arabic

17%

Document Level Analysis: Categorization

• Group Documents into Pre-defined categories

http://news.google.com/

http://www.bbc.co.uk/

Sub-Document Analysis: Linguistics

• Segmentation of Asian language

• Lemmatization

N-Gram

Morphological

Segmentation

Stemming

Lemmatization

Sub-Document Analysis: Sentiment

• Sentence, paragraph, entity, aspect, emotion

http://twittersentiment.appspot.com/search?query=Lucene

http://maps.google.com/maps/place?cid=7410753351872099397

Sub-Document Analysis: Entity Extraction

• Identify Named Concepts in Unstructured Text

Statistical, rules, lists

http://www.twitscoop.com/

Sub-Document: Fact / Rel. / Event Extraction

• Identify Facts, Link Entities, Events and Times

http://www.silobreaker.com/FlashNetwork.aspx?DrillDownItems=11_237360

Cross-Document: Entity Co-reference Resolution

• Map extracted entities to real-world Concepts

Cross-Document Analysis: Clustering

• Near Duplicate Detection

• Unsupervised Clustering

Integration Strategies

• Analyzer/Tokenizer/TokenFilter

• UpdateRequestProcessor

Run Analysis in Solr

Call External Analysis Service

• Pre-Processor to Solr

Integration Point: Analyzer/Tokenizer

• Good for:

Linguistics

Segmentation of Asian Language

• Limitations:

No access to document object

Analyzer/Tokenizer Configuration

• Schema.xml

FieldType

• Analyzer

– CharFilter

– Tokenize

– TokenFilter

Integration Point: UpdateRequestProcessor

• Runs Before Analyzers

• Full Access to Document

• Two options:

Run the analysis directly in Solr

Call out to external analysis services

• Limitations:

Think through your indexing strategy

Integration Point: UpdateRequestProcessor

• Run the analysis directly in Solr

Good for light weight analytics

Not good for cross-document analytics

• Call out to external analysis services

Web Services, UIMA, OpenPipeline, GATE, custom code

Note that these external calls are synchronous

Additional complexity / points of failure

UpdateRequestProcessor Configuration

• SolrConfig.xml

RequestHandler

• update.processor = UpdateRequestProcessorChain.name

UpdateRequestProcessorChain

• Processors

Integration Point: Pre-Processor

• Index in Solr as Last Step of Analysis

• Good For:

Finer-grained control

Managing dependencies between components

Scalability

• Limitations:

Complexity / New points of failure

Cannot use Solr’s content acquisition features

Integration Summary

• There are Many Options!

• Document-Level Analysis:

Generally, safe to run in UpdateRequestProcessor

• Sub-Document Analysis:

Sometimes run in UpdateRequestProcessor, sometimes external

• Cross-Document Analysis:

Run external

• Multiple-Analysis Components:

Run external document processing pipeline

Questions?