Semantiska webben möter en praktisk man

2011-05-15

Givet att min dator just nu är brutalt överarbetad då den bygger snabba look-up-tabeller för smalare och bredare termer o.s.v. kan det roa mig att kommentera den här:

Jag tycker egentligen ganska lite hänt sedan 2009 och tror att anledningen är den samma som gör mig lika skeptisk till den semantiska webben då som nu. Det kommer ner komplexitet för att definiera data relativt värdet av den definition du når upp till.

Många organisationer lägger ner tycks det abnorma arbetsinsatser på att definiera relationer som håller ganska lågt värde. Det samma gäller på ett större plan mycket mer oavsett om vi tittar på thesaurier, kategorier o.s.v. Arbetet för definitionerna blir överdrivet stort relativt värdet man bygger.

En del av problemet ligger givetvis redan i standarder. Folk argumenterar lätt underligt rörande dessa. De säger att de är standard och därför är bra. Men det finns massor som är standard.

Vi kan börja för att kommentera standarderna notera att de inte bara är XML utan definierar standarder ovanpå XML. Vad är nu bra med XML? Jo att du kan läsa dem direkt i en text-läsare. I övrigt finns ingenting bra med XML alls därför att det är slött att parsa och det tar massor av onödigt utrymme. Hela poängen med XML liksom mer specifikt HTML var att man ville ha något som gick att läsa direkt.

För aktuella standarder här har man kastat bort idéen om att XML-filerna ska gå att läsa och få ut något meningsfullt av. Och varför i så fall ha det som XML överhuvudtaget? Särskilt som det är brutalt slöare än nästan vad som helst annat man kan föreställa sig.

En anledning kunde vara en massa applikationer som använder de färdiga standarderna direkt. Och att de magiskt skulle bli lättare att bygga. De finns och i växande antal. Men vad gör dessa nu egentligen? Har intelligens? Nej. De flesta är tillför att visualisera eller visa upp datat så att det blir visuellt begripligt. Det är ju komiskt. Det har blivit som business att visualisera sådant här data.

Så då är man tillbaka där man startade. Representationen kan givetvis ändå ha ett värde.

Fast nu är ju standarden inte särskilt flexibel till att början med heller. Givet komplexiteten för att få ner det på detta sätt tenderar det att bli överdrivet stringent även där ingenting egentligen tillförs.

Det innebär inte att utvecklingen är dålig. Allt är nu relativt. Här finns nu värdet av möjligheterna och vägarna som skapas i mötet med andra organisationer. Det hade kunnat menar jag gjorts så mycket billigare i antal arbetstimmar och engagemang i att införa helt nya lösningar återanvändande gamla standarder men nu är ju människan sådan att varje generation av systemutvecklare tror den förra var mentalt begränsad och att det senaste konceptet som det pratas om ska lösa alla problem (av samma anledning har vi ett ständigt växande antal programmeringsspråk där det uppenbart är helt kritiskt att inte ens variabel definitioner återanvänder beteckningar från de stora språken). Men jag betalar inte direkt i alla fall för alla timmar FN, EU m.fl. lägger på överdriven standardisering.

Problemet är att det större värdet av att exportera data ligger inte mot andra resursstarka organisationer d.v.s. de dessa entiteter som drivit på denna utveckling träffar på standardiseringsmöten - sådana entiteter hade med sina resurser utmärkt klara precis vilka standarder som helst - utan mot media, medborgare, människorättsorganisationer m.m. som kan skapa utökad nytta av datat.

Hade nu verkligheten varit så elegant att man givet standarden utvecklar sin importering en gång och sedan kan importera allt vore det nu motiverat givetvis. Det finns dom som påstår att det går och att det är hela poängen med standarderna men det är rent struntprat. För att göra någon form av vettig analys med datat behöver du kunna representera det internt d.v.s. poängen är inte samla en hög RDF-filer på hårddisken utan att göra saker med datat. Att ta ut datat för analys går givet att dessa filer parsar så abnormt in-effektivt snabbare genom att skriva egen kod för varje enskild fil och med den ta ut datat du behöver ungefär som man innan gjorde mycket enklare med CSV-filer (snabbare inklusive tiden det tar för att skriva den koden).

Tillåt mig också föreslår att det skulle ge många av oss mer om man lade mer energi på datakvalitet också. Jag hittar ständiga problem och fel i datakälla efter datakälla jag har tittat på. Mest fascinerande är att en massa människor gör en massa analys med felaktigt data i alla möjliga seriösa sammanhang kring världsekonomi m.m. Sedan argumenterar de att deras slutsats och metod har värde men hur kan man vara säker på det när de konstant har körts med felaktigt data?

Ett par äldre exempel på det har vi i:

Ett färskare rörande hur Reuters Calais inte klarar av att beskriva entiteter åtminstone när de är relaterade till företag och varumärken (troligt är det här ett generellt datakvalitets problem där man egentligen inte har någon kontroll alls över saker och ting):

Klarar du inte av att beskriva entiteter entydigt klarar du inte av något. Innan man funderar över standard för att representera data ska man rimligen ha entydigt data för aktörer m.m.

Ovan illustrerar också mycket av vad jag här pekat på som allmänna problem.

En del av problemen jag pekade på nu finns också diskuterade i:

Ytterligare en aspekt vi kan lägga på detta ser vi genom att fråga oss vilken information som är mest intressant för ex. en politisk-ontologi som publiceras? Är det relationer? Är det datat? Det beror på användningsområde men i flera fall behöver det inte vara varken eller utan kan istället vara hur entiteter använder ontologin. Jag såg ex. större värde från Data.gov.uk av att extrahera ut sådana relationer och där hade jag verkligen ingen nytta av något standardiserat.

Värdet jag såg speglade ju hur departementet rent statistiskt relaterade till termer och begrepp och det säger ju så mycket. Vilken ontologi det verkar på är egentligen mindre viktigt och lika gärna kan man ha tillåtet dem mycket större frihet. D.v.s. samma koncept jag föreslog som mer görligt (och är jag helt övertygad om mycket bättre) för media i:

Men tappar man då inte den ökade exakthet de överdrivet formella ontologierna tillför? Nej därför det går inte med en vettig arbetsinsats att nå särskilt långt för dem och de är därför genomgående väldigt begränsade. Om jag är mindre än fem - sju gånger större i mina relationer än den största tänkbara av dessa skulle jag bli direkt förvånad och då har jag inte ens räknat in de relationer jag har extraherade från system som används för bibliotek ännu eller vad jag fick från National Institutes of Health (NIH) vilka verkligen är de största och mest välgjorda ontologier jag ännu sett. Tilltalande med dessa och särskilt den senare är att man mycket korrekt och praktiskt representerar data den snabba vägen:

"E0000153|Acropolis|Acropolis|noun|proper|
E0000156|Adams|Adams|noun|proper|
E0000170|Afghan|Afghan|noun|proper|
E0000171|Afghan|Afghan|adj|stative|
E0000172|Africa|Africa|noun|proper|
E0000174|African|African|adj|stative|"

Mycket snabbare att ta in data än från CSV-filer finns inte. Så praktiskt för mig i alla fall när jag tar in data för att få i en väg jag kan laborera med blir ju annars att man själv skriver ett mellan-steg för att representera det i enkla text-filer.

Om vi tittar på de snabba lookup-tabeller jag bygger just nu var den första jag gjorde för relaterade termer från politiska ontologier. Den byggdes på ett litet antal i struktur besläktade och representerar totalt cirka hälften av politiskt relaterade ontologier avseende relaterade termer. Varje rad är tabulerat data (jag standardiserade på tab istället för , efter flera standardiseringsmöten) och vi bygger en trevlig CSV-fil:

academic achievement ability grouping academic ability academic aptitude academic aspiration academic failure academic probation academic records academic standards academically gifted achievement gap achievement rating advanced placement class rank college entrance examinations degree requirements educational indicators educational mobility educationally disadvantaged excellence in education grades (scholastic) grading graduation requirements high stakes tests

Just denna är på bara cirka 8000 rader. Att läsa in hela den och lägga termerna i hash-tabeller tre gånger (för att just här helt onödigt hantera dubbletter men som kan finnas för andra) tar ingen utökad tid alls jämfört med att köra vilket perl-skript som helst som gör en filaccess.

Hade nu detta varit representerat i en RDF hade det kanske tagit på min dator 5 - 30 minuter innan datastrukturen låg i minnet. Att ta ut enskilda dataposter i den hade dessutom krävt mycket mer komplex kod om jag nu inte efter det gått igenom hela datastrukturen och fört över det till en hash-tabell.

För att sammanfatta så långt:

  • Det är bra att entiteter exporterar och gör data tillgängligt.
  • Om RDF m.m. skapar kul möjligheter till standardiseringsmöten med spännande diskussioner hur diverse ska standardiserat så är det givetvis trevligt för medarbetarna.
  • Men glöm inte bort datakvalitet.
  • Och gör också CSV-filer tillgängliga för oss som inte ser ontologin som slutmål så slipper vi koda runt överdrivna redundanta datastrukturer.

Och så sätta den semantiska webben i relation till verkligheten:

  • Ontologier och formella relationer har värde.
  • Värdet ligger i att definiera komplexitet och kontext för hur statistiska relationer ska appliceras.
  • Båda sidorna krävs.

Förutom detta i för intelligens grundläggande mötet mellan två synsätt ligger givetvis också att de formella ontologierna är nycklar till respektive organisation som skapat dem. De berättar hur ni tänker och sorterar data.

Har vi lite tur nu kommer en semantiskt troende förklara för mig hur jag begripit ingenting. Kanske ondskefullt medvetet tolkat saker fel för att lura folk bort från den semantiska webben av ännu ej förstådda hemska dolda agendor. Och helt säkert inte använt termer rätt där inget problem jag indikerat har med den semantiska webben att göra. Men bryr jag mig? Nej därför jag är bara intresserad av datat och inte datat från en aktör utan många.