background image

Materiały uzupełniajace wykład 

  

 

Zaawansowane technologie informatyczne 

 

W  uzupełnieniu  wykladu  o  I.  Gromadzeniu  danych  warto  przypomnieć,  że 
mówiliśmy wyłącznie o czynności ich zbierania (gromadzenia), nie wnikając  
w zagadnienie sposobu przedstawiania danych na użytek zastosowań kompu-
terowych, a więc o tzw. 

formacie

 danych. Tutaj przedstawimy zwięźle infor-

macje o kolejnych etapach procesu zgłębiania danych. 

 

Kolejnym krokiem w procesie przygotowania danych jest ich oczyszczenie i 
potencjalne wstępne przetworzenie (preprocessing). Operacja ta powinna być 
poprzedzona analizą danych, aby zorientować się w występujących błędach. 
W przypadku dużej bazy można posłużyć się losową próbką danych. 
 
W  bazach  danych  można  zidentyfikować  kilka  rodzajów  „zanieczyszczeń”. 
Należą do nich:  
 

ędne dane,  
 

redundancja informacji (kilka rekordów, które reprezentują ten sam fakt),  
 

brakujące wartości danych,  
 

niespójność  dziedzinowa  (atrybuty  o  wartościach  spoza  swojej  dziedziny; 
jest ona bardzo trudna, a czasem wręcz niemożliwa do wykrycia).  
 
Większość  tych  zanieczyszczeń  jest  spowodowana  przez  błędy  typograficz-
ne,  lub  przez  zwyczajne niedbalstwo osób wprowadzających.  Na  tym  etapie 
należy  zadecydować  o  strategii  postępowania  z  brakującymi  wartościami 
atrybutów. Jeżeli liczba rekordów zawierających wartości NULL w bazie jest 
niewielka, rekordy te są usuwane, gdyż nie mają wielkiego wpływu na koń-
cowy wynik i potraktowane mogą być jako szum informacyjny. Jeżeli nato-
miast liczba takich rekordów jest znaczna, to wartość NULL traktuje się jako 
dodatkową wartość z dziedziny atrybutu. 
 
W celu zilustrowania problemu oczyszczania danych, zostanie wykorzystany 
zbiór  danych  będący  próbką  z  systemu  informatycznego  wydawnictwa,  za-
wierający informacje o klientach prenumerujących czasopisma. Pokazana na 
poniżej tablica zawiera przykładowe fakty (rekordy) w bazie danych. 

background image

 

  Tablica 1. Dane oryginalne 

Numer 

klienta 

Nazwisko 

Adres 

Data 

prenum. 

Czasopismo 

23003  Nowak 

Grunwaldzka 1 

04-15-1997  Samochody 

23003  Nowak 

Grunwaldzka 1 

06-21-1998 

Muzyka 

23003  Nowak 

Grunwaldzka 1 

05-30-1996 

Komiks 

23009  Kowalski 

Sienkiewicza 2 

01-01-2010 

Komiks 

23013  Wrocławski 

Prusa 3 

02-30-1995 

Sport 

23019  Nowek 

Grunwaldzka 1 

01-01-1901 

Dom 

 

 
 

W Tablica 1 znajdują się dane osoby o nazwisku Nowak i Nowek. Różnią się 
numerem  klienta,  ale  mają  ten  sam  adres  zamieszkania,  co  jest  wskazówką, 
ż

e  najprawdopodobniej  dotyczą  tej  samej  osoby.  Mamy  tu  do  czynienia  z 

duplikacją  informacji.  ąd!  Nie  można  odnaleźć  źródła  odwołania. 
przedstawia zbiór danych po usunięciu (poprawieniu) powielonej informacji. 
Tablica zawiera również dwie daty, które na pewno są błędne. W roku 1901 
firma  jeszcze  nie  istniała,  rok  2010  dopiero  nastąpi.  Wartości  te  są  tak 
naprawdę  nieznane,  więc  powinny  być  zastąpione  wartością  NULL,  by  nie 
prowadzić do wyciągnięcia mylnych wniosków z danych. Poprawiony zbiór 
zawiera Tablica 3. 

 
 
 

Tablica 2. Usunięcie zdublowanych oraz błędnych rekordów 

Numer 
klienta 

Nazwisko 

Adres 

Data 

prenum. 

Czasopismo 

23003  Nowak 

Grunwaldzka 1 

04-15-1997 

Samochody 

23003  Nowak 

Grunwaldzka 1 

06-21-1998 

Muzyka 

23003  Nowak 

Grunwaldzka 1 

05-30-1996 

Komiks 

23009  Kowalski 

Sienkiewicza 2 

01-01-2008 

Komiks 

23013  Wrocławski 

Prusa 3 

02-30-1995 

Sport 

23003  Nowak 

Grunwaldzka 1 

01-01-1901 

Dom 

 
 
 

background image

 

Tablica 3. Spójność dziedzinowa 

Numer  

Klienta 

Nazwisko 

Adres 

Data prenum.  Czasopismo 

23003  Nowak 

Grunwaldzka 1 

04-15-1997  Samochody 

23003  Nowak 

Grunwaldzka 1 

06-21-1998 

Muzyka 

23003  Nowak 

Grunwaldzka 1 

05-30-1996 

Komiks 

23009  Kowalski 

Sienkiewicza 2 

NULL 

Komiks 

23013  Wrocławski 

Prusa 3 

02-30-1995 

Sport 

23003  Nowak 

Grunwaldzka 1 

NULL 

Dom 

 

Innymi elementami procesu czyszczenia danych mogą być pewne specyficz-
ne operacje na danych, m. in.: 

 

Wzbogacenie danych  
Obecnie istnieje mnóstwo firm trudniących się sprzedażą różnego rodzaju da-
nych,  gromadzonych  na  podstawie  wieloletnich  badań  i  obserwacji  statys-
tycznych.  Dane  te  mogą  dostarczyć  dodatkowej  informacji  o  różnorodnej 
tematyce,  zależnie  od  aspektu,  na  który  kładziemy  nacisk  przy  wyciąganiu 
wiedzy  (np.  średnie  ceny  domów,  profil  klientów,  demografia).  Połączenie 
istniejącej  korporacyjnej  bazy  danych  z  zakupioną  może  być  procesem  bar-
dzo trudnym. Najczęściej spotykanym problemem jest rekonstrukcja zależno-
ś

ci w bazie danych. Można na przykład zakupić dane osób mieszkających na 

pewnym  obszarze,  ale  bez  informacji  o  relacjach  rodzinnych  między  tymi 
osobami.  Wtedy  dane  są  praktycznie  bez  wartości.  Ważne  jest,  by  kupując 
dodatkowe  dane  zwrócić  uwagę,  czy  dane  są  kompletne  i  zawierają  pełne 
spektrum informacji. 

 

Redukcja danych 
Jeżeli ostateczny zbiór danych jest zbyt duży lub zawiera dane, które są nie-
istotne  dla  końcowego  celu  należy  przeprowadzić  redukcję.  Usuwać  można 
zbędne rekordy lub zbędne atrybuty. Do ograniczania rozmiaru zbioru danych 
stosowane są następujące techniki: 
 
Dodanie  nowych  atrybutów  –  sensie  konstruktywnej  indukcji  (zostanie  to 
wyjaśnione podczas omawiania, co może ułatwić generowanie modelu ucze-
nia, lub często spowodować usunięcie sprzeczności w danych,   
 

background image

Filtrowanie  rekordów

   

 usunięcie ze  zbioru tych rekordów,  które nie speł-

niają pewnych kryteriów. Kryteriami mogą być wyrażenia wyliczane na pod-
stawie wartości pól rekordu (np. usunięcie z bazy rekordów klientów, których 
wiek jest mniejszy niż 20 lat), 

 

Próbkowanie  (ang.  sampling) – pozwala wybrać  ze zbioru  danych podzbiór 
rekordów. Wybrane rekordy muszą być możliwie najbardziej reprezentatyw-
ne dla źródłowego zbioru.  

 

Kodowanie  danych

 

 

  jest  procesem  twórczym,  na  ogół  wielokrotnie  pow-

tarzanym  na  tym  samym  zbiorze  danych,  w  celu  osiągnięcia  coraz  to  lep-
szych rezultatów. Właściwe kodowanie ma bardzo duży wpływ na wydajność 
algorytmów wydobywających wiedzę oraz na jej jakość. Sposób reprezentac-
ji analizowanych danych, w dużym stopniu determinuje postać i treść modeli 
uczenia, które otrzymamy na wyjściu. 

 

 
Stosowanymi sposobami kodowania są: 

 

Zmiana  sposobu  reprezentacji  informacji  –  wartości  atrybutów  mogą  nieść 
ze  sobą  więcej  informacji,  niż  jest  to  wymagane  lub  informacja  ta  jest  zbyt 
szczegółowa.  Powoduje  to  niepotrzebne  wydłużenie  czasu  poszukiwania 
wzorców w bazie. W tym wypadku zmienić można sposób reprezentacji da-
nych. Dokonuje się tego najczęściej przez zmianę typu atrybutu. Zmiana typu 
może spowodować celową utratę informacji (np. zmiana dokładnej daty uro-
dzenia  na  wiek)  lub  może  być  bezstratna,  gdy  chodzi  o  niesioną  informację 
(np.  zmiana  tekstowych  wartości  atrybutów  wyliczeniowych  na  odpowia-
dające im wartości numeryczne). Czasem wystarcza zmiana reprezentacji da-
nych  w  obrębie  tego  samego  typu  (np.  zapisanie  cen  w  tysiącach  złotych). 
Zmiana sposobu reprezentowania danych, poza wzrostem szybkości genero-
wania wzorców i ich  jakości, wpływa także  na rozmiar  bazy danych, co też 
oddziałuje na szybkość przetwarzania. 

 

Dyskretyzacja  –  przekształcenie  wartości  ciągłych  atrybutu  na  wartości 
dyskretne.  Dokonuje  się  tego  przez  podział  dziedziny  atrybutu  na  wiele 
mniejszych  przedziałów.  Wtedy  rzeczywiste  wartości  są  zamieniane  na  nu-
mery przedziałów, do których należą. Przedziały mogą być równe, ustalone 
priori
,  bądź  obliczone  na  podstawie  rozkładu  rzeczywistych  wartości  atry-
butu  w  taki  sposób,  aby  rozkład  wartości  dyskretnych  był  jak  najbardziej 
równomierny.  Dyskretyzację  można  traktować  jako  szczególny  przypadek 
zmiany  sposobu  repiezentowania  informacji.  Tym,  co  wyróżnia  tę  metodę, 
jest duży stopień  automatyzacji. Analogicznie zamiana  wartości ciągłych na 

background image

dyskretne może się przyczynić do wzrostu jakości modeli uczenia i szybkości 
ich  generowania.  Ponadto  niektóre  algorytmy  drążenia  danych  działają  wy-
łącznie na wartościach dyskretnych. 
 
Normalizacja
 – wykorzystywana jest w celu łatwiejszego szukania zależnoś-
ci między atrybutami oraz łatwego znalezienia miary odległości między atry-
butami. Jest ona szczególnym przypadkiem zmiany sposobu reprezentacji in-
formacji i także może być wykonana automatycznie. 
 
Agregacja  rekordów  –  na  ogół  polega  na  zastąpieniu  kilku  rekordów  bazy 
jednym  poprzez  wykonanie  na  ich  atrybutach  prostych  operacji  takich  jak: 
zsumowanie, znalezienie maksimum, minimum, obliczenie średniej. Może tu 
być przykładem zastąpienie wszystkich klientów z danego miasta rekordem, 
reprezentującym jednego średniego klienta mieszkającego w danym mieście. 
Pozwoli to szybciej znaleźć pewne zależności między miastami. 

 

Zmiana  schematu  relacji  –  jeżeli  atrybut  jest  dyskretny,  i  przyjmuje  n 
wartości,  jest  zastępowany  przez  n  binarnych  atrybutów.  Każdy  zastępuje 
dokładnie  jedną  z  wartości  starego,  wyliczeniowego  atrybutu.  Taka  zmiana 
schematu  relacji  pozwala  na  redukcję  liczby  rekordów  w  bazie  kosztem 
wzrostu  rozmiaru samego  rekordu.  Ponadto  pozwala  na  odkrycie  zależności 
między wartościami atrybutów.  
 
Przykładami zmiany schematu relacji może być

 

Zmiana  adresu  na  regon.  Adres  zamieszkania  jest  zamieniany  na  jeden  z 
czterech kodów. Upraszcza to informację o zamieszkaniu,  
 
Zmiana  daty  urodzenia  na  wiek.  Data  urodzenia  jest  w  tym  wypadku  in-
formacją zbyt szczegółową, więc można ją zamienić na wiek, 
 
Podzielenie  dochodu  przez  1000.  Dochód  ma  mniejsze  wartości  i  może  być 
łatwiej  porównywany  z  wiekiem.  Sprowadzenie  wartości  atrybutów  do  tego 
samego  rzędu  wielkości,  pomoże  zdefiniować  pewniejszą  miarę  odległości 
między rekordami. Miara taka jest  wykorzystywana w niektórych zadaniach 
drążenia danych (znajdowanie klastrów). Również porównywanie dochodów 
między sobą będzie szybsze, 
 
Podzielenie kredytu przez 1000 – z przyczyn j. w. 
 

background image

Zamiana daty prenumeraty na liczbę miesięcy, które upłynęły od 1900 roku. 
Operacja ta pomoże przeprowadzić analizę i wyszukiwanie sekwencji czaso-
wych  w  danych  wejściowych.  Zapis  daty  w  dniach  jest  zbyt  dokładny,  aby 
można było znaleźć ogólne zależności czasowe. 
 
Uznaje  się,  że  po  operacji  I.  Oczyszczenia  danych,  można  teraz  przedstawić 
dane  w  formacie  wymaganym  przez  stosowane  narzędzie(a)  do  DM.  Jakie 
zatem  formalizmy  reprezentacji  wiedzy  są  najczęściej  stosowane  w  procesie 
uczenia  maszynowego  oraz  jaki  faktyczny  format  maj
ą  dane,  przygotowane 
do prowadzenia tego procesu? 
 
 
Jeśli  chodzi  o  formalizmy  reprezentacji  wiedzy,  najczęściej  stosowane  w 
uczeniu maszynowym, mogą to być: 
                              
                                                            

•asocjacje wiedzy, 
(obrazy wiedzy), 
(otwarte teksty), 

•tablice decyzji,  
•wektory wiedzy