Ezt vártam már, hogy végre a keresők is felismerjék, önmagában a HTML alapú szövegfeldolgozás nem lesz elég pontos addig, amíg a számítógépek sebessége a maiaknál ötven-száz nagyságrenddel több, hogy az értelmező mesterséges intelligencia elég hatékonyan tudjon működni.
Persze, amit felmutattak, még szerintem mindig nagyon vérszegény a három óriástól, amikor a világon millió és millió tárgy és fogalom van, ahhoz képest ez a kb. kétszázas lista semmi. Emellett a felsorolást böngészve leginkább a manapság divatos dolgokat lehet felfedezni.
Amire szerintem égető szükség lenne, hogy minden szakma, cég, közösség üljön le, és készítse el az őket érintő objektumok ilyen módon való leírását és attribútumokkal való ellátását (mivel ők értenek hozzá a legjobban).
A következő lépés ezeknek az objektumoknak a hierarchiába való rendezése, majd pedig a közöttük való összefüggések felírása.
És közben az egészhez leírást, segítséget, útmutatót kell írni, valamint minden erőfeszítéssel reklámozni, mert csak így van lehetőség arra, hogy egyszer valós találatokat kapjunk bármilyen keresésre. Az internet jelenleg egy nyolc hónapos csecsemő szintjén van: szavakat keres. Kb. ennyit is várhatunk tőle.
Ez az egész egymilliárdszor fontosabb, mint a jelenlegi divat, a html 5 bevezetése. Azzal nem nyerünk semmit, és mindenkinek kapát-kaszát eldobva kéne áttérni erre, a szemantikus gondolkodásra. Utána lehet csicsázni <video> meg <header> elemekkel, de addig mindenkire rengeteg munka vár.
A cikkben említett számítógép 3 000 processzort és 13 000 gigabájt memóriát tartalmaz. A Google naponta többszázmillió keresést szolgál ki, kis szorzással, valamint a fenti számítógép válaszidejének belekalkulásával ki lehet számítani, hogy ennyi kéréshez hány PC-re és mennyi energiára lenne szükség.
Természetesen ennél jóval kevesebb kell, ha nem puszta szövegben keresünk, hanem valamilyen módon tároljuk az egyes objektumok attribútumait és a köztük levő összefüggéseket.
Moore törvénye szerint másfélévenként duplázódik meg a számítógépek gyorsasága, azaz 50/1,5 = 33,33. 2^33 = 8589934592, ez tíz nagyságrend, ennyivel gyorsabbak lesznk a PC-k 50 év múlva.
Én egyébként 100 évről hallottam ugyanebben a kontextusban, az 20 nagyságrend. Igazából mindegy, ígyis-úgyis sok.
Első lépésként én üdözlöm a kezdeményezést. Végre megvan ami az RDF-nél nem volt, motiváció.
A tartalom betagelésére szánt munkaórákat már el lehet adni a menedzsmentnek, a szent SEO jegyében. És ki tudna nemet mondani a SEO-ra . . .
Megvan a lehetőség a kiterjlesztésre. A szemantikus web legelszántabb hívei, vagyis a jelelegi ontológiák üzemeltetői biztosan néhány héten belül előrukkolnak szótáraik schema.org kompatibilis verzióival.
Én is sokat gondolkoztam, hogy eddig miért nem tették meg a keresők ezt a lépést. Az egyik válasz nyilvánvalóan az, hogy a jelenlegi architektúrájuk HTML-re, és azon belül is szavak szövegen belüli keresésére van kihegyezve, és túl sokba kerülne egy új dolgot kifejleszteni.
Ez a rész remekül leírja, hogy mi is a probléma az ilyen cimkézősdivel:
No matter how powerful the technology, no matter how carefully designed and coded the CMS templates, no matter how sophisticated the WYSIWYG editor, and no matter how much training we offer, any markup will ultimately succeed or fail on the content authors’ ability to use it.
Vagyis akik nagy mennyiségben termelik a tartalmakat, véleményem szerint nem fogják megtanulni vagy ha meg is tanulják, nem fogják kellő részletességgel használni a cimkézést és ha még részletesen is használják, nem biztos, hogy megfelelően teszik majd ezt. Elég gigászi meló lenne csak a már meglévő tartalmakat felcimkézni, minden egyes, a szövegben leírt objektumot definiálni, stb. Mire kellő részletességgel tagelve megírnék egy blogbejegyzést, elunnám az életem. (Ne is beszéljünk a szöveg által leírt objektumok közötti kapcsolatról, főleg ha elvont fogalmakról van szó.)
Szerintem ahelyett, hogy plusz munkát teremtünk magunknak az ilyen cimkézős mókákkal, inkább azon kéne fáradozni minden lehetséges erőforrást belefektetve, hogy a gépek tudják azt értelmezni, amit az emberiség többé-kevésbé jól tud használni tartalom leírására, ami ugye a beszélt/írott nyelv.
inkább azon kéne fáradozni minden lehetséges erőforrást belefektetve, hogy a gépek tudják azt értelmezni
Ezzel kapcsolatban két dolog:
1, az eredeti cikkben is ezt írja a szerző, hogy
Human language is always problematic—as are those who use it—because words are never just words. The meaning of words is rich, contextual, ambiguous, and worst of all, ever changing.
A feladat hatalmas. Ami az alig húsz wattot fogyasztó agynak pofonegyszerű, hiszen együtt fejlődött az emberi értelemmel és a nyelv kialakulásával, ezért gondolkodás nélkül, mintegy ráérezve képes kontextusba helyezni a mondatokat, addig a gépnek minden létező verziót át kell vizsgálnia, és elemeznie kell, ugyanis fogalma sincs arról, mint jelent egy mondat. Neki mindez csak statisztikai adat.
Csendes Balázs, az IBM Magyarország szoftverkereskedelmi képviselője szerint az ember ugyan fejben tartja az összes lehetséges megoldást, lehetőséget, egy gépnek azonban semmi sem triviális vagy magától értetődő. A legbonyolultabb matematikai feladat épp akkora gond, mint válaszolni arra a kérdésre, hogy süt-e a nap
Én a tartalom jelentéssel való felruházását jobbnak tartom, már csak azért is, mert olcsóbb: pl. gépelés közben a számítógéped felismeri az objektumokat, és nem a keresőnek kell ezt elvégeznie.
gépelés közben a számítógéped felismeri az objektumokat, és nem a keresőnek kell ezt elvégeznie.
Ahhoz, hogy kellő pontosággal felismerje, mit gépelek éppen, nem ugyanazt az elemzőképességet kéne kifejleszteni, mint a szöveg értelmezéséhez? (Vagy nem értem, hogy ezzel mire gondoltál.)
Módosítanék, illetve pontosítanék a véleményem kifejezésén. Nem tartom feleslegesnek ezt a cimkézős irányt, csak félmegoldásnak tartom, ami lehet, hogy más helyeken, de legalább ugyanannyi sebből vérzik (épp a szükséges emberi komponens miatt), mint az emberi nyelv értelmezése. De ha ezzel segíteni tudom a keresések pontosságát, felcimkézem én a tartalmakat, amíg nem jutnak odáig a gépek, hogy folyószöveget is tudjanak értelmezni, de az univerzális megoldás a tényleges nyelvértelmezés lenne szerintem.
És bár azt hiszem messze vagyok tudásban egy nyelvértelmező program létrehozásától, úgy gondolom, hogy ha ekkora nehézség a jelenlegi módszerekkel kontextusban értelmezni szöveget, akkor lehet, hogy másfajta módszert kéne keresni.
Ahhoz, hogy kellő pontosággal felismerje, mit gépelek éppen, nem ugyanazt az elemzőképességet kéne kifejleszteni, mint a szöveg értelmezéséhez?
A végső cél mindenképpen az, hogy a folyószöveget gépileg, mindenféle emberi segítség nélkül fel lehessen ismerni. Mivel ez jelen pillanatban a lassú hardverek miatt nehézkes vagy nem megoldható, ezért - szerintem - a webmestereknek minden eszközt meg kell ragadniuk ahhoz, hogy az elérését segítsék.
Tegyük fel, hogy rendelkezésünkre áll az az adatbázis, ami tartalmazza a világ objektumait és az azok közti összefüggéseket. Ezt nagyjából úgy lehet elképzelni, mint a lap.hu-t, azaz strukturált.
A szerkesztést nagyjából így képzelem: a tartalomhoz első körben hozzárendelem a címkéket, magyarul tag-eket, azokat már ebből az adatbázisból választom ki. Ezután kijelölök szavakat a szövegben, és ezekhez hozzárendelem a megfelelő objektumokat.
Példamondat: <p>Santana koncertet ad július 10-én.</p>
Ebben kijelölöm, hogy Santana, feljön egy kis eszköztár, ahol az adatbázisból kiválasztom, hogy melyik Santana. Utána kijelölöm a "koncert"-et, ott pedig megadom a paramétereit. Ebből lesz: <p><span tipus="eloado" nev="Carlos Santana">Santana</span> <span tipus="koncert" koncert-idopont="2011.07.10." koncert-helyszin="Petőfi Csarnok, Budapest, Magyarország">koncertet</span> ad július 10-én.</p>
Ami a példamondatot illeti, a HTML-ből még mindig nem derül ki, hogy mi a kapcsolat Santana és a koncert között, hanem csak plusz információt biztosít az adott objektumokról. Ahhoz, hogy tudjuk mi a köze egymáshoz Santananak és a koncertnek még mindig értelmezni kell a szöveget is.
Ha minden egyes kapcsolatot le akarunk írni, amit a szöveg kifejez, akkor kapunk egy sokkal hosszabb markup kódot, mint az eredeti szöveg lenne. Valamint nehéz úgy hozzápárosítani a markup-ot a szöveghez, hogy annak értelme is legyen önmagában (pl. nekem nem teljesen kerek a "koncertet" szó körüli markup, lévén nem a koncert szót írod le, hanem egy adott koncertet).
A fenti mondatot valahogy így tudnám elképzelni:
<p described-object="event" object-additional-data="{location: 'Petőfi Csarnok, Budapest, Magyarország'}"><span described-object="event-performer" object-value="Carlos Santana">Santana</span> <span described-object="event-type" object-value="concert">koncertet</span> ad <span described-object="event-date" object-value="2011-07-10">július 10-én</span>.</p>
És ez csak egy egyszerű ötszavas mondat volt.
Persze szép lenne, ha ezt cimkézést egyszerűen, gyorsan és pontosan meg tudná csinálni mindenki úgy, hogy ne csak az objektumokról adjunk többletinformációt, hanem ténylegesen a köztük lévő összefüggést is meg tudjuk határozni. Szerintem viszont egy ilyen rendszer kidolgozása, ami a beszélt nyelv által kifejezett kapcsolatokat átülteti pontosan és egyértelműen gépek által gyorsan értelmezhető formába, plusz utána ezt megtanítani mindenkinek, aki tartalmat hoz létre legalább akkora feladat, mint egy rendes nyelvértelmezőt készíteni. Itt ugyanis ugyanaz megy végbe, csak másik irányban. Nem a gép értelmezi a szöveget a saját nyelvére, hanem az ember értelmezi a saját nyelvét egy a többség számára idegen felépítésű nyelvre.
Örülnék, ha működne akár ez is, de szerintem ez sem sokkal jobb irány annak a megközelítésére, hogy ne csak szavakra keressünk.
Azt hozzátenném, hogy én majdnem mindig a jelenlegi keresőkkel is meg szoktam találni a keresett tartalmat nagyjából ugyanakkora időráfordítással, mintha a keresésemet kéne cimkék alapján paraméterezni. Persze látok sok fals találatot, és nem mindig elsőnek látom a legrelevánsabb tartalmat, de elfogadom, hogy ezzel jár a dolog egyelőre. (Ezzel nem azt akarom mondani, hogy a helyzet jó úgy, ahogy van :) )
Nem kell tökéletes megoldás, a lényeg, hogy a mostaninál jobb legyen, a markup hossza pedig szerintem teljesen irreleváns.
A probléma élő, ha már ezek a nagy cégek is foglalkoznak vele, viszont a megoldásukkal kapcsolatban én is szkeptikus vagyok:
1, mint említettem, ez így - még kezdésnek is - nagyon kevés, valamint az összefüggéseket nem tárolja
2, ezek a keresőcégek a W3C tagjai, és szerintem jogos a felvetés a fent említett cikkben, hogy a saját pecsenyéjüket sütögetik a nyílt dolgok helyett; ennek csak ők lehetnek nyertesei, és mi a vesztesei, mivel ők abban és csak abban érdekeltek, hogy a részvényeseiket ki tudják fizetni
Ezt vártam már, hogy végre a
Persze, amit felmutattak, még szerintem mindig nagyon vérszegény a három óriástól, amikor a világon millió és millió tárgy és fogalom van, ahhoz képest ez a kb. kétszázas lista semmi. Emellett a felsorolást böngészve leginkább a manapság divatos dolgokat lehet felfedezni.
Amire szerintem égető szükség lenne, hogy minden szakma, cég, közösség üljön le, és készítse el az őket érintő objektumok ilyen módon való leírását és attribútumokkal való ellátását (mivel ők értenek hozzá a legjobban).
A következő lépés ezeknek az objektumoknak a hierarchiába való rendezése, majd pedig a közöttük való összefüggések felírása.
És közben az egészhez leírást, segítséget, útmutatót kell írni, valamint minden erőfeszítéssel reklámozni, mert csak így van lehetőség arra, hogy egyszer valós találatokat kapjunk bármilyen keresésre. Az internet jelenleg egy nyolc hónapos csecsemő szintjén van: szavakat keres. Kb. ennyit is várhatunk tőle.
Ez az egész egymilliárdszor fontosabb, mint a jelenlegi divat, a html 5 bevezetése. Azzal nem nyerünk semmit, és mindenkinek kapát-kaszát eldobva kéne áttérni erre, a szemantikus gondolkodásra. Utána lehet csicsázni <video> meg <header> elemekkel, de addig mindenkire rengeteg munka vár.
Off: nagyságrendek
Ezt az 50-100 nagyságrendet komolyan gondolod?
Legyőzte a gép az embert A
A cikkben említett számítógép 3 000 processzort és 13 000 gigabájt memóriát tartalmaz. A Google naponta többszázmillió keresést szolgál ki, kis szorzással, valamint a fenti számítógép válaszidejének belekalkulásával ki lehet számítani, hogy ennyi kéréshez hány PC-re és mennyi energiára lenne szükség.
Természetesen ennél jóval kevesebb kell, ha nem puszta szövegben keresünk, hanem valamilyen módon tároljuk az egyes objektumok attribútumait és a köztük levő összefüggéseket.
Kicsit off, itt
4:30
http://www.youtube.com/watch?v=3KH95YCSP_c
Kicsit sok lett, 20
Moore törvénye szerint másfélévenként duplázódik meg a számítógépek gyorsasága, azaz 50/1,5 = 33,33. 2^33 = 8589934592, ez tíz nagyságrend, ennyivel gyorsabbak lesznk a PC-k 50 év múlva.
Én egyébként 100 évről hallottam ugyanebben a kontextusban, az 20 nagyságrend. Igazából mindegy, ígyis-úgyis sok.
"Apró léptek"
A tartalom betagelésére szánt munkaórákat már el lehet adni a menedzsmentnek, a szent SEO jegyében. És ki tudna nemet mondani a SEO-ra . . .
Megvan a lehetőség a kiterjlesztésre. A szemantikus web legelszántabb hívei, vagyis a jelelegi ontológiák üzemeltetői biztosan néhány héten belül előrukkolnak szótáraik schema.org kompatibilis verzióival.
És egy kis szekpticizmus
http://contentstrategy.rsgracey.com/2011/06/04/the-trouble-with-semantic-markup-response-to-schema-org/
Én is sokat gondolkoztam,
Osztozom a szkepticizmusban
Vagyis akik nagy mennyiségben termelik a tartalmakat, véleményem szerint nem fogják megtanulni vagy ha meg is tanulják, nem fogják kellő részletességgel használni a cimkézést és ha még részletesen is használják, nem biztos, hogy megfelelően teszik majd ezt. Elég gigászi meló lenne csak a már meglévő tartalmakat felcimkézni, minden egyes, a szövegben leírt objektumot definiálni, stb. Mire kellő részletességgel tagelve megírnék egy blogbejegyzést, elunnám az életem. (Ne is beszéljünk a szöveg által leírt objektumok közötti kapcsolatról, főleg ha elvont fogalmakról van szó.)
Szerintem ahelyett, hogy plusz munkát teremtünk magunknak az ilyen cimkézős mókákkal, inkább azon kéne fáradozni minden lehetséges erőforrást belefektetve, hogy a gépek tudják azt értelmezni, amit az emberiség többé-kevésbé jól tud használni tartalom leírására, ami ugye a beszélt/írott nyelv.
inkább azon kéne fáradozni
Ezzel kapcsolatban két dolog:
1, az eredeti cikkben is ezt írja a szerző, hogy
2, a "Legyőzi a gép az embert" egy másik cikkében is megjegyzik:
Csendes Balázs, az IBM Magyarország szoftverkereskedelmi képviselője szerint az ember ugyan fejben tartja az összes lehetséges megoldást, lehetőséget, egy gépnek azonban semmi sem triviális vagy magától értetődő. A legbonyolultabb matematikai feladat épp akkora gond, mint válaszolni arra a kérdésre, hogy süt-e a nap
Én a tartalom jelentéssel való felruházását jobbnak tartom, már csak azért is, mert olcsóbb: pl. gépelés közben a számítógéped felismeri az objektumokat, és nem a keresőnek kell ezt elvégeznie.
gépelés közben a számítógéped
Ahhoz, hogy kellő pontosággal felismerje, mit gépelek éppen, nem ugyanazt az elemzőképességet kéne kifejleszteni, mint a szöveg értelmezéséhez? (Vagy nem értem, hogy ezzel mire gondoltál.)
Módosítanék, illetve pontosítanék a véleményem kifejezésén. Nem tartom feleslegesnek ezt a cimkézős irányt, csak félmegoldásnak tartom, ami lehet, hogy más helyeken, de legalább ugyanannyi sebből vérzik (épp a szükséges emberi komponens miatt), mint az emberi nyelv értelmezése. De ha ezzel segíteni tudom a keresések pontosságát, felcimkézem én a tartalmakat, amíg nem jutnak odáig a gépek, hogy folyószöveget is tudjanak értelmezni, de az univerzális megoldás a tényleges nyelvértelmezés lenne szerintem.
És bár azt hiszem messze vagyok tudásban egy nyelvértelmező program létrehozásától, úgy gondolom, hogy ha ekkora nehézség a jelenlegi módszerekkel kontextusban értelmezni szöveget, akkor lehet, hogy másfajta módszert kéne keresni.
Ahhoz, hogy kellő pontosággal
A végső cél mindenképpen az, hogy a folyószöveget gépileg, mindenféle emberi segítség nélkül fel lehessen ismerni. Mivel ez jelen pillanatban a lassú hardverek miatt nehézkes vagy nem megoldható, ezért - szerintem - a webmestereknek minden eszközt meg kell ragadniuk ahhoz, hogy az elérését segítsék.
Tegyük fel, hogy rendelkezésünkre áll az az adatbázis, ami tartalmazza a világ objektumait és az azok közti összefüggéseket. Ezt nagyjából úgy lehet elképzelni, mint a lap.hu-t, azaz strukturált.
A szerkesztést nagyjából így képzelem: a tartalomhoz első körben hozzárendelem a címkéket, magyarul tag-eket, azokat már ebből az adatbázisból választom ki. Ezután kijelölök szavakat a szövegben, és ezekhez hozzárendelem a megfelelő objektumokat.
Példamondat:
<p>Santana koncertet ad július 10-én.</p>
Ebben kijelölöm, hogy Santana, feljön egy kis eszköztár, ahol az adatbázisból kiválasztom, hogy melyik Santana. Utána kijelölöm a "koncert"-et, ott pedig megadom a paramétereit. Ebből lesz:
<p><span tipus="eloado" nev="Carlos Santana">Santana</span> <span tipus="koncert" koncert-idopont="2011.07.10." koncert-helyszin="Petőfi Csarnok, Budapest, Magyarország">koncertet</span> ad július 10-én.</p>
Példamondat
Ha minden egyes kapcsolatot le akarunk írni, amit a szöveg kifejez, akkor kapunk egy sokkal hosszabb markup kódot, mint az eredeti szöveg lenne. Valamint nehéz úgy hozzápárosítani a markup-ot a szöveghez, hogy annak értelme is legyen önmagában (pl. nekem nem teljesen kerek a "koncertet" szó körüli markup, lévén nem a koncert szót írod le, hanem egy adott koncertet).
A fenti mondatot valahogy így tudnám elképzelni:
Persze szép lenne, ha ezt cimkézést egyszerűen, gyorsan és pontosan meg tudná csinálni mindenki úgy, hogy ne csak az objektumokról adjunk többletinformációt, hanem ténylegesen a köztük lévő összefüggést is meg tudjuk határozni. Szerintem viszont egy ilyen rendszer kidolgozása, ami a beszélt nyelv által kifejezett kapcsolatokat átülteti pontosan és egyértelműen gépek által gyorsan értelmezhető formába, plusz utána ezt megtanítani mindenkinek, aki tartalmat hoz létre legalább akkora feladat, mint egy rendes nyelvértelmezőt készíteni. Itt ugyanis ugyanaz megy végbe, csak másik irányban. Nem a gép értelmezi a szöveget a saját nyelvére, hanem az ember értelmezi a saját nyelvét egy a többség számára idegen felépítésű nyelvre.
Örülnék, ha működne akár ez is, de szerintem ez sem sokkal jobb irány annak a megközelítésére, hogy ne csak szavakra keressünk.
Azt hozzátenném, hogy én majdnem mindig a jelenlegi keresőkkel is meg szoktam találni a keresett tartalmat nagyjából ugyanakkora időráfordítással, mintha a keresésemet kéne cimkék alapján paraméterezni. Persze látok sok fals találatot, és nem mindig elsőnek látom a legrelevánsabb tartalmat, de elfogadom, hogy ezzel jár a dolog egyelőre. (Ezzel nem azt akarom mondani, hogy a helyzet jó úgy, ahogy van :) )
Nem kell tökéletes megoldás,
A probléma élő, ha már ezek a nagy cégek is foglalkoznak vele, viszont a megoldásukkal kapcsolatban én is szkeptikus vagyok:
1, mint említettem, ez így - még kezdésnek is - nagyon kevés, valamint az összefüggéseket nem tárolja
2, ezek a keresőcégek a W3C tagjai, és szerintem jogos a felvetés a fent említett cikkben, hogy a saját pecsenyéjüket sütögetik a nyílt dolgok helyett; ennek csak ők lehetnek nyertesei, és mi a vesztesei, mivel ők abban és csak abban érdekeltek, hogy a részvényeseiket ki tudják fizetni