nlp és termékfejlesztés

26
NLP és termékfejlesztés VARJÚ ZOLTÁN, PRECOGNOX 2014.11.18. @ CEU MICRODATA

Upload: zoltan-varju

Post on 04-Jul-2015

774 views

Category:

Technology


0 download

DESCRIPTION

A CEU MicroData kutatócsoport ebédjén tartott előadásom diái.

TRANSCRIPT

Page 1: Nlp és termékfejlesztés

NLP és

termékfejlesztésVARJÚ ZOLTÁN, PRECOGNOX

2014.11.18. @ CEU MICRODATA

Page 2: Nlp és termékfejlesztés

Mi vár

ránk?

• Hírelemző

• Rapid prototyping

• Hogyan dolgozunk mi

• Python és NLTK

• Hogyan szeretnénk

majd dolgozni a

jövőben

Page 3: Nlp és termékfejlesztés

Hírelemző

Page 4: Nlp és termékfejlesztés

A projektről Belső projekt

Gyakornokok dolgoznak rajta (Kulcsár Ádám,

Fodor Mánuel)

Szakdolgozati téma és saját játszótér

(Automatikus) tartalomelemzés

Korpusznyelvészet (keywords, kollokációk,

konkordanicák, stb.)

R-index és nowcasting irodalom ihlette rendszer

Page 5: Nlp és termékfejlesztés

IhletGoogle Correlate

Page 6: Nlp és termékfejlesztés

Szemantika

Page 7: Nlp és termékfejlesztés

Célok Korpusznyelvészet == szógyakorisági vizsgálatok

Tartalomelemzés == szótárak használata

Szentiment- és emócióelemzés == szótárak használata

Predikció

Szemantikus technológiák

Faceted search

Semantic search

Szótárak automatikus kiegészítése

Page 8: Nlp és termékfejlesztés

Article Extractor boilerpipe

Page 9: Nlp és termékfejlesztés

OpenNLP

Page 10: Nlp és termékfejlesztés

UIMA

Page 11: Nlp és termékfejlesztés

Lucene/Solr

Page 12: Nlp és termékfejlesztés

Apache Stanbol

Page 13: Nlp és termékfejlesztés

Rapid prototyping

Page 14: Nlp és termékfejlesztés

Rapid

prototyping

• Gyorsan valami

használhatót

élesben

• A prototípus

maga a termék

nulladik verziója

Page 15: Nlp és termékfejlesztés

Miért?A csapat online kommunikál

Budapest, Kaposvár, Hódmezővásárhely,

Szikszó között nehéz megoldani a

folyamatos élő kapcsolatokat

„kézzel fogható” dologról beszéljünk

„olcsón” tudjunk hibázni

Page 16: Nlp és termékfejlesztés

Rapid prototyping és K+F

Prototípus ==

Specifikáció

Működő prototípus ==

tesztesetek a „rendes”

terméknek

Page 17: Nlp és termékfejlesztés

Hogyan dolgozunk?

1) Adatok

Áltlában Python segítségével hozzuk „emészthető” formára és/vagy gyűjtjük be

2) Felfedezés

Milyen módszerek jöhetnek szóba?

R és Python segítségével gyors próba, tipikus „spaghetti code”

3) Prototípus

Egy, vagy több működő módszer rendesebb implementálása

A lehető legtöbb általunk használt eszközzel szeretjük megépíteni

Page 18: Nlp és termékfejlesztés

Python és prototyping

Page 19: Nlp és termékfejlesztés

Miért Python? Futtatható pszeudo-kód

Könnyen megtanulják a kutatók, tudják olvasni a fejlesztők

Wraper-ek a legtöbb általunk használt eszközökhöz

(boilerpipe, Solr, Weka)

SciPy

scikit-learn

pandas

NLTK

Hy

Page 20: Nlp és termékfejlesztés

Toby SegaranProgramming Collective

Intelligence

Programming the Semantic

Web

Page 21: Nlp és termékfejlesztés

NLTK

Natural Language Toolkit

Minden benne van

Ingyenes könyv

Tanítási célra íródott

Jurafsky – Martin és

Manning – Schütze

érthető vele

Standard módon

alakítható igényeinkhez

Page 22: Nlp és termékfejlesztés

Még gyorsabban!

Page 23: Nlp és termékfejlesztés

A Java és a Python legjobb

része a VM!Főnevek helyett igék, OOP helyett

funkcionális programozás

Közelebb a probléma formális

leírásához

Konceptuálisan átláthatóbb

Párhuzamos és elosztott rendszereké

a jövő

Page 24: Nlp és termékfejlesztés

Clojure és Hy

Hy – Lisp dialektus a Python VM-re

Clojure – modern Lisp a JVM-re

Clojure Incanter – R stílusú, funkcionális statisztikai programozási környezet

Page 25: Nlp és termékfejlesztés

Funkcionális programozás – a

jövő

Egyszerűbb a kutatónak

Minimalizálja a prototípus és a kész termék

elkészítése közötti időt

Elmosódnak a prototípus és a termék határai,

szabadon alakíthatja a fejlesztő és a kutató

csapat

Minsky – Weeks: Caml trading – experiences with

functional programming on Wall Street

Page 26: Nlp és termékfejlesztés

Kérdés?

@zoltanvarju

@varjuzoli

[email protected]

http://kereses.blog.hu/