Sztuczne Sieci Neuronowe i Zbiory Nieostre - Rozmyte
[multilayer non-linear Artifical Neural Nets with backpropagation (supervised method) and Fuzzy Sets]
[z] Rozpoznawanie znaków
(wer. 16d-3m-2003) - Program rozpoznaje znaki (litery, cyfry) rysowane myszką!
Można wprowadzać nowe znaki i uczyć program i ich rozpoznawania.
Program powstał w oparciu o teorię zbiorów nieostrych (Fuzzy Logic). Dokumentacja. A tutaj
KOD ŹRÓDŁOWY [BCB] [8 KB].
Edytor i Rozpoznawanie znaków (wer. 20d-11m-2003) [407 KB] [zobacz]
- Program rozpoznaje znaki za pomocą sztucznej sieci neuronowej. SSN zawiera tylko jedną warstwę ukrytą.
Działa o wiele szybciej i lepiej niż program powyżej. Sieci neuronowe to naprawdę niesamowite narzędzie!
Podpisy SSN - rozpoznawanie podpisów
(wer. 15d-8m-2004) [0,98 MB] Zobacz:
[1][2][3]
- Program do rozpoznawania (identyfikacji) osób na podstawie narysowanych podpisów,
za pomocą Sztucznej Sieci Neuronowej.
Podpisy są zapamiętywane w bazie danych i podawane do SSN w rozdzielczości 32x80 pikseli,
ale okienko do wprowadzania podpisu ma rozdzielczość 4x4 razy większą, tzn. 128x320.
W programie zaimplementowałem czterowarstwową nieliniową sztuczną sieć neuronową jednokierunkową.
Użyta metoda uczenia to wsteczna propagacja błędów, jako uczenie z nadzorem lub inaczej - z nauczycielem.
Kolejne warstwy sieci, to: warstwa danych wejściowych, dwie warstwy ukryte
i warstwa danych wyjściowych. W pocedurze uczenia sieci zastosowałem metodę
uczenia z tzw. członem momentum dla przyspieszenia tego procesu.
Ponadto zastosowałem dynamiczny dobór wartości współczynnika eta, tzw. parametru szybkości uczenia się sieci (korekcji wag).
Odciski SSN - rozpoznawanie odcisków palców
(wer. 9d-9m-2004) [307 KB] Zobacz: [1][2]-
Program do rozpoznawania jednego uczonego odcisku palca pośród innych podanych, za pomocą Sztucznej Sieci Neuronowej.
Uczenie SSN danego jednego obrazu odcisku palca odbywa się przez podanie na wejście SSN obrazu tego odcisku palca i
oczekiwaniu odpowiedzi 'Tak' oraz podawaniu kilku generowanych losowych obrazów (tzn. mające losowe wartości pikseli) i
oczekiwaniu odpowiedzi 'Nie'. Wektorem wejściowym, są dane z obrazu w postaci tablicy pikseli, czyli 110x150 liczb
zamienionych na typ rzeczywisty 'double', o wartościach z przedziału [0.0 ; 0.1] w zależnoci od jasności danego piksela.
Diagnoza Raka Piersi (wer. 11d-2m-2005) [7 KB]
Zobacz - Program do rozpoznawania raka piersi (breast-cancer) na podstawie podawanych
10-ciu atrybutów (spoistość masy nowotworowej, jednolitości rozmiaru komórek, jednolitość kształtu komórek,
stopień brzeżnego przylegania nowotworu, wielkość pojedynczych komórek nabłonkowych, ocena jądra komórkowego, ocena chromatyny,
stan prawidłowości jąderek (nucleoli), występowanie podziałów komórkowych (mitoza)) wyrażonych w wartościach: 1- 10.
W programie zastosowano sieć neuronową z dwoma warstwami ukrytymi. Sieć ta została nauczona dawania poprawnej diagnozy
na podstawie 200 przypadków diagnoz pobranych z bazy danych na stronie www.ics.uci.edu/pub/machine-learning-databases.
Rozpoznawanie ręcznie pisanych kodów pocztowych
[709 KB] [Początek 11m-2004] [Zobacz]
[Automatic recognition of hand written post codes] Program automatyczne rozpoznaje zeskanowane ręcznie pisane kody pocztowe (na jasnym tle),
za pomocą sztucznej sieci neuronowej. Użyłem SSN z dwoma warstwami ukrytymi.
Wejście do sieci neuronowej stanowi obraz znaku 16x16 pikseli = 256 liczb, wyjście 10 neuronów (dla cyfr 0 - 9).
Warstwy ukryte zawierają po około 60 neuronów. Program wczytuje obraz kodu pocztowego z pliku bmp dowolnych rozmiarów w 256-kolorach
(szarości lub kolorowych), ustala pozycję ramki ciągu znaków i w niej pozycje poszczególnych znaków.
Po odpowiedniej transformacji obrazu znaku następuje rozpoznawanie cyfry. Kod pocztowy może być zapisany na zabrudzonym tle,
kartce w kratkę, w różnym kontraście, różnymi grubościami linii itp.Cyfry mogą być także połączone ze sobą.
Algorytm wyodrębniania obrazu cyfry bardzo dobrze radzi sobie z podobnymi trudnościami i przez to sieć neuronowa
nie ma większych problemów z rozpoznawaniem poszczególnych cyfr kodu pocztowego.
W archiwum zawartych jest 50 przykładowych obrazów zeskanowanych kodów pocztowych.
Program ponadto zawiera pełną bazę nazw miast i ich kodów pocztowych.
Zobacz przykładowe skany kodów pocztowych z kopert,
bezbłędnie rozpoznawane przez program. Nie znam lepszej implementacji! Dokumentacja w pdf!
Rozpoznawanie skanów podpisów [2,05 MB] [Początek 11m-2005]
- System rozpoznawania zeskanowanych obrazów podpisów osób za pomocą sztucznej sieci neuronowej.
Archiwum zawiera przykładowe pliki skanów, program do uczenia SSN, instrukcję oraz częściową dokumentację projektu.
Obrazy podpisów osób są podawane w plikach BMP w 256-kolorach (szarości lub dowolnych) o dowolnych rozmiarach
(ograniczonych do maksymalnej wielkości 460x200 pikseli). Linia podpisu powinna być ciemniejsza od jego tła.
Sieć neuronowa jest uczona podpisów kilku osób naraz i ma odpowiadać, do której osoby należy podany podpis. SSN uczy się bez problemów i bardzo szybko. Również dobrze generalizuje wiedzę i często udaje się jej rozpoznawać poprawnie obrazy podpisów,
których nie była uczona! Sprawność procesu uczenia - przykład:
80 obrazów; 12 osób; Rozmiar SSN: 2304-30-20-12; SSN nauczona w 30 epok; 1190 popraw wag; Czas nauki 18 sek (procesor AMD Duron 900 Mhz). Dokumentacja (pdf)!
Do udostępnienia kopleksowa implementacja Sztucznej Sieci Neuronowej
typu BackPropagation (uczenie pod nadzorem) w postaci łatwej do użycia klasy (w C++ Builder/Visual).
Super szybkie uczenie SSN.
Dużo dokumentacji, stron i tekstów o sieciach neuronowych [45 MB]
Liczba wejść na witrynę od dnia 2004-12-26: 514930. Twój IP: 38.107.191.117 Strona umieszczona na serwerze epokaY.net
- Freelance studio - grupy niezlażnych projektantów (marketing internetowy, projekty graficzne, programowanie)
epokaY.net polaca książkę: Marketing internetowy w wyszukiwarkach
Po przeczytaniu tej książki przestaniesz myśleć o reklamie internetowej jako o kosztach koniecznych,
a zaczniesz ją postrzegać jako inwestycję.