here
Transkrypt
here
Sieci Neuronowe Zadania i problemy algorytmiczne dla sieci neuronowych, programowania logicznego i sztucznej inteligencji według zasad i kryteriów laboratoriów. pdf Laboratorium 2 Zadanie 1. Zapisać następujące stwierdzenia w języku logiki predykatów, wprowadzając niezbędne symbole i ustalając ich interpretację: - ojciec każdego człowieka jest jego bezpośrednim przodkiem, - jeśli ktoś jest przodkiem bezpośredniego przodka pewnej osoby, to jest także przodkiem tej osoby, - każdy jest spokrewniony z każdym swoim przodkiem, - każdy jest spokrewniony ze swoim bratem i siostrą, - każdy jest spokrewniony z braćmi i siostrami wszystkich osób spokrewnionych ze sobą. Zadanie 2. Dla bazy wiedzy dotyczącej świata klocków podanej w przykładzie wnioskowania znaleźć wyprowadzenia (jeśli istnieją) następujących formuł: 1. 2. 3. Zadanie 3. Sprawdzić, czy z bazy wiedzy Γ można wyprowadzić formuły βi dla poniższych Γ i β. W razie potrzeby można wprowadzić dodatkowe reguły wnioskowania, sprawdzając uprzednio ich poprawność. 1. 2. 3. Zadanie 4. Które z następujących reguł wnioskowania są poprawne: 1. 4. 2. 5. 3. 6. Zadanie 5. Sprowadzić następujące formuły do postaci CNF: 1. 2. Zadanie 6. Sprowadzić następujące formuły do postaci standardowej Skolema: 1. 2. Zadanie 7. Dokonać unifikacji następujących par formuł: 1. 2. Zadanie 8. Zweryfikować przedstawiony niżej przebieg wnioskowania prowadzonego przez człowieka zapisując bazę wiedzy w postaci formuł logiki predykatów i sprawdzając poprawność kroków dowodu. 1. - Wszystkie liczby podzielne przez 2 są parzyste. - Dowolna liczba o 1 większa od liczby parzystej nie jest parzysta. - Żadna liczba parzysta nie jest podzielna przez 3. - Niektóre liczby nieparzyste są podzielne przez 3. - Z powyższego wynika, że każda liczba podzielna przez 3 jest o 1 większa od pewnej liczby podzielnej przez 2. 2. - Nie wszystkie trójki punktów na płaszczyźnie są współliniowe. - Jeżeli trzy punkty na płaszczyźnie nie są współliniowe, to są wierzchołkami pewnego trójkąta. - Jeśli z czterech punktów żadne trzy nie są współliniowe, to są one wierzchołkami pewnego czworokąta. - Z powyższego wynika, że: - istnieje trójkąt, - istnieje czworokąt, - jeśli ABC, BCD, ABD i ACD są trójkątami, to ABCD jest czworokątem. Laboratorium 3 Zadanie 1. Napisać program/predykat obliczający potęgę. Zadanie 2. Napisać program/predykat obliczający silnię. Zadanie 3. Napisać program/predykat obliczający nwd dwóch liczb. Zadanie 4. Napisać program/predykat obliczający długość listy. Zadanie 5. Napisać program/predykat sprawdzający czy dany element należy do listy. Zadanie 6. Napisać program/predykat usuwający wybrany element z listy. Zadanie 7. Napisać program/predykat łączący ze sobą dwie listy. Zadanie 8. Napisać program/predykat zwracający ostatni element z listy. Zadanie 9. Napisać program/predykat odwracający listę. Laboratorium 4 Zadanie 1. Wykonać drzewa decyzyjne – grafy wnioskowania dla: m_kr(Miasto, Kraj) m_st(Miasto, Kraj) m_ko(Miasto, Kontynent) kr_ko(Kraj, Kontynent) Zadanie 2. Napisać program/predykat wnioskowania wszerz. Zadanie 3. Napisać program/predykat wnioskowania wgłąb. Laboratorium 5 Zadanie 1. Napisać program/predykat rozwiązujący problem plecakowy. Zadanie 2. Napisać program/predykat rozwiązujący problem najkrótszej drogi w grafie. Zadanie 3. Rozważmy drzewo genealogiczne. Załóżmy, że krawędzie są skierowane od rodziców w kierunku dzieci. W którym kierunku - zgodnie czy przeciwnie do skierowania krawędzi lepiej jest prowadzić przeszukiwanie drzewa, chcąc stwierdzić, że X jest prapradziadkiem Y? Zadanie 4. Zdefiniować (i naszkicować jej graf) przestrzeń przeszukiwań i sformułować funkcję celu dla przykładowego zadania sortowania tablicy zawierającej 4 elementy Laboratorium 6 Zadanie 1. Napisać program/algorytm aproksymujący funkcje na podstawie danego zbioru uczącego i kreślący aproksymację oraz zbiór uczący. Zadanie 2. Aproksymować następujące zbiory uczące: 1. [(1,0.33),(1.5,0.66),(2,0.99),(2.5,0.66),(3,0.33),(3.5,0),(4,-0.33),(4.5,-0.66),(5,-0.99),(5.5,0.66),(6,-0.33),(7,0)] Π 3Π 2. [(0,0),( ,1.1),(Π,-0.1),( ,-1.1),(2 Π,0.1)] 2 2 Π 3Π ,-0.1),(2 Π,1.1)] 3. [(0,0.9),( ,-0.1),(Π,-1.1),( 2 2 Laboratorium 7 Zadanie 1. W poniższej tabeli zostały przedstawione wyniki jakie osiąga student podczas wykonywania zadań z danego zagadnienia. Liczba wykonanych zadań 1 2 3 4 5 6 7 Popełnione błędy 8 7 6 5 6 5 4 Zbadać związki jakie zachodzą pomiędzy danymi przedstawionymi w tabeli, a następnie dla danych przedstawić prognozę w oparciu o wykres regresji liniowej. Zadanie 2. Obliczyć kowariancję zmiennych X i Y a następnie ocenić kierunek zależności liniowej pomiędzy nimi (y=ax+b) i wyznaczyć linię regresji. 7 6 X Y 5 5 6 5 8 7 9 7 4 3 3 2 Zadanie 3. Na podstawie poniższych danych dotyczących wytrzymałości na złamanie (zmienna X wyrażona w kg) spawanych prętów o różnej średnicy (zmienna Y wyrażona w 0.01 mm) ustalić, czy średnica spawanych prętów ma wpływ na wytrzymałość na złamanie. Określić rodzaj, siłę i kierunek tej zależności. X Y 190 680 200 800 210 780 215 885 215 975 215 1025 230 1100 250 1030 265 1175 250 1300 Zadanie 4. Obliczyć kowariancję zmiennych X i Y oraz ocenić siłę i kierunek zależności liniowej pomiędzy tymi zmiennymi, wyznaczyć odpowiednie wykresy i ocenić ewentualne zachowanie w przyszłości. 22 634 X Y 135 5 61 545 8 7 119 712 4 34 32 21 Zadanie 5. Na podstawie danych dotyczących wydajności pracy Y i stażu pracy X 10 robotników ustalić czy między zmiennymi X i Y istnieje zależność korelacyjna. Jeśli tak, to określić jej kierunek. X Y 1 120 5 115 10 132 8 123 9 128 1 102 2 106 4 109 5 112 6 110 Sporządzić wykres korelacyjny oraz uporządkować wartości cechy X i odpowiadające im wartości cechy Y. Zadanie 6. Dla 13 robotników zanotowano następujące wartości dwóch cech: X - staż pracy w latach, Y -liczba braków. Ocenić czy istnieje korelacja pomiędzy tymi cechami i jaki jest jej kierunek. X Y 2 28 5 20 8 18 3 16 10 3 5 22 12 4 4 19 2 30 18 6 6 19 12 8 14 3 Laboratorium 8 Zadanie 1. Rozwiązać zadanie i napisać program/arkusz kalkulacyjny dla niego. W śledztwie dotyczącym zabójstwa inspektor Bayes rozważa dwie hipotezy: • h – że główny podejrzany zabił, • ~h – że główny podejrzany nie zabił oraz następujące możliwe fakty: • f1 – że na miejscu zbrodni znaleziono odciski palców głównego podejrzanego, • f2 – że główny podejrzany nie ma alibi na czas popełnienia zabójstwa, • f3 – że główny podejrzany miał motyw zabicia ofiary, • f4 – że główny podejrzany był widziany w sądziedztwie miejsca, w którym mieszka nielegalny handlarz bronią, • f5 – że świadek zbrodni podał rysopis zabójcy nie pasujący do głównego podejrzanego. Zależności między takimi faktami a hipotezami opisują następujące prawdopodobieństwa: W którym przypadku prawdopodobieństwo popełnienia zabójstwa byłoby największe: - gdyby znaleziono na miejscu zbrodni jego odciski palców, - gdyby stwierdzono, że nie miał alibi i miał motyw, - gdyby znaleziono na miejscu zbrodni jego odciski palców oraz stwierdzono, że był widziany w sąsiedztwie miejsca, w którym mieszka nielegalny handlarz bronią, ale świadek zbrodni podał rysopis zabójcy nie pasujący do głównego podejrzanego. Zadanie 2. Rozwiązać zadanie i napisać program/arkusz kalkulacyjny dla niego. W śledztwie dotyczącym zabójstwa inspektor Bayes wyłonił trzech podejrzanych A, B i C, w konsekwencji czego rozważa trzy możliwe hipotezy, wzajemnie wykluczające się i wyczerpujące wszystkie możliwości: • hA – zabił A, • hB – zabił B, • hC – zabił C oraz następujące możliwe fakty: • f1A , f1B , f1C – że na miejscu zbrodni znaleziono odciski palców podejrzanego A, B, C, • • • f2A , f2B , f2C – że podejrzany A, B, C nie ma alibi na czas popełnienia zabójstwa, f3A , f3B , f3C – że podejrzany A, B, C miał oczywisty motyw zabicia ofiary, f4A , f4B , f4C – że świadek zbrodni podał rysopis zabójcy nie pasujący do podejrzanego A. B, C, • f5A , f5B , f5C – że podejrzany A, B, C jest szanowanym obywatelem nie budzącym u nikogo żadnych podejrzeń. Zależności między takimi faktami a hipotezami opisują następujące prawdopodobieństwa dla x=A, B, C. Wstępnie inspektor założył, że prawdopodobieństwo popełnienia zbrodni przez każdego z podejrzanych jest jednakowe. W wyniku śledztwa ustalono, że: - podejrzani A i B nie mają alibi, - podejrzany C miał oczywisty motyw, - rysopis zabójcy podany przez świadka nie pasuje do podejrzanych B i C, - podejrzany A jest szanowanym obywatelem nie budzącym u nikogo żadnych podejrzeń. Którego z podejrzanych powinien aresztować inspektor Bayes jako najbardziej prawdopodobnego zabójcę? Zadanie 3. Rozważmy zastosowanie wnioskowania bayesowskiego do pewnej dziedziny, w której rozważa się dwie wykluczające się wzajemnie i wyczerpujące wszystkie możliwości hipotezy h i ~h oraz m możliwych faktów f1 , … , fm . Prawdopodobieństwa Pr(fj|h) dla j=1,2, … , m określone są jako kolejne liczby z ciągu arytmetycznego 0.1+(j-1)*(0.9-0.1)/(m-1), zaś prawdopodobieństwa Pr(fj|~h) odpowiednio jako kolejne liczby z ciągu geometrycznego 0.9*(0.1/0.9)*(j-1)/(m-1). Obie hipotezy są jednakowo prawdopodobne a priori. Fakty są warunkowo niezależne względem hipotez. Liczba faktów m jest parzysta. Która hipoteza jest bardziej prawdopodobna a posteriori, jeśli: 1. wiadomo, że zachodzą wszystkie fakty f1 , … , fm , 2. wiadomo, że zachodzą tylko fakty f1 , … , fm/2 , 3. wiadomo, że zachodzą tylko fakty fm/2 , … , fm . Laboratorium 9 Zadanie 1. Napisać program/algorytm obliczający wartość neuronu przy funkcji aktywacji: - funkcja liniowa - obcięta funkcja liniowa - funkcja progowa unipolarna - funkcja progowa bipolarna - funkcja sigmoidalna unipolarna - funkcja sigmoidalna bipolarna - tangens hiperboliczny Zadanie 2. Napisać program/algorytm obliczający sieć neuronową z dwoma warstwami ukrytymi dla - funkcja liniowa - obcięta funkcja liniowa - funkcja progowa unipolarna - funkcja progowa bipolarna - funkcja sigmoidalna unipolarna - funkcja sigmoidalna bipolarna - tangens hiperboliczny Zadanie 3. Napisać program/algorytm uczenia perceptronu. Zadanie 4. Napisać program/algorytm uczenia perceptronu z momentem bezwładności. Laboratorium 10 Zadanie 1. Napisać program/algorytm obliczający wartość neuronu sigmoidalnego. Zadanie 2. Napisać program/algorytm obliczający wartość neuronu adaline. Zadanie 3. Napisać program/algorytm uczący sieć według schematu Grossberga. Laboratorium 11 Zadanie 1. Napisać program/algorytm uczenia sieci neuronowej z nauczycielem. Zadanie 2. Napisać program/algorytm uczenia sieci bez nauczyciela. Zadanie 3. Napisać program/algorytm uczenia sieci Hebba. Zadanie 4. Napisać program/algorytm uczenia sieci WTA. Zadanie 5. Napisać program/algorytm uczenia sieci WTM. Laboratorium 12 Zadanie 1. Zbudować sieć neuronową o 3 warstwach ukrytych, zadać parametrację i napisać program uczący ją dla algorytmu wstecznej propagacji – BP – wstecznej Zadanie 2. Zbudować sieć neuronową o 3 warstwach ukrytych, zadać parametrację i napisać program uczący ją dla algorytmu – LM – Levenberga-Marquardta Zadanie 3. Zbudować sieć neuronową o 3 warstwach ukrytych, zadać parametrację i napisać program uczący ją dla algorytmu– RLS Laboratorium 13 Zadanie 1. Zbudować sieć neuronową o 3 warstwach ukrytych, zadać parametrację i napisać program uczący ją dla algorytmu Hopfielda. Zadanie 2. Zbudować sieć neuronową o 3 warstwach ukrytych, zadać parametrację i napisać program uczący ją dla algorytmu Haminnga.