Magamról

Saját fotó
Főiskolai, majd egyetemi diplomamunkáimtól kezdve világ életemben, adatok, adatbázisok, adattárházak (leginkább Oracle) környékén mozogtam. Mostanság adattárházasként, adatbányászként élem napjaimat.

2010. szeptember 28., kedd

Lágy számítások XML adatkezelésben és deduplikációban

.
Eddig még sose tettem ilyet ezen a blogon, remélem nem túlságosan "necces" meg "gáz", hogy most ilyenre van hangulatom.

Ajánlom ezt a blogposztot...
* a Sztaki ifj. Benczúr András és Lukács András vezette adatbányász csapatának, akiknek eddig sosem tudtam eléggé megköszönni, hogy megengedték személyes részvételemet műhelymunka keretében való egyes témábavágó, - ennek a posztnak az alapját is képező cikkhez hasonlatos típusú - cikkek ismertetésén. Sőt, amikor kérdést tettem fel, akkor sem tették ki a szűrömet.
* Sidló Csabának, akinek a DeDup témában való cikkismertetéseit/előadásait mindig is külön rákészülve, és ami fő, élvezettel hallgathattam az elmúlt évek során.
* Fekete Zsoltnak, aki élményszámbamenően hatékony kérdéseket és felvetéseket tud megejteni a cikkek széles skáláján/spektrumán.
* Gáspár-Papanek Csabának (blog), irányomba való jóindulatáért, segítőkészségéért.
* Kovács Gyulának és Arató Bencének, akiknek a legutóbbi sikeres DeDup-projektemet köszönhetem, aminek során, síma notebookon, 100% vegytiszta Oracle-környezetben, teljes céges deduplikálást 70 másodperces, teljes magánszemélyes deduplikálást 20 perces futásidőre tudtam optimalizálni, érdekes akviziciós ügyfélkonszolidáció keretében.

Nem akármilyen könyv jelent meg és került ragadozó kezeim közé, a fenti tárgybeli (angol) címmel Soft Computing in XML Data Management, a Springer kiadónál, idén 2010-ben, 363 oldalon, 130 euróért (uszkve 40.000 forint).

Az összesen 12 cikk, egyenletesen három nagy témába sorolódik:
1. Fuzzy típusú határozatlanság XML-ek vonatkozásában
2. Rugalmasság az XML típusú adatmenedzsmentben
3. Néhány fejlesztés és alkalmazás a témában

Mielőtt belevágnánk egy kis bevezető a címhez.

A soft computing magyarul lágy számítások a mesterséges intelligencia és ezen keresztül az adatbányászat kulcsfontosságú területe, eredendően olyan típusú nehéz (matematikai) problémákra - amelyek explicit meg nyers erő módszerekkel nehezen kezelhetők - vázolt egyfajta alternatív megoldási lehetőséget. Klasszikusan a (1) Fuzzy, (2) Neurális háló, (3) Evolúciós/Genetikus algoritmusok illetve ezek tetszőleges kombinációi tartoztak bele, mára a wikipedia szerint például még a Bayes háló is beletartozik, számomra némileg meglepő módon. A blogposzt címében lévő könyv alapvetően egyébként a fuzzy vonulatot tárgyalja /azért van benne Bayes háló is :o)/. A lágy számításos témáról az 1922-es születésű, műegyetemi professzor emeritus, Retter Gyula írt szenzációs, friss, két - ráadásul  magyar nyelvű - könyvet.
(1) Fuzzy, neurális genetikus, kaotikus rendszerek : bevezetés a "lágy számítás" módszereibe
(2) Kombinált fuzzy, neurális, genetikus rendszerek

Az XML, mint a neve is mutatja egy Markup Language-féleség, nagyszerű tulajdonságai - teljesség igénye nélkül:
* text-formátum
* félig-strukturáltság
* különbségképzési lehetőség
* szintaktikai meg valamilyen fokú szemantikai konzisztencia biztosítása
Nem véletlen hogy mára széles körben nagyon jól használható formátumnak bizonyult.Többek közt adatok tárolására is. De nemcsak szimplán relációs világban megszokott rekordok tárolására jó. Kottázó programok(!) szabványos kimenete is például. Ad absurdum multimédiás és/vagy bináris adatokat is tudhat hordozni.Az Oracle rdbms-ben külön keletkezett XMLtype típusú mezőféleség speciális funkcionalitással, stb.

A könyv első mondhatni bevezető és felcsigázó része:
(1) cikk például a fuzzy adatokat tartalmazó XML adatforrások fuzzy reprezentációjához használható XMLschema lehetőségeit vesézi. Ez önmagában cikk nélkül is egy érdekes gondolat, akkor is ha eddigi életemből a fuzzy-vonulat eléggé kimaradt.
(2) cikk a fuzzyval megspékelt(beágyazott) relációs adatbázisról szól, fuzzy DTD-vel való leképzéssel
(3) cikkben a fuzzy halmazok és hasonlósági relációk szintén egy érdekes téma.
(4) De mindezeket übereli a könyv ezen részének zárófejezete: adatintegráció XML-ek segítségével. Egy ponton túl, ahonnan a relációs ábrázolás már nehézkes, amikor már nem csak az adatok hanem a befoglaló struktúráik is lehetnek képlékenyek, kézenfekvően merülnek fel a XML nyújtotta félig-strukturáltság előnyei, speciális szabályrendszerrel megspékelve. (Érdekesség: integrációs algoritmus alapjának az XQuery-t választották a cikk szerzői!!!!)

A könyv második részében olyan témák kerülnek elő, hogy
(1) ha már az adatok és strukturáik kevéssé fixek (horribile dictu heterogén környezetből származóan), akkor a rajtuk való keresés és join is más megközelítést igényel, ha eredményre akarunk jutni.
(2) cikk azt feszegeti, hogy az XQuery-ből hogyan lesz fuzzy XQuery.
(3) Egy további lehetőség az XML nyújtotta rugalmassági előnyök kiaknázására, amikor relációs adatokat XML-leképezve (ez ugye eléggé könnyedén megtehető, pláne, hogy szigorúbb struktúrából könnyebb áttérni egy megengedőbb struktúrába) egy bővített funkcionalitású lekérdezési interface-t lehet adni az a leképzett adatokra.
(4) Végül a könyv ezen részét lezáró, az első rész szintén utolsó cikkével nagyban harmonizáló deduplikációs cikkfinomság, de erről külön szeretnék beszélni, hiszen őmiatta születik ez a blogposzt.

A könyv harmadik részére megjön az igény, hogy a már meglévő újszerű tárolású és tálalású adataink köré most már kész alkalmazást is kellene építeni.
(1) Itt lehet említeni például  a Fuzzy Process Modellek részére XML-alapú adatcserét.
(2) Sőt lehet XML-alapú keretrendszert építeni inkomplett és inkozisztens adatok menedzselésére (a cikkben konkréten egy klinikai rendszerként).
(3) Sőt nagyot álmodva komplett Fuzzy Adatbázis Architektúra is konstruálható (Alliance), fuzzy-logika technikákkal, XML-bázison.
(4) A könyvet lezáró utolsó cikkben már az indexelés vonatkozásai is hangsúlyt kapnak, a szemantikai feltárással egyetemben.

És akkor nézzük a második rész negyedik amúgy 32(!) oldalas cikkét:

An Overview of XML Duplicate Detection Algorithms.

A magyarul DeDuplikálás vagy röviden DeDup életem meghatározó feladata, élménye. Több ilyen projektben dolgoztam, még többet láttam. Egyszer talán lesz mód, hogy megírjam ebbéli élményeimet, tapasztalataimat.Már többször nekikezdtem egyébként, hogy valamit megírjak belőle ezen a blogon, de akárhonnan közelítettem, mindig túl sok volt az anyag, mindig túlnőttem a képzeletben magam elé állított kereteket, így eddig minden ilyen irányú próbálkozásom kudarcba fulladt.

Pár dolgot viszont mindenképpen érdemes magyarázólag és előljáróban említeni a továbbiakhoz.

(1) Ha az egyik informatikai rendszerben egy urat Szalamander Gáborként, egy másikban Szalamander G.ként tárolják, miközben az anyja neve, személyigazolványszáma stb megegyezik, akkor triviálisan egy és ugyanazon húsvér ember adatai vannak különféleképpen tárolva. Persze nemcsak rövidítés, hanem elírástól elkezdve a legkülönfélébb hibákig sokféle eltérés lehet a rögzített adatokban.Kézenfekvően merül fel a feladat, hogy az egy emberhez tartozó különféle adatrekordokat kapcsoljuk valahogy össze a rekordokban lévő természetes, ám nem feltétlen kitöltött adatok illetve nem feltétlen egzakt egyezés alapján (mivel az amúgy egyébként preciz rögzítésű valamint 100%-os kitöltöttségük miatt jól használható informatikai egész azonosítók eltérnek, így azok nem használhatók a feladatban).Az előbbiek (természetes adatok) alapján a deduplikálásnak komoly nyelvspecifikus vonzatai is vannak, ami magyar nyelvterület esetén - mint sok mindenben így itt is - tudhatnak komoly kihívásokba ütközni (egy példa; Ausztráliában összehasonlíthatatlanul egyszerűbb a lakcímek kezelése)

(2) Ha van egy nagy táblánk, amiben minden húsvér ember minden rekordja szerepel, akkor adatbányász terminológiával élve kezdetben csoportosítást kell végezni a rekordokra, újabb rekordok megjelenésekor meg osztályozást.

(3) A számítógépes/algoritmikus DeDup elméletileg bizonyíthatóan sosem lehet 100%-ban tökéletes. Elsőfajú hibaként tévesen is kerülhet be egy rekord a rekordcsoportba, másodfajú hiba szerint maradhat is ki rekord egy rekordcsoportból.Az ilyen problémák kiküszöbölésére humán erőforrást (brrr) szoktak alkalmazni.

(4) Két adatrekordról eldönteni adatösszevetéssel, hogy akkor most ők egy ember két rekordja szintén nagyon nehéz feladat (gépileg is és kézzel is), alapvetően szabályrendszert szoktak megadni rá. Mivel az elsőfajú hiba a sokkal inkább üldözendő, ezért az ilyen közelítő szabályrendszer alapvetően "szigorú" és kevésbé megengedő szokott lenni (egy csaló ember rekordját egy VIP ember rekordjával nem "praktikus" összevonni). Az összevont/csoportosított rekordokból meghatározni egy "legjobb rekordot" megint nagyon nehéz feladat, amit megint csak közelítőleg lehet megoldani.

(5) A nyers erő (brute force) algoritmus szerint minden rekordot mindenkivel összehasonlítva négyzetes lesz az algoritmus műveletigénye. Mivel többszázezres deduplikálandó ügyfélállományok még Magyarországon sem ritkák, ezért ez az út a lehetetlenség útja, az óriási és elvégezhetetlen számítási igény miatt.

(6) Belátható, hogy a mindent mindennel összehasonlítás túlnyomórészt felesleges is. Tehát az igazi feladat minden szükséges hasonlítást elvégezni a a hasonlítások számának minimalizálásával.


És akkor most már nézzük a DEDUPLIKÁCIÓS CIKKet néhány részletében.

A célkitűzése egyfelöl egy új reprezentáció megadása a deduplikálásra, a hatásosság(=effectiveness) szofisztikáltság értelemben és a hatékonyság(=efficiency) azaz mondjuk most így műveletigény csökkentés jegyében. Majd összehasonlítóan megvizsgál három létező rendszert (DogmatiX, XMLDup, SXNM), amelyek különféle módokon egyensúlyoznak a hatékonyság és eredményesség között. Az első és harmadik struktúra-vezérelt metódus, a közbülső pedig Bayes-hálós.

A cikk nagyságrendi adata szerint 2002 óta évi 600 milliárd dollárt költenek adatminőségi problémákra csak az USÁ-ban. Azaz összevethetőség szempontjából megjegyezhető: a teljes magyar adósság többszörösen belefér ekkora éves(!) összegbe.

Az adatintegráció három lépése:
(1) Séma-megfeleltetés/illesztés és - leképezés (schema matching, schema mapping).
Idetartozik, hogy ha az egyik forrásban név mellett csak az anyja neve van, a másikban meg csak a telefonszám, akkor a közös sémában mindkettő plusz attribútum fog szerepelni
Idetartozik, hogy például ugyf_tel attribútumban (és nem egy másikban) van a szükséges telefonszám adat.
Idetartoznak olyan finomságok is, ha az egyik adatforrásban külön vannak a család- és keresztnevek egy másikban egyben Magyar nyelvterületen olyan típusú "örömökkel", mint például Hunné Zoltán Erika.
(2) A duplikátum-detektálás ezen a fenti közös sémára hozott adatokon.
(3) Az adatfúzió, amikor a szükséges sorok összevonódnak (közös azonosítót kapnak).

Az angol szakirodalomban 1959-től kezdve időrendi sorrendben a következő terminológiák sorolódnak fel a deduplikálásra. :o)
* record linkage
* entity identification
* deduplication
* duplicate detection
* object matching
* entity resolution
* fuzzy duplicate identification
* object consolidation
* reference reconciliation
* object identification

Mivel XML-ben vannak az adatok, rögtön merül fel a kérdés mit nyerünk és veszítünk a relációs módihoz képest.
Előny: sokkal flexibilisebben, korlátok nélkül tárolódhatnak benne az adatok, illetve a hierarchikus (fa)struktúra révén kellemesebb műveletigényű deduplikáló algoritmus lehetősége csillan meg.
Hátrány: jóval nehezebb maga a deduplikálás, az alábbi két probléma mentén
(A) candidate-description ambiguity (én most így mondom, adatszintű többértelműség)
(B) structural diversity (strukturális különbözőség)

Szakirodalom alapján az alábbiak hozhatók fel XML-centrikusan szemlélve a hagyományos deduplikálás történelmi előzményeként. A komponensek kvázi tetszőleges kombinációja megtalálható a cikkben, olykor irodalmi jegyzékes hivatkozással is. :o)
ADAT: (1) relációs tábla (2) Fa például XML-adat (3) Gráf például XML kulcsreferenciák.
ALGORITMUS: (1) Iteratív (2) klaszterező split and merge alapon (3) gépi tanuló algoritmus, ahol a modell is, a hasonlóságmérték (=similarity) is tanulás tárgya
ALGORITMUS FÓKUSZ: (1) Hatásosság, minőség (2) Hatékonyság (3) Skálázhatóság

XML-alapú deduplikálás történelmi előzményei:
* Úgynevezett közelítő (approximate) XML-join, saját - tree edit - távolság-fogalommal.
* Vektorokra leképzés, cosinus távolsággal
* Súlyozott hasonlósági mértékek lineáris kombinációja deduplikációs mezők fontossága alapján
* Ezután robbanásszerűen szaporodtak az olyan XML-alapú deduplikálások, amik egyre jobban támaszkodtak az XML-sajtosságaira (struktúra, szemantika)

Nézzük akkor a beveztőben említett és a cikk fókuszában lévő három algoritmust/rendszert:

Itt egy ábra két node-dal, IMDB filmadatbázisból:



I. DogmatiX Framework

(A) candidate definition, azaz a duplikátum-jelöltek (alap)definiciója, azaz megmondani, hogy az XML-ben mely csomópontok képezik a hasonlítgatások tárgyát. Régi relációs terminológiában annak megmondása, hogy mely mezők alapján hasonlítunk két ügyfél-rekordot (például anyja neve alapján igen, átlagegyenlege alapján nem)

(B) duplication definition, azaz mikor kell összevonni két egyedet (és mikor nem). Természetesen minden fentebb definiált jelöltre megadva. Ez ebben a DogmatiX-ben praktikusan egy Xquery-kifejezés lesz. A query egy (text,xpath) párosba fog leképződni, aminek a hivatalos neve, Object Description (=OD). Példa: U-> ("John S.", /mv/dr/text()) illetve U*-> ("J.Smith", /mv/dr/text()). A dolog első ránézésre ijesztőnek néz ki, de könnyedén algoritmizálható r-távolságban lévő (1) ősökkel, (2) leszármazottakkal illetve (3) k db legközelebbi leszármazottra vett szélességi kereséssel.

(C) duplication detection, azaz hogyan kell duplikátumot találni. Első lépés a szükséges hasonlítások csökkentése egy filter függvénnyel, amely arányt számol a jól ismert IDF-fel (=Inverse Document Frequency) méghozzá egy adott - fentebb definiált - OD és az összes OD vonatkozásában. Pontosabban softIDF-et (attól soft, hogy vannak csak lényegében hasonló elemek, amiket azonosnak vesz). Ezután az - amúgy egy küszöbértéktől függő - filter után minden pár hasonlítódik egymással. Az U és U* hasonlósága (normalizált edit distance), a következőképpen néz ki (a konkrét fenti példánkban)

Sim(U,U*)=softIDF(Pros and Cons)/(softIDF(Pros and Cons)+softIDF(John S.)+softIDF(J.Smith))

Struktúra-vezérelt XML-távolság

Egy javítás lehetséges az előzőhöz képest, mégpedig egy speciális távolságfogalommal, az úgynevezett átfedések koncepció alapján  (=overlay). A fenti ábrán U és U* minden node-ja megfeleltetés révén átfedésbe hozható egymással, az U* egyszem AC2-jét leszámítva (annak nincs párja U-ban).

Egy átfedés akkor komplett, ha nem része másik átfedésnek.
Az átfedés költsége a mappelt node-os string-hasonlítások Levenshtein-távolságainak (~edit distance) összege.
Egy átfedés akkor optimális, ha komplett és nincs más átfedés, alacsonyabb átfedési költséggel.

A mélyben egy rekurzív algoritmus dolgozik gyökérből lefelé haladóan. A node-párosítás pedig az operációkutatásból ismert hozzárendelési problémánál ismeretes úgynevezett magyar módszer alapján történik.

Az állítás az, hogy a téves összevonások jobban elkerülhetők így (bőven elhihető), de meglepő módon kvázi ugyanolyan sőt akár még inkább könnyedén számolható az egész DogmatiX-es cucc az előző távolságfogalommal. Ezt mondjuk én most így hirtelen nem látom át, a cikk meg nem részletezi miért is.


II. SXNM—Sorted Neighborhood for XML Duplicate Detection

Ez a bottom-up metódus úgy próbálja csökkenteni a szükségtelen összehasonlítgatásokat, hogy miután minden hasonlítandó tényezőre kiszámol egy generált kulcsot - például: U{"Pros and Cons", 1983}->PRO83, U*{"Pros and Cons", 1984}->PRO84 - a kapott kulcsokat egyszer még a kezdetek kezdetén lerendezi és minden elemen egyszer végigmenve, minden elemnek csak a közvetlen - fixen rögzített - környezetétbe hasonlítgat bele.(Mj: A módszer magyar nyelvterületen ebben a formában bukásra van ítélve, ugyanis a kedves hölgyek férjhez mehetnek és felvehetik férjük nevét -> Salm Gizella, Matula Gizella). Persze a rendezés utáni műveletigény látványosan csökken a nyers erős módszer négyzetes műveletigényéhez képes O(nlog(n)).

A DogmatiX-hez hasonlóan az OD-k megkonstruálhatók, annyi a nóvum, hogy az OD-hez még relevancia is kapcsolódik pluszba. A hasonlóság elemzés is ugyanúgy mehet Levenshtein-távolságok aggregálásával (súlyozott összeg). Bár a cikk szerzői bedobják az egyébként szintén ismert és használatos Jaccard-távolságot is.


III. Bayes Networks for XML Duplicate Detection (XMLDup)




A cikk abból a tételből indul ki, hogy két node deduplikálandó, ha értékeik azonosak, és a gyerekeik is deduplikálandók - mily meglepő az előzmények után :o) A fenti körmentes irányított gráfos ábra mutat egy példát, hogy hogyan is néz ki ez a korábbi példára vetítve.A bottom-up módszer kellemetessége abban nyílvánul meg, hogy a teljes node-halmaz helyett az egymástól független fontos node-okat veszi csak górcső alá.







Ezek után a klasszikus Bayes háló számolását alkalmazva, node-ok közti "valszínűségpropagálás" a hagyományos módon számolódik, ahogy a fenti ábrán is látszik, mv11 gyökér-node esetén. Ha a kapott érték 0-hoz közeli, akkor teljes a különbözőség, ha 1-hez, akkor meg egyezés áll fenn. Karakterfűzér-hasonlításra e cikk szerzői is a (normalizált) Levenshtein-távolságot használták.


FUTÁSI TAPASZTALATOK:

Adatbázisok:




Hát az látható, hogy túl nagy fába nem vágódik a fejsze.;) Az adatbázisok nagyjából fele-fele arányban tartamaznak duplikátumokat és "szingliket".

IMDB: véletlenszerű válogatás a közismert filmes adatbázisból, attribútumok: title, director, author, year, movie key, rating, genre, keywords, cast member, runtime, country, language, certification

Restaurant. Fodor’s and Zagat’s restaurant guides adatbázisa, attribútumok: name,
address, city, type, phone, code, geographic coordinates

Cora: könyvtári információs adatbázis, attribútumok.: author, title, venue name, volume, date

FreeDB: Ez az audiólemezek népszerű szöveges adatbázisa, kevesebb duplikátummal, attribútumok:  artist, disc title, category, genre, year, CD extra information, track titles

IMDB+FilmDienst:. Véletlenszerű 500 film kiszedése a két adatbázisból. Integrálás után az attribútumok: year, title, aka-title, info, genre, actor


Rendszerek összehasonlítása

A szokásos precision és recall százalékos mértékek alapján

Precision: korrektül eltalált duplikátumok aránya a tesztelendő rendszer által duplikátumnak minősítettekhez képest..

Recall: korrektül eltalált duplikátumok aránya a valós duplikátumokhoz képest.


Futási idők



Nem meglepő módon tarolt az SXNM, ami a deduplikálás minősége helyett inkább a performanciára összepontosított.


DeDuplikálás minősége























A függőleges tengelyre kerül a precision, a vízszintesre meg a recall.Mivel az a jó, ha minden duplikátum megvan és tökéletes duplikátum azonosítás mellett, ezért a cél, a teljes "négyszög" elérése. Az a rossz, ha valaki minél kevésbé tudja a [1,1] négyszöget kifeszíteni. A leggyorsabb SXNM látnivalóan gyengélkedik a deduplikálási minőség terén.


Végső következtetések

(1) Az eredményes deduplikálást nagyban befolyásolja az adatbázisokban lévő hibák típusa. Erre én is tettem személyes megjegyzést/kiegészítést az SXNM elméleti taglalása kapcsán.

(2) DogmatiX nagyon jó deduplikálási minőséget adott, (többiekhez képest) nem annyira rossz futási idők mellett.

(3) A cikk szerzői szerint alapvető hátrány a cikkbeli módszereknél, a különféle paraméterek, súlyok, küszöbértékek, hasonlóságok nem túl egzakt mivolta. (Mj.: szerintem nyugodtan mondhatjuk, hogy ez általános téma egészét érintő probléma és nem specifikus és konkrét módszerek problémája)

(4) Jó lenne elmozdulni a minél egzaktabb és automatikusabb feldolgozás irányába.

+1 blogposztírói morfondírozás

Érdekesek ezek a tudományos kísérleti cuccok. Próbálnak demó méretű adatbázisokon ötleteket kipróbálni több-kevesebb sikerrel. Miközben itthon is, évek óta, nap mint nap, többszázeres ügyfélállományokon kell elviselhető teljes deduplikálást produkálni.

Amit én alapvetően hiányolok az a párhuzamosítás gondolatának teljes mellőzése. Holott skálázhatóság mellett kevésbé lenne releváns a felesleges párosítási igények radikális redukálása - de jó szópáros... :o)))

Mindazonáltal a DogmatiX IDF-es ötlete elött le a kalappal. Az mindentől függetlenül zseniális gondolat egy józan paraszti ész szerint is reális XML-es gondolatkör apropóján.

2010. szeptember 22., szerda

Ingres VectorWise a RapidMiner előszobájában

.
A társblogon Prekopcsák Zoltán írása alaposan felcsigázta személyemet egyik konkrét információjával.

A jövő évre várható még a RapidMiner alapszoftver 6-os verziója...Az Ingres céggel szövetkezve pedig szorosan mellé integrálják az Ingres VectorWise adatbázis-kezelőt

Az idő szoritásában ugyan, de nem álltam meg, hogy egy picit ne nézzek utána a témának szakmai kiváncsiságomnak, meg régi rdbms-es énem emlékeinek engedve.

Az Ingres egy nagyon jól hangzó márkanév (volt) az adatbázisos világban, amit elsősorban élenjáró nagyszerű innovációjának köszönhetett. A nagy Oracle is csomó dolgot vett át tőlük (hash, ami nagy tábláknál hatékonyabb elérést ad az indexekkel szemben, vagy a CBO/=Cost-Based Optimizing/ az RBO-val/=Rule-Based Optimizing/ szemben). Ezek ma már alapvetőknek számítanak az iparban. Az rdbms-piac sajátosságai (pl.: óriási tehetetlenségi erők) következtében a 90-es évek végére az Informix, aztán meg az Oracle mindkettőt lenyomta a piacon. De ez mit sem von le az Ingres szakmai értékeiből. Aki Ingres-essel találkoztam az mind élvezettel dolgozott vele és beszélt róla.

A társblogos poszt nyomán egyből felcsillant a szemem, hogy akkor egy (open source) adatbányász tool kap egy open source rdbms-t maga alá. Hogy az milyen frankó lesz, mert előfeldolgozás címén (amiben a Rapid Miner, hogy is mondjam finoman -> küzd még kihivásokkal), komplett flexibilis szabványos rdbms-es, szabványos sql-motoros - házon belüli - megoldást kap, gyakorlatilag mondhatni minden igényt kielégítve. Na ez a megközelítésem a felhasználói funkcionalitásos megközelítés. És ahogy jobban utánanéztem a témának, be kellett lássam némileg tévedtem várakozásaimban.

Ugyanis ez az Ingres VectroWise egy performanciára végsőkig kihegyezett analitikus platformos célszerszám, teljesen zöldmezős alapokról felépítve, felpörgetett korunk követelményeit és trendjeit/lehetőségeit figyelembevéve.  Beáldoznak vagy még nem implementáltak sql-világban megszokott dolgokat - némi deja vu a régi select alkérdés nélküli MySql v4 elötti világra -, részint fordítási hibákat részint lassabb futási időket implikálva. Cserébe, ami működik az viszont - ígéret szerint - nagyon, kvázi csodával határos módon - hatékonyan működik. Funkcionalitás kontra performancia. Az Ingres VectorWise a performanciát tűzte ki a zászlajára.

Nézzük, hogyan milyen építőkockákkal akarja ezt a hatékonyságnövelést elérni az Ingres VectorWise:

* Ilyen építőkocka a modern CPU-k azon tulajdonságának kihasználása, hogy vektorokat már jobban kezel mint különálló elemi adatokat. Egyáltalán is megjegyezhető, hogy nagytömegű adatelérésben a háttértár adatblokkjainak elérése a leggyengébb láncszem analitikus adatelérésnél: vagy a leglassabb, vagy a legdrágább (EMC-típusú winchester-szekrényekre gondoljunk elsősorban, amit aranyárban mérnek). A processzorok viszont önmagukban is gyorsak, és darabszám alapján skálázhatók felfelé. Tehát adott az ötlet toljunk át minél több feladatot most így mondom a winchesterekről a processzorok felé.

* Ilyen építőkocka az oszlopalapú tárolás az eléréshatékonyság érdekében. Itt ugye arról van szó, hogy egy 1-5-ig kategóriákat tároló oszlop tárolása egészen másképp néz ki, mint egy változó hosszúságú karakterfűzér tárolása. Analitikus adatelérésnél meg nem egy rekord összes adatára vagyunk kiváncsiak egymás után, hanem a rekordok egy attribútumát szeretnénk egybe látni, aztán a következő attribútumát.

* Ilyen építkocka a radikális adattömörítés lehetősége, köszönhetően például éppen az oszlopalapú tárolásnak is. Hatékony tömörítésnél kevesebb adatblokkot kell felolvasni adatelérésnél a háttértárból némi plusz processzor erőforrás beáldozása árán: de hiszen éppen ez volt az eredeti szándék is.

Ilyenkor kézenfekvő az asszociálás a Netflix-verseny adatbázisára. Ott ugye 1-5-ig voltak ratingek százmilliónyian. Ha jól tévedek kicsomagolva ostromolta a 2GB-ot, amit tömörítve lehetett leszedni a Netflix-verseny honlapjáról, talán 100MB-os nagyságrendben.

Na most egy ilyen Ingres VectorWise típusú szerkezet azt ígérheti hosszú távon, hogy kvázi ki sem kell csomagolni - csak kvázi kovertálni - a letöltött Netflix tömörített adatállományt. A konverzió (adatbázisba töltés) nem úszható meg ugyan, viszont méretben azért összemérhető tömörítvényen is lehet kvázi rdbms-operációkat és analitikus adatelérést kezdeményezni. És persze aztán meg adatbányászkodni rajta.

* Ilyen építkocka a speciális indexépítési és -elérési módok. Például tömörített adatblokkra minimális és maximális érték. Hogy fel se kelljen olvasni szükségtelen blokkokat. Stb.

Két érdekesség:
(1) Egyelőre csak Linuxon érhető el az Ingres VectorWise, de ígéret szerint hamarosan jön - a ráadásul 64-bites - Windows verzió.
(2) Nem ennél az Ingres-cuccnál hanem a rendes Ingresnél láttam, hogy illesztik az Oracle világban fogalomnak számító TOAD-ot. Na attól dobtam egy hátast. :o)

PS: Tudom hogy helyenként sok kvázit írtam, de lássuk be egy csökkentett funkcionalitású sql nem teljes sql, egy adatbázisba töltés sem szimpla konverzió,még ha menedzseri szemlélet keretében el is lehet sütni.

2010. szeptember 19., vasárnap

IBM SPSS Modeler v14 - első benyomások

Kicsit hatásvadásztam a címben. :o)

Mint a képen is látható, ez bizony még a régi logó, sőt a régi márkanév. Pontosabban a régebbi. Ugyanis már nem a nagyon jól kitalált Clementine, és még nem a címbeli IBM SPSS, hanem közbülső, tulajdonképpen pár hónapot megélt márkanév. A PASW egyébként a Predictive Analytics SoftWares-ből jön.


A dolog firtatása azért lehetséges egyébként, mert az IBM SPSS Statistics v19-es változata, már nem PASW hanem IBM SPSS logó alatt fut, IBM-es splash-képernyővel, Eclipse-szel felszerelve, jelentősen meghízva.

Nem is mondtam pedig evvel kellett volna kezdenem. Hálás köszönet az SPSS Magyarországnak, hogy rendelkezésemre bocsátott a tárgybeli termékükből egy használható trial-verziót. Ezért jár nekik egy hatalmas piros pont, íme: * És hozzá:
IBM SPSS Clementine/Modeler - SAS Miner = 1:0
Ugyanis ebben az a kevésbé érdekes hogy Clementine-ból kaptam trialt, sokkal inkább az, hogy annó a SAS-tól bár kértem hasonlót írásban, kétszer is, ráadásul árajánlat formájában (tehát nem kunyerálásként), de még csak válaszra sem méltattak. Ők valószínűleg túl magas parnasszuson vannak már ahhoz, hogy az olyan pórnéppel kínlódjanak meg vesztegessék rá drága idejüket, ahová én is tartozom.

Clementine - remélem nem haragszik meg senki, de én így fogok rá emlékezni és hivatkozni továbbra is, mondhatni a mainstreammel szembemenve, legalábbis egyelőre. Különben is a Modeler egy vagy két "l"-je engem halálra idegesít, annál is inkább mert gyarló módon nem tudom, hogy az angol terminológia mikor szereti az egyiket vagy másikat használni.

Az új Clementine-ban két párját ritkítóan nagyszerű finomság van.

(1) Először láttam, hogy a setup DVD-n (ami csak a desktop változatot tartalmazza, a nagyszerűségesen szimpatikus in database miningot is magábafoglaló server változatot nem) egyben van fenn a x86-os és x64-es változat, persze dupla akkora helyet követelve magának a lemezen. Így már érthető az is, hogy miért nem elég már a régimódi CD a telepítéshez. ;)

Ez sokkal fontosabb feature, mint az ember felületes első ránézés után gondolná. Ugyanis, ha van területe az informatikának, ahol a 64-bites architektúra előnyei kidomborodnak, az az adatbányászat, azon belül például az apriori-s alapvetően memóriában dolgozó algoritmusok. 64-bites architektúra sokkal nagyobb címzéstartománnyal bír, következésképpen sokkal nagyobb munkamemória címezhető meg. Persze nem mintha ezt is nem lehetne kinőnie egy adatbányásznak . ;)

Mivel a Clementine java-alapú eszköz, így elvben nem nagyon volt akadálya eddig sem az x64-es futtató engine-nek, bizonyára eddig is létezett. Csak velem szembe most jött először ilyen :o)

(2) Régi nagy vágyam oldódott meg. A táblázatok scrollbarjai végre görgethetők középső egérgombbal. Ez a korai java-sdk-knak volt egy korlátja. Mostanra(?) sikerült végre eltüntetni ezt a hiányosságot.

Ezek kis dolgok. Annyira kicsik, hogy a What's New leírásban nem is kapott helyet, ha jól láttam. De számomra rendkívül fontosak. :o)

És akkor nézzük, hogy a What's New milyen számomra szubjektíve izgalmas újdonságokat ír.Betűhíven lefordítani nem akarnám a dolgot, részint sok is, unalmas is, van erre más alkalmasabb ember is.

Látnivalóan megváltozott a nyitó wizard is. Egy új finomsággal bővült. PASW Modeler Advantage. Vannak olyan "elvetemült" felhasználók, akik mindenféle verziózott csoportmunka keretében az adatbányász streamjeiket (zip tömörítvény PMML-es str-állományokat) nem filerendszerben (mint én), hanem repository meg egyéb helyeken tárolják, meg onnan nyitják meg. Na őket ez biztos lázba fogja hozni. :o)




Látnivalóan megváltozott a kinézet (ami visszaállítható a régire). Ha a középső egérgomb használhatóságának ez az ára, ám legyen. :o) /Csak poén, senki ne vegye komolyan/







Változott a terminológia (egyszerre a Statisticsben és Clementine-ban). Teljes mértékben az előnyére, szerintem. Például a
* TYPE -> MEASUREMENT LEVEL
* DIRECTION -> ROLE
* RANGE -> CONTINUOS
* DISCRETE ->CATEGORICAL
* SET -> NOMINAL
* ORDERED SET -> ORDINAL
* IN -> INPUT
* OUT -> TARGET

Új node-ként bejött az XML. Ebben az a nagyon szimpatikus számomra, hogy míg a régről megszokott .SAV, egy teljesen zárt bináris állomány, addig ez az XML úgy nyílt és ASCII formátum, hogy szintaktikai és valamilyen fokú szemantikai konzisztencia garantálható hozzá.

Új nodeként bejött a LINEAR node, szintén nagyon szimpatikus finomságként. A hagyományos folytonos célváltozós lineáris regressziót lehet boostinggal finomítani (á lá ensemble), hogy az iteratíve további tanítás során a célváltozóhoz további magyarázóváltozók kapcsolhatók. Ily módon a performancia(futási idő) és a modellfinomság széles spektrumán lehet szánkázni. :o)

Bagging és boosting okosságaival azonban a neurális háló illetve a döntési fák is kiegészültek. Classification & Regression Tree, Quest, Chaid, sőt az előbbi kettő felnőtt a CHAID-hez nagy adathalmazok tekintetében is.

Neurális háló ugyanazt az algoritmust kapta, mint ami volt a Statisticsben. Ez mondjuk nem tudom mennyire jó hír. Azért a Clementine-nak nagyon jó neurális hálója volt, míg a régi SPSS neurális hálója árban is, paraméterezhetőségben is, robosztusságban is, stabilitásban is inkább csak követni igyekezett az eseményeket.

Megszünt a GRI-node. Megmondom őszintén én egyszer kísérleteztem annó evvel a node-dal, és az nagyon balul sült el, mert nem bírtam kikeveredni a hibaüzenetek tengeréből. Ez persze bőven lehetett az én hibám is. Az viszont érdekes, hogy az IBM SPSS azt ajánlja, használjunk helyette APRIORI-t, noha abban nem lehet folytonos magyarázóváltozó. Persze ez nem olyan tragédia mint elsőre látszik, hiszen folytonos változókat lehet BIN-elni. Csak hát egy drága eszköztől nyílván nem fapados hackeléseket vár el az ember.

In Database Miningban megjelent a Microsoft Time Series meg Sequence Clustering illetve az Oracle Attribute Importance metódus támogatása. Az előbbi azért érdekes, mert a társblog is megemlítette, hogy a Microsoft zárt nehezen átlátható algoritmusai olykor meglepően jól teljesítenek (döntési fa). Az utóbbi Oracle-s cucc meg azért, mert a számomra legalábbis meglepő MDL=Minimum Description Length algoritmust használja. Egyszer pár hete neki ugrottam a guglinak, hogy ameddig a szemem bírja megnézzem mit is írnak erről. Nekem az jött le, hogy
(1) Van amikor szenzációsan teljesít és van amikor egyáltalán nem
(2) A fentiek éppen ezért nem teszik könnyűvé általános célú eszközzé előléptetését.

Update database on export, olyan update, ami nem droppal és újralétrehozással nyit. Az mind semmi, de új mezővel egészíthető ki a tábla. Mezőtörlésről itt sem szól a fáma. Valahogy a táblák csak nőnek az exabyte-ok világban. :o)

Model nuggetek/"gyémántok" automatikusan hozzáadódnak a streamhez, ahogy kikalkulálódtak. És persze ez is kikapcsolható akinek nem tetszik.

Runtime prompt session és stream paraméterekhez.

A kedvenc olvasmányom az Algorithms Guide 428 oldalról lecsökkent 368 oldalra. Bejöttek az Ensembles algoritmusok, Linear node algoritmusa (hurrá) és bővült két fejezetre a neurális háló körüli dolgok.. Mások például Generealized Rule Induction meg ugye kihullottak.

2010. szeptember 14., kedd

Intelligens ügyfélszolgálati rendszert vezet be a Vodafone

. Az alább következő blogposzt már v1.1-es verziójú és egyelőre egy darabig véglegesnek is tekinthető. A tegnapihoz képest jelentős javítást az indokolja, hogy a hír mögötti új hangbányászati illetve -felismerési technológiára az elmúlt pár órában lett egy pici rálátásom, már nem kell annyira a sötétben tapogatóznom.Mivel v1.1-et írtam és nem v9.0-t nagy csodát senki ne várjon! ;) Friss tegnapi tárgybeli hír két forrásból is, a második (indexes) cikk kommenteket is tartalmaz, ennyiben érdekesebb. :o)   Intelligens ügyfélszolgálati rendszert vezet be a Vodafone (index.hu) A gépek figyelnek, ha a Vodafone-t hívjuk (privatbankar.hu)
A Vodafone Magyarország és a Montana Tudásmenedzsment Kft. intelligens ügyfélszolgálati rendszert vezet be a mobiltávközlési társaságnál, a valós idejű ügyfélkiszolgálás egy folyékonybeszéd-felismerő szoftveres megoldáson alapul, s első lesz a magyar piacon A kedden Budapesten sajtótájékoztatón bemutatott megoldás a telefonáló beszédének elemzésével automatikusan meghatározott kategóriákba sorolja a hívást. A rendszer képes lesz olyan statisztika előállítására is, amely megmutatja az ügyfélszolgálat kihasználtságát és a leggyakoribb kérdéseket. A kategóriáknak köszönhetően hatékonyabban lehet majd a munkát megszervezni, a munkatársakat beosztani, így az ügyfél gyorsabb és pontosabb megoldást kaphat problémájára. A Montana által vezetett fejlesztést az Európai Unió és a magyar állam összesen 218,4 millió forinttal támogatja. A kutatás-fejlesztés révén a Vodafone először alkalmazhat majd hangfelismerő rendszert call centerében. A projekt teljes bekerülési költsége 336 millió forint. A projekt két év alatt, 2012 első negyedévének végére éri el a kívánt eredményt.
NÉZZÜK AKKOR, mit lehet ennyi infóból kihámozni.
* Nincs új a nap alatt: következzenek a történelmi előzmények

Régi vágy a szakmában a szöveg (text) és a hang (voice) kölcsönös megfeleltetése. Míg azonban a szöveg felolvasása hanggá régóta és jó minőségben létezik, úgymond könnyű feladat. A másik irány vagyis a hangzó szöveg írott szöveggé alakítása jóval nehezebb feladat. A historikus előzményeket is figyelembevéve vannak különböző nehézségi fokozatok:

- Nem mindegy, hogy például Bőzsöny Ferenc szép magyar beszédét CD-minőségben kell dekódolni írott szöveggé, avagy szegedi tájszólásos ember recsegős és/vagy háttérzajos vonalas- vagy mobiltelefonról érkező hangját.

- Nem (feltétlen) mindegy a nyelv, különös tekintettel arra, hogy a magyar nyelv agglutináló (ragozó) nyelv, szemben az ebből a szemponból jóval egyszerűbb angol nyelvvel. Nem is véletlen, hogy angol nyelvterületen előbb voltak sikerek a témában.

- Nem mindegy, hogy egy szöveghez kapcsolódik-e érzelmi analízis. Nyílván az olyan ügyfélre jobban kell figyelni, aki ordít és/vagy dühös, pláne, ha kiemelt jó ügyfélről van szó. Vagy olyan esetben, amikor a cég call-centeres ügyintézője vált véletlenül "bicskanyitogató" módba.

- Nem mindegy, hogy csak kategóriákba kell-e sorolni egy hanganyagot, avagy hangról-hangra dekódolni kell azt.

- A friss indexes hír szövegből derül ki egy érdekes feladat, nevezetesen megkísérelni azonosítani a gyakori kérdéseket/problémákat. Ez a fenti kategórizálásos problémánál nehezebb csoportosítási/osztályozási feladat. Ide eljutni is hírértékű lenne (magyar nyelvterületen, gyenge minőségű telefonos hanganyag esetén).

- Végül nem mindegy, hogy
+ teljesen általános, spontán, hétköznapi, szűkebb szókincsű(?) folyamatos beszéd folyamatos online valós-idejű konverziójáról van-e szó
+ egy konferencia moderátorának félig spontán beszédének szöveggé alakításáról van-e szó
+ egy tévés hírcsatorna híradósának előre megírt szövegéről van-e szó.
Érezhető, hogy egyfelöl könnyebbedik a feladat, másfelöl más-más a pontossági követelmény és a várható felhasználás.

* Magyar nyelvterület eddigi eredményeinek áttekintése (amiről én tudok)

- A témában - hangsúlyozottan az én tudtommal, és alapvetően két éves emlékeimre támaszkodva -, legelőször két éve a Nextent robbantott. Ők a Szegedi Tudományegyetem egyik műhelyében kikísérletezett tudományos kutatást hoztak fel termékszintre. Ebben van érzelmi analízis is. Alapvetően szócentrikus metódus, lényegi működése, hogy előre megadott szavakat keres rossz minőségű telefonos hangfile-okban. A módszer mélyében egy nem publikus módon módosított/feltalált SVM (kernel-módszer) algoritmus húzódik. A módszer akkor lehet előnyös a teljes hang->szöveg konverzióval szemben, ha a felismerendő szavak tényleg nagyon nagy megbízhatósággal felismerődnek és akkor hátrányos, ha a teljes hang-szöveg konverzió átlagosan is nagyon magas megbízhatóságú. Ebben az esetben akkor már csak árversenyben tudhat jobbat adni a szófelismeréses módszerű szoftver (technológiai értelemben nem).

Itt egy korabeli két évvel ezelötti  indexes cikk egy létező, kapható folyamatosan fejlesztett termékről, szintén kommentekkel, amik persze mutatnak némi áthallást a friss kommentekkel. ;)
A hangulatunkat is elemzik a call centerek

Itt a magyar fejlesztésű termék honlapja:
Voice Miner

- Nem sokra rá jött a magyar piacra a nagy konkurens izraeli Nice cég, amelyik rohamtempóban próbálta meg angol nyelvterületen már létező megoldását adaptálni magyar nyelvterületre. Olykor övön aluli módszereket is alkalmazva: ügyfél által súlyos pénzekért megvásárolt call center system által speciális file-formátumban tárolt hanganyagokhoz nem engedte a saját pénzes ügyfeleit hozzáférni, saját tulajdonának tekintve azt.

- A harmadik legfrissebb szerepelő a BME-vel együttműködő Netxtenthez hasonlóan magyar Aitia.

Összefoglalva tehát ez egy többszerepelős piac, más-más fókuszokkal, súlypontokkal, előélettel.

* Azt azért látni kell a friss hírek kapcsán, hogy:

- Nem szabad elfelejteni, amiről hírt kaptunk a fentebbiek szerint, az egyelőre csak terv. 2012-re várható eredmény a projekttől. Ez egy kötelező kommüniké volt, a támogatás miatt.

- Ügyfélszolgálati kihasználtsági mutatókhoz, egyéb hang-, szöveg- és adatbányászati megoldásoktól független technológiák is rendelkezésre állnak.

- 336 millió forint nekem nagyon kevésnek tűnik egy fullos megoldáshoz. Bár kétségtelenül lehet belőle valamilyen eredményt szállítani. :o)

- Egyébként az "szép" lehet az egész történetben, hogy az ügyfelek fogják megfizetni vásárolt szolgáltatásokon keresztül ezt a drága call centeres technológiát: mármint hogy gépekkel lehet majd társalogni nem kevés várható potenciális probléma árán, miközben a minél tökéletesebb hangfelismerés egyéb célokra is használható lesz.

- Az indexes cikk kommentjeiből egyértelműen kiderül két reakció
(1) szkepticizmus
(2) azonnal előkerül a nagy testvér figyel típusú adatvédelmi aggodalom.

* Folyékonybeszéd-felismerő

Ez eredendően elég tág határok között értelmezhető: lehet csak annyiról szó, hogy képes a program megkülönböztetni az élőbeszédet a zenétől például. Egészen addig elmenve, hogy a hangot képes valós időben text-állománnyá lekonvertálni illetve szövegbányászatilag feldolgozni. Na ez utóbbit én a saját tapasztalatom alapján egészen egyszerűen nem hiszem el -> írtam tegnap. Ma meg saját szememmel láttam egy AITIÁ-s demót, és nem hittem a szememnek, azt hittem káprázik.

Egy nő telefonált egy internetszolgáltatóhoz talán, és ahogy mondta tök normál sebességgel a szöveget t-é-n-y-l-e-g azonnal íródott ki a (magyar) szöveg a képernyőre, elképesztő pontossággal. Volt a szövegben pár xyz de lényegtelen volt (az sem kizárt, hogy recsegés következményeként), én így hasraütve a lényeget illetően 99%-os pontosságot mondanék rá. (Nyilván ez egy jól kiválasztott minta volt, lehetnek jóval gyengébb minták is) Részemről maximális respect, technológiai megvalósíthatósági értelemben lenullázódott a szkepticizmusom.Ha nem demó-, hanem éles üzemi körülmények között látom, akkor azt mondom, hogy komplett kiérlelt a technológia. Amennyi kevéske infóm nekem van, annak alapján azt mondom a Nextent megoldásának fel van adva a lecke, egy erős konkurens érkeztével.

* AITIÁ-s technológiai háttér

Természetesen egy ilyen impresszív élmény után megpróbáltam utánajárni mi lehet a háttérben. Nyilván sok infó azért nem elérhető angolul sem, rövid idő alatt nem lehet csodát tenni egy ilyen blogposztban, ráadásul én sosem dolgoztam a témában. Hiába áll szívemhez közel a hangbányászat is, mint speciális adatbányászat, ha olykor még a terminológiával sem vagyok tisztában a fentiek miatt. Ami nekem lejött nagyon röviden:

- Mivel folyamatos beszéd detektálásáról van szó, szó nem lehet szavak detektálásáról. Vesznek mondjuk egy 10 másodperces hangrészletet azt elemzik. Próbálják megtalálni a neki megfelelő szöveget. Próbálnak benne detektálni szünetet. Ha analógiával akarnék élni, a szövegbányászatban ismert n-gram technikához hasonlítanám. Ami nóvum, az az, hogy ezek az elemek a felismerés során egyre "értelmesednek" illetve hálózatot, praktikusan például Bayes hálózatot alkothatnak, rákövetkezési valószínűségekkel "súlyozva". Óriási szakmai gyönyörűség ha más nem is, csak ilyen felismerési hálózatokkal foglalkozhatni. :o)

- Minden például 10 másodperces hanganyag legelőszöris átesik egy lényeg/jellemző-kiemelésen (->feature extraction).Az így kapott jellemzővektor illesztődhet aztán szótárban előzetesen meglévő mintákhoz.

Kétféle szótár van:

+ Akkusztikai alapú: jellemző nyelvspecifikus fonémák jellemzővektorainak szótára. Ez alapjában egy sok helyről összelapátolt cucc, van benne Bőzsöny Ferenc típusú hanganyagtól kezdve háttérzajos, meg spontán benyögéses anyag is.A szótár bővíthető, a kritikus pont a hanganyagok leképzése algoritmus szemponból már kezelhető jellemzővektorokra. Amúgy a képbányászok is alapvetően ilyen - esetükben nyilván képspecifikus - jellemzővektorokkal dolgoznak egyébként.

+ Nyelv(tan)i alapú: itt jön a szavak - emlegetett és valószínűségekkel megfűszerezett - Bayes hálózata.

A poén az, hogy a kettő összefűzhető: a akkusztikai verzióból kapott statisztikai valószínűségek (eloszlások) megfeleltethetők a nyelvi verzióval, ezáltal azok kvázi beágyazhatók ez utóbbiba. Ha működik, elmondhatatlan szépségű elképzelés.

- Kulcskérdés a hangzó szöveg megtalálásának konfidencia szintje (nem mindegy, hogy legjobb közelítéssel avagy pontosan találjuk el mit mondtak), mindezt kettős célkitűzéssel. (1) Minél magasabb legyen, és (2) minél pontosabban megadható. Az az ígéret, hogy ebben van az egyik nagy dobás.Sikerült egy olyan számítási módszert találni ami kvázi egyetlen valós számot rendel megfeleltetésekhez és a megfeleltések optimális aggregálása után jönnek a döbbenetes eredmények. Na ez a konfidencia-számolás meg a másik óriási szakmai gyönyörűség. :o)

- A felismerési hálózatkonfiguráció révén tehát, egyre értelmesebbre leképzett hangfoszlánydarabkákhoz valós számmal reprezentált hasonlóságmértékünk lehet. A következő kérdés hogyan kell legjobbat választani? Egy véges bármilyen nagy szótár/korpus nem elégséges mindehhez. Ezért jön a következő nagy ötlet. Egy olyan felismerő hálózatot generálni, ami minden jellemzővektor-sorozathoz jól illeszkedik. Én ebből az állításból azt értem, hogy miért jó és örömteli. Viszont ha nekem kéne egy ilyen hálózatot generálnom, így első belegondolás után ebbe beletörne a bicskám, olyan nehézségűnek hangzik, méretre is, kezelhetőségre is.

- Konfidencia-konklúzió tehát, hogy a hang+nyelv illesztés, illetve a mindenhez illeszkedő hálózat együttesen tudhat kellően jól artikulált és argumentált konfidencia eredményt adni.

- Egy dologról nem esett szó: hogyan tud ez valós-időben menni. Természetesen fogalmam sincs.Úgy képzelem a jellemzővektoros összehasonlítás, pláne valamiféle indexes támogatással nem egy nagy dolog. Utána a Bayes hálózat valószínűség szorzásai, összeadásai megint nem elviselhetetlen műveletigényűek. És a legvégső aggregálásnál sem látok szorzás összeadásnál bonyolultabb műveletet, és belőlük sem sokat. Azaz a valós-idejű működést tudom a legjobban elképzelni az egész fenti történetből, működhetőség szempontjából.

* Végül itt egy már működő érdekes webes alkalmazás/honlap a csapattól.Itt videókban lehet szöveget keresni.
Mindroom

Köszönet mindenkinek a blogposzthoz nyújtott különféle segítségért.

2010. szeptember 1., szerda

Klímaváltozás: előrejelzési visszásságok

.
Az indexen nemrég jelent meg egy cikk a tárgybeli témában.

Már Lomborg szerint is probléma a klímaváltozás

És mivel már én is foglalkoztam a témával korábban itt a blogon, így aktuális az egész ügyet ismét elővenni. :o)

Miután évekig a szkeptikusok táborát erősítette, Bjørn Lomborg most azt mondja, hogy a legfontosabb helyre kell tenni a klímaváltozás elleni küzdelmet. Legújabb könyvében arról ír a koppenhágai gazdasági iskola professzora, hogy évente százmilliárd dollárt kellene a klímaváltozás elleni harcra fordítani.
Tegyük most félre a pikirt, rosszindulatú feltételezést, hogy a tudós esetleg részt akar venni a bizniszben, az erőforrások tűzközelségében. Az viszont már lényeges lehet, hogy az indexes cím viszont félrevezető, több dolog miatt is:

(1) A "fontosság" és a "költségigény" nem feltétlen korrelál egymással. Lehet fontosabb egy dolog, ami jóval kevesebb erőforrást igényel és lehet a klímatéma kevésbé fontos, ami viszont iszonyat pénzeket.

(2) Nem mindegy, hogy valami elismerten probléma-e, vagy csak egy problémalista végén van-e.

(2) A klímaszkeptikusok jelentős része nem tagadja a globális felmelegedést. És egyikük sem örül a tömeges szén-dioxid és metán légkörbe kerülésének, sem annak módjának (AGW=Antropogen Global Warming).Ők csak azt mondják, hogy nem mindegy hogy milyen érveléssel, mire költenek pénzt, milyen előrejelzés és hatásvizsgálat alapján, és mennyire használják "bunkóként" egyes vitatható tárgybeli érveléseket. Magyarán igenis lehet értelmesen pénzt költeni a témára ebben nincs vita. Ilyen értelemben abszolút szenzációhajhász az egész indexes tálalás.

Az én klímaaggódó definicióm a következő. Az aki szerint
(1) van, létezik globális felmelegedés
(2) alapvetően emberi eredetű ez a globális felmelegedés (AGW=Antropogen Global Warming)
(3) AGW elmélete szerint a nem-vízgőz jellegű üvegházhatást okozó molekulák (széndioxid, metán, stb.) földfelszínről légkörbe bocsátása egyfelöl egy pozitív visszacsatolásos folyamatot indított be (több molekula légkörbe -> még melegebb földfelszín), másfelöl e molekulák koncentrációja már túllépett egy kritikus értékek (390 ppm), ami visszafordíthatatlanná (irreverzibilissé) tette az egész mechanizmust, következésképpen, a pozitív visszacsatolás exponencialitása révén, körülbelül 60 éves távlatra vonatkozó előrejelzése szerint a földi globális átlaghőmérséklet 2 fokos emelkedésével az élővilág jelentős része, 5-7 fokos emelkedéssel pedig az ember is eltűnik a földről, maximum kb. ha hangyák maradnak. (Jelenleg száz év távlatában 0-6-0.7 fokos a globális átlaghőmérséklet-emelkedés számításaik szerint)
(4) A kvázi egyetlen kármentő utat a széndioxid, metán és társaik levegőbejutásának akadályozásában látják, ami jelentős érdeksérelmet okoz a kínai, idiai jelentős hátrányból induló jelentősen növekvő gazdaságnak.

A klímaszkeptikus elsősorban valamelyik fenti pontot cáfolja (esetleg többet is), de azzal nem szokott vitatkozni, hogy a
(1) fossziliákat kialakulásukhoz képest (200 millió év), túl gyorsan égettük el (200 év)
(2) fossziliákat értelmesen kellene elégetni (ami megmaradt)
(3) alternatív energiaforrások, és egyéb témákba érdemes kutatási pénzeket invesztálni

A friss indexes cikknek azonban van előzménye (2008.május 6.)

Stöckkert Gábor interjúja Bjorn Lomborggal: Kiotó rossz ötlet volt

Tárgyunk szempontjából itt vannak az érdekesebb dolgok. ;) Azt gondolom megéri a fáradságot elolvasni és magunkban végiggondolni az egész kérdést, specifikusan is, általánosan is. Fontos, folyamatosan ismétlődő motívumok felbukkanása miatt is. Mégha egy kicsit megkésve is (cikk íráshoz képest több mint két évvel később).

- A leggyakoribb kritika a könyvéről az, hogy ön szelektál az adatok között, a pesszimista forgatókönyvekkel nem foglalkozik. Jó példa erre a tengerszint emelkedése, amit ön az ENSZ klímabizottsága, az IPCC jelentésére hivatkozva 30 centiméterben határoz meg. Csakhogy ebben a jelentésben a legrosszabb forgatókönyv 59 centiméterrel számol, és az azóta megjelent újabb modellek többsége ennél is többet, legalább másfél métert jósol.

- Igazuk van azoknak, akik azt mondják, szelektíven használok fel adatokat. Nem véletlenül válogatok: a tengerszint emelkedésére rengeteg modell és vélemény létezik, a NASA szakértője, James Hansen például öt métert jósol. És sok olyan tudóst ismerek, akik bőven egy méter alá becslik az emelkedést, csak ők nem kerülnek be a napi hírekbe, mert a félméteres emelkedés nem olyan jó sztori, mint az ötméteres. Az IPCC jelentésében szereplő 18-59 centiméterrel viszont több száz szakember, mondhatni a tudományos többség egyetért, és a 30 centiméter ennek az intervallumnak a középértéke.
Na most ugye ebben a fenti gyöngyszemben pár dolgon azért el lehet mélázni.

(1) Tengerszint emelkedés előrejelzésére 0.3m, 0.59m, 1.5m, 5m. Azért a laikus is érzi, hogy itt valami nem stimmel. És az óvatos szkeptikus gondolkodásnak meglehet a létjogosultsága, ha már százmilliárd dollárt kéne szánni a témára. A korábbi posztom idevágóan pont erről szólt (most csak röviden): diszkrét adatok alapján, pozitív visszacsatolásos exponenciális felfutás nagyságrendjének előrejelzését, exponenciális felfutás elött előrejelezni, egyszerűen nonszensz: a fele és duplája közé sem lehet hitelesen 'belőni' a dolgot.

(2) Az én szerény véleményem szerint az előrejelzések közül egyébként tényleg érdemes szelektálni, és nem például átlagot számolni rá, ahogy teszi Lomborg is. Ugyanis az előrejelzések között érezhetően kellenek rosszak is legyenek.

Nem gondolom, hogy mindig a legrosszabb forgatókönyvekkel kell számolni
Újabb (tanulságos) aranyköpés. :o) Ma már egyébként egyfajta divat armageddonistának lenni. A mondás üzenete számomra:

(1) Először is tán meg kellene vizsgálni, hogy minek mekkora a valószínűsége. Aztán gondolkodni csak különféle forgatókönyvekben. Nem a forgatókönyvek "rosszasságából" kéne visszafele következtetni.Persze elvben nem zárom ki a kölcsönhatás miatti iteratív elemzést, de itt nem kicsi a tét, óriási bizonytalanságok mellett.

(2) Másodszor érdemes szem elött tartani a örökbecsű, közismert, szakállas viccet.
Malacka elindul a nyuszi felé, hogy kölcsönkérje tőle a vasalót. Az úton egyfolytában morfondirozik magában:
-Lehet, hogy nem is adja oda, és akkor hiába keltem útra
Malacka megy tovább
- Áh. Biztos nem fogja odaadni.
Malacka ismét csak megy tovább.
- Tuti nem fogja odaadni, mert én sem kínáltam meg múltkor sütivel.
Malacka megérkezik a nyuszikához, idegileg tök felspanolva:
- Tudod mit nyuszika! B@zd meg a vasalódat!
Magyarán nem kéne fejben lejátszani teljesen komplex dolgokat, pláne nem időben messzire vetítve.

- Azért ez nem a legjobb hasonlat. A globális felmelegedés létezik, az egész világra hat és az emberi tevékenység miatt ekkora mértékű, mindezt ön is elismeri. Megtehette volna, hogy az IPCC mind a hat forgatókönyvét alapul veszi a könyvben levezetett elemzéseihez.

- Őszintén megmondom, nem akartam nagyon hosszú könyvet írni. Az alapvető mondanivalómon nem változtatott volna, ha az összes forgatókönyvet számításba veszem.
Pestiesen szólva, azért ez nem semmi. ;) Tegyük félre a kérdezővel kapcsolatos udvariasságot és téma iránti alázatot érintő kérdéseket. Azt viszont fontos leszögezni:

(1)  Globális felmelegedés tényében sincs konszenzus. Sőt van, aki már a mérési módszertant is kifogásolja, nemhogy a mérésekből kalkulált számokat.

(2) Az hogy feltétlen emberi eredetű lenne-e a felmelegedés, az vita tárgyát képezi. Az meg külön említésre méltó részlet, hogy a szibériai permafrost metán problémája viszont nem antropogén.

(3) Az viszont hátast dobás eglatáns példája, hogy azért szelektálunk, mert rövid könyv írása van célkeresztben.

Ugyanakkor rengeteget költünk ezekre az elérhetetlen célokra, és ettől jól érezzük magunkat. Ha ezzel a pénzzel a megfelelő kutatásokat – mindenekelőtt az alternatív energiaforrások fejlesztését – támogatnánk, hosszú távon sokkal jobban járnánk. Nem biztos, hogy rögtön jól éreznénk magunkat, de 2050-re több eredménye lenne egy ilyen tervnek, mint bármilyen teljesíthetetlen szén-dioxid-kibocsátási korlátozásnak.

Ez viszont klasszikus klímaszkeptikus álláspont. Csak azt nem értem mi változott a tudósban mára, ez ügyben. ;)

- Önt sokan nem szeretik, egy honlapon a könyveiben található hibák olvashatók összegyűjtve.

- Ismerem azt az oldalt, egy munkanélküli dán biológus üzemelteti, aki valamiért engem személyes ellenségének tart. És azt mondom, jó, hogy létezik ez az oldal, mert ez is hozzájárul az értelmes párbeszédhez. A gazdájával ugyan személyesen nem tartom a kapcsolatot, de a nyilvánosság előtt különböző fórumokon már közel tíz éve vitázunk annak ellenére, hogy a nézetei más téren is távol állnak tőlem ? ő például ellenzi, hogy leszbikusok is vállalhassanak gyereket. Néhány apróságban igazat adtam neki, de úgy gondolom, többnyire téved, és úgy érzem, akármit mondhatok, azzal ő ellenkezni fog.
Egyébként ő volt az ellenem tudományos tisztességtelenség miatt indult eljárás egyik fő támogatója, és nem titkolta, hogy politikai okai is vannak annak, hogy engem támad. Az ügyemben eljáró bizottság egyetlen érvet sem vett át tőle, nem találták elég meggyőzőnek.
Erre a témára nem vesztegetnék sok szót. Most azon átlépve, hogy mi köze a szexuális beállítottságnak a klímaváltozáshoz, csak annyit jeleznék, hogy a heterószexuális Miskolczi Ferenc is megjárta a klímatémában az egzisztenciális ellehetetlenítés poklát.Ha nagy a tét, durvulnak a résztvevő játékosok

- Az Index olvasottsági statisztikáit figyelve azt látom, hogy az embereket egyre kevésbé érdeklik a klímaváltozásról szóló hírek, holott mindenkit érint a jelenség.

- Ezen nem vagyok meglepődve. Az embereknek égetőbb problémái vannak: a gazdaság, a munkanélküliség, az oktatás, egészségügy, háborúk, és így tovább. A klímaváltozással hasonló történt, mint a madárinfluenzával. Az emberek jól megijedtek tőle, aztán belefáradtak abba, hogy a csapból is ez folyik. A madárinfluenza most is legalább olyan probléma, mint néhány éve, mégsem hallunk róla annyit. A klímaváltozással is riogatták az embereket, nem csoda, hogy elfordultak tőle. De legalább túl vagyunk az ijedtségen, most már elkezdhetnénk értelmesen beszélni a jelenségről.

Abszolút kulcskérdés. Elég analógiaként a sertés influenza és az ellene kifejlesztett nagy (költségvetési) pénzeket mozgató vakcina körüli visszásságokra gondolni (lefizetett WHO-sok). Ebben az a tragédia, hogy:

(1) Ilyen pályán mozogva egyre kevésbé lehet majd tisztán látni, és tényleg bele lehet fáradni, tömeges méretekben

(2) Nem kéne felejteni a farkassal riogatós mesét. Egyszer tényleg lehet nagy baj és lehet tragédia a vége. Nem kéne játszadozni és visszaélni lényeges kérdésekben.

Al Gore és az IPCC kapták tavaly a Nobel békedíjat. Mit szól ehhez?

Néhány ember dönt a díj odaítéléséről, és ez a döntés kicsit a gazdag nyugat-európai országok aktuális szándékát tükrözte.

Azt gondolom perdöntő motívum felismerni (nem csak itt a klíma témában), kevés ember irdatlan nagy hatását.