inteligencja obliczeniowa indukcja reguł - przestrzenie wersji
DESCRIPTION
Inteligencja Obliczeniowa Indukcja reguł - przestrzenie wersji. Wykład 24 Włodzisław Duch Uniwersytet Mikołaja Kopernika. Odkrywanie wiedzy metodami neuronowymi Stosowanie reguł Drzewa decyzji. Co było. Indukcja reguł Przestrzenie wersji. Co będzie. Uczenie się koncepcji. Przykład: - PowerPoint PPT PresentationTRANSCRIPT
Inteligencja ObliczeniowaIndukcja reguł - przestrzenie wersji.
Wykład 24
Włodzisław Duch
Uniwersytet Mikołaja Kopernika
Co byłoCo było
• Odkrywanie wiedzy metodami neuronowymi
• Stosowanie reguł
• Drzewa decyzji
Co będzieCo będzie
• Indukcja reguł
• Przestrzenie wersji
Uczenie się koncepcji• Przykład:
– obserwacje występowania rekacji alergicznych po zjedzeniu posiłku:
RestauracjaRestauracja PosiłekPosiłek DzieńDzień KosztKoszt ReakcjaReakcja
DS. 1DS. 1 śniadanieśniadanie PiątekPiątek taniatania TakTakKosmosKosmos lunchlunch Piątek Piątek drogadrogaNieNieDS. 1DS. 1 lunchlunch SobotaSobota tania tania TakTakSedesSedes śniadanie śniadanie NiedzielaNiedziela taniatania NieNieDS. 1DS. 1 śniadanie śniadanie Niedziela Niedziela drogadroga NieNie
++--++----
– W jakich warunkach pojawia się reakcja alergiczna ??
Problem ogólnie• Zbiór możliwych zdarzeń:
– Przykład:
RestauraRestauracjecje PosiłkiPosiłki DDnini Koszty Koszty
3 X 3 X 7 X 2 = 1263 X 3 X 7 X 2 = 126
ReaReakcjakcja: Restaura: Restauracjacja X X Posiłek Posiłek X X Dzień Dzień X X Koszt ==>Koszt ==> Tak/NieTak/Nie
• Na tym zbiorze zdefiniowana jest funkcja logiczna.
– Przykład:
Zadanie: sformułuj koncepcję zgodną z przypadkami Zadanie: sformułuj koncepcję zgodną z przypadkami pozytywnymi i negatywnymi. pozytywnymi i negatywnymi.
• Wartości tej funkcji znane są tylko dla nielicznych kombinacji argumentów.
Przykład - obrazek
Mamy zbiór możliwych Mamy zbiór możliwych zdarzeń.zdarzeń.
Mając dane Mając dane przykładyprzykłady
++++ ++
++--
--
--
--
Znajdź koncepcję, która pokrywa wszystkie Znajdź koncepcję, która pokrywa wszystkie przypadki pozytywne i żadnego negatywnego.przypadki pozytywne i żadnego negatywnego.
Przestrzeń wersjiPrzestrzeń wersjiMetoda uczenia się koncepcji oparta na precyzowaniu wersji danej koncepcji na podstawie przykładów.
Dane: przestrzeń hipotez Hzbiór przykładów S
Znajdź: wszystkie hipotezy hH zgodne z przykładami S.
Przestrzeń wersji: zbiór {h}
Jak to zrobić?
Relacja większej ogólności: bardziej ogólna hipoteza pokrywa większy zbiór przykładów niż mniej ogólna.
1 2 2 1 iff | ( ) 1 | ( ) 1h h x X h x x X h x
Niejednoznaczność problemu• Można to zrobić na wiele sposobów!
Zbiór możliwych Zbiór możliwych zdarzeńzdarzeń
++++ ++
++--
--
--
--
• Który wybrać ?
Zły wybór
• Koncepcja:
– DS.1 i śniadanie i Piątek i tania lub– DS.1 i lunch i sobota i tania
Nie uogólnia żadnych przykładów!
RestauracjaRestauracja PosiłekPosiłek DzieńDzień KosztKoszt ReakcjaReakcja
DS. 1DS. 1 śniadanieśniadanie PiątekPiątek taniatania TakTakKosmosKosmos lunchlunch Piątek Piątek drogadrogaNieNieDS. 1DS. 1 lunchlunch SobotaSobota tania tania TakTakSedesSedes śniadanie śniadanie NiedzielaNiedziela taniatania NieNieDS. 1DS. 1 śniadanie śniadanie Niedziela Niedziela drogadroga NieNie
--
----
++
++
Rysunek - zły wybór
• Pokrycie tylko pozytywnych przykładów.
Zbiór możliwych Zbiór możliwych zdarzeńzdarzeń
++++ ++
++--
--
--
--
Inny zły wybór
• Hipoteza: wszystko byle nie:
– Kosmos i lunch i Piątek i drogai
– Sedes i śniadanie i Niedziela i taniai
– DS. 1 i śniadanie i Niedziela i droga
RestauracjaRestauracja PosiłekPosiłek DzieńDzień KosztKoszt ReakcjaReakcja
DS. 1DS. 1 śniadanieśniadanie PiątekPiątek taniatania TakTakKosmosKosmos lunchlunch Piątek Piątek drogadrogaNieNieDS. 1DS. 1 lunchlunch SobotaSobota tania tania TakTakSedesSedes śniadanie śniadanie NiedzielaNiedziela taniatania NieNieDS. 1DS. 1 śniadanie śniadanie Niedziela Niedziela drogadroga NieNie
++--++----
Rysunek - negatywne
• Koncepcja: wszystko co nie jest złe jest dobre.
Zbiór możliwych Zbiór możliwych zdarzeńzdarzeń
++++ ++
++--
--
--
--
Język hipotez
• Język pozwalający na opis możliwych hipotez.
= = przestrzeń hipotezprzestrzeń hipotez
• Koncepcja - jedna z hipotez wyrażalnych w tym języku
– unika się problemu konkluzji „bez sensu”
– wymusza generalizację/indukcję reguł pokrywających większe obszary niż tylko dane przykłady.
Reakcje - hipotezy
• W tym przykładzie hipotezy to 4-ki:
– najbardziej ogólna hipoteza: [ ?, ?, ?, ?]
– najbardziej specyficzna, np. [Sedes, lunch, Poniedziałek, tania]
– kombinacje ? i wartości, np. [DS.1, ?, ?, droga]
– [ ?, lunch, ?, ?]
• Hipoteza pusta (na dole = nie ma przykładów)
RestauracjaRestauracja PosiłekPosiłek DzieńDzień KosztKoszt Reakcja ReakcjaDS. 1DS. 1 śniadanieśniadanie PiątekPiątek taniatania TakTakKosmosKosmos lunchlunch Piątek Piątek drogadrogaNieNieDS. 1DS. 1 lunchlunch SobotaSobota tania tania TakTakSedesSedes śniadanie śniadanie NiedzielaNiedziela taniatania NieNieDS. 1DS. 1 śniadanie śniadanie Niedziela Niedziela drogadroga NieNie
++--++----
Hipotezy i zbiór możliwych zdarzeń
ZdarzeniaZdarzenia
x2x2
x1x1
x1 = x1 = < < KosmosKosmos, lunch, , lunch, PoniedzPoniedz, , drogadroga>>x2 =x2 =< Sedes, lunch, < Sedes, lunch, NiedzNiedz, , taniatania>>
h1 h1 = [?, lunch, = [?, lunch, PoniedzPoniedz, ?], ?]h2 h2 = [?, lunch, ?, = [?, lunch, ?, taniatania]]h3 h3 = [?, lunch, ?, ?]= [?, lunch, ?, ?]
OgólneOgólne
Specyf.Specyf.
HipotezyHipotezy
h2h2
h3h3
h1h1
• Przykład:– [?, lunch, Poniedz, ?] : Posiłek = lunch Dzień=Poniedz
– [?, lunch, ?, tani] : Posiłek = lunch Koszt = tani
– [?, lunch, ?, ?] : Posiłek = lunch
• Dwie specjalne hipotezy:– [ ?, ?, ?, ?] : cokolwiek
– : nic
Możliwości języka hipotez
• Koniunkcja indywidualnych własności.
• Hipoteza = kompleks selektorów.
Hierarchiczność języka hipotez
• Przykład: kolory obiektów.
Przykłady czerwonyczerwony : : ++purppurpurowy urowy : : --niebieskiniebieski : : ++
dowolny-kolordowolny-kolor
kolor-czystykolor-czysty kolor mieszanykolor mieszany
czerwonyczerwony niebieskiniebieski zielonyzielony pomarańczowypomarańczowy purppurpurowy urowy
• Język hipotez: od pojęć ogólnych do specyficznych
Uczenie koncepcji• Mając:
Zbiór X możliwych zdarzeń:• Jedzenie: <Restauracja, Posiłek, Dzień, Koszt>
Nieznaną funkcję c: X => {, +}
• np. reakcje: Jedzenie => {, +}
Język hipotez H • np. koniunkcje: [ ?, lunch, Poniedziałek, ?]
Zbiór przykładów treningowych D, i ich oceny c• np. (<DS.1, lunch, Piątek, tania>,+) , …
• Znajdź:Hipotezę h w H taką by dla wszystkich x w zbiorze D: Jeśli
x pokryte jest przez h c(x) = +
Indukcja: jeśli działa dobrze dla dostatecznie dużej liczby przykładów to będzie działało i dla nowych.
Algorytm naiwny(Find-S)
Inicjalizacja:Inicjalizacja: h h := :=
Dla każdegoDla każdego pozytywnego przykładupozytywnego przykładu xx zz DD Do:Do:
IfIf hh nie pokrywanie pokrywa xx ZastąpZastąp hh minimalminimalnąną generaliza generalizacjącjąhh pokrywającą pokrywającą xx
ReturnReturn hh
Przykład alergii
PoczątkowoPoczątkowo h = h =
Przykład 1Przykład 1 h = h = [[DS.1DS.1,, śniadnie śniadnie,, Piątek Piątek,, tania tania]]
minimalminimalnana generaliz generalizacjaacja= = indywidualne zdarzeniaindywidualne zdarzenia
Przykład 2Przykład 2 h = h = [[DS.1DS.1, , ??, , ??,,taniatania]]
GeneralizacjaGeneralizacja = =zamień coś nazamień coś na ? ?
nie ma więcej pozytywnych przykładównie ma więcej pozytywnych przykładów: : return return hh
RestauracjaRestauracja PosiłekPosiłek DzieńDzień KosztKoszt Reakcja Reakcja
DS. 1DS. 1 śniadanieśniadanie PiątekPiątek taniataniaTakTakKosmosKosmos lunchlunch Piątek Piątek drogadroga NieNieDS. 1DS. 1 lunchlunch SobotaSobota tania tania TakTakSedesSedes śniadanie śniadanie NiedzielaNiedziela taniataniaNieNieDS. 1DS. 1 śniadanie śniadanie Niedziela Niedziela drogadroga NieNie
++--++----
Własności naiwnego algorytmu
BBolekolek JJasiuasiu AleksAleks
HakerHaker NaukowiecNaukowiec PiłkarzPiłkarz
HH
• Niejednoznaczność:– Może być wiele minimalnych generalizacji:
Bolek może być minimalnie uogólniony do koncepcji Bolek może być minimalnie uogólniony do koncepcji obejmującej Jasiaobejmującej Jasia..
Własności (2)• Może wybrać niewłaściwą hipotezę -
nie sprawdza czy wybrana hipoteza nie może być również uogólnieniem przypadków negatywnych.
D :D : BBolekolekAleAleksksJJasiuasiu
++--++
BolekBolek JasiuJasiu AleksAleks
HakerHaker NaukowiecNaukowiec PiłkarzPiłkarz
HH
Złe uogólnienie ?Złe uogólnienie ?
Własności (3)• Nie wykrywa błędów w danych, np: D :D : BolekBolek
JasiuJasiuBolekBolek
++++--
JasiuJasiu AleksAleks
NaukowiecNaukowiec
HH
BolekBolek
• Nie informuje, że jezyk H nie wystarcza by się nauczyć koncepcji.
D :D : BolekBolekJasiuJasiuBolekBolek
++--++
Własności Find-S:• Nie musi pamiętać poprzednich przykładów.
Jeśli Jeśli h h pokryło pokryło 20 20 pierwszych przypadkówpierwszych przypadków, , to to h’h’ również je pokrywa. również je pokrywa.
hh
XX HH
– Jeśli poprzednia hipoteza h uwzględniła już pewne przypadki to jej minimalna generalizacja również.
h’h’
Algorytm specjalizujący
Inicjalizuj:Inicjalizuj: hh := := [ ?, ?, .., ?][ ?, ?, .., ?]
Dla każdego negatywnego przykładuDla każdego negatywnego przykładu xx zz DD Do:Do:
JeśliJeśli hh pokrywapokrywa xxZamieńZamień hh na minmalną specjalizacjęna minmalną specjalizacjęhh które nie pokrywaktóre nie pokrywa xx
ReturnReturn hh
Przykład z alergiami:
RestauracjaRestauracja PosiłekPosiłek DzieńDzień KosztKoszt Reakcja Reakcja
DS. 1DS. 1 śniadanieśniadanie PiątekPiątek taniataniaTakTakKosmosKosmos lunchlunch Piątek Piątek drogadroga NieNieDS. 1DS. 1 lunchlunch SobotaSobota tania tania TakTakSedesSedes śniadanie śniadanie NiedzielaNiedziela taniataniaNieNieDS. 1DS. 1 śniadanie śniadanie Niedziela Niedziela drogadroga NieNie
++--++----
PoczątkowoPoczątkowo h = [ ?, ?, ?, ?]h = [ ?, ?, ?, ?]
PrzykładPrzykład 1: 1:
h= [ ?, h= [ ?, śniadanieśniadanie, ?, ?], ?, ?]
PrzykładPrzykład 2: 2:
h= [ h= [ DS. 1DS. 1, , śniadanieśniadanie, ?, ?], ?, ?]
PrzykładPrzykład 3: 3:
h= [ h= [ DS. 1DS. 1, , śniadanieśniadanie, ?, , ?, taniatania]]
Algorytm Przestrzeni Wersji
• Połącz specjalizowanie i generalizowanie:
– Generalizuj dla przykładów pozytywnych– Specjalizuj dla przykładów negatywnych
• Ale:nie wybieraj jednej generalizacji lub specjalizacji w każdym kroku
• tylko: pamiętaj wszystkie generalizacje i specjalizacje
Przestrzenie wersji: inicjalizacja
• Przestrzenie G i S są początkowo hipotezą najbardziej ogólną i hipotezą pustą.
• Przykłady negatywne pozwalają na specjalizację G.• Przyłady pozytywne pozwalają na generalizację S.
G = { [ ?, ?, …, ?] }G = { [ ?, ?, …, ?] }
S = {S = { } }
x = przykłady negatywne
• Zamień maksymalnie ogólną hipotezę (wszystko możliwe) na te specjalizacje, które nie pokrywają przypadków negatywnych.
Tylko hipotezy bardziej specyficzne niż Tylko hipotezy bardziej specyficzne niż GG są możliwe: są możliwe: takie, które nie pokrywają przykładów negatywnychtakie, które nie pokrywają przykładów negatywnych
S = {S = { } }
G = { [ ?, ?, …, ?] }G = { [ ?, ?, …, ?] }
G = {h1, h2, …, hn}G = {h1, h2, …, hn}
x = przykłady pozytywne
• Zamień maksymalnie szczegółową hipotezę na najmniejsze generalizacje pokrywające przykłady pozytywne.
Tylko hipotezy bardziej ogólne niż te wTylko hipotezy bardziej ogólne niż te w SS są możliwesą możliwe:: powinny powinny pokrywać przypadki pozytywnepokrywać przypadki pozytywne
G = {h1, h2, …, hn}G = {h1, h2, …, hn}
S = {S = { }}
S = {S = {h1’, h2’, …,hm’ h1’, h2’, …,hm’ } }
x = przykład negatywny
• Z kolejnych węzłów, które pokrywają przykłady negatywne dokonujemy specjalizacji.
Tylko hipotezy bardziej specyficzne niż te w Tylko hipotezy bardziej specyficzne niż te w GG są możliwesą możliwe:: takie hipotezy nie pokrywają przykładów negatywnychtakie hipotezy nie pokrywają przykładów negatywnych
S = {S = {h1’, h2’, …,hm’ h1’, h2’, …,hm’ } }
G = {h1, h2, …, hn}G = {h1, h2, …, hn}
G = {h1, h21, h22, …, hn}G = {h1, h21, h22, …, hn}
x = przykład pozytywny
• Zamieniamy hipotezy z S na wszystkie minimalne genralizacje, które pokrywają następne przypadki pozytywne.
Tylko hipotezy bardziej ogólne niż te wTylko hipotezy bardziej ogólne niż te w SS są możliwesą możliwe:: powinny powinny pokrywać przypadki pozytywne. pokrywać przypadki pozytywne.
G = {h1, h21, h22, …, hn}G = {h1, h21, h22, …, hn}
S = {S = {h1’, h2’, h1’, h2’, …,hm’ …,hm’ } }
S = {S = {h11’, h12’, h13’, h2’, …,hm’ h11’, h12’, h13’, h2’, …,hm’ } }
Optymalizacja dla negatywnych
• Mając przykład negatywny dokonuj specjalizacji, ale rozważaj tylko te hipotezy z G, które są bardziej ogólne
niż specyficzne hipotezy z S
G = {h1, h21, …, hn}G = {h1, h21, …, hn}
S = {S = {h1’, h2’, …,hm’ h1’, h2’, …,hm’ } }
… … są bardziej ogólne niżsą bardziej ogólne niż ... ...
Optymalizacja dla pozytywnych
• Mając przykład pozytywny rozważaj tylko te generalizacje elemenów S, które są nadal bardziej specyficzne niż hipotezy ogólne z G.
G = {h1, h21, h22, …, hn}G = {h1, h21, h22, …, hn}
S = {S = {h13’, h2’, …,hm’ h13’, h2’, …,hm’ } }
… … jest bardziej specyficzna niżjest bardziej specyficzna niż ... ...
Obcinanie: przykłady negatywne
• Nowy przykład negatywny można również użyć do wyciecia wszystkich hipotez z S, które pokrywają ten przykład negatywny.
G = {h1, h21, …, hn}G = {h1, h21, …, hn}
S = {S = {h1’, h3’, …,hm’ h1’, h3’, …,hm’ } } Uwzględnij ostatni przykład negatywnyUwzględnij ostatni przykład negatywny!!
Obcinanie: przykłady pozytywne
• Nowy przykład pozytywny można użyć do przycinania hipotez z G nie pokrywających tego przykładu.
G = {h1, h21, …, hn}G = {h1, h21, …, hn}
S = {S = {h1’, h3’, …,hm’ h1’, h3’, …,hm’ } }
Węzły, które nie pokrywają nowegoWęzły, które nie pokrywają nowegopozytywnego przykładu.pozytywnego przykładu.
Usuń zbędne hipotezy
• Jeśli jakaś hipoteza z G jest bardziej specyficzna od innej hipotezy z G można ją wyeliminować!
G = {h1, h21, …, hn}G = {h1, h21, …, hn}
S = {S = {h1’, h3’, …,hm’ h1’, h3’, …,hm’ } }
Bardziej specyficzna niż inna, ogólna hipotezaBardziej specyficzna niż inna, ogólna hipoteza
Dlaczego?Dlaczego? Nic powyżej Nic powyżej GG nie jest dopuszczalne. nie jest dopuszczalne. Najbardziej ogólne hipotezy zNajbardziej ogólne hipotezy z GG definiują prawdziwą granicę.definiują prawdziwą granicę.
Podobnie jest dlaPodobnie jest dla SS
Konwergencja:
• Jeśli G i S mają wspólny element, to Przestrzeń Wersji zbiegła się do jednego rozwiązania.
• Należy sprawdzić, czy jest ono zgodne z wszystkimi znanymi przykładami.
G = {h1, h21, h22, …, hn}G = {h1, h21, h22, …, hn}
S = {S = {h13’, h2’, …,hm’ h13’, h2’, …,hm’ } }
Przykład z reakcjami
• Inicjalizacja
[ ?, ?, ?, ?][ ?, ?, ?, ?]
Max.Max.ogólneogólne
Max.Max.specyficznespecyficzne
x= [DS.1, śniadanie, Piątek, tania]: +
• Przykład pozytywny: minimalna generalizacja
[ ?, ?, ?, ?][ ?, ?, ?, ?]
[[DS.1, śniadanie, Piątek, tania]]
x=[Kosmos, lunch, piątek, droga]: -• Przykład negatywny: minimalna specjalizacja możliwa na 15 sposobów !!
[[DS.1DS.1, ?, ?, ?], ?, ?, ?][[KosmosKosmos, ?, ?, ?] , ?, ?, ?] [Sedes, ?, ?, ?][Sedes, ?, ?, ?][?, [?, śniadanieśniadanie, ?, ?], ?, ?][?, lunch, ?, ?][?, lunch, ?, ?][?, [?, obiadobiad, ?, ?], ?, ?][?, ?, [?, ?, poniedziałekponiedziałek, ?], ?][?, ?, [?, ?, wtorekwtorek, ?], ?][?, ?, [?, ?, środaśroda, ?], ?][?, ?, [?, ?, czwartekczwartek, ?], ?][?, ?, [?, ?, piątekpiątek, ?], ?][?, ?, [?, ?, sobotasobota, ?], ?][?, ?, [?, ?, niedzielaniedziela, ?], ?][?, ?, ?, [?, ?, ?, taniatania]][?, ?, ?, [?, ?, ?, drogadroga]]
Pasuje do negatywnego przykładuPasuje do negatywnego przykładuXX
XX
XX
XX
Nie uogólnia specyficznego modeluNie uogólnia specyficznego modelu
Specyficzny modelSpecyficzny model::[[DS.1DS.1, , śniadanieśniadanie, , piątekpiątek, , tanietanie]]
XX
XXXXXXXXXX
XXXX
PozostająPozostają
Po drugim przykładzie
[ ?, ?, ?, ?][ ?, ?, ?, ?]
[[DS.1DS.1, , śniadanieśniadanie, , piątekpiątek, , tanietanie]]
[[DS.1DS.1, ?, ?, ?], ?, ?, ?] [?, [?, śniadanieśniadanie, ?, ?], ?, ?] [?, ?, ?, [?, ?, ?, taniatania]]
x = [DS.1, lunch, sobota, tania]: +
• Przykład pozytywny: minimalna generalizacja modeli szczegółowych.
[[DS.1DS.1, , śniadanieśniadanie, , piątekpiątek, , taniatania]]
[[DS.1DS.1, ?, ?, ?], ?, ?, ?] [?, [?, śniadanieśniadanie, ?, ?], ?, ?] [?, ?, ?, [?, ?, ?, taniatania]]
[[DS.1DS.1, ? , ? , , ? , ? , taniatania]]
nie pasuje do nowego przykładunie pasuje do nowego przykładu
x = [Sedes, śniadanie, niedziela, tania]: -
• Minimalna specjalizacja modelu ogólnego:
[[DS.1DS.1, ?, ?, ?], ?, ?, ?] [?, ?, ?, [?, ?, ?, taniatania]]
[[DS.1DS.1, ? , ? , , ? , ? , taniatania]]
[[DS.1DS.1, ?, ?, , ?, ?, taniatania]]
Jedna specjalizacja jest Jedna specjalizacja jest od razu usuwana bo jest od razu usuwana bo jest bardziej specyficzna niżbardziej specyficzna niżinna hipoteza ogólna. inna hipoteza ogólna.
[DS.1, śniadanie, niedziela, droga]: -• Przykład negatywny: minimalna specjalizacja
[[DS.1DS.1, ?, ?, ?], ?, ?, ?]
[[DS.1DS.1, ? , ? , , ? , ? , taniatania]]
[[DS.1DS.1, ?, ?, , ?, ?, taniatania]]
Ta sama hipotezaTa sama hipoteza!!!!!!
Tanie jedzenie w Tanie jedzenie w DS.1 wywołuje alergiczneDS.1 wywołuje alergicznereakcjereakcje!!
Algorytm Przestrzeni Wersji
InicjalizacjaInicjalizacja: : G := { G := { hipoteza maksymalnie ogólnahipoteza maksymalnie ogólna}} S := {S := {}}
Dla każdego nowego przykładuDla każdego nowego przykładu pozytywnegopozytywnego::UogólniajUogólniaj hipotezy zhipotezy z SS które nie pokrywają tegoktóre nie pokrywają tegoprzypadku, ale pamiętaj byprzypadku, ale pamiętaj by:: - - Wprowadzać tylko Wprowadzać tylko zmiany minimalnezmiany minimalne do hipotez do hipotez.. - - Każda nowa hipoteza szczegółowa była Każda nowa hipoteza szczegółowa była specjalizacją jakiejś hipotezy ogólnejspecjalizacją jakiejś hipotezy ogólnej.. - - Żadna nowa hipoteza szczegółowa nie Żadna nowa hipoteza szczegółowa nie była generalizacją innej hipotezy szczegółowejbyła generalizacją innej hipotezy szczegółowej..
WytnijWytnij wszystkie hipotezy z wszystkie hipotezy z GG które nie pokrywają które nie pokrywają danego przykładudanego przykładu..
Algorytm Przestrzeni Wersji (2)
Dla każdego nowego przypadkuDla każdego nowego przypadku negatnegatywnego: ywnego: SpecjalizujSpecjalizuj hipotezy z hipotezy z GG pokrywające ten przypadekpokrywające ten przypadek, , ale pamiętaj byale pamiętaj by:: - - Wprowadzać tylko Wprowadzać tylko zmiany minimalnezmiany minimalne do hipotez do hipotez.. - - Każda nowa hipoteza ogólna była Każda nowa hipoteza ogólna była generalizgeneralizacją acją jakiejś specyficznej hipotezyjakiejś specyficznej hipotezy.. - - Żadna nowa hipoteza ogólna nie była specjalizacją Żadna nowa hipoteza ogólna nie była specjalizacją jakiejś innej hipotezy ogólnejjakiejś innej hipotezy ogólnej..
WytnijWytnij wszystkie hipotezy zwszystkie hipotezy z SS które pokrywają tenktóre pokrywają tenprzypadekprzypadek..
Do zakończenia prezentacji danychDo zakończenia prezentacji danych:: wypiszwypisz SS ii GG
lub jeślilub jeśli SS lublub GG będzie pustebędzie puste: : klęska! klęska!
Własności PW• Symetria:
– przypadki pozytywne i negatywne traktowane są symetrycznie, w dualny sposób.
• Nie musi pamiętać poprzednich przypadków.
• Szum w danych:– PW nie radzą sobie z szumem.
• Jeśli przez pomyłkę przypadek pozytywnypojawi się jako negatywny PW może wyeliminować właściwą hipotezę z przestrzeni hipotez G !
Kryterium stopu• Jeśli algorytm PW zatrzyma się z braku danych
[[DS.1DS.1, ?, ?, ?], ?, ?, ?] [?, ?, [?, ?, poniedziałekponiedziałek,?],?]
[[DS.1DS.1, ?, , ?, poniedziałekponiedziałek, , taniatania]]
[[DS.1DS.1, ?, ?, , ?, ?, taniatania]] [?, ?, [?, ?, poniedzponiedz, , taniatania]][[DS.1DS.1, ?, , ?, poniedzponiedz, ?], ?]
To wszystkie hipotezy końcowe i pośrednie To wszystkie hipotezy końcowe i pośrednie są nadal poprawnym, uzasadnionym opisem danychsą nadal poprawnym, uzasadnionym opisem danych..
Stop (2)• Jeśli stop ponieważ S lub G jest puste to:
• Dane treningowe nie są spójne (szum, błędy?)
lub:• Hipoteza nie daje się wyrazić w języku H.
[[DS.1DS.1, , śniadanieśniadanie, ?, , ?, taniatania] ] [ [DS.1DS.1, lunch, ?, , lunch, ?, taniatania]]
<<DS.1DS.1, , obiadobiad, , niedzielaniedziela, , taniatania> > --< < DS.1DS.1, , śniadanieśniadanie, , niedzielaniedziela, , taniatania> > ++< < DS.1DS.1, lunch, , lunch, niedzielaniedziela, , taniatania> > ++
• Przykład: – szukana hipoteza:
– dane przykłady:
Który przykład ?• PW może zadecydować, który przykład będzie najbardziej
użyteczny, domagając się określonych informacji.
[[DS.1DS.1, ?, ?, ?], ?, ?, ?] [?, ?, [?, ?, poniedzponiedz,, ?]?]
[[DS.1DS.1, ?, , ?, poniedzponiedz, , taniatania]]
[[DS.1DS.1, ?, ?, , ?, ?, taniatania]] [?, ?, [?, ?, poniedzponiedz, , taniatania]][[DS.1DS.1, ?, , ?, poniedzponiedz, ?], ?]
<<DS.1DS.1,lunch,,lunch,poniedzponiedz,,drogadroga>>
ocena negatywna - ocena negatywna - 3 3 hipotezyhipotezyocena pozytywna - ocena pozytywna - 3 3 hipotezyhipotezy
przykład niosący najwięcej informacjiprzykład niosący najwięcej informacji
Hipotezy częściowo nauczone
• Przykład: <DS.1,lunch,poniedz,tania>
[[DS.1DS.1, ?, ?, ?], ?, ?, ?] [?, ?, [?, ?, poniedzponiedz,?],?]
[DS.1, ?, poniedz, tania][DS.1, ?, poniedz, tania]
[DS.1, ?, ?, tania][DS.1, ?, ?, tania] [?, ?, poniedz, tania][?, ?, poniedz, tania][DS.1, ?, poniedz, ?][DS.1, ?, poniedz, ?]
może być sklasyfikowany jako pozytywnyjest zgodny ze wszystkimi poprzednimi hipotezami.
Wystarczy sprawdzić, czy jest zgodny z hipotezami S ! Pozostałe są ich uogólnieniami.
Częściowo nauczone (2)
• Przykład: <Sedes,lunch,niedziela,tania>
[DS.1, ?, ?, ?][DS.1, ?, ?, ?] [?, ?, poniedz,?][?, ?, poniedz,?]
[DS.1, ?, poniedz, tania][DS.1, ?, poniedz, tania]
[DS.1, ?, ?, tania][DS.1, ?, ?, tania] [?, ?, poniedz, tania][?, ?, poniedz, tania][DS.1, ?, poniedz, ?][DS.1, ?, poniedz, ?]
może być sklasyfikowany negatywnienie jest pokrywany przez pozostałe hipotezy ogólne
Wystarczy sprawdzić, że nie jest pokrywany przez żadną hipotezę ogólną z G ! Pozstałe są ich specjalizacjami.
Częściowo nauczone (3)
• Przykład: <DS.1,lunch,poniedz,droga>
[DS.1, ?, ?, ?][DS.1, ?, ?, ?] [?, ?, poniedz,?][?, ?, poniedz,?]
[DS.1, ?, poniedz, tania][DS.1, ?, poniedz, tania]
[DS.1, ?, ?, tania][DS.1, ?, ?, tania] [?, ?, poniedz, tania][?, ?, poniedz, tania][DS.1, ?, poniedz, ?][DS.1, ?, poniedz, ?]
nie może być sklasyfikowany jest zgodny z 3, niezgodny z 3 hipotezami
nie wiadomonie wiadomo
Częściowo nauczone (4)
• Przykład: <Sedes,lunch,poniedz,droga>
[DS.1, ?, ?, ?][DS.1, ?, ?, ?] [?, ?, poniedz,?][?, ?, poniedz,?]
[DS.1, ?, poniedz, tania][DS.1, ?, poniedz, tania]
[DS.1, ?, ?, tania][DS.1, ?, ?, tania] [?, ?, poniedz, tania][?, ?, poniedz, tania][DS.1, ?, poniedz, ?][DS.1, ?, poniedz, ?]
Szansa Szansa 11::66, że należy do koncepcji + , że należy do koncepcji +
klasyfikacja częściowa jest możliwa zgodny z 1, niezgodny z 5 hipotezami
Obciążenie (bias) - wybór H
• Język hipotez H nie potrafi wyrazić niektórych koncepcji.
– Np. koniunkcji dwóch hipotez:[DS.1, śniadanie, ?, tania] [DS.1, lunch, ?, tania]
• Język bardziej ekspresywny H’
– koniunkcje (jak poprzednio)– oraz alternatywy i negacje
• Przykład:– Restauracja = DS.1 ~(Dzień = poniedz)
Obciążenie (2)• H’ pozwala wyrazić dowolny podzbiór zdarzeń z
przestrzeni X
RestauraRestauracjacja PosiłekPosiłek DDzieńzień KosztKoszt
3 X 3 X 7 X 2 = 1263 X 3 X 7 X 2 = 126
• W naszym przykładzie X ma 126 elementów.
• Istnieje 2126 możliwych hipotez!
Trudno o efektywny algorytm; jeszcze gorzej dla pełnej logiki pierwszego rzędu.
Obciążenie (3)• Przestrzenie wersji z H’
RestauracjaRestauracja PosiłekPosiłek DzieńDzień KosztKoszt Reakcja Reakcja
DS. 1 DS. 1 śniadanieśniadanie piątekpiątek taniatania TakTakDe MoeteDe Moete lunchlunch piątek piątek drogadroga NieNieDS. 1 DS. 1 lunchlunch sobotasobota taniatania TakTakSedesSedes śniadanieśniadanie niedzielaniedziela taniataniaNieNieDS. 1 DS. 1 śniadanieśniadanie niedzielaniedziela drogadrogaNieNie
++--++----
??
{~[Kosmos. Lunch, piątek, droga] {~[Kosmos. Lunch, piątek, droga] ~[Sedes, śniadanie, niedziela, tania]} ~[Sedes, śniadanie, niedziela, tania]}
{~[Kosmos. Lunch, piątek, droga] {~[Kosmos. Lunch, piątek, droga] ~[Sedes, śniadanie, niedziela, tania] ~[Sedes, śniadanie, niedziela, tania] ~[DS. 1, śniadanie, niedziela, droga]}~[DS. 1, śniadanie, niedziela, droga]}
{~[Kosmos{~[Kosmos,, Lunch, piątek, droga]} Lunch, piątek, droga]}
{[DS. 1, śniadanie, piątek, tania]{[DS. 1, śniadanie, piątek, tania] [DS. 1, lunch, [DS. 1, lunch, sobotasobota, tania]}, tania]}
{[DS. 1, śniadanie, piątek, tania]}{[DS. 1, śniadanie, piątek, tania]}
Uczenie z językiem H’• Przestrzenie wersji
G = {~[Kosmos. Lunch, piątek, droga] G = {~[Kosmos. Lunch, piątek, droga] ~[Sedes, śniadanie, niedziela, tania]~[Sedes, śniadanie, niedziela, tania] ~[DS. 1, śniadanie, niedziela, droga]}~[DS. 1, śniadanie, niedziela, droga]}
S = {[DS. 1, śniadanie, piątek, tania]S = {[DS. 1, śniadanie, piątek, tania] [DS. 1, lunch, Saturday, tania]}[DS. 1, lunch, Saturday, tania]}
• PW nie nauczyła się niczego nowego – hipotezy zapisują tylko przypadki pozytywne i negatywne!
• Uczenie wymaga założeń, „indukcyjnego obciążenia”, np:– „poszukiwaną koncepcję wyrazić można w postaci kompleksu
selektorów” (koniukcji cech)
Koniec wykładu 24
Dobra jeszcze nie noc !