Skocz do zawartości
Zimack

Sieci Neuronowe. Sieć Hamminga.

Rekomendowane odpowiedzi

Witam, jestem tu nowy i mam problem z napisaniem sieci neuronowej, a dokładnie sieci neuronowej z wykorzystaniem algorytmu Hamminga, program ma ropoznawać twarze, nic w necie nie mogę znaleźć :(. Może ktoś pomoże? Może ktoś pisał cos podobnego? Zalezy mi na algorytmie Hamminga :/.

 

Pozdrawiam, i dziekuje za wszelkie informacje

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

watpie zebys napisal program do rozpoznawania twarzy ;]

moze zacznij najpierw od czegos prostego :D

nie od twarzy, ale np aby rozpoznawal ciag liczb i porownywal je do wzorca.

 

przeciez na necie jest duuuuuzo rzeczy o tym algorytmie, sa wzory wiec dzialaj ;]

 

pisalem kiedys cos takiego ale z siecia Hopfielda

 

w czym piszesz?

Edytowane przez greg505

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

implementację sieci hamminga na pewno znajdziesz.. Od prostych rzeczy nie musisz zaczynać - szkoda czasu.. Jak zrobisz prostą sieć hamminga to róznica między rozpoznawaniem liczb, liter czy twarzy to będzie kwestia ilości neuronów czy też wejść do sieci. Osobiście hamminga nie dotykałem ale robiłem zwykłą sieć wielowarstwową ze wsteczną propagacją błędu.

Znalazłem jakiś tutorialik pt. Neural nets for dummies i tam było wsio w pascalu napisane.. wystarczyło przenieść ideę na c++

 

tu masz napisane co to jest sieć hamminga, masz budowę pokazaną

http://www.kik.pcz.czest.pl/nn/rekurencyjne.php?art=5

 

nie wiem jak u Ciebie z programowaniem obiektowym, ale zacząłbym od stworzenia klasy pojedynczego neuronu, a potem połączył neurony w warstwy stosując algorytm hamminga do uczenia.

 

tu masz jeszcze

http://www.doc.ic.ac.uk/~nd/surprise_96/jo...s11/report.html

 

tu masz kody źródłowe jakichś sieci..

http://www.ip-atlas.com/pub/nap/nn-src/

 

http://home.agh.edu.pl/~vlsi/AI/hamming_en/

tu masz nawet działąjącą sieć napisaną w javie...

http://home.agh.edu.pl/~vlsi/AI/hamming_en/sim.html

 

na necie jest kupę rzeczy dotyczących sieci neuronowych.. trzeba tylko zadawać odpowiednie pytania... :)

Dziwne, że Ty nie mogłeś znaleźć a ja to w 2 minuty znalazłem wszystko co potrzeba :). Coś się słabo starasz z tym projektem... :)

Edytowane przez PelzaK

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

implementację sieci hamminga na pewno znajdziesz.. Od prostych rzeczy nie musisz zaczynać - szkoda czasu.. Jak zrobisz prostą sieć hamminga to róznica między rozpoznawaniem liczb, liter czy twarzy to będzie kwestia ilości neuronów czy też wejść do sieci. Osobiście hamminga nie dotykałem ale robiłem zwykłą sieć wielowarstwową ze wsteczną propagacją błędu.

Znalazłem jakiś tutorialik pt. Neural nets for dummies i tam było wsio w pascalu napisane.. wystarczyło przenieść ideę na c++

 

tu masz napisane co to jest sieć hamminga, masz budowę pokazaną

http://www.kik.pcz.czest.pl/nn/rekurencyjne.php?art=5

 

nie wiem jak u Ciebie z programowaniem obiektowym, ale zacząłbym od stworzenia klasy pojedynczego neuronu, a potem połączył neurony w warstwy stosując algorytm hamminga do uczenia.

 

tu masz jeszcze

http://www.doc.ic.ac.uk/~nd/surprise_96/jo...s11/report.html

 

tu masz kody źródłowe jakichś sieci..

http://www.ip-atlas.com/pub/nap/nn-src/

 

http://home.agh.edu.pl/~vlsi/AI/hamming_en/

tu masz nawet działąjącą sieć napisaną w javie...

http://home.agh.edu.pl/~vlsi/AI/hamming_en/sim.html

 

na necie jest kupę rzeczy dotyczących sieci neuronowych.. trzeba tylko zadawać odpowiednie pytania... :)

Dziwne, że Ty nie mogłeś znaleźć a ja to w 2 minuty znalazłem wszystko co potrzeba :). Coś się słabo starasz z tym projektem... :)

 

Nie chodzi o to ze sie nie staram :), mam dużo materiałów, ale nie potrafie tego zaimplementować :/.

 

Mój program ma wygladac tak, ze właczam go, sa 4 obrazki twarzy, z jakiejs tam bazy danych, na dole sa przerobione na binarne. Nastepnie mam nauczyc siec ( tego nieszczesnego Hamminga), a nastepnie wczytuje jakas twarz z pliku ( jedna z tych 4 ) i ROZPOZNAJ, i on ma poznac ktora to jest.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

no to tam były gdzieś proste kody w pascalu czy C... Nie wiem jak w hamingu, ale np w zwykłej sieci wielowarstweowej ze wsteczną propagacją błędu całą implementacja wygladała tak:

 

na początek powstał obiekt neuron, który robił to co każdy neuron robić powinien :). Potem 3 warstwy ze zmienną ilością neuronów w środku, połączone wg schematu sieci (u mnie akurat każdy z każdym).. Dalej jak masz już strukturę... i siec odpowiada na wyjściu jakimś sygnałem na to co podasz jej na wejście, implementujesz algorytm uczenia.

Są do tego jakieś zworki, np jak zmienić wagę pojedynczego neuronu w zależności od błędu jaki popełnił. W moim przypadku, dawałem gościowi obrazek liścia i mówiłem mu który z 10 liści to jest... następnie algorytm uczący sprawdzał jaka jest odpowiedź sieci na tego liścia i wyliczał dla każdego neuronu jaki popełnił bład i jak należy zmienić wagi jego wejść. I tak w kółko 10.000 razy, pokazywałem mu rózne liście i modyfikowałem wagi.. aż się nauczył.

 

Tam oczywiście dobre jest wyciągnać sobie do interfejsu aplikacji jakieś parametry które wpływają na przebieg uczenia.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...