2012. június 11.

Számítógépes nyelvészet 101: Matematika

Jön a nyár és örömünkre sokan szeretnék szabadidejüket a tudománynak áldozni. Sok levelet kaptunk, mindet sajnos nem tudjuk megválaszolni, viszont észrevettük hogy öt téma köré csoportosíthatjuk olvasóink kérdéseit. Ezeket tovább is gondoltuk egy kicsit és szétnéztünk ismerőseink között kit érdemes megkérdezni a témában hogy segítsünk eligazodni a szellemi kalandoroknak. Első posztunkban a számítógépes nyelvészet tanulmányozásához szükséges matematikai ismeretekről írunk Busa István Ferenc (alias beef) quant segítségével, akinek ezúton is köszönjük a közreműködést.
 

Kezdjük a végénél! Mit várunk el egy számítógépes nyelvésztől (és általában egy szakértőtől) mint egy fejlesztői csapat tagjától? Általában kettős feladata van egy szakértőnek, egyrészt egy rendszer tervezésekor segít az ügyfél és/vagy a projekt igényeit és problémáit lefordítani szakmai kérdésekre. A feladat következő része a kérdések megválaszolása melynek során a fejlesztőkkel kell kommunikálnia kezdve egy prototípus készítésétől az elkészült komponensek tesztelésén át a szükséges adatbázis megtervezéséig szinte minden fázisban. Ehhez szükséges a szakma alapjainak biztos ismerete, hiszen gyakran kell átekinteni egy ismeretlen részterület szakirodalmát, a szerzett ismereteket ki kell értékelni és kommunikálni kell a projektben résztvevők felé (az ügyfél, a menedszer és a fejlesztők felé, mégpedig úgy hogy értsék miről beszélsz).

Mivel a számítógépes nyelvészet nem triviális mértékben matematizált, a fenti szerep betöltéséhez elengedhetetlen bizonyos szintű matematikai érettség (az angol mathematical maturity kifejezés a quantok világában nagyon elterjedt, ezt magyarítjuk mi így). Ez a tájékozódás képességét takarja, amit értelmezhetünk úgy mint a bevett tankönyvek által lefedett anyag ismerete. Ez ad egy "szótárat" a kezünkben amivel egy-egy problémát lefordíthatunk a szakma nyelvére és kereshetünk a kurrens szakirodalomban. Esetünkben a bevett könyvek listája nem túl hosszú:
Posztunkban olyan könyveket ajánlunk melyek segítenek abban hogy a listán szereplő könyvek matematikai hátterét megértsük. Habár elvileg minden magyar középiskolát végzett ember jó pozícióban van hogy hamar eljusson gyorsan erre a szintre, a gyakorlat ennek ellentmond. Beef nemzetközi tapasztalatai szerint gyakran műszaki végzettségű embereknek is gondja van az alapokkal, ezért a lentebb ajánlott könyvek átnézését ajánlja nekik amikor csoportjába kerülnek, igaz tőlük elvárja hogy gyorsan hozzák magukat szintre. Egyetértünk abban hogy a bölcsészettudományok felől érkezők és azok akik régen foglalkoztak utoljára matekkal nem tudnak ilyen gyorsan haladni.

Érdemes végig gondolni mire építhetünk. Nyilván van mindenkinek egy viszonyítási pontja, mondjuk a középiskola, ami alapján be tudja lőni mennyire befogadó a matematikával szemben. Pár további tipp:
  • Logika és tudományelmélet mindenkinek - ha "matekundortól" szenved a kedves olvasó érdemes egy kis bemelegítéssel kezdeni
  • Logika mindenkinek I. - minden rokon tudományterületen (nyelvészet, filozófia, matematika, számítástudomány) kell tanulni egy kis logikát, ami jó kezdet és érdemes ennek átismétlésével belevágni a tanulásba
  • Logika mindenkinek II. - ha már vannak logikai alapjaink, érdemes nyitni a számítás- és automataelmélet felé, mivel ez természetes folytatása eddigi ismereteinknek. Itt lehet sikerélményünk, s a formális gondolkodás terén is pallérozódik közben elménk.
  • Matematika és logika nyelvészeknek - Dávid remekül összegyűjtötte a nyelvészeti vonatkozású anyagokat, ez is egy lehetséges irány a fenti pont előtt/után.
  • Statisztikai túlélőkészlet - szerencsére egyre több elméleti nyelvészet program része egy statisztika kurzus. Ez csak a minimum, ennél többet kell tudni, de jó kiindulási alap.
  • Valószínűség, statisztika és nyelv - szintén egy jó összefoglaló, erősen R centrikus. Az R segítségével operacionális tudásra tehetünk szert, de még mindíg inkább csak a felszínt karcolgatja ez az anyag.
Papíron nagyon okosnak kell lennie annak aki a fentieken végigmegy. De mégsem ez a helyzet! A fenti listát tekintsük irányadónak csupán. Amennyiben célünk az hogy a kurrens elméleteket megértsük és munkánk során kreatívan használni tudjuk túl kell lépnünk az informálisan bemutatott statisztikán és valószínűségszámításon, amihez sokat kell dolgoznunk.

A legjobb ha a Demystified sorozat köteteihez fordulunk az alapok átismétléséhez és/vagy elsajátításához. Habár sok jó kötet elérhető, nincs más sorozat amiben minden területhez hasonló formátumú és nyelvezetű kötet tartozik. Figyelembe véve hogy a szakma nyelve az angol, érdemes ezen a nyelven tanulni. Akit ez zavar, annak a Bolyai sorozatot tudjuk ajánlani. Habár sokan szeretik a Head First könyveket, hátrányuk hogy kevés feladatot tartalmaznak és gyakran túl informális stílusban íródtak. A Demystified könyvek messze nem tökéletesek, de sok példa feladatot, feladatot és tesztet tartalmaznak, a matekhoz pedig kulcsfontosságú a gyakorlás.

Így a sorozat darabjaiból a következő könyveket ajánljuk sorban:
  1. Pre-Algebra Demystified
  2. Algebra Demystified
  3. College Algebra Demystified
  4. Precalculus Demystified
  5. Trigonometry Demystified
  6. Calculus Demystified
  7. Probability Demystified
  8. Statistics Demystified
  9. Differential Equations Demystified
A Pre-Algebra kötet kihagyható azok számára akik biztosak magukban. Az Algebra könyv tkp. gyorsan áttekinti a középiskolai anyag egy jó részét, a Precalculus szintén, de akik nem magabiztosak ezen a téren nem hagyhatják ki! Tisztában vagyunk avval hogy ez rettentően nagy anyag, viszont ez jelenti a biztos alapokat. Szánjunk rá időt hogy elsajátítsuk ezeket. Beef tapasztalatai szerint az akinek csak ismételni kell és elhivatott nagyon hamar végez ezekkel. Attól függően mennyire kell "visszamenni" az alapokhoz, 6-12 hónapot számhatunk az anyag elsajátítására. Nem szabad elkeseredni ha ennél több időt vesz igénybe a dolog, könnyen lehet hogy egyéb kötelezettségeink miatt nem tudunk gyorsan haladni, ilyenkor csak a kitartás marad.

A fenti előismeretek birtokában léphetünk a "felsőbb" matematika területére.
  • A First Course in Discrete Mathematics - főleg a gráfelméleti alapok lefektetéséhez. Igazából akár rögvest a logikai alapok után is olvasható, de a tapasztalat azt mutatja hogy jobb akkor foglalkozni diszkrét matematikával amikor már valamennyire a számítástudománnyal is megismerkedett az ember.
  • Linear Algebra - Janich klasszikus könyve az európai hagyományokat követve általában elsőéveseket vezet be a lineáris algebrába
  • Linear Algebra Done Right - az angolszász hagyományokat követő lineáris algebra tankönyv. A legjobb a fenti kötetel párban feldolgozni.
  • Linear Algebra - alapos és jó könyv, de ne ez legyen az első lineáris algebra könyved!
  • Matrix Algebra - algebrai tanulmányaink lényege hogy ezt a könyvet fel tudjuk dolgozni. Minden erre futott ki!
  • Basic Probability Theory - megtévesztő a neve, mivel ez már nem informálisan vezeti be a valószínűségszámítás alapjait. Fontos végig venni, sokan sajnos nem jutnak el odáig hogy rendszeres valószínűségszámítást tanuljanak és ez nagyon nagy hátrány.
  • Principles of Statistics - haladó statisztika, mely megértéséhez a "calculus" könyvek anyagának ismerete szükséges. Szintén sokat jelent ha valaki ezzel túllép az informális statisztikán.
  • Information Theory - nagyon jó alapszintű bevezetés az információelméletbe
  • Information Theory and Statistics - sokan érzik hogy az információelmélet és a statisztika között van valami, hallottak is róla, de ha ezt a rövid könyvet elolvasod akkor ezek 99%-át felül fogod múlni mert tényleg tudod majd mi is a kapcsolat.
  • An Introduction to Information Theory - ez egy haladó könyv, öreg napjaidra viszont jó lesz :D
Az olvasó most zavarodottan pislog, talán nem véletlenül, hiszen ez hatalmas anyag. Ez egy BSc fele, de ne feledkezzünk meg arról hogy közben sokan mást is tanulnak, estleg dolgoznak is már és még élni is szeretnének. Nem szabad abba a hibába esnünk hogy alulbecsüljük az egy-egy könyv önálló feldolgozásához szükséges időt. Ne feledjük ahhoz hogy szakértővé váljunk egy területen kb. 10 évre van szükség, tekintsük a fenti listát ennek első n évének.

Nincsenek megjegyzések: