Algorytm grupowania danych typu kwantyzacji wektorów
|
|
- Krystian Wacław Świderski
- 6 lat temu
- Przeglądów:
Transkrypt
1 Algorytm grupowania danych typu kwantyzacji wektorów Wstęp Definicja problemu: Typowe, problemem często spotykanym w zagadnieniach eksploracji danych (ang. data mining) jest zagadnienie grupowania danych lub klasteryzacji. Polega ono na odnalezieniu w zbiorze danych X składającym się z n-wektorów X = [x 1, x 2 x n ] zbioru obiektów podobnych. Zagadnienie to jest problemem nietrywialnym i wymagającym zbudowania odpowiedniej heurystyki. W tym celu opracowano szereg podejść pozwalających na odnalezienie klastrów/podgrup danych. Poniżej zostaną omówione dwa wybrane algorytmy należące do grupy metod tzw. minimalizacji skalarnego współczynnika jakości. Idea ich działania sprowadza się do minimalizacji funkcji celu jest to więc to problem optymalizacyjny. W celu zdefiniowania odpowiednich algorytmów / metod opracowano szereg rozwiązań w tym wywodzące się z obszaru statystyki jak algorytm k-średnich, czy też z grupy sieci neuronowych jak np. algorytm kwantyzacji wektorów VQ. W rzeczywistości obydwa starają się minimalizować wariancję w poszczególnych grupach reprezentowanych przez środki klastrów centroidy zwane również prototypami, wektorami referencyjnymi czy też wektory kodujące. Przykładem zastosowania metod klasteryzacji danych jest problem znajdywania grup podobnych dokumentów zwracanych przez wyszukiwarkę. (np. ), czy też odnajdywanie ludzi o podobnych preferencjach / zainteresowaniach co poprawia skuteczność reklamy. Algorytm VQ Algorytm VQ (Victor quantization) został opracowany przez T Kohonenna całość to optymalizacja funkcji kosztu poprzez tzw. gradient stochastyczny. Algorytm rozpoczyna od wylosowania k wektorów kodujących potencjalnych środków klastrów, które następnie iteracyjnie zmieniają swoje położenie. Całość procedury odbywa się poprzez adaptację położenia wektora kodującego p i po prezentacji x j tego wektora danych wg. zależności: i i j i p p x p (1) Gdzie - współczynnik uczenia p i i-ty wektor kodujący leżący najbliżej wektora treningowego x j Wartości powinny być aktualizowane wg. zależności 1 po każdej iteracji algorytmu. Algorytm VQ do działania wymaga zdefiniowania odpowiednich wartości 0 oraz liczby wektorów kodujących k. Opis algorytmu Uczenie 1. Wylosuj położenie k neuronów (prototypów) - w tym celu najlepiej jest wykorzystać funkcję P = inicializacja(x,k)
2 2. Iteracyjnie z-razy Dla każdego wektora treningowego Znajdź najbliższy wektor kodujący czyli dla danego x i znajdź najbliższych wektor z P Dokonaj aktualizacji położenia (wag) neuronu zgodnie z zależnością (1) Dokonaj aktualizacji wsp. wg. zależności (2) 1. Ponumeruj wektory kodujące od 1:k 2. Dla każdego wektora zbioru danych a. Policz odległości pomiędzy wektorem danych x i a wszystkimi neuronami (wektorami kodującymi) b. Znajdź neuron leżący najbliżej wektora danych (min(odległości2(x i,p j ))) c. Przypisz numer najbliższego wektora kodującego do danego wektora testowego W matlabie 1. Uruchom skrypt zad2_vq.m, w celu jego poprawnego działania musisz zaimplementować funkcję vq.m Funkcja: function [C,P] = vq( X, k ) %Funkcja słuzy do wykonania klasteryzacji w oparciu o algorytm kwantyzacji wektorów VQ %Parametrami wejściowymi funkcji są X - macierz, w której kolejne %wiersze to kolejne rekordy danych, k-oznacza liczbę klastrów do %znalesienia. C- to kolumna zawierająca przydział kolejnych wektorów %z X do odpowiednich klastrów numerowanych od 1:k %Przykład: % X = [1 1; % 1 2; % 5 5; % 6 5; % 5 6]; % k=2; % C = vq(x,k); % wówczas % C=[1; % 1; % 2]; %bo pierwsze dwa punkty leżą obok sibie, podobnie kolejne 3 %stałe: z = 100; alpha = 0.01; P = inicializacja(x,k); [n,m]=size(x); %gdzie n - liczba wektorów, m-liczba kolumn %============== Wyznaczanie położenia środków klastró ================= for a=1:z %dla każdego wektora treningowego %policz odległości wektora treningowego do wszystkich wektorów kodujących
3 %d = odległość między X(i,:) a wszystkimi wektorami P możesz tutaj %wykorzystać funkcję odleglosc2() % znajdż najbliższy wektor kodujący %dokonaj aktualizacji najbliższego wektora kodującego (wekotra o indeksie min_id) wg. zależności (1) %zmodyfikuj wsp. uczenia wg. zalezności (2) %=============== Przydzielenie wektorów zbioru danych do klastrów C = zeros(n,1); %Rezerwacja pamięci przeznaczonej na wyniki for i=1:n %Znajdź numer wektora kodującego, który leży najbliżej wekora X(i,:) %Przypisz numer wektora kodującego do zmiennej C zawierajacej %informację o przynależności danego wektora do klastra C(i) = min_id; Algorytm k-śrtednich (k-means) Jest wiele odmian algorytmu k-średnich, jego najczęściej spotykana wersja działa na zasadzie wsadowej (batch) tzn. najpierw tworzona jest tablica/macierz przynależności U o wymiarach: n x m gdzie m to liczba klasterów, n to liczba wektorów danych. Macierz ta ma postać binarną tzn. przyjmuje wartości 1 jeśli dany wektor danych należy dodanego klastra oraz 0 jeśli dany wektor danych do danego klastra nie należy. p p 1 2 p3 x x x x x Każdy wiersz powyższej macierzy powinien spełniać zależność iż suma elementów wiersza musi być mniejsza od liczby wektorów danych. l_ n U ji, l _ n j 1, l _ w i 1 Takie ograniczenie pozwala zabezpieczyć się aby pojedynczy klaster nie zagarnął wszystkich wektorów danych. Drugie ograniczenie służy zapewnieniu by dany wektor przynależał dokładnie do jednej grupy, a sprowadza się ono do zależności l_ w U ji, i 1, l _ n j 1 Algorytm k-średnich działa na zasadzie realizacji dwóch kroków 1) wyznaczenia położenia środków centrów klasterów P na podstawie macierzy U 2) aktualizacji macierzy U na podstawie nowych środków centrów P W poniższym kodzie algorytmu kśrednich brakuje implementacji powyższych dwóch funkcji. Uzupełnij go o brakujące funkcję i wykonaj pozostałe zadania laboratoryjne Opis algorytmu Uczenie 1. Losowo wygeneruj macierz podziału U 2. Na podstawie macierzy U wyznacz środki klastrów 1
4 3. Dokonaj aktualizacji macierzy U, (przypisz dane do odpowiednich środków klasterów P) 4. Porównaj postać macierzy podziału U. Jeśli nie uległy zmianie to koniec 5. Idź do 2 W matlabie 1. Uruchom skrypt zad1_ksredich.m, w celu jego poprawnego działania musisz zaimplementować funkcję ksrednich.m Funkcja: function [C,P] = ksrednich(x,k) %Funkcja powinna dokonać analizy skupień na danych "X". W jej wyniku ma %powstać "k" klastrów. Wektor "C" oznacza przynalezność do danego klastra, natomiast P to zbiór wektorów określających położenie środków klastrów %Przykład: % data = [1 1; % 1 2; % 5 5; % 6 5; % 5 6]; % k=2; % C = ksrednich(data,k); % %wówczas % C=[1; % 1; % 2]; %bo pierwsze dwa punkty leżą obok sibie, podobnie kolejne 3 %Przydatne funkcje: % d = odleglosc2(x,y) %funkcja wyznacza dległość między dwoma wektorami x % i y %Przydatne funkcje: % d = odleglosc2(x,y) %funkcja wyznacza dległość między dwoma wektorami x % i y % [n,m]=size(data); %gdzie n - liczba wektorów, m-liczba kolumn %stałe: U = inicializacja(x,k); maxiteracji = 20; %============== Wyznaczanie położenia środków klastrów for i = 1 : maxiteracji P = obliczp(x,u); oldu = U; U = obliczu(x,p); if all(all(u == oldu)), %Zakończ pętlę jeśli macierz podziału nie ulega zmianie break
5 %=============== Przydzielenie wektorów zbioru danych do klastrów n = size(x,1); C = zeros(n,1); for i=1:n id = find(u(:,i)); C(i) = id; end %Koniec funkcji ksrednich function U = obliczu(x,p) %Napisz funkcję obliczającą macierz przynależności U end %Koniec funkcji obliczu function P = obliczp(x,u) %Napisz funkcję obliczającą aktualne środki klastrów end %Koniec funkcji obliczp function U = inicializacja(x,k) n = size(x,1); r = randperm(n); U = false(k,n); for i=1:k U(i,r(i:k:n)) = true; end %Koniec funkcji inicjalizacja Standaryzacja Standaryzacja jest standardową procedurą poprzedzającą działanie większości algorytmów eksploracji danych. Polega ona na doprowadzeniu do sytuacji, w której każda kolumna (zmienna/echa) ma średnią = 0 i odchylenie std. = 1. Innymi słowy dla każdej kolumny X(:,i) należy wyznaczyć średnią za pomocą funkcji mean() oraz odchylenie standardowe za pomocą funkcji std() a następnie dokonać transformacji Gdzie - oznacza średnią - oznacza odchylenie standardowe Zadanie: 1. Zaimplementuj algorytm VQ 2. Zaimplementuj algorytm ksrednich 3. Do weryfikacji użyj odpowiednich skryptów zad1 /zad2, które testują wyniki klasteryzacji i wyświetlają je w postaci wykresu. 4. Uruchom skrypt zad3 i zapisz wyniki dla różnych wartości parametru k UWAGA spróbuj uruchomić skrypt kilka razy dla tej samej wartości parametru k (dla k około 5) czy są różnice i jakie jest ich źródło
6 5. Uruchom skrypt zad3 dla k=2 i dokonaj interpretacji wyników skomentuj uzyskany wynik. 6. Dla algorytmu VQ umieść na końcu pętli: for a=1:z moduł rysujący trajektorię zmiany położenia wektorów kodujących. 7. Dokonaj poprawy działania algorytmu poprze wstępną standaryzację danych. W tym celu uruchom zad4, który wykonuje skrypt zad3z uwzględnieniem wspomnianej standaryzacji. Czy wyniki uległy poprawie?
Algorytm grupowania danych typu kwantyzacji wektorów
Algorytm grupowania danych typu kwantyzacji wektorów Wstęp Definicja problemu: Typowe, rozważane dotychczas problemy koncentrowały się na nauczeniu na podstawie zbioru treningowego i zbioru etykiet klasyfikacji
Co to jest grupowanie
Grupowanie danych Co to jest grupowanie 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Szukanie grup, obszarów stanowiących lokalne gromady punktów Co to jest grupowanie
Klasyfikator liniowy Wstęp Klasyfikator liniowy jest najprostszym możliwym klasyfikatorem. Zakłada on liniową separację liniowy podział dwóch klas między sobą. Przedstawia to poniższy rysunek: 5 4 3 2
Uczenie sieci radialnych (RBF)
Uczenie sieci radialnych (RBF) Budowa sieci radialnej Lokalne odwzorowanie przestrzeni wokół neuronu MLP RBF Budowa sieci radialnych Zawsze jedna warstwa ukryta Budowa neuronu Neuron radialny powinien
Optymalizacja ciągła
Optymalizacja ciągła 5. Metoda stochastycznego spadku wzdłuż gradientu Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 04.04.2019 1 / 20 Wprowadzenie Minimalizacja różniczkowalnej
Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta
Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta www.michalbereta.pl Sieci radialne zawsze posiadają jedną warstwę ukrytą, która składa się z neuronów radialnych. Warstwa wyjściowa składa
Oprogramowanie Systemów Obrazowania SIECI NEURONOWE
SIECI NEURONOWE Przedmiotem laboratorium jest stworzenie algorytmu rozpoznawania zwierząt z zastosowaniem sieci neuronowych w oparciu o 5 kryteriów: ile zwierzę ma nóg, czy żyje w wodzie, czy umie latać,
Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner. rok akademicki 2014/2015
Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner rok akademicki 2014/2015 Sieci Kohonena Sieci Kohonena Sieci Kohonena zostały wprowadzone w 1982 przez fińskiego
Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane cd.
Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane cd. M. Czoków, J. Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika w Toruniu 2013-11-26 Projekt pn. Wzmocnienie potencjału
SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization
Wrocław University of Technology SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization Jakub M. Tomczak Studenckie Koło Naukowe Estymator jakub.tomczak@pwr.wroc.pl 4.1.213 Klasteryzacja Zmienne
Seminarium IO. Zastosowanie wielorojowej metody PSO w Dynamic Vehicle Routing Problem. Michał Okulewicz
Seminarium IO Zastosowanie wielorojowej metody PSO w Dynamic Vehicle Routing Problem Michał Okulewicz 26.02.2013 Plan prezentacji Przypomnienie Problem DVRP Algorytm PSO Podejścia DAPSO, MAPSO 2PSO, 2MPSO
Metody systemowe i decyzyjne w informatyce
Metody systemowe i decyzyjne w informatyce Laboratorium MATLAB Zadanie nr 3 Detekcja twarzy autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, M. Zięba Cel zadania Celem zadania jest zaimplementowanie algorytmów
Rozpoznawanie obrazów
Rozpoznawanie obrazów Laboratorium Python Zadanie nr 3 Regresja logistyczna autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, M. Zięba, J. Kaczmar Cel zadania Celem zadania jest zaimplementowanie modelu
Podstawy Sztucznej Inteligencji (PSZT)
Podstawy Sztucznej Inteligencji (PSZT) Paweł Wawrzyński Uczenie maszynowe Sztuczne sieci neuronowe Plan na dziś Uczenie maszynowe Problem aproksymacji funkcji Sieci neuronowe PSZT, zima 2013, wykład 12
ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH
1 ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH WFAiS UJ, Informatyka Stosowana II stopień studiów 2 Eksploracja danych Co to znaczy eksploracja danych Klastrowanie (grupowanie) hierarchiczne Klastrowanie
Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu
Data Mining Wykład 9 Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster Plan wykładu Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Sformułowanie problemu
Naszym zadaniem jest rozpatrzenie związków między wierszami macierzy reprezentującej poziomy ekspresji poszczególnych genów.
ANALIZA SKUPIEŃ Metoda k-means I. Cel zadania Zadaniem jest analiza zbioru danych, gdzie zmiennymi są poziomy ekspresji genów. Podczas badań pobrano próbki DNA od 36 różnych pacjentów z chorobą nowotworową.
Matlab, zajęcia 3. Jeszcze jeden przykład metoda eliminacji Gaussa dla macierzy 3 na 3
Matlab, zajęcia 3. Pętle c.d. Przypomnijmy sobie jak działa pętla for Możemy podać normalnie w Matlabie t=cputime; for i=1:20 v(i)=i; e=cputime-t UWAGA: Taka operacja jest bardzo czasochłonna i nieoptymalna
Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335
Sztuczne sieci neuronowe Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335 Wykład 10 Mapa cech Kohonena i jej modyfikacje - uczenie sieci samoorganizujących się - kwantowanie wektorowe
Zrównoleglona optymalizacja stochastyczna na dużych zbiorach danych
Zrównoleglona optymalizacja stochastyczna na dużych zbiorach danych mgr inż. C. Dendek prof. nzw. dr hab. J. Mańdziuk Politechnika Warszawska, Wydział Matematyki i Nauk Informacyjnych Outline 1 Uczenie
Uczenie sieci typu MLP
Uczenie sieci typu MLP Przypomnienie budowa sieci typu MLP Przypomnienie budowy neuronu Neuron ze skokową funkcją aktywacji jest zły!!! Powszechnie stosuje -> modele z sigmoidalną funkcją aktywacji - współczynnik
Optymalizacja systemów
Optymalizacja systemów Laboratorium - problem detekcji twarzy autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, P. Klukowski Cel zadania Celem zadania jest zapoznanie się z gradientowymi algorytmami optymalizacji
Zastosowania sieci neuronowych
Zastosowania sieci neuronowych klasyfikacja LABORKA Piotr Ciskowski zadanie 1. klasyfikacja zwierząt sieć jednowarstwowa żródło: Tadeusiewicz. Odkrywanie własności sieci neuronowych, str. 159 Przykład
ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH
1 ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH WFAiS UJ, Informatyka Stosowana II stopień studiów 2 Eksploracja danych Algorytmy klastujące Problem 3 Mając daną chmurę punktów chcielibyśmy zrozumieć ich
Metody sztucznej inteligencji Zadanie 3: (1) klasteryzacja samoorganizująca się mapa Kohonena, (2) aproksymacja sieć RBF.
Metody sztucznej inteligencji Zadanie 3: ( klasteryzacja samoorganizująca się mapa Kohonena, (2 aproksymacja sieć RBF dr inż Przemysław Klęsk Klasteryzacja za pomocą samoorganizującej się mapy Kohonena
Testowanie modeli predykcyjnych
Testowanie modeli predykcyjnych Wstęp Podczas budowy modelu, którego celem jest przewidywanie pewnych wartości na podstawie zbioru danych uczących poważnym problemem jest ocena jakości uczenia i zdolności
Metody systemowe i decyzyjne w informatyce
Metody systemowe i decyzyjne w informatyce Laboratorium MATLAB Zadanie nr 2 Detekcja twarzy autorzy: A. Gonczarek, J.M. Tomczak Cel zadania Celem zadania jest zapoznanie się algorytmem gradientu prostego
Rozpoznawanie obrazów
Rozpoznawanie obrazów Laboratorium Python Zadanie nr 1 Regresja liniowa autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, M. Zięba, J. Kaczmar Cel zadania Celem zadania jest implementacja liniowego zadania
Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633
Grupowanie Grupowanie 7 6 5 4 y 3 2 1 0-3 -2-1 0 1 2 3 4 5-1 -2-3 -4 x Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633 Wprowadzenie Celem procesu grupowania jest podział zbioru
Zad. 3: Układ równań liniowych
1 Cel ćwiczenia Zad. 3: Układ równań liniowych Wykształcenie umiejętności modelowania kluczowych dla danego problemu pojęć. Definiowanie właściwego interfejsu klasy. Zwrócenie uwagi na dobór odpowiednich
Optymalizacja systemów
Optymalizacja systemów Laboratorium Sudoku autor: A. Gonczarek Cel zadania Celem zadania jest napisanie programu rozwiązującego Sudoku, formułując problem optymalizacji jako zadanie programowania binarnego.
Wstęp. Regresja logistyczna. Spis treści. Hipoteza. powrót
powrót Spis treści 1 Wstęp 2 Regresja logistyczna 2.1 Hipoteza 2.2 Estymacja parametrów 2.2.1 Funkcja wiarygodności 3 Uogólnione modele liniowe 3.1 Rodzina wykładnicza 3.1.1 Rozkład Bernouliego 3.1.2 Rozkład
Elementy inteligencji obliczeniowej
Elementy inteligencji obliczeniowej Paweł Liskowski Institute of Computing Science, Poznań University of Technology 9 October 2018 1 / 19 Perceptron Perceptron (Rosenblatt, 1957) to najprostsza forma sztucznego
Matlab podstawy + testowanie dokładności modeli inteligencji obliczeniowej
Matlab podstawy + testowanie dokładności modeli inteligencji obliczeniowej Podstawy matlaba cz.ii Funkcje Dotychczas kod zapisany w matlabie stanowił skrypt który pozwalał na określenie kolejności wykonywania
Sieci Kohonena Grupowanie
Sieci Kohonena Grupowanie http://zajecia.jakubw.pl/nai UCZENIE SIĘ BEZ NADZORU Załóżmy, że mamy za zadanie pogrupować następujące słowa: cup, roulette, unbelievable, cut, put, launderette, loveable Nie
Metody systemowe i decyzyjne w informatyce
Metody systemowe i decyzyjne w informatyce Laboratorium MATLAB Zadanie nr 1 Regresja liniowa autorzy: A. Gonczarek, J.M. Tomczak Cel zadania Celem zadania jest zapoznanie się z liniowym zadaniem najmniejszych
Kompresja danych Streszczenie Studia Dzienne Wykład 10,
1 Kwantyzacja wektorowa Kompresja danych Streszczenie Studia Dzienne Wykład 10, 28.04.2006 Kwantyzacja wektorowa: dane dzielone na bloki (wektory), każdy blok kwantyzowany jako jeden element danych. Ogólny
Obliczenia iteracyjne
Lekcja Strona z Obliczenia iteracyjne Zmienne iteracyjne (wyliczeniowe) Obliczenia iteracyjne wymagają zdefiniowania specjalnej zmiennej nazywanej iteracyjną lub wyliczeniową. Zmienną iteracyjną od zwykłej
Zadanie 5 - Algorytmy genetyczne (optymalizacja)
Zadanie 5 - Algorytmy genetyczne (optymalizacja) Marcin Pietrzykowski mpietrzykowski@wi.zut.edu.pl wersja 1.0 1 Cel Celem zadania jest zapoznanie się z Algorytmami Genetycznymi w celu rozwiązywanie zadania
Zastosowania sieci neuronowych
Zastosowania sieci neuronowych aproksymacja LABORKA Piotr Ciskowski zadanie 1. aproksymacja funkcji odległość punktów źródło: Żurada i in. Sztuczne sieci neuronowe, przykład 4.4, str. 137 Naucz sieć taką
Ćwiczenie 3. MatLab: Algebra liniowa. Rozwiązywanie układów liniowych
Ćwiczenie 3. MatLab: Algebra liniowa. Rozwiązywanie układów liniowych Wszystko proszę zapisywać komendą diary do pliku o nazwie: imie_ nazwisko 1. Definiowanie macierzy i odwoływanie się do elementów:
Seminarium IO. Zastosowanie metody PSO w Dynamic Vehicle Routing Problem (kontynuacja) Michał Okulewicz
Seminarium IO Zastosowanie metody PSO w Dynamic Vehicle Routing Problem (kontynuacja) Michał Okulewicz 26.10.2012 Plan prezentacji Problem VRP+DR Algorytm PSO Podejścia MAPSO + 2-Opt 2-phase PSO Wyniki
Elementy statystyki wielowymiarowej
Wnioskowanie_Statystyczne_-_wykład Spis treści 1 Elementy statystyki wielowymiarowej 1.1 Kowariancja i współczynnik korelacji 1.2 Macierz kowariancji 1.3 Dwumianowy rozkład normalny 1.4 Analiza składowych
Podstawy OpenCL część 2
Podstawy OpenCL część 2 1. Napisz program dokonujący mnożenia dwóch macierzy w wersji sekwencyjnej oraz OpenCL. Porównaj czasy działania obu wersji dla różnych wielkości macierzy, np. 16 16, 128 128, 1024
1. Grupowanie Algorytmy grupowania:
1. 1.1. 2. 3. 3.1. 3.2. Grupowanie...1 Algorytmy grupowania:...1 Grupowanie metodą k-średnich...3 Grupowanie z wykorzystaniem Oracle Data Miner i Rapid Miner...3 Grupowanie z wykorzystaniem algorytmu K-Means
Laboratorium MATLA. Ćwiczenie 4. Debugowanie. Efektywności kodu. Wektoryzacja.
Laboratorium MATLA Ćwiczenie 4. Debugowanie. Efektywności kodu. Wektoryzacja. Opracowali: - dr inż. Beata Leśniak-Plewińska Zakład Inżynierii Biomedycznej, Instytut Metrologii i Inżynierii Biomedycznej,
Algorytmy wyznaczania centralności w sieci Szymon Szylko
Algorytmy wyznaczania centralności w sieci Szymon Szylko Zakład systemów Informacyjnych Wrocław 10.01.2008 Agenda prezentacji Cechy sieci Algorytmy grafowe Badanie centralności Algorytmy wyznaczania centralności
Algorytmy rozpoznawania obrazów. 11. Analiza skupień. dr inż. Urszula Libal. Politechnika Wrocławska
Algorytmy rozpoznawania obrazów 11. Analiza skupień dr inż. Urszula Libal Politechnika Wrocławska 2015 1 1. Analiza skupień Określenia: analiza skupień (cluster analysis), klasteryzacja (clustering), klasyfikacja
Lekcja 5: Sieć Kohonena i sieć ART
Lekcja 5: Sieć Kohonena i sieć ART S. Hoa Nguyen 1 Materiał Sieci Kohonena (Sieć samo-organizująca) Rysunek 1: Sieć Kohonena Charakterystyka sieci: Jednowarstwowa jednokierunkowa sieć. Na ogół neurony
Ćwiczenie 3. Iteracja, proste metody obliczeniowe
Ćwiczenie 3. Iteracja, proste metody obliczeniowe Instrukcja iteracyjna ( pętla liczona ) Pętla pozwala na wielokrotne powtarzanie bloku instrukcji. Liczba powtórzeń wynika z definicji modyfikowanej wartości
Laboratorium Metod Optymalizacji
Laboratorium Metod Optymalizacji Grupa nr... Sekcja nr... Ćwiczenie nr 4 Temat: Programowanie liniowe (dwufazowa metoda sympleksu). Lp. 1 Nazwisko i imię Leszek Zaczyński Obecność ocena Sprawozdani e ocena
Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.
Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą
Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.
Wstęp do sieci neuronowych, wykład 3 Warstwy, jednostka Adaline. Maja Czoków, Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 211-1-18 1 Pomysł Przykłady Zastosowanie 2
Podstawy Programowania C++
Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:
Napisz program wypisujący na standardowym wyjściu następujący napis: Napis zawierający różne dziwne znaczki // \ \$ &%.
ZADANIE 1. ZADANIE 2. ZADANIE 3. ZADANIE 4. ZADANIE 5. ZADANIE 6. ZADANIE 7. ZADANIE 8. ZADANIE 9. ZADANIE 10. ZADANIE 11. Napisz program wypisujący na standardowym wyjściu następujący napis: Napis zawierający
Eksploracja danych. Grupowanie. Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne. Grupowanie wykład 1
Grupowanie Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Grupowanie wykład 1 Sformułowanie problemu Dany jest zbiór obiektów (rekordów). Znajdź naturalne pogrupowanie
Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w
Metoda Simpleks Jak wiadomo, problem PL z dowolną liczbą zmiennych można rozwiązać wyznaczając wszystkie wierzchołkowe punkty wielościanu wypukłego, a następnie porównując wartości funkcji celu w tych
Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda
Wstęp do sieci neuronowych, wykład 10. Maja Czoków, Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2012-12-19 Projekt pn. Wzmocnienie potencjału dydaktycznego UMK w Toruniu
Hierarchiczna analiza skupień
Hierarchiczna analiza skupień Cel analizy Analiza skupień ma na celu wykrycie w zbiorze obserwacji klastrów, czyli rozłącznych podzbiorów obserwacji, wewnątrz których obserwacje są sobie w jakimś określonym
Według raportu ISO z 1988 roku algorytm JPEG składa się z następujących kroków: 0.5, = V i, j. /Q i, j
Kompresja transformacyjna. Opis standardu JPEG. Algorytm JPEG powstał w wyniku prac prowadzonych przez grupę ekspertów (ang. Joint Photographic Expert Group). Prace te zakończyły się w 1991 roku, kiedy
Zadanie 1. Suma silni (11 pkt)
2 Egzamin maturalny z informatyki Zadanie 1. Suma silni (11 pkt) Pojęcie silni dla liczb naturalnych większych od zera definiuje się następująco: 1 dla n = 1 n! = ( n 1! ) n dla n> 1 Rozpatrzmy funkcję
Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS
Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS Dyskretyzacja - definicja Dyskretyzacja - zamiana atrybutów
//warunki początkowe m=500; T=30; c=0.4; t=linspace(0,t,m); y0=[-2.5;2.5];
4.3. Przykłady wykorzystania funkcji bibliotecznych 73 MATLAB % definiowanie funkcji function [dx]=vderpol(t,y) global c; dx=[y(2); c*(1-y(1)^2)*y(2)-y(1)]; SCILAB // definiowanie układu function [f]=vderpol(t,y,c)
Zaprojektować i zaimplementować algorytm realizujący następujące zadanie.
Lista 1 Utworzenie tablicy jest równoznaczne z alokacją pamięci na elementy tablicy (utworzeniem dynamicznej tablicy). W zadaniach należy pamiętać o zwolnieniu zasobów przydzielonych na stercie. Zabronione
Sztuczna Inteligencja Tematy projektów Sieci Neuronowe
PB, 2009 2010 Sztuczna Inteligencja Tematy projektów Sieci Neuronowe Projekt 1 Stwórz projekt implementujący jednokierunkową sztuczną neuronową złożoną z neuronów typu sigmoidalnego z algorytmem uczenia
Co to są drzewa decyzji
Drzewa decyzji Co to są drzewa decyzji Drzewa decyzji to skierowane grafy acykliczne Pozwalają na zapis reguł w postaci strukturalnej Przyspieszają działanie systemów regułowych poprzez zawężanie przestrzeni
Metody Sztucznej Inteligencji II
17 marca 2013 Neuron biologiczny Neuron Jest podstawowym budulcem układu nerwowego. Jest komórką, która jest w stanie odbierać i przekazywać sygnały elektryczne. Neuron działanie Jeżeli wartość sygnału
Programowanie - wykład 4
Programowanie - wykład 4 Filip Sośnicki Wydział Fizyki Uniwersytet Warszawski 20.03.2019 Przypomnienie Prosty program liczący i wyświeltający wartość silni dla wprowadzonej z klawiatury liczby: 1 # include
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu
Wykład 5. Metoda eliminacji Gaussa
1 Wykład 5 Metoda eliminacji Gaussa Rozwiązywanie układów równań liniowych Układ równań liniowych może mieć dokładnie jedno rozwiązanie, nieskończenie wiele rozwiązań lub nie mieć rozwiązania. Metody dokładne
Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda
Wstęp do sieci neuronowych, wykład 9. Maja Czoków, Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2018-12-10 Projekt pn. Wzmocnienie potencjału dydaktycznego UMK w Toruniu
Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda
Wstęp do sieci neuronowych, wykład 10. Maja Czoków, Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2011-12-13 1 Modele sieci rekurencyjnej Energia sieci 2 3 Modele sieci
SIECI REKURENCYJNE SIECI HOPFIELDA
SIECI REKURENCYJNE SIECI HOPFIELDA Joanna Grabska- Chrząstowska Wykłady w dużej mierze przygotowane w oparciu o materiały i pomysły PROF. RYSZARDA TADEUSIEWICZA SPRZĘŻENIE ZWROTNE W NEURONIE LINIOWYM sygnał
lekcja 8a Gry komputerowe MasterMind
lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych
1 Programowanie w matlabie - skrypty i funkcje
1 Programowanie w matlabie - skrypty i funkcje 1.1 Skrypty Skrypt jest plikiem tekstowym z rozszerzeniem *.m zawierającym listę poleceń do wykonania. Aby utworzyć skrypt w matlabie wybierz File New Script,
Wstęp do sieci neuronowych, wykład 8 Uczenie nienadzorowane.
Wstęp do sieci neuronowych, wykład 8. M. Czoków, J. Piersa, A. Rutkowski Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika w Toruniu 1-811-6 Projekt pn. Wzmocnienie potencjału dydaktycznego
Data Mining Wykład 4. Plan wykładu
Data Mining Wykład 4 Klasyfikacja danych Klasyfikacja poprzez indukcje drzew decyzyjnych Plan wykładu Sformułowanie problemu Kryteria oceny metod klasyfikacji Metody klasyfikacji Klasyfikacja poprzez indukcje
1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie
Wykaz tabel Wykaz rysunków Przedmowa 1. Wprowadzenie 1.1. Wprowadzenie do eksploracji danych 1.2. Natura zbiorów danych 1.3. Rodzaje struktur: modele i wzorce 1.4. Zadania eksploracji danych 1.5. Komponenty
Metody systemowe i decyzyjne w informatyce
Metody systemowe i decyzyjne w informatyce Laboratorium MATLAB Zadanie nr 2 κ-nn i Naive Bayes autorzy: M. Zięba, J.M. Tomczak, A. Gonczarek, S. Zaręba Cel zadania Celem zadania jest implementacja klasyfikatorów
Zadanie 3: Liczenie winogron
Informatyka, studia dzienne, II st. semestr II Rozpoznawanie obrazów 2012/2013 Prowadzący: dr inż. Bartłomiej Stasiak czwartek, 8:30 Data oddania: Ocena: Andrzej Stasiak 178736 Grzegorz Graczyk 178717
Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe
Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe Trening jednokierunkowych sieci neuronowych wykład 2. dr inż. PawełŻwan Katedra Systemów Multimedialnych Politechnika Gdańska
WYKŁAD 9 METODY ZMIENNEJ METRYKI
WYKŁAD 9 METODY ZMIENNEJ METRYKI Kierunki sprzężone. Metoda Newtona Raphsona daje dobre przybliżenie najlepszego kierunku poszukiwań, lecz jest to okupione znacznym kosztem obliczeniowym zwykle postać
Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji
Podstawy programowania Laboratorium Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji Instrukcja warunkowa if Format instrukcji warunkowej Przykład 1. if (warunek) instrukcja albo zestaw
WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA
WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA PRZEDMIOT : : LABORATORIUM PODSTAW AUTOMATYKI 1. WSTĘP DO
Programowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Automatyczne wyodrębnianie reguł
Automatyczne wyodrębnianie reguł Jedną z form reprezentacji wiedzy jest jej zapis w postaci zestawu reguł. Ta forma ma szereg korzyści: daje się łatwo interpretować, można zrozumieć sposób działania zbudowanego
Rozdział 17. Zarządzanie współbieżnością zadania
Rozdział 17. Zarządzanie współbieżnością zadania Transakcja DML 1. Uruchom narzędzie Oracle SQL Developer i przyłącz się do bazy danych. Następnie rozpocznij nową transakcję, zmieniając pracownikowi o
Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.
Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe. zajecia.jakubw.pl/nai Literatura: S. Osowski, Sieci neuronowe w ujęciu algorytmicznym. WNT, Warszawa 997. PODSTAWOWE ZAGADNIENIA TECHNICZNE AI
Def. Kod jednoznacznie definiowalny Def. Kod przedrostkowy Def. Kod optymalny. Przykłady kodów. Kody optymalne
Załóżmy, że mamy źródło S, które generuje symbole ze zbioru S={x, x 2,..., x N } z prawdopodobieństwem P={p, p 2,..., p N }, symbolom tym odpowiadają kody P={c, c 2,..., c N }. fektywność danego sposobu
TEORETYCZNE PODSTAWY INFORMATYKI
1 TEORETYCZNE PODSTAWY INFORMATYKI WFAiS UJ, Informatyka Stosowana II stopień studiów Wykład 13b 2 Eksploracja danych Co rozumiemy pod pojęciem eksploracja danych Algorytmy grupujące (klajstrujące) Graficzna
do MATLABa programowanie WYKŁAD Piotr Ciskowski
Wprowadzenie do MATLABa programowanie WYKŁAD Piotr Ciskowski instrukcje sterujące instrukcja warunkowa: if instrukcja wyboru: switch instrukcje iteracyjne: for, while instrukcje przerwania: continue, break,
3. Macierze i Układy Równań Liniowych
3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x
Optymalizacja systemów
Optymalizacja systemów Laboratorium Zadanie nr 3 Sudoku autor: A. Gonczarek Cel zadania Celem zadania jest napisanie programu rozwiązującego Sudoku, formułując problem optymalizacji jako zadanie programowania
6. Pętle while. Przykłady
6. Pętle while Przykłady 6.1. Napisz program, który, bez użycia rekurencji, wypisze na ekran liczby naturalne od pewnego danego n do 0 włącznie, w kolejności malejącej, po jednej liczbie na linię. Uwaga!
Management Systems in Production Engineering No 3(23), 2016
PROPOZYCJA STRATEGII EWOLUCYJNEGO GENEROWANIA STRUKTUR DANYCH OPARTYCH O POZIOME DRZEWA DANYCH DLA POTRZEB TESTÓW Marek ŻUKOWICZ, Michał MARKIEWICZ Politechnika Rzeszowska Streszczenie: Celem artykułu
Asocjacyjna reprezentacja danych i wnioskowanie
Asocjacyjna reprezentacja danych i wnioskowanie Wykorzystane technologie JetBrains PyCharm 504 Python 35 Struktura drzewa GRAPH PARAM PARAM ID1 ID2 ID_N params params params param_name_1: param_value_1
UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH
Transport, studia I stopnia rok akademicki 2011/2012 Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska Ewa Pabisek Adam Wosatko Uwagi wstępne Układ liniowych równań algebraicznych można
Wstęp do programowania
Wstęp do programowania Podstawowe konstrukcje programistyczne Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk (Wydział Fizyki) WP w. II Jesień 2013 1 / 34 Przypomnienie Programowanie imperatywne Program
Sieci neuronowe - projekt
Sieci neuronowe - projekt Maciej Barański, Kamil Dadel 15 stycznia 2015 Streszczenie W ramach projektu został zrealizowany algorytm kompresji stratnej bazujący na działaniu samoorganizującej się sieci
Metody przeszukiwania
Metody przeszukiwania Co to jest przeszukiwanie Przeszukiwanie polega na odnajdywaniu rozwiązania w dyskretnej przestrzeni rozwiązao. Zwykle przeszukiwanie polega na znalezieniu określonego rozwiązania