You are on page 1of 24

2.2.

Klasifikacija
kompleksnih podatkov
Kako klasificirati nestrukturirane
podatkovne množice (besedila, slike, zvok,
video, …)?

Tehnologije znanja prof. dr. Vili Podgorelec


Klasifikacija kompleksnih podatkov
Strukturirani podatki
Podatki so predstavljeni z vrednostmi določenih atributov
Za vsak posamezen podatek natančno vemo, kaj predstavlja
Proces zbiranja podatkov je običajno dobro definiran, zato so
podatki urejeni, (večinoma) pravilni, znana je zaloga vrednosti,
vrednosti so predvidljive, …
Primeri: podatkovna baza, kartoteka, zajem podatkov iz znanih
senzorjev, …
Nestrukturirani podatki
Podatki niso urejeni, struktura podatkov ni definirana
Ne vemo, kaj podatki sploh predstavljajo
Podatki so lahko napačni, zaloga vrednosti ni znana, struktura
podatkov ni enotna, …
Primeri: spletna stran, videoposnetek, pretok podatkov po
mrežnem kablu, …

Tehnologije znanja 2 prof. dr. Vili Podgorelec


Vrste nestrukturiranih podatkov
Vsakodnevno imamo opravka z množico podatkov v
nestrukturirani obliki, ki predstavljajo glavnino znanja
človeštva
Besedila
• Besedila v naravnem jeziku, (delno strukturirani) dokumenti,
programska koda, …
Slike
• Med slike lahko uvrstimo tudi videoposnetke
Signali (časovne vrste)
• Zvočni posnetki, zaporedne meritve iz različnih senzorjev (npr.
merjenje porabe električne energije), zajete fiziološke meritve
(npr. EKG, EEG, …)

Tehnologije znanja 3 prof. dr. Vili Podgorelec


Učenje in uporaba klasifikatorja (ponovitev)
Ta del je (praktično) enak
ne glede na vrsto podatkov ALGORITEM
STROJNEGA
vreme smer vetra jakost vetra posadka velikost barke nezgoda UČENJA
sonce brez 0 12 17 ne
megla J 3 2 14 da
oblaki Z 7 8 13 ne
sonce S 10 10 14 ne učenje
dež Z 4 3 15 da
dež brez 0 7 12 ne indukcija (gradnja
sonce J 2 4 7 ne modela znanja)
oblaki S 5 5 12 ne
oblaki V 2 1 6 ne
sonce V 4 8 15 ne

učna množica
MODEL ZNANJA
(klasifikator)

vreme smer vetra jakost vetra posadka velikost barke nezgoda


megla brez 0 3 13 da da
oblaki Z 6 9 16 ne ne predikcija
dež V 2 8 14 ne ne
dedukcija (uporaba
oblaki Z 11 6 16 da ne
sonce V 7 7 14 ne ne modela znanja)
testna množica
Tehnologije znanja 4 prof. dr. Vili Podgorelec
Priprava podatkov

V primeru strukturiranih podatkov njihov priprava za učenje ne


zahteva preveč dela
Normalizacija podatkov, izločanje oz. nadomeščanje manjkajočih
vrednosti, transformacija kategoričnih vrednosti v številske, …
V primeru nestrukturiranih podatkov je njihova obdelava oz.
priprava za algoritme učenja zelo pomemben in običajno
zahteven korak
Algoritmi strojnega učenja zahtevajo na vhodu strukturirane podatke →
nestrukturirane podatke je potrebno ustrezno strukturirati
Kako iz množice nestrukturiranih vsebin določiti smiselne in uporabne
atribute?

Tehnologije znanja 5 prof. dr. Vili Podgorelec


Primer: razvrstimo besedila
Naslednje tri novice razvrstimo v skupine:
„Na odru ljubljanske Drame se drevi ustavlja prva slovenska godba na pihala, ki že več kot 15
let preigrava skoraj izključno ulični džez New Orleansa. Cerkljanski Kar češ Brass Band, ki
neworleanški džez interpretira na svojevrsten in svež način, so v gledališče povabili v sklopu
cikla Drama Akustika.“
„Tretji oktobrski konec tedna na Ravnah na Koroškem zdaj že tradicionalno poteka Festival
slovenskega jazza, katerega spremljajoči dogodki se na Koroškem vrstijo že od septembra.
Tridnevni festivalski vrhunec je v Kulturnem centru Ravne odprl Big Band RTV Slovenija z
vsestranskim glasbenikom Boštjanom Gombačem.“
„Murskosoboški policisti so 33-letniku z območja Murske Sobote zasegli posušeno konopljo,
sadike in gotovino, za katero sumijo, da jo je dobil s preprodajo. Pri tem so v hiši osumljenega
odkrili poseben prostor za gojenje konoplje pod umetno svetlobo. V tem prostoru so našli in
zasegli tudi 20 sadik konoplje, visokih do 90 centimetrov, in dober kilogram posušene oz. delno
posušene konoplje.“

Ročna razvrstitev je (dokaj) enostavna. Kako pa novice


razvrstiti avtomatsko?

Tehnologije znanja 6 prof. dr. Vili Podgorelec


Nestrukturirane vsebine in model znanja
Spomnimo se koncepta modela znanja
Vhodne, izhodne (in morebiti skrite) spremenljivke
Model znanja definira povezavo med vhodnimi in izhodnimi
spremenljivkami
Cilj je predvideti (določiti) izhod za poljuben podan vhod
Če želimo koncepte strojnega učenja uporabiti tudi na
nestrukturiranih podatkih, moramo le-te predstaviti v
strukturirani obliki → pretvorba
Določiti je potrebno atribute in njihove vrednosti

{
Lorem ipsum x1 y1
dolor sit amet,
consectetur
x2 SISTEM
adipiscing elit, y2
sed do eiusmod
.
.
(model znanja) .
.
tempor
. .
incididunt ut
labore et dolore
xN h1, h2, …, hK yM
magna aliqua.

Tehnologije znanja 7 prof. dr. Vili Podgorelec


Primer: klasifikacija slik (1/7)

Želimo razviti klasifikacijski model, ki bo iz slike z ročno


napisano števko prepoznal, za katero števko gre.
Kaj bo pri tem izhod modela (razredi)?
Kako bomo definirali vhodne atribute?
Kateri učni algoritem bi
bilo pri tem smiselno
uporabiti?

Tehnologije znanja 8 prof. dr. Vili Podgorelec


Primer: klasifikacija slik (2/7)

V primeru (zelo) kompleksnih vhodnih podatkov, kjer


nam vpogled v postopek klasifikacije oz. razlaga
modela znanja ni potrebna, lahko uporabimo umetne
nevronske mreže.

nevron

izhodni nivo
vmesni (skriti)
vhodni nivo nivoji

Tehnologije znanja 9 prof. dr. Vili Podgorelec


Primer: klasifikacija slik (3/7)

Ključna elementa nevronske mreže sta nevron (v


osnovi gre za funkcijo združevanja po principu utežene
vsote) in pragovna funkcija (threshold).

x1 utežena
w1
vsota
x2 w2
vhodi . Σ y=σ(x1∙w1+…+xN∙wN+bias)
. wN izhod
x.N pragovna (aktivacijska)
uteži funkcija

bias

Tehnologije znanja 10 prof. dr. Vili Podgorelec


Kako deluje nevronska mreža?

Demonstracija: https://playground.tensorflow.org/

Tehnologije znanja 11 prof. dr. Vili Podgorelec


Primer: klasifikacija slik (4/7)
Slika je sestavljena iz pikslov → to so vhodni atributi.

Tehnologije znanja 12 prof. dr. Vili Podgorelec


Primer: klasifikacija slik (5/7)

Piksli so zelo primitivna oblika vhodne lastnosti


Kako iz teh elementarnih oblik dobiti višje–pomenske
lastnosti?

lok zgoraj lok spodaj diagonala


desno levo spodaj v
desno

Tehnologije znanja 13 prof. dr. Vili Podgorelec


Primer: klasifikacija slik (6/7)
Slika je sestavljena iz pikslov → to so vhodni atributi.

lok zgoraj
desno

navpična
črta zgoraj

lok spodaj
levo

diagonala
spodaj iz
leve v desno

...

Tehnologije znanja 14 prof. dr. Vili Podgorelec


Primer: klasifikacija slik (7/7)
Z dovolj zaporednimi nivoji v nevronski mreži prehajamo od
najbolj abstraktnih na vhodu (piksli) preko vse bolj konkretnih
in kompleksnih (npr. krog, poševna črta, …) v vmesnih nivojih
do konkretnega elementa, med katere
razvrščamo, na izhodu
Demo: https://www.cs.ryerson.ca/~aharley/vis/conv/

Primer arhitekture nevronske


mreže za prepoznavo števke iz
slike (uporabljena je konvolucijska
nevronska mreža, CNN).

Tehnologije znanja 15 prof. dr. Vili Podgorelec


Še en primer: Ali je pogodba podpisana?
Preverjanje ustreznosti sklenjenih pogodb zahteva veliko
(rutinskega) dela in zbranosti pregledovalca, še sploh če gre za
velik obseg oz. množično opravilo. Znano je, da zaposlenim, ki
dalj časa opravljajo rutinsko delo, zbranost pade, kar lahko
hitro privede do neželenih napak. Po drugi strani pa so
množična rutinska opravila tista, ki so najbolj primerna za
avtomatizacijo.
Ali bi lahko avtomatizirali postopek preverjanja ustreznosti pogodb – ali
vsebujejo vse potrebne elemente
(ali so ustrezno podpisane)?
Kako bi potekal proces v tem primeru?

Tehnologije znanja 16 prof. dr. Vili Podgorelec


Priprava podatkov iz časovnih vrst
Še ena pogosta oblika nestrukturiranih podatkov so
časovne vrste (signal, merjen v zaporednih časovnih
intervalih)
Gibanje temperature, poraba električne energije, fiziološke
meritve (npr. ECG, EEG, …)
Definiranje in ekstrakcija značilnic je v teh primerih
praviloma odvisno od konkretnega primera

Tehnologije znanja 17 prof. dr. Vili Podgorelec


Primer: identifikacija stresa (1/6)
Želimo razviti klasifikacijski model, ki bo z merjenjem
psiho-fizičnih parametrov osebe ugotovil, ali je oseba
v stanju stresa
Kot osnovo uporabimo meritve srčnega utripa (EKG)
Kaj bo pri tem izhod modela (razredi)?
Kako bomo definirali vhodne atribute?
Kateri učni algoritem bi bilo
pri tem smiselno uporabiti?

Tehnologije znanja 18 prof. dr. Vili Podgorelec


Primer: identifikacija stresa (2/6)
Uporaba domenskega znanja: stres povzroči spremembo
ritma srčnega utripa → namesto neposrednega merjenja
EKG raje uporabimo spremembe srčnega utripa (heart rate
variability, HRV)
Zajem HRV z uporabo fitnes naprav (pametna ura, prsni pas)
Pretvorba zajetega signala v obliko, primerno za nadaljnjo
obdelavo
Čiščenje vhodnega signala (šum, napake v meritvah, …)

Tehnologije znanja 19 prof. dr. Vili Podgorelec


Primer: identifikacija stresa (3/6)
Definiranje in ekstrakcija značilnic iz HRV signala
Značilnice v
časovni domeni
• Povprečni pulz, število sprememb, …
Značilnice v frekvenčni domeni
• Porazdelitev moči,

Geometrijske lastnosti signala
• Relativni intervali, razpršenost, …

Tehnologije znanja 20 prof. dr. Vili Podgorelec


Primer: identifikacija stresa (4/6)
Pridobivanje (reprezentativnih!) podatkov
Eksperiment: izpostavljenost oseb trem stanjem –
sproščenosti, psihičnemu stresu, fizični aktivnosti
Merjenje HRV signala v različnih stanjih
• Izračun vrednosti definiranih značilnic v različnih stanjih
fizična
sproščenost stres sproščenost aktivnost

zajet HRV signal osebe med eksperimentom (označena so različna stanja)


Tehnologije znanja 21 prof. dr. Vili Podgorelec
Primer: identifikacija stresa (5/6)
Sestava podatkovne množice za strojno učenje
Vhod: vrednosti definiranih značilnic, izračunanih iz zajetega HRV
signala
Izhod: stanje osebe (stres, ni stres)
Za gradnjo napovednega modela uporabimo več različnih
algoritmov strojnega učenja in izberemo najuspešnejšega

stanje
stres
ni
ni
stres
ni

pripravljena podatkovna množica za strojno učenje

Tehnologije znanja 22 prof. dr. Vili Podgorelec


Primer: identifikacija stresa (6/6)
Na koncu še interpretiramo napovedni model, analiziramo
vplive posameznih značilnic, njihove prispevke h končni
napovedi, …

vpliv značilnic na napoved prispevek značilnic k napovedi

Tehnologije znanja 23 prof. dr. Vili Podgorelec


Praktični primer: Indijanci in kavboji

Kako naj računalnik prepozna, ali se na sliki nahaja


Indijanec ali kavboj?
Kaj je v ta namen potrebno narediti?
Na kaj je potrebno biti pozoren?
Kako ovrednotiti zgrajen napovedni
model?

Tehnologije znanja 24 prof. dr. Vili Podgorelec

You might also like