2012. december 21.

Egy kis kategóriaelmélet

Egy ideje pár barátommal kategóriaelmélettel foglalkozunk hobbiból. Az elmúlt hetek során pár nagyon jó forrást ismertem meg, ezek úgy gondolom az olvasók számára sem haszontalanok.


Dominic Verity előadása remek áttekintést nyújt, különösen Haskell programozóknak ajánlom.

Ez a kötet egy igazi gyöngyszem! Kb józan paraszti ésszel és némi középiskolai matekkal felvértezve bárki elsajátíthatja belőle a kategóriaelmélet alapjait.

Awodey könyve ma a standard tankönyv filozófus és nyelvész körökben, de a matematikusok sem vetik meg. Talán kicsit túl sok a gyakorlati emberek számára, de ezt ellensúlyozza hogy olvasmányos (már amennyire egy kategóriaelmélet könyv az lehet).

Remek kis előadások a szakma legjobbjaitól! Bob Coecke Lambek vs Lambek előadása olvasóinknak kötelező :D


2012. december 19.

Matematika felnőtteknek

Keith Delvin Mathematics: Making the Invisible Visible kurzusa az iTunes-ból kitört és immár elérhető a youtube-on is! Sokunk közös élménye az unalmas iskolai matematika óra. Delvin előadásai viszont kifejezetten szórakoztatóak és alkalmasak arra, hogy motiválják a matek-fóbiában szenvedőket.

Often described as the science of patterns, mathematics is arguably humanity's most penetrating mental framework for uncovering the hidden patterns that lie behind everything we see, feel, and experience. Galileo described mathematics as the language in which the laws of the universe are written. Intended to give a broad overview of the field, these five illustrated lectures look at counting and arithmetic, shape and geometry, motion and calculus, and chance and probability, and end with a mind-stretching trip to infinity.

A többi videó megtekinthető itt.

2012. december 18.

FP és termékfejlesztés

Két remek példa arra, hogy nem csak az általam imádott Prismatic esetében jó húzás egy funkcionális nyelv mellett letenni a garast.

1) Machine Learning at Unfold

Az Unfold Clojure-t használ. Ellenben a Prismatic-kel nem mennek el a "99% pure Clojure" irányba, hanem kihasználják a Java interop nyújtotta lehetőségeket. Így kipróbálhatnak minden elérhető eljárást és rögtön akár production módba kapcsolhatnak. Ez az igazi rapid prototyping! A többit a video jobban elmeséli, én annyi megjegyzést fűzök ehhez, hogy egy idő után a legtöbb Clojure shop a fontos részeket úgyis megírja magának.


2) Running a Startup on Haskell

Bryan O'Sullivan neve a Real World Haskell kapcsán biztos sokak számára ismerős. Ebben a videóban a MailRank-kel kapcsolatos tapasztalatairól beszél, no meg úgy általában a Haskell-ről, különös tekintettel ipari alkalmazására :D. Valamit csak tudnak, hiszen a Facebook tavaly meg is vette a céget egy tipikus acqui-hire keretében.



2012. december 13.

Prismatic

A Prismatic tkp. remek példa több dologra is. Mi a keresés jövője? Van valami igazán izgalmas felhasználása az NLP-nek és az ML-nek? Lehet egy terméket teljesen egy funkcionális nyelvre alapozni? A perszonalizációval együtt járó filter bubble jelensége ellen tehetünk valamit?

A Prismatic első ránézésre egy a sok hírolvasó eszköz közül ami a közösségi oldalon megjelenő híreket aggragálja. De nem egészen erről van szó! A Prismatic saját magát "discovery engine"-nek hívja és a hírek tálalását csak az első lépésnek tartja. A közösségi médiában megjelenő tartalmakat tkp. arra használják, hogy kitalálják a felhasználó ízlését és azt hogy milyen filtert épít maga köré. Sajnos arról nem lehet sokat megtudni miképp is működik ez az újdonságot behozó elem, de aki már eltöltött pár órát a Prismatic-en, az tapasztalatból tudja hogy egész jól működik.

A cég blogja is mutatja, mennyire átgondoltan halad a termékfejlesztés. Tulajdonképpen talán a Prismatic az egyetlen cél, ahol holisztikusan koncentrálnak egy adott problémára. Nagyon erős vizióval rendelkeznek arról hogyan is kell az ML és az NLP eredményeit felhasználni egy termékben és arról hogyan is néz ki az alkalmazott kutatás. Az alapoktól egészen a mutatós svájci designt idéző webes megjelenésig átgondoltak mindent (itt és itt érdemes erről olvasni). Érdemes megnézni TC Founder Stories alapítóval készített interjúját.



Ma a legtöbb kereső rendszer az ún term-document matrix megoldáson alapul. A Prismatic az ún topik modellekre szavaz ellenben (bővebben erről itt). Ezek nagyon hasonlóak a címkéző, vagy tagelő megoldásokhoz, de sokkal pontosabban működnek és írják le egy-egy dokumentum látens szemantikáját. A topik modellek a keresésben - több technikai probléma megoldásán túl - lehetővé teszik hogy "csoportosítsák" a találatokat és egyfajta összefoglalót adjanak tartalmukról. Így kerülhető el a duplikációk és a hasonló hírek szűrése, ill. kereshetők hasonló tartalmak. Habár a topik modellek már egy évtizede megjelentek, a Prismatic egyike az első ipari alkalmazóknak.

A "filozófia" mellett természetesen a fejlesztésben is jólátgondolt elveik vannak. Elsőre talán furcsa, hogy a Clojure-t választották, de ez még érthető is (plána, nekem, aki szeretem a Clojure nyelvet). Ami sokkal meglepőbb hogy nem igazán használnak Java cuccokat, inkább maguk írnak meg mindent amire szükségük van. Clojure körökben idézetté vált az "avoid large, monolithic frameworks" mottó (de persze inkább keresünk egy wrapper-t, vagy írunk magunk, semhogy a Prismatic-et követve saját numerikus könyvtárat dobjunk össze :D), ami az abstraction principle-re utal. Ezt az architektúrára is átvitték, a technikai részletek iránt érdeklődőknek ajánlom a High Scalability-n megjelent részletes írást erről.

Úgy tűnik, működőképes ez a szigorúan termékközpontú fejlesztés. Jó lenne látni több kezdeményezést, ami ennyire fókuszáltan és tudatosan vezet be a piacra egy alapvetően elméleti megoldást.

2012. december 12.

Kategóriaelmélet és jQuery

A kategóriaelméletet a közkedvelt meghatározás szerint "general abstract nonsense". Ez persze korántsem jelenti azt, hogy nem lehet gyakorlatias dolgokra használni eredményeit. Pl. John Bender egészen zseniálisan alkalmazta az ún. loop fusion technikát a jQuery-ben. De hogy kerül a csizma az asztalra? Bender working paper-je így foglalja össze:

The jQuery JavaScript library, used on more than 55% of Alexa’s top 10,000 websites makes the manipulation of HTML documents easy and intuitive through fluent method chaining and an intuitive API design. An unfortunate side effect of these user friendly features is that they often incur an otherwise unnecessary performance overhead. While JavaScript execution in desktop browsers has become fast enough to hide much of the problem, the growing complexity of HTML documents and the ubiquity of web enabled mobile devices continue to make performance an important concern when developing JavaScript applications. We address this issue by proposing a category theoretic view of the relationship between jQuery and the Document Object Model. From that view we derive a set of alterations to the jQuery library and demonstrate the performance benefits that result. Additionally we show how the second functor law suggests a set of JavaScript functions and jQuery methods that can be optimized using loop fusion.

 

Az alábbi videón teljesen érthető formában fejti ki vizsgálódásainak lényegét Bender. Érdemes a lejátszás előtt és után is elolvasni rövid posztját.

 

2012. december 10.

Könyvismertető: Digital_Humanities (ingyenes e-könyv)

A digitális bölcsészet iránt még csak érdeklődők és a területen otthonosan mozgók számára is hasznos kiadvány a Digital_Humanities, mely elektronikus verziója ingyen letölthető. 


  • Peter Lunenfeld, Anne Burdick, Johanna Drucker, Todd Presner, Jeffrey Schnapp: Digital_Humanities
  • MIT Press, 2012
  • 153 oldal
  • Open Access Edition (pdf)
Az MIT Press beharangozója remekül összefoglalja miről olvashatunk:
Digital_Humanities is a compact, game-changing report on the state of contemporary knowledge production. Answering the question, “What is digital humanities?,” it provides an in-depth examination of an emerging field. This collaboratively authored and visually compelling volume explores methodologies and techniques unfamiliar to traditional modes of humanistic inquiry--including geospatial analysis, data mining, corpus linguistics, visualization, and simulation--to show their relevance for contemporary culture.
Included are chapters on the basics, on emerging methods and genres, and on the social life of the digital humanities, along with “case studies,” “provocations,” and “advisories.” These persuasively crafted interventions offer a descriptive toolkit for anyone involved in the design, production, oversight, and review of digital projects. The authors argue that the digital humanities offers a revitalization of the liberal arts tradition in the electronically inflected, design-driven, multimedia language of the twenty-first century.
Nagyon kellemesen olvasható a kötet, bölcsészeknek inspirációt ad a technológia elsajátításához, IT felől érkezőknek pedig megmutatja mi mindenre lehet/lehetne használni a technológiát.

2012. december 7.

Try R - ingyenes statisztikai programozás kurzus

Sokak számára nehéz időt találni a Coursera kurzusainak követésére, vagy nem rendelkeznek kellő alapokkal ahhoz hogy belevágjanak egybe. Habár a Udacity remek munkát végzett és rövid részekre oszt egy-egy leckét és saját tempójában haladhat a tanuló ezeken végig, még így is sok időt kell invesztálni egy kurzus elvégzésébe. A Try R nem kínál királyi utat a statisztikai programozás iránt érdeklődőknek, de elvégzésével biztos alapokra tehet szert bárki, ami a további kurzusoknál nagyon jól jöhet. A tananyag hét "fejezetre" van tagolva, az első három az R nyelv alapjaiba nyújt bevezetést, a harmadik a klasszikus leíró statisztikával foglalkozik, majd az alapvető adatstruktúrákkal ismerkedhet meg az olvasó, az utolsó fejezetben pedig haladóbb témákba is belekóstolhat a tanuló. A gamification divatnak megfelelően "badges" gyűjtést folytat az aki végigmegy az egyes leckéken, amiről én nem tudom eldönteni hogy nettó poén, vagy tényleg inspiráló dolog. A c<>de school és az O'Reilly nagyon jó mukát végzett, most már nincs mentség és ha valaki meg akarja tanulni a statisztikai programozás alapjait, csak az elhatározás hiánya állhat útjába.

2012. december 6.

Mire jó a funkcionális programozás

Sokan úgy vannak a funkcionális programozással mint a big data-val; ízlelgetik, próbálgatják és foglalkoznak vele, mert mindenki más is ezt teszi. Alapvetően három dolog fokozta fel a paradigma iránti érdeklődést 1) a MapReduce-t a funkcionális paradigma ihlette 2) a statisztikai programozás és a gépi tanulás terén népszerű R nyelv és a mostanában különösen startupok körében elterjedt Clojure sikere 3) a párhuzamos feldolgozás elterjedése. A posztban megpróbálom körüljárni hogy tényleg jobb-e a funkcionális paradigma és hogy milyen feladatokra érdemes funkcionális nyelvet választani.

Az első kérdésre - ti. hogy jobbak-e a funkcionális nyelvek - a válasz egész egyszerűen az hogy nem. Bővebben; se nem jobbak, se nem rosszabbak mint pl. az OO nyelvek. Ennek oka, hogy a jelenlegi Neumann-architektúrán Turing-ekvivalensek. Ezen nincs értelme vitatkozni, mivel bizonyított tény, hogy amit az egyik paradigmában meg tudunk oldani, azt a másikban is elérhetjük. Más lapra tartozik, hogy Backus híres Can Programming Be Liberated from the Neumann Style? esszéjében megmutatta, hogy a jövőben más lesz a helyzet, de erre már harminc éve várunk és még jó ideig várnunk kell.

Peter Naur Programming as Theory Building esszéje más oldalról közelíti meg a dolgot. Naur szerint a programozó munkája során externalizálja (külsővé teszi) és mások által használhatóvá teszi tudását. De miből áll ez a tudás? Egyrészt a programozó jártas kell hogy legyen a számítástudományban, másrészt jó adag általános intelligenciával is rendelkeznie kell hogy megértse a kapott feladatait. Elvben egy jó programozó mindent meg tud oldani, gyakorlatban specializálódás ment végbe a szakmában, ami továbbra is tart és csak fokozódni fog.

Aria Haghighi nem rég írt az ACM blogján arról, hogy miért hagyta ott rendkívül ígéretes akadémiai karrierjét és lett a Prismatic társalapítója. Haghighi saját bevallása szerint nem akarta életét egy egy részterület apró kis problémájának szentelni. Habár az NLP-ben szeretjük azt hinni hogy majd egyszer eljutunk a teljességhez, vagy a közelébe kerülünk, igazából a tudomány logikáját követve részterületek alakultak ki, mely kutatói elvannak a saját kis problémáikkal. Ez hatással van arra, hogy miképp jelenik meg az NLP az alkalmazott területeken. Egy termék fejlesztése során ha felmerülnek számítógépes nyelvészeti kérdések, akkor a fejlesztők egy palettáról válogatják össze a megoldásokat. Így az NLP a mellékes featur-ökbe szivárog be. Haghighi O'Reilly Radar-on megjelent írásában megjegyzi, hogy az igazán érdekes problémákra nincs ilyen "leemelhető" válasz. Ha tényleg szeretnénk megoldani egy kérdést és a termékünket erre szánjuk, akkor holisztikusan kell gondolkodnunk!

Naur tézisét szerintem a legtöbben elfogadják. Adjuk ehhez hozzá Haghighi gondolatait is. Az NLP (és a gépi tanulás, továbbá valamennyi kutatás-vezérelt terület) esetében is azon van a hangsúly hogy a fejlesztő tudását szoftverbe tudja "önteni", s ha jó terméket akarunk, akkor a lehető legjobb szerszámot kell megtalálnuk ehhez. Az erősen formalizált tudományok esetében a legjobb szerszám egy funkcionális programozási nyelv, mivel ezek segítségével egy ismerős nyelven lehet kifejezni a formális elméleteket.

A párhuzamos feldolgozás terén valóban izgalmas dolgok történnek a funkcionális paradigmában. De itt is sokkal inkább arról van szó, hogy megfelelő absztrakciós eszköz áll egyes fejlesztők rendelkezésére. Pankratius és tsai alapos összehasonlító kísérlet során arra jutottak hogy
Contrary to popular belief, the functional style does not lead to bad performance. Average Scala run-times are comparable to Java, lowest run-times are sometimes better, but Java scales better on parallel hardware. We confirm with statistical significance Scala’s claim that Scala code is more compact than Java code, but clearly refute other claims of Scala on lower programming effort and lower debugging effort.
A megállapítás sokkal inkább az ún. generalista programozókra vonatkozik, akik egy software shopban készítenek a "beeső" ügyfeleknek különféle alkalmazásokat. Ilyenkor egy jó szaki dolga, hogy ügyfelével konzultálva a lehető legjobb szolgáltatást tudja nyújtani. Ilyen környezetben nem jár előnyökkel egy funkcionális nyelv használata.

A kutatás-intenzív termékfejlesztés során azonban a funkcionális nyelvek használata megkönnyíti a kutatók és a fejlesztők dolgát. A kutatóknak nem kell ún. throw away prototípusokkal bíbelődniük kedvenc nyelvükben, a fejlesztők nem kapnak agyvérzést amikor a prototípusok alapján kell valódi termékké formálniuk az ötleteket. Rövidül a fejlesztés idő, olcsóbbá válik a hibázás (ami a kutatás része) és csökken a kockázat (érdemes Paul deGrendis Clojure-powered Startups előadását megnézni a témában erről).

2012. november 30.

Könyvismertető: Lean szemlélet

Nehéz nem találkozni a lean szóval manapság. Van lean szoftverfejlesztés, lean startup és még a ott van a personal kanban és egyéb csodamódszerek garmadája. Vannak akik már-már vallásosan hisznek ezekben a módszerekben, de a többség számára inkább érdekes és értékes módszerek tárháza ez, amiből sokat lehet tanulni. Womack és Jones művét eddig minden általam olvasott lean szoftverfejlesztéssel foglalkozó könyv, cikk, poszt stb. nagyon ajánlotta, ezért nagyon nagy elvárásokkal vetettem magam olvasásába. Elvárásaimmal ellentétben ez a könyv nem hozható kapcsolatba az IT-vel, de ettől még nagyon izgalmas és lebilincselő olvasmány.


Ha valaki időt szeretne spórolni magának és szeretné megtudni hogyan alakult ki a lean mozgalom és miről is szól eredeti alkalmazási területén (autógyártás), annak bőven elegendő a blogon már bemutatott Toyota-módszert elolvasni! Mivel soha az életben nem kerültem az ipari termelés közelébe, ezért számomra a Lean szemlélet amolyan ismeretterjesztő könyvvé vált olvasása során. Ennek megfelelően nagyon könnyen olvasható, a fordítás sokkal jobbra sikeredett mint a Toyota-módszer (habár a japán szavak angol átírása nagyon idegesített itt is). Külön bónusz a kötet végén található kis fogalomtár, mivel a szövegben nem nagyon foglalkoznak egy-egy fogalom elmagyarázásával.

Maga a mű három részre tagolódik. Az első részben a lean filozófiájával ismerkedhetünk meg. Ez dióhéjban arról szól hogy minden elörejelzés alapvetően hibás, a kereslet változik hol így, hol úgy, jobb ha tudunk alkalmazkodni hozzá. A lean tehát arról szól, hogy ne halmozzunk fel felesleges készleteket (ne push rendszerben termeljünk), hanem az igények vezéreljék a termelést (pull rendszer). A második részben esettanulmányokat olvashatunk a lean rendszer bevezetéséről. Itt aztán van minden, a csomagológépeket gyártó kisüzemtől a Porsche-én át fűtéstechnikai cégekig! Mindezek mellett ügyelnek arra, hogy a "fejlett világ" is le legyen fedve, amerikai, német és japán cégekkel ismerkedhetünk meg, szerintem kicsit jobban is mint kellene. Habár nagyon érdekesek az esettanulmányok, bennem mindig ott motoszkált két kérdés 1) miért nem olvashatok katasztrófa történeteket 2) miért nem olvashatok arról hogy valahol megvizsgálták, de elvetették a lean átállás lehetőségét? Az utolsó rész tkp. ismétlés, az esettanulmányok után végigmennek a szerzők az alapelveken és "nesze semmi, fogd meg jól" tanácsokat adnak a lean átálláson gondolkodóknak.

Habár a könyvben nincs olyan "take home message" amit a szoftverfejlesztésben, vagy a hagyományos termelőágazatokon kívül használni lehetne, megéri elolvasni. Az első rész nagyon jó szemléletformálásra, ha valakinek nagyon nincs ideje, legalább azt olvassa el. A többi rész számomra olyan volt, mint az ismeretterjesztő csatornákon látható "így készül X termék" filmek, amik engem le tudnak kötni, de erősen az olvasó ízlésének függvénye, hogy mennyire fogja élvezni. A lean alapművek elolvasása után annyit azonban bizton kijelenthetek, hogy az elterjedt lean szoftverfejlesztési könyvek bőségesen elegendő információt tartalmaznak ahhoz, hogy képben legyenek olvasóik. Csupán az intellektuális kalandozás szól mind a Lean szemlélet, mind pedig a Toyota-módszer elolvasása mellett. Ha idő szűkében van a kedves olvasó, biztosíthatom arról hogy nyugodtan kihagyhatja ezeket a könyveket.

2012. november 20.

Hogy állunk a funkcionális programozással?

Arra kérem kedves olvasóimat, hogy segítsenek nekem feltérképezni hogyan állnak a magyarországi fejlesztők és cégek a funkcionális programozáshoz. Ezért egy rövid kérdőív kitöltésére kérek mindenkit, attól függően hogy melyik csoportba illi:
Az online kérőívek kitöltéséhez maximum öt perc szükséges, ha rászánod az időt, akkor sokat segítettél nekem. Cserébe a blogon és egyéb fórumokon is megosztom majd tapasztalataimat!

Hogy teljes legyen a kép, szükséges lenne ún. structured interview (strukturált, vagy irányított kérdezésen alapuló) felmérést is végeznem. Ezért keresek olyan hazai cégeket akiknél bevezetés alatt áll, vagy már bevezetésre került egy funkcionális programozási nyelv és megengedik hogy pár munkatársukkal egy kb. 30 perces beszélgetést folytassak. Ha tudsz ilyen cégről, vagy te magad is ilyen helyen dolgozol, kérlek lépj velem kapcsolatba a zoltan.varju(kukac)gmail.com email címen!

2012. november 19.

Scheme - királyi út a funkcionális programozás felé

Szerencsére egyre többen érdeklődnek a funkcionális nyelvek iránt. Sokkal sajnálatosabb hogy sokan eltántorodnak a kezdeti lelkesedés után. Sok nyelvész és logikus számára életük első programozási nyelve a Haskell manapság, nekik nem okoz gondot a régi szokások levetkőzése, ellenben a komolyabb feladatok (vagy az egész egyszerű I/O) estén sokan elakadnak. Szoftverfejlesztők általában az Erlang vagy a Clojure mellett teszik le a garast, de gyakran szembesülnek azzal hogy ezen közösségekben divat régi Lisp és Prolog könyveket ajánlgatni. Sokkal egyszerűbb ha nem rögtön a divatos nyelvekkel ismerkedünk meg, hanem a Scheme nyelvvel töltünk el egy kis időt. A nyelvek változnak, a mögöttes elvek azonban nem, érdemesebb először ezeket megtanulni.

1. Az alapok
  • Simply Scheme: Introducing Computer Science - A legjobb könyv amivel elkezdheti valaki a programozás és/vagy a funkcionális programozás tanulását. Remekül szemlélteti az alapfogalmakat és sok-sok érdekes feladattal foglalkoztatja az olvasót. Nem csak a programozás terén kezdőknek ajánlom, hanem mindenkinek aki nem rendelkezik több éves tapasztalattal.
  • The Little Schemer -Zseniális könyv, amely példákon keresztül mutatja be a funkcionális programozás főbb technikáit. Továbbá megtudhatja belőle az olvasó hogy az Y-combinator nem csak egy startup program :D Nagyon kezdőbarát, érdemes többször elolvasni! Figyelem, a szerzők már az előszóban leszögezik, hogy attól senki sem válik programozóvá hogy elolvassa a könyvet!
  • The Seasoned Schemer -A fenti könyv folytatása, szépen tovább építi az alapokat.
  • How to Design Programs - ingyenesen elérhető könyv, mely nagyon gyakorlat orientált. Célja a programfejlesztés logikájának bemutatása nem műszaki/tudományos érdeklődésű olvasók számára. A kötethez készül speciális Scheme implementáció nőtte ki magát a Racket nyelvvé, mely annak ellenére hogy nem szabvány Scheme, a legelterjedtebb ma a Schemerek körében.
2. A klasszikusok
  • Structure and Interpretation of Computer Programs - A "köznyelvben" csak SICP. Ez a számítástudomány leghíresebb bevezető könyve. Annak ellenére hogy bevezető, nem ajánlható kezdőknek! Minden tisztességes funkcionális programozással foglalkozó embernek egyszer el kell olvasnia, aki ezt nem teszi meg, legalább ismerje a címét és tegyen úgy mintha olvasta volna. Ingyenes, ezért nem lehet azt mondani hogy nem volt rá pénzed :D Érdemes az OCW kapcsolódó kurzusával - vagy legalább az előadás videokkal - kiegészíteni a feldolgozását. 
  • The Reasoned Schemer - a Little Schemer stílusában íródott kicsi könyvecske, mely a funkcionális-logikai programozásba vezet be minket
3. Hard core computer science
  • Essentials of Programming Languages - a programozási nyelvek (és paradigmák) alapjaiba vezet be ez a remek könyv, csak a SICP ismeretét feltételezi ehhez csupán.
  • Types and Programming Languages - Habár nem kell a típusokkal bajlódni a Scheme esetében, nem árt tisztában lenni velük, ha Haskell vagy Scala felé kacsingatunk, akkor nincs más választásunk!
4. Bónusz

2012. november 16.

Évadzáró meetup november 21-én

November 21-én zárjuk első évadunkat, 18:00-kor kezdünk szokott helyünkön, a Colabsben. Kérjük az érdeklődőket hogy regisztrációval segítsék munkánkat (a regisztráció és rendezvény is ingyenes). 2013-ban folyt.köv., a tavaszi szezonban két angol és két magyar meetup lesz, várjuk előadók jelentkezését.

A program

2012. november 14.

Magyar Nyelv Napja 2012

 A magyar nyelv digitális túlélési esélyéről, a nyelvi "akadálymentesítéshez" szükséges technológiai támogatásról és a hazai nyelvtechnológia nemzetközi pozíciójáról cserélnek eszmét egyebek közt annak a kerekasztal-beszélgetésnek a résztvevői, amelyet a Magyar Nyelv Napja alkalmával szervez csütörtökön (november 15-én, 16 órától) az MTA Nyelvtudományi Intézete.
 
 
A rendezvény ingyenes, regisztrálni itt lehet. Aki otthon (vagy munka közben :D) a gépe előtt szeretné megtekinteni az eszmecserét, az itt megteheti ezt.

Könyvismertető: A Toyota-módszer

A szoftverfejlesztésben már régóta divatos a lean módszertan és az utóbbi két évben robbant be a köztudatba a lean startup fogalma is. De hogy kerül az autógyártásban kifejlesztett és úgy általában a termelőüzemekben alkalmazott metodológia az IT-be


A könyv, ahogy a címe is mutatja, a Toyotára koncentrál, annak beszállítóiról és az észak-amerikai autógyártásról szólnak a példái, ami egy idő után sok tud lenni olyannak aki életében nem látott hagyományos termelő vállalatot. Szerencsére sok-sok anekdota színesíti a fejezeteket és az autógyártás történetéről is sokat megtudhatunk. A legérdekesebb lecke számomra az volt hogy a lean, a Toyota-módszer (Toyota way) és a Toyota termelési rendszer (Toyota Production System, TPS) nem azonosak egymással. A lean mint folyamatszervezési eszköz a jéghegy csúcsa, a TPS pedig olyan átfogó elvek gyűjteménye mely megpróbálja kanonizálni a Toyota-nál kialakult szellemiséget. A lean szoftverfejlesztés és a lean startup sokkal inkább a Toyota-módszerből merít, mint a lean alapelvekből! Az ügyfélközpontúság, az emberi erőforrások középpontba helyezése és a folyamatos visszacsatolás és tanulás feltételeinek kialakítása a Toyota-módszer központi elemei, amik az Agile Manifesto-ban és a The Four Steps to the Epiphany-ban is visszaköszönnek. A könyv erőssége abban áll, hogy nagyon szemléletes mutatja be miképp alakult ki a Toyota saját módszere és hogyan adaptálta az egyes országok kultúrájához azt miközben világcéggé nőtt. Liker nem ad kész recepteket, hanem szemléletet próbál formál az esettanulmányokon keresztül. Talán ezért is kerülhetett fel a könyv a legtöbb szoftverfejlesztéssel foglalkozó olvasmánylistára, hiszen a személet - az termelési elvekkel ellentétben - alkalmazható a termelőágazatokon kívül is.

A fordítást lektorálták állítólag, de ez nem látszik a szövegen. A japán kifejezések angol átírásban szerepelnek, ami engem mindíg zavar. A fordító részéről ez akár tudatos döntés is lehetett, hiszen ezek a kifejezések részei a nemzetközi "lean szaknyelvnek" és talán elfogadható, ha a bevett angol átiratban maradnak, könnyítve evvel az idegennyelvű művek olvasását. Viszont ehhez nem ártott volna egy lábjegyzetben jelezni ezt. A lektor azonban nem csak e felett siklott át, így eshetett meg hogy a social psychology "szociális pszichológia" lett a magyar változatban és a példákat még lehetne sorolni. Szögezzük le, a kötetet nem lektorálták! Persze a mai világban növeli egy könyv ázsióját ha beleírjuk, volt lektora. Viszont fordítást ma az ember azért vesz, mert időt szeretne spórolni. Minden területnek megvan a maga szaknyelve és stílusa amit meg kell szokni, ezért elsőre sokan lasabban olvasunk szakterületünkön kívül könyveket idegen nyelven. A Toyota-módszer esetében kicsit az az érzésem, hogy jobban jártam volna, ha Amazonon szerzem be, hiszen nem kell futárt várnom és bosszankodnom a ferdítéseken, nem mellesleg spórolok is majdnem egy ezrest!

2012. november 8.

Mi fán terem a számítógépes nyelvész?

Hónapok óta számítógépes nyelvész munkatársat keresünk és rájöttünk nem is olyan egyszerű megtalálni a megfelelő embert. Már maga a megnevezés is feltételezi hogy valaki két területen is otthonosan mozog, de mi árnyaltuk a jelölttel szembeni elvárásainkat. Nem fejlesztőt keresünk, hanem kutatót, aki képes aktívan részt venni munkánkban. Mi alapvetően két területet ötvözünk; a gépi tanulást és a szemantikus webet. Problémáink jellemzően olyan kérdések, melyek közgazdasági és pénzügyi elemzők fejében fogalmazódnak meg.

Technikai oldalról tehát nem klasszikus programozót keresünk, hanem inkább a manapság divatos megnevezéssel élve egy data scientist lenne az ideális jelölt. Drew Conway Venn diagramja nagyon szépen mutatja milyen háttérrel rendelkeznek az adattudósok.


Ugyanakkor kifejezetten nyelvi, nyelvészeti problémák megoldására kell fókuszálni csapatunkban. Így kívánatosnak tartjuk, hogy a nyelvészet ne legyen idegen a jelentkezőtől. Habár sokan úgy gondolják hogy "majd úgyis felszedi azt a tudást menet közben a jelölt", nem árt észben tartani hogy mennyire szerteágazó a nyelvtudomány. Ez az ábra nagyon jól szemlélteti ezt.



Feladataink jelentős részében alapvetően társadalomtudományi háttérrel rendelkező elemzők számára szállítunk adatokat, ill. megpróbáljuk az elemzéseket automatizálni. Az ideális jelentkező egy olyan ember lenne aki a data science és a nyelvészet halmazok metszetében helyezhető el. Lássuk be, ilyen emberből nem sok szaladgál a Földön. Döntenünk kellett melyik a fontosabb. Először mi is a technikai tudást helyeztük előtérbe, sajnos azonban hamar kiderült hogy 1) nehezen megy a kommunikáció az elemzők és az ilyen kutató kollégák között 2) nehezen találnak megoldási javaslatokat a felmerülő problémákra, mert idegenek számukra a felvetett kérdések. Alaposan át kellett gondolnunk prioritásainkat ezek fényében és egy nyelvész kolléga mellett tettük le a garast, de ez egy nehéz kompromisszum volt.

Remélem hamarosan hazánkban is a nyelvészeti tananyag része lesz az alapos statisztikai képzés, nem beszélve a nyelvi adatok feldolgozásának alapjairól. Ezek egyaránt fontosak a tudományos pályára készülőknek, de talán még fontosabb azok számára akik a munkaerőpiacon méretnék meg magukat. Véssük az eszünkbe, nem csak a számítógépes nyelvésznek kell programozni, ma már a tudományos munka része ez a képesség, olyan szinten mint az angol nyelv ismerete. Ha végre reagálna a hazai képzés a nemzetközi trendekre és arra a tényre, hogy a hallgatók csak piciny százaléka lesz kutató, sokkal könnyebb lett volna a dolgunk. Sőt, sokkal könnyebb lenne a hallgatók dolga is, hiszen tisztességes munkát találhatnának...

2012. november 7.

Könyvismertető: Gödel's Proof

Mostanában lette figyelmes arra hogy a Gödel tétel lassan annyira beszivárgott a hétköznapi beszélgetésekbe mint a pszichoanalitikus zsargon. Ugyanakkor azt is észrevettem, hogy rosszabb esetben Mérő László könyveiből, jobb esetben Smullyan fejtörőiből ismerős a fogalom sokak számára. Nem szeretném szidni a jeles szerzőket, de lássuk be a lovagok és lőkötők szigete kapcsán érzékeljük csupán miről is lehet szó, Mérő pedig inkább a jeles tétel következményeivel foglalkozik. Azok, akik szeretnének elmélyülni a technikai részletekbe, Smullyan Gödel nemteljességi tételei könyvét Csaba Ferenc kiváló fordításában olvashatják, de sajnos nincs a magyar piacon olyan könyv ami a formalizmust mellőzve, de mégis alaposan mutatja be a 20. század legjelentősebb logikai tételét. Az angolul jól olvasóknak nyújt alapos összefoglalót Nagel és Newman könyve, amit Hofstadter előszava (és gondos szerkesztői keze) egészít ki.
A logika könyvek csodás tulajdonsága hogy általában rövidek, a most tárgyalt cím is csupán 129 oldal, de mégsem lehet átrágni őket egy délután alatt. Nagel és Newman egy kicsit meg is vicceli az olvasót, mivel az első fejezetek egész könnyen olvashatóak. De ne feledjük, ezek a kötelező körök, ahhoz hogy kontextusba helyezzék a problémát. Így elindulunk az aritmetika megalapozásának programjától, eljutunk a modern logika születéséhez és elidőzünk a híres Russel paradoxonon és megismerjük a méltatlanul mellőzött Richard paradoxont is. Kapunk egy gyors bevezetést a logikába - talán ez nem annyira világos, annak aki még az életben nem tanult a témáról - és arról hogy mi fán terem a bizonyítás (a függelékben ennek megértéséhez egy geometriai példán keresztül további segítséget nyújtanak a szerzők).

A felvezetés után megismerkedünk a konzisztencia és a teljesség fogalmaival is, majd jön a leghosszabb fejezet, Gödel híres tanulmányának rekonstrukciója. Fontos megjegyezni, hogy az eredeti cikktől eltérően nem 7 primitív operátorra, hanem 12-re alapozzák a logika aritmetizálását a szerzők. Ha csak passzívan olvassa valaki a könyvet, akkor ennek nincs különösebb jelentőssége, de ha vesszük magunknak a bátorságot és mi magunk generálunk pár logikai kifejezésnek Gödel számot (legyen nálunk számológép, mert rendesen kell hatványozni közben) ez nagyon jól jön. Nem teljes bizonyítást mutat be a fejezet, a hangsúly az eredeti eredmény lényegi gondolatainak bemutatása. A lábjegyzetek kavalkádja zavaró lehet, javaslom hogy kétszer (vagy többször) is dolgozza fel valaki a fejezetet és elsőre ne is olvassa el a megjegyzéseket mert habár zseniálisak, megszakítják az olvasás ritmusát.

Remélem a kötet egyszer elérhető lesz magyarul is, mivel ez egy tényleg olvasható, ugyanakkor kompromisszumoktól mentes ismeretterjesztő mű.

2012. október 30.

Egy másik metaforamasina

Draaisma Metaforamasina c. könyve nagyszerűen mutatja be mennyire meghatározó egy-egy metafora a tudományban. A DARPA Metaphor Program nevű kutatási programja azonban a hétköznapi nyelvben használt metaforákra összpontosít:

The Metaphor Program will exploit the fact that metaphors are pervasive in everyday talk and reveal the underlying beliefs and worldviews of members of a culture. In the first phase of the two-phase program, performers will develop automated tools and techniques for recognizing, defining and categorizing linguistic metaphors associated with target concepts and found in large amounts of native-language text. The resulting conceptual metaphors will be validated using empirical social science methods. In the second phase, the program will characterize differing cultural perspectives associated with case studies of the types of interest to the Intelligence Community. Performers will apply the methodology established in the first phase and will identify the conceptual metaphors used by the various protagonists, organizing and structuring them to reveal the contrastive stances. [forrás]

Számomra nagyon érdekes, mennyire empirikusan nyúlnak a dologhoz, magyarán empirikus tesztet végeztek egy korpusz segítségével a jelentkezők szoftvereivel. Ez 2011-ben történt és vicces volt hogy egy ilyen nemzet biztonsági program kapcsán mennyi blogposzt és tweet született. Valahogy most mindenki hallgat, lehet hogy a második fázisban az Intelligence Community első kérése volt a titoktartás...

Akármennyire menő most a sentiment analysis és mindenféle szövegelemzés, a metaforák központi szerepet játszanak a nyelvben, a program pedig erre világít rá. Vessünk egy pillantást a példa esettanulmányok elkészítéséhez ajánlott irodalom listájára. Ott virít Lakoff egyik könyve (ha nem is a legjobb) és pár tartalomelemzéssel foglalkozó politikatudományi tanulmány. Számomra ez azt jelenti, hogy ha túl akarunk lépni a most rendelkezésünkre álló korlátozott módszereken, akkor bizony vissza kell térnünk a "klasszikus" nyelvészethez. Ennek oka egyszerű, a megoldásra váró problémák fogalmi elemzését és a sikeresség kritériumait ezekből az elméletekből vezethetjük le, jó esetben még a megoldáshoz is inspirációt adnak. Szóval elkezdem olvasni Kövecses Metafora című könyvét iziben.

2012. október 29.

Six Provocations for Big Data

Idén történt egy konferencián, hogy két számítástudós lelkesen adta elő "forradalmi" eredményeit egy konferencián és a közönség soraiból többen is mocorogtunk, vártuk a kérdések idejét. Maga az előadás rendben volt, az izgalmat az okozta hogy a bemutatott eredmények nem voltak forradalmiak, tkp. Mark Granovetter elméletét ismételték el az előadók és nem értették miért tesszük szóvá nekik ezt. A big data, data science és business intelligence hármasa egyre többször fut bele ilyen helyzetekbe, hiszen olyan témákról próbál szólni, melyeket más tudományok már régóta vizsgálnak. danah boyd és Kate Crawford Six provocations for big data című tanulmánya arra hívja fel a figyelmet hogy bizony vannak határai és buktatói a nagy adathalmazoknak is. A metodológiai kérdések mellett (pl. jobb-e a több adat, mennyire reprezentatív a Twitter és egyéb közösségi oldalak által szolgáltatott publikus adathalmaz stb.) legalább annyira izgalmasak az etikai kérdések (mennyire egyezik bele a mezei felhasználó abba hogy kutatásokra használjuk adatait, ki férhet hozzá az adatbázisokhoz) is. Érdemes elolvasni a tanulmányt, vagy legalább megnézni az  alábbi videót.


2012. október 19.

Megújult a Google Ngram Viewer

A szimpla frekvenciákon túl immár minden korpusznyelvész szívét megmelengető képességekkel bővült a Google Books Ngram Viewer. A Google Research Blog bejelentése szerint:
Two features of the Ngram Viewer may appeal to users who want to dig a little deeper into phrase usage: part-of-speech tags and ngram compositions.
Az alábbi tag set (azaz POS tagek, magyarán szófaj címkék) áll rendelkezésünkre:



A tagek egy része önmagában is állhat ill. a egy adott szót pontosíthatunk vele, másrészük pedig önmagában áll (stand alone). Egy példa arra hogy mire jó ez:



Lehetőségünk van immár összetett kifejezések keresésére is, ezt fedi az ngram compositions. Az összetételeket a reguláris kifejezések nyelvéhez hasonló operátorokkal építhetjük fel.



Az operátorokkal ilyen összetett query-ket építhetünk fel:



Ben Zimmer posztja a Language Log-on részletesen bemutatja az Ngram Viewer hátterét és linkel két tanulmányt ami a projekt technikai részletei iránt érdeklődőknek ajánlott.


2012. október 17.

Könyvismertető: Understanding Search Engines: Mathematical Modeling and Text Retrieval

Sokan kérdezték hogy akad-e valami ami Widdows könyvénél komolyabb, de nem annyira mint van Rijsbergen munkája. Habár vannak hibái és egy kicsit már érződik raja az idő, Michael W. Berry Understanding Search Engines: Mathematical Modeling and Text Retrieval című könyve remekül betöltheti a híd szerepét.

Understanding Search Engines: Mathematical Modeling and Text RetrievalUnderstanding Search Engines: Mathematical Modeling and Text Retrieval

Nem szabad megfeledkeznünk arról hogy a kötet kiadója a Society for Industrial and Applied Mathematics. Így ne várjunk olyan szép narratívát mint amit a CSLI gondozásában megjelent Meaning and Geometry nyújt! 117 oldalon a keresés legalapvetőbb elméleti és technikai problémáit tekinti át a szerző, ami valljuk be nem eredményezhet egy kalandregényt. A könyv nyelvezete egy kicsit nehezen követhető, hullámzó színvonalon tárgyalja a matematikai vonatkozásokat (ezen a Google sokat segíthet olvasás közben), a technikai részek pedig kifejezetten gyengék. Ellenben nagyon logikusan építkezik a szerző, minden alapfogalom bevezetésre kerül és valamennyire a formális hátteret is megismerhetjük.

A bevezető fejezet tisztességesen kontextusba helyezi a témát, a második feladat áttekinti az előfeldolgozást valamennyire, de tényleg ne várjunk tőle túl sokat és vegyük figyelembe hogy technikai értelemben egy 2005-ben megjelent könyv már tkp. használhatatlannak tekinthető. A harmadik fejezet a vektortereket, a negyedik pedig a mátrix dekompozíciót taglalja, jó példákkal és akár komolyabb előismeretek nélkül is érthetően, de ne tekintsük egy lineáris algebra kurzus helyettesítőinek őket. Az ötödik fejezet a query-kről szerintem a kötet legjobb része, tömör és világos és máshol eddig még nem találkoztam ilyen jó leírással. A hatodik fejezet a ranking és a relevancia kérdésével foglalkozik röviden, a precision és recall fogalmait bemutatva. A hetedik fejezet sajnos vázlatosra sikeredett, de a HITS és a PageRank algoritmusok lényegét megismerhetjük belőle. A nyolcadik fejezet az interfészekkel foglalkozik és színvonala remekül mutatja hogy ehhez nem igazán értenek a matematikusok. Az utolsó fejezet további olvasmányokat ajánl, ezekből érdemes szemezgetni.

2012. október 14.

NLP matiné okt. 26-án (UPDATED)

Közeledik októberi meetupunk! Kicsit rendhagyó módon most rövid, ötperces intézmény/céges bemutatkozókat várunk - jelentkezni a zoltan.varju(kukac)gmail.com címen lehet. A meetup célja hogy a számítógépes nyelvészettel foglalkozó, ill. a nyelvtechnológiai megoldások iránt (potenciális) felhasználóként érdeklődő cégek és intézmények bemutatkozhassanak egymásnak és a közönségnek. Ez az az alakalom amikor nyugodtan hozhatsz magaddal céges ismertetőket, egy raklapnyi névjegyet, sőt nyugodtan megemlítheted ha munkatársat vagy éppen partnert keresel. A részvétel ingyenes (mint midig), létszámkorlát nincs, de arra kérünk mindenkit hogy a rendezvény oldalán regisztráljon és jelezze hogy jön-e vagy nem. Köszönet főszponzorunknak a Weblib Kft.-nek és médiapartnerünknek a nyest.hu-nak. A még nem végleges program:

Rövid (ötperces) céges/intézményi bemutatkozók. Jelentkezni lehet a zoltan.varju(kukac)gmail.com címen.
Előadóink:

2012. október 13.

Álláslehetőség: junior Python programozó @ CEU CNS

A Közép-európai Egyetem NETWORKS kutatócsoportja Python programozót keres november 1-től egy kutatási projektre. A programozó feladata, hogy egy Python-fejlesztő team tagjaként olyan programokat írjon, amelyek szöveges adatokból strukturált adatokat állítanak elő. A pozíció megállapodás szerinti, de várhatóan heti 20 munkaórával jár, rugalmas időbeosztásban. A munkavégzés helye az Egyetem V. kerület, Nádor u. 11. szám alatti épülete.

Feltételek:
  •     Python 2.x-ben szerzett tapasztalat
  •     Linux felhasználói szintű ismerete


Előnyt jelent:
  •     angolnyelv-ismeret
  •     szövegfeldolgozásban szerzett tapasztalat


Versenyképes fizetést ajánlunk. Az Egyetem nem diszkriminál.

Ha érdekel, küldd el a CV-det és, ha van, egy Pythonban írt munkádat Koren Miklósnak, korenm@ceu.hu

Digitális bölcsészet MA a Pázmányon

Az országban egyedül a PPKE BTK-n szeptemberben ismét indul MA szintű számítógépes nyelvész képzés 'digitális bölcsészet: számítógépes szakirány' néven. Az nyelvészeti órákat a PPKE BTK-n tartják , az informatikai órákat pedig a PPKE ITK-n. A szakirányfelelősök: Prószéky Gábor egy. tanár és Surányi Balázs egy. tanár okt. 16-án du. 5-6 között szaktájékoztatót tartanak.


Helyszín: PPKE BTK, Piliscsaba, Egyetem u. 1. Ambrosianum épület, 220-as terem.


További információk: http://www.btk.ppke.hu/karunkrol/intezetek-tanszekek/angol-amerikai-intezet/elmeleti-nyelveszet-tanszek/hirek/digitalis-bolcseszet-ma-4.html

2012. október 12.

Könyvismertető: The Geometry of Information Retrieval

C.J. "Keith" van Rijsbergen az IR egyik élő legendája, 1979-ben megjelent Information Retrieval c. könyve (mely szabadon elérhető a neten) igazi mérföldkő volt a területen. A The Geometry of Information Retrieval majd harminc évvel a klasszikus után jelent meg, és alig 185 oldalba sűrítve írja le a terület mai állását és ad betekintést a kvantumlogikán alapuló jövőbe.


The Geometry of Information Retrieval

A kötet rövid, de ez ne tévesszen meg senkit, mert nem könnyű olvasmány. Témáját tekintve Widdows Geometry and Meaningjével tkp. egybe vág, csak amíg Widdows célja hogy egy álltalános műveltséggel rendelkező érdeklődőt szinte kézen fogva vezessen be a területre, addig van Rijsbergen könyve azoknak íródott akit már bírnak kellő matematikai előismeretekkel és rendelkeznek alapos előismeretekkel az IR terén. A kor hülye divatja miatt a könyv megpróbál "self-contained" lenni, de 185 oldalban képtelenség eljutni a halmazoktól a kvantumelmélet felvázolásáig és mindeközben kitérni az IR vonatkozásokra, de evvel együtt is csak ajánlani tudom.

A kötet egy, a matematikai berkeken belül valamiért divatos fromátummal, prológussal indít, melynek akkor van értelme ha a következő hat fejezetet már vágja az olvasó, így érdemes utoljára olvasni. A függelékekkel is jobb megismerkedni hamar, a tényleges olvasás előtt, vagy ha valakinek jobban fekszik, akkor lehet egy-egy fejezet olvasása során konzultálni a vonatkozó résszel. Fizikusok előnyben vannak, hiszen nekik a lineáris algebra, a kavntummechanika és a valószínűségszámítás általában menni szokott, én kifénymásoltam magamnak a kvantumelméletről szóló függeléket és magamnál tartottam olvasás közben.

A prológus és a függelékek el is visznek úgy hatvan oldalt az amúgy sem túl hosszú könyvből, ami marad az így nagy sűrűre sikeredett. A bevezetés és a halmazelméleti második fejezet még nem annyira meredek. A harmadik fejezet kilenc oldala a Hilbert terekről és vektorokról már mókásabb, figyelembe véve hogy központi jelentősségű a téma, talán jobb lett volna több teret engedni neki. A többi fejezet logikusan építkezik, lineáris algebra, kondícionális logika és kvantumlogika szép sorban.

Kezdőknek nem ajánloma könyvet, haladóknak is csak akkor ha minimum olvasták már Widdows és valami egyszerűbb bevezető tankönyvet (pl. a népszerű IR könyvet, ami szabadon elérhető). Kifejezetten ajánlom hogy Widdows könyvével párhuzamosan haladjon az olvasó, akkor is ha már rég túl van a Geometry and Meaning szintjén, jó először összefüggéseiben, informálisan tárgyalva látni az adott anyagot, s csak ezután nekiesni a mélyebb, formális leírásnak.

2012. október 9.

Könyvismertető: Guide to Advanced Empirical Software Engineering

Az ún. empirical software engineering irányzat számomra nagyon szimpatikusan a Manifesto for Agile Software Development-re hajazva a szoftvert emberi alkotásnak tekinti s úgy gondolja hogy a szoftverfejlesztés tanulmányozása során ezt a tényt figyelembe kell vennünk. Ezért a társadalom- és viselkedéstudományok módszertanára nagyon hasonlító metodológia van kibontakozóban mind az ipari, mind az akadémiai kutatók köreiben egyre gyakrabban merülnek fel metodológiai kérdések és egyre markánsabban látható az empirikus szoftverfejlesztési tanulmányok citátumaiban is ez. Kifejezetten érdekes hogy nagyon gyakran csap át egy ilyen vizsgálódás meta-elméletté, rengeteg "literature review" jelenik meg, nem ritka a kifejezetten tudományfilozófiai kérdésekkel foglalkozó írás sem (valamiért nagyon szeretik Poppert, de éppen Kuhnról felejtkeznek el, aki az ilyen zavarodottságot és meta irányultságot a kialakulóban vagy éppen hanyatlóban lévő paradigmák tünetének tartja). A Guide to Advanced Empirical Software Engineering egy alapos iparosmunka ezen a területen.

Guide to Advanced Empirical Software EngineeringGuide to Advanced Empirical Software Engineering
Vegyes érzelmekkel rágtam át magam a köteten. Egyrészt a 14 tanulmány tényleg lefedi az alapvető metodológiai kérdéseket és a kérdőívek szerkesztésének problémájától az adatgyűjtés és -gondozás etikai kérdésein át a statisztikai elemzésig minden terítékre kerül benne. Másrészt azonban ez az egyik legunalmasabb könyv amit olvastam. Minden szerző megpróbálja rendkívül tömören összefoglalni, hogy mit kellene tudnunk egy-egy területről. Ez gondolom annak erény, aki még nem találkozott ilyen kérdésekkel, de semmiképpen sem illethető az "advanced" jelzővel az, amivel egy alapszakos szociológus vagy egyéb társadalomtudomány szakos hallgató egész korán találkozik tanulmányai során. Unalmassága és esetlensége ellenére a kifejezetten szoftverfejlesztéssel foglalkozó nyúlfarkak miatt tekinthetjük hiánypótló műnek a könyvet, azoknak aki eddig nem találkoztak kutatásmódszertannal pedig akár kézikönyvként is szolgálhat. Aki szereti a szellemi kalandokat és szeretne átfogóbb képet kapni a területről, annak ajánlom a University of Toronto Empirical Research Methods in Software Engineering kuruzusának oldalát, a legtöbb hivatkozott cikk szabadon elérhető és tényleg "advanced" szinten tárgyal egy-egy kérdést.

2012. október 8.

Filmajánló: Wittgenstein

Wittgenstein egymaga végigment azon a folyamaton amin a számítógépes nyelvészet. A Tractatus és a Filozófiai vizsgálódások párhuzamba állíthatóak a kezdeti szabályalapú módszerekkel és kilencvenes évektől felfele ívelő statisztikai megközelítéssel. A múlt század egyik legzseniálisabb gondolkodója szerencsére nem redukálja a racionalizmus vs. empirizmus vitára ezt a kérdést, hiszen nála jobban senki sem tudja hogy ez bizony nagyon is húsbavágó probléma. Jarman filmje remekül mutatja be Wittgenstein világát, leegyszerűsítve, de mégis érthetően adja át a filozófiai gondolatok esszenciáját miközben a filozófus életének főbb állomásai szolgáltatják a hátteret. Nem mellesleg olyan "mellékszereplőkkel" találkozhatunk mint Russel és Keynes. Szerencsére a youtube-on megtekinthető a film, az élményen kicsit ront, hogy hét részre lett bontva, de szépen egymás után beágyaztam minden videót a posztba.


2012. október 2.

HVG Jövő 2.0 - ajánljuk magunkat

Megjelent a HVG Extra, Jövő 2.0 kiadványa! Papíron, fizetős kontent formában, de 890 HUF nem olyan sok érte.



Ha már megvetted, akkor irány a 48. oldal, ahol elolvashatod Jóföldi Endrével írt cikkünket. Külön köszönet Molnár Tünde munkatársunknak aki ráncbaszedte mondatainkat és Marinov Ivánnak a HVG-től, aki elvégezte a végső simításokat. Egy kis ízelítő lent :-)

A kép direkt homályos!

Októberi konferenciák

Október 4-én az Open Source BI Fórum 2012 konferencián adok elő, Adatbányászat az R nyelv alkalmazásával címen.

 

Október 20-án a Magyarországi Web Konferencia 2012 következik, ahol Sok a szöveg - avagy miben segíthet a nyelvtechnológia mint szolgáltatás címen adok elő. A konferencia ingyenes, de a részvétel regisztrációhoz kötött. (Le a kalappal a szervezők és a szponzorok előtt!)

2012. szeptember 26.

Vigyázzunk a big datával

Mostanában big data van mindenol. Most fejeztem be a How Data Science is Transforming Health Care c. rövid (és ingyenes!) könyvet. Arra gondoltam hogy jó lehet technokratának lenni, de ne zárjuk be a bölcsészkarokat, sőt próbáljunk azért pár társadalomtudóst is kinevelni a meglévők pótlására mert nélkülük nagy bajban leszünk. Hogy miért? Attól hogy egyre több adat áll rendelkezésünkre hála az open government data mozgalomnak, egyre nagyobb teret nyerhet az ún. evidence-based policy-making irányzat. Ahogyan arról már megemléketünk a blogon, a pénzügyi szférában egyszer már lejátszódott valami hasonló őrület, és Félix Salmon díjnyertes cikke és  a már szinén ajánlott Quants című film is jól bemutatja (nem beszélve az elhúzódó válságról amit mind nyögünk) hogy akármilyen robusztus, szofisztikált és egyéb trendi jelzővel ellátott modellünk is van, az bizony tévedhet. Scott E. Page Model Thinking kurzusa zseniálisan mutatja be a ma alkalmazott modelleket, az alábbi videó első részében szépen sorba veszi az evidence-based irányzat elleni érveket, ill. beszól a big data modell ellenességének is. 

2012. szeptember 25.

Filmajánló: The Thinking Machine (1961)

Ez a filme igazi csemege! 1961-ben az MIT centenáriumára készült, öt évvel a Dartmouth konferencia után. Éppen csak nevet adtak a gyereknek a kutatók, de már látják a közeli jövőt teli robotokkal, gépi fordítással és minden más nyalánksággal. A szereplőgárda erős; Claude Shannon, Jerome Y. Lettvin, Douglas T. Ross, Ronald Melzack, Arthur L. Samuel és Barbel Inhelde. Egyszerre érdekes, mint tudománytörténeti csemege és vicces mint egy retró film.

 

2012. szeptember 24.

Számítógépes nyelvészet a Kutatók Éjszakáján!


Jövőhét pénteken (2012.09.28) a Kutatók Éjszakája rendezvény keretében az MTA SZTAKI Nyelvtechnológiai Csoportja (http://hlt.sztaki.hu) is bemutatja legújabb fejlesztéseit

"Miből lesz a robot-MÁV-pénztáros"


címmel.


A demóval egybekötött előadást az este folyamán kétszer, 18-19 óráig és 22-23 óráig lehet megtekinteni a SZTAKI főépületében (1111 Budapest, Kende u. 13-17, térkép: http://goo.gl/maps/ZyDCK).

A részvétel ingyenes, de a szervezők kérik, hogy a látogatók előzetesen regisztráljanak, ez az alábbi linken végezhető el:
http://www.kutatokejszakaja.hu/2012/esemenynaptar/esemeny.php?id=635

Jelentkezzetek, gyertek, és hirdessétek az eseményt ismerőseitek körében is!

A tartalomról:

Az interaktív bemutató a Nyelvtechnológiai Csoport emberi nyelven vezérelhető robotjának különleges világába kalauzolja az érdeklődőket. A fejlesztés lehetővé teszi, hogy a rendszert valódi, hétköznapi feladatok végrehajtására is alkalmassá tegyék a SZTAKI kutatói: a címben szereplő robot-pénztáros 2012-re már valósággá vált. Ha arra vagyunk kíváncsiak, mikor indul vonat Budapestről Szegedre, netán menettérti nyugdíjasjegyet szeretnénk venni Kecskemétre, a számítógép immár képes megérteni az emberi nyelven megfogalmazott kérést. A feladat nehézsége a lehetséges kérések sokféleségében rejlik: ahhoz hogy esélyünk legyen megérteni egy szabadon megfogalmazott utasítást: "Felsőgödig kérek egy egészet."), a háttérben párhuzamosan kell futnia többféle nyelvtani elemzőnek, adatbázislekérdezőnek és következtető rendszernek.
A Kutatók Éjszakáján a látogatók először rövid bemutatkozás keretében megismerkedhetnek a Nyelvtechnológiai Csoport tagjaival és tevékenységével, majd előadást hallhatnak arról, milyen elemekből épül fel egy természetes nyelvi megértő rendszer. Választ kaphatnak arra, miben kevesebb és miben több a SZTAKI rendszere az IBM-nél kifejlesztett Watsonnál, aki emberi ellenfeleit is legyőzte egy amerikai kvízjátékban. Szó lesz arról, hogyan változtathatják meg a szemantikus technológiák a mindennapjainkat és hogy mit is jelent a sokat emlegetett szemantikus web fogalma. Végül a látogatók működő rendszereinket is megtekinthetik, valamint lehetőségük nyílik megszólítani a robot-pénztárost. Noha a számítógépet egyelőre még könnyebb zavarba hozni, mint a pályaudvarról ismert hús-vér kollégáját, remélhetőleg sikerül megmutatnunk, milyen lépéseket tettünk már eddig is egy a korábbiaknál rugalmasabb, általánosabb mesterséges intelligencia megalkotása felé.
(Forrás: http://www.kutatokejszakaja.hu)

2012. szeptember 21.

New confirmed speaker: Zoltan Toth, Pig: The Good Parts

Our new speaker is Zoltan Toth. Zoltan is a Senior Data Scientist at Prezi (the flagship of the Hungarian startup scene) and he is going to speak about his experiences with Pig.

Pig: The Good Parts
Apache Pig is a platform built on top of Hadoop that helps you quickly analyze large unstructured datasets. 
Experience and challenges: a hands-on introduction to Pig through a Prezi case study.
Short BIO
Prior to joining Prezi I worked as a developer for pharmaceutical market research companies. Now, as Senior Data Engineer, I help Prezi arrive at data-driven decisions. 

2012. szeptember 18.

Scientific computing vs software engineering

Az nlp, a gépi tanulás és a legtöbb analitikai perverzió tkp. alapkutatásokból nőtte ki magát és mostanában kezd igazán teret nyeri az iparban. A hagyományos shopokban kialakult egy már nagyon jól működő praktika a software engineering, ami a tervezéstől a minőségbiztosításon át a projektmenedzsmentig mindent lefed. Persze nincs általános csodaszer és vannak metodológiai viták, de a bevett gyakorlatok kialakultak. A scientific computing ellenben nagyon más utat járt be. Az olyan startupok és érettebb cégek sikerei mint pl Prismatic, Factual, Silkapp, Twitter azt sugallják hogy a funkcionális nyelvek segítségével hatékonyan alkalmazhatók az iparban is a scientific computing eredményei. Ez azonban csak a hipotézisem, melyet alábbi olvasmányaimra alapozok. A következő pár hónapban remélem sikerül pár cégnél és kutatóhelynél személyesen is kérdőíveznem, strukturált interjúkat folytatnom a témában. Ha lenne javaslatot további szakirodalomra, vagy ismersz olyan céget/kutatóhelyet ahol funkcionális programozási nyelvet használnak, kérlek írj nekem a zoltan.varju(kukac)gmail.com email címre.

Mitől kutatás-vezérelt valami, hogy kerül a tudományos módszer ide?
Scientific computing vs software engineering
Ellenvetés - avagy a "klasszikus" háttérrel rendelkezők idegenkedése a (kvázi-) funkcionális paradigmától
Proofs are programs - avagy miért a funkcionális nyelvek
Product design, stb.
Hogyan vizsgáljuk meg a helyzetet és készítsünk tervet a jövőre?

2012. szeptember 17.

2012. szeptember 12.

Olvasónapló #2 - Computational Social Science

Egyre inkább úgy gondolom hogy a számítógépes nyelvészet egyfajta szolgálóleány. Egy-egy új eljárás lényege általában az hogy valami más terület számára megnyissa az elemzés lehetőségét. Pl. a sentiment analysis, a szövegbányászat, tartalomelemzés stb. mind erről szól. Ennek alkalmazott vetülete az üzleti intelligencia és az adattudomány, valamint a marketing. Sokkal izgalmasabb és nagyobb gyakorlati haszonnal kecsegtet szerintem ha nem ezekre fókuszálunk, hanem  a társadalomtudományokra.

 

2012. szeptember 10.

A huNLP levelezőlista

A hazai NLP közösség hatékonyabb információcseréjének érdekében néhány hónapja létrejött a huNLP levelezőlista, melynek tagjai nyelvtechnológiával kapcsolatos híreket, felhívásokat, közérdekű információkat oszthatnak meg egymással. A már közel 150 fős közösséghez bárki csatlakozhat, csupán egy üres emailt kell küldenie a hunlp+subscribe@googlegroups.com címre. A csatlakozást követően a listára korábban küldött üzenetek is elolvashatók.

NLP matiné

Október 19-én tartjuk első NLP matinénkat, melynek célja hogy a nyelvtechnológiai cégek röviden bemutatkozhassanak egymásnak, a potenciális ügyfeleiknek és természetesen a nagyérdeműnek. Regisztálj a meetup oldalon, ha szeretnél részt venni! A program dióhéjban:

Ha nyelvi, nyelvtechnológiai megoldásokat kínálsz, vagy szükséged lenne számítógépes nyelvészeti szakértelemre, gyere el!
Egy ötperces előadásban bemutathatod céged (jelentkezni a zoltan.varju(kukac)gmail.com címen lehet)- a bemutatók után pedig kötetlenül lehet kérdezni és ismerkedni.

2012. szeptember 8.

Book review: Introducing Regular Expressions

This title simply does what its title suggests; it introduces novices into regular expressions. The book is short, but informative, and it tries to be as language independent as possible.



Expect short, pragmatic chapters on very basic topics. The explanations are pretty clear and easy to follow. The accompanying github repo contains all the files you need to follow the examples - and you should download those files and try out the online tools and unix utilities. This title is using a typical learning by doing approach, you won't get much theory on the background.

Each chapter ends with a technical notes section in which you can find information about the tools used in the chapter. The Appendix and the Regular Expression Glossary are pretty good for further references.

I'm sure a novice becomes a well-grounded beginner after working through this book.

2012. szeptember 7.

Filmajánló: Freakonomics: The Movie

Térdig gázolunk a big datában, de sokszor úgy tűnik hogy az adatok begyűjtése mellett elsikkad a kreatív elemzés. A társadalomtudományoktól van mit tanulnunk ezen a téren. Levitt és Dubner sikerkönyve a Freakonomics és annak folytatása a SuperFreakonomics remek példája annak miképp is lehet az adatokból érdekes válaszokat kinyerni. A dokumentumfilm nagyon élvezetesen mutatja be ezt a folyamatot, de természetesen nem megy bele annyira a részletekbe mint a könyv. Hétvégére viszont remek néznivaló a Freakonomics! Nem maradunk nyelvi vonatkozások nélkül sem, a nevek és az éves jövedelem közötti összefüggések vizsgálata minden szociolingvisztika iránt érdeklődő kolléga szívét meg fogja dobogtatni.


2012. szeptember 6.

A Hauser affér

Valamikor 2003-ban olvastam anno a mára csak HCF néven elhíresült The Faculty of Language: What Is It, Who Has It, and How Did It Evolve tanulmányt és ismertem meg Marc Hauser nevét. Ez volt a nagy biolinguistics hype kora, én is felültem rá és pár évig nyelvészeti érdeklődésemet teljesen lekötötte a rekurzió eredete és természete. 2007-ben már nem foglalkoztam a témával, de egy barátom révén elért a Hauser ellen indított vizsgálat híre. Ekkor még azt gondoltam, hogy ha követett is el hibát, az nem lehet lényeges - egy kis gond ui. mindig akad az adatokkal  egy empirikus vizsgálatnál. 2010-ben azonban a The Chronicle részletesen foglalkozott a vizsgálattal és már lehetett látni hogy valami nagyon nincs rendben, a kísérletek manipulálása mellé már a plágium vádja is bekerült. Most úgy tűnik véget ért a vizsgálat, Hauser is elismerte hibáit, de ezzel egy szerintem nagyon fontos kutatási irányzat diszkreditálódott és került a margóra.