NEURAL NETWORK ) FANN jest biblioteką implementującą SSN, którą moŝna wykorzystać. w C, C++, PHP, Pythonie, Delphi a nawet w środowisku. Mathematica.



Podobne dokumenty
Przez lata fi lmy science-fi ction, takie jak

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

ALGORYTMY SZTUCZNEJ INTELIGENCJI

Elektroniczne materiały dydaktyczne do przedmiotu Wstęp do Sieci Neuronowych

Sieci neuronowe - dokumentacja projektu

Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;

Projekt Sieci neuronowe

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

ZESZYTY NAUKOWE WSOWL. Nr 4 (162) 2011 ISSN NAUKI EKONOMICZNE

Streszczenie. Słowa kluczowe: modele neuronowe, parametry ciągników rolniczych

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda

Podstawy Sztucznej Inteligencji

Ćw. IV. Tworzenie stron internetowych. Podstawy projektowania, wprowadzenie do języka HTML

Metody Sztucznej Inteligencji II

Rozdział 1 Sztuczne sieci neuronowe. Materiały do zajęć dydaktycznych - na podstawie dokumentacji programu Matlab opracował Dariusz Grzesiak

Dariusz Brzeziński Instytut Informatyki, Politechnika Poznańska

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

ZACHODNIOPOMORSKI UNIWERSYTET TECHNOLOGICZNY W SZCZECINIE

Politechnika Lubelska

AUTOMATYKA INFORMATYKA

Zastosowania sieci neuronowych

Sieci neuronowe w Statistica

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

Oprogramowanie Systemów Obrazowania SIECI NEURONOWE

Zastosowania sieci neuronowych

Wstęp do głębokich sieci neuronowych. Paweł Morawiecki IPI PAN

Temat: ANFIS + TS w zadaniach. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Sztuczne Sieci Neuronowe. Wiktor Tracz Katedra Urządzania Lasu, Geomatyki i Ekonomiki Leśnictwa, Wydział Leśny SGGW

ĆWICZENIE 5: Sztuczne sieci neuronowe

Sieci neuronowe i algorytmy uczenia Czyli co i jak andrzej.rusiecki.staff.iiar.pwr.wroc.pl s.

Inteligentne systemy przeciw atakom sieciowym

6. Perceptron Rosenblatta

Sztuczne sieci neuronowe w zastosowaniu do modelowania fazy wznoszenia samolotu

Wstęp do teorii sztucznej inteligencji

Scenariusz lekcji. scharakteryzować budowę procedury w języku Logo; rozróżnić etapy tworzenia i wykonania procedury;

HAŁASU Z UWZGLĘDNIENIEM ZJAWISK O CHARAKTERZE NIELINIOWYM

Budowa sztucznych sieci neuronowych do prognozowania. Przykład jednostek uczestnictwa otwartego funduszu inwestycyjnego

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

Podstawy sztucznej inteligencji

USING A PROBABILISTIC NEURAL NETWORK AND THE NEAREST NEIGHBOUR METHOD TO IDENTIFY SHIP RADIOSTATIONS

Wykorzystanie protokołu SCEP do zarządzania certyfikatami cyfrowymi w systemie zabezpieczeń Check Point NGX

PRZEDMIOTOWY SYSTEM OCENIANIA. z przedmiotu. Programowanie strukturalne i obiektowe. dla technikum informatycznego

Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.

Komunikacja Master-Slave w protokole PROFIBUS DP pomiędzy S7-300/S7-400

Podstawy sztucznej inteligencji

MATLAB Neural Network Toolbox uczenie sieci (dogłębnie)

Instrukcja realizacji ćwiczenia

Temat: Sztuczne Sieci Neuronowe. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

1 Podstawy programowania sieci neuronowych w programie Matlab 7.0

Uczenie sieci neuronowych i bayesowskich

Sztuczne sieci neuronowe

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

Wprowadzenie do teorii systemów ekspertowych

Algorytmy sztucznej inteligencji

Sieć Hopfielda. Sieci rekurencyjne. Ewa Adamus. ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych.

Dokumentacja Końcowa

Politechnika Warszawska

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Tablicę 2-wymiarową można przedstawić jako pewien zestaw tablic 1-wymiarowych np.:

Sztuczne sieci neuronowe (SNN)

WYKORZYSTANIE SIECI NEURONOWYCH DO ODWZOROWANIA DEFORMACJI POWIERZCHNI NA TERENACH GÓRNICZYCH

Od programowania wizualnego do tekstowego

Wprowadzenie do programu RapidMiner Studio 7.6, część 4 Michał Bereta

Podstawy Sztucznej Inteligencji (PSZT)

Text mining w programie RapidMiner Michał Bereta

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Sieci neuronowe i ich ciekawe zastosowania. Autor: Wojciech Jamrozy III rok SMP / Informatyka

1. Kalkulator czterech działań. 2. Konwersja ciągu znaków do tablicy.

Deep Learning na przykładzie Deep Belief Networks

WYKORZYSTANIE SZTUCZNYCH SIECI NEURONOWYCH W PROGNOZOWANIU

Wykład 5. Cel wykładu. Korespondencja seryjna. WyŜsza Szkoła MenedŜerska w Legnicy. Informatyka w zarządzaniu Zarządzanie, zaoczne, sem.

Optymalizacja optymalizacji

Sieci neuronowe w Statistica. Agnieszka Nowak - Brzezioska

Warszawa, maj 2008 r.

Komunikator internetowy w C#

8. Neuron z ciągłą funkcją aktywacji.

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Zaawansowane programowanie w języku C++ Funkcje uogólnione - wzorce

z poradni pedagogicznej

Metodyki i Techniki Programowania MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA

METODY SZTUCZNEJ INTELIGENCJI 2 Opis projektu

Automatyka i Robotyka, V rok. promotor: dr Adrian Horzyk. Kraków, 3 czerwca System automatycznego rozpoznawania

PROGNOZOWANIE CENY OGÓRKA SZKLARNIOWEGO ZA POMOCĄ SIECI NEURONOWYCH

Być może jesteś doświadczonym programistą, biegle programujesz w Javie,

Komponent Formularz. Rys. 1. Strona programu Joomla - Rys. 2. Instalacja komponentu

DOBÓR ŚRODKÓW TRANSPORTOWYCH DLA GOSPODARSTWA PRZY POMOCY PROGRAMU AGREGAT - 2

Program Opakowania zwrotne dla InsERT GT.

Narzędzia administracyjne Windows XP

Bankowość elektroniczna

Polcode Code Contest PHP-10.09

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Przykładowa analiza danych

BANKOWOŚĆ ELEKTRONICZNA. Opis i specyfikacja techniczna programu translatora Bph2Pekao

KLASYFIKACJA. Słownik języka polskiego

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

76.Struktura oprogramowania rozproszonego.

Słowa kluczowe jak góry lodowe

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Transkrypt:

Wykorzystanie sztucznych sieci neuronowych do rozpoznawania języków: polskiego, angielskiego i francuskiego Tworzenie i nauczanie sieci przy pomocy języka C++ i biblioteki FANN (Fast Artificial Neural Network) Joanna Długosz BIBLIOTEKA FANN (FAST ARTIFICIAL NEURAL NETWORK ) FANN jest biblioteką implementującą SSN, którą moŝna wykorzystać w C, C++, PHP, Pythonie, Delphi a nawet w środowisku Mathematica. Biblioteka FANN została stworzona przez Steffena Nissena informatyka z Danii. Została ona udostępniona przez niego w 2003 roku. Z początku była dostępna tylko dla Linuxa. Obecnie dostępna jest w większości kompilatorów i systemów operacyjnych.

BIBLIOTEKA FANN (FAST ARTIFICIAL NEURAL NETWORK ) Podstawowe funkcje FANN: fann_create tworzenie sieci fann_train_on_file uczenie się sieci na podstawie pliku treningowego fann_save zapis pod określoną nazwą fann_destroy koniec pracy z siecią struct fann *ann_create (float connection_rate, float learning_rate, unisigned int num_layers,) jest stosowana do tworzenia SSN, parametr connection_rate moŝe być uŝyty do utworzenia SSN nie w pełni połączonej, zaślearning_rate stosowany jest do określenia intensywności procesu uczenia. Ostatni parametr num_layers słuŝy do zdefiniowania układu warstw w SNN. ROZPOZNAWANIE JĘZYKA Jedną z metod na rozpoznanie języka jest analiza częstotliwości występowania w tekście liter alfabetu. Dla języków europejskich wystarczy wziąć pod uwagę częstotliwość występowania tylko liter A-Z, pomimo nawet tego, Ŝe wiele języków wykorzystuje równieŝ inne litery. Z pomocą biblioteki FANN napisanie programu, którego zadaniem będzie określenie, w jakim języku został napisany dany plik tekstowy, jest niezwykle proste. Zastosowana w tym celu SSN powinna mieć neuron wejściowy dla kaŝdej z 26 liter i jeden neuron wyjściowy dla kaŝdego języka.

I. Napisanie programu mierzącego częstotliwość występowania liter w pliku tekstowym II. Wygenerowanie pliku trenującego PoniŜszy obraz pokazuje fragment zawartości pliku trenującego, wygenerowanego przy uŝyciu czterech plików tekstowych dla kaŝdego z trzech języków.

II. Wygenerowanie pliku trenującego Plik zapisujemy pod nazwą frequencies.data Uśrednione częstotliwości występowania liter w językach francuskim, polskim angielskim III. Tworzenie programu uczącego sieć Liczba warstw oraz neuronów w warstwie ukrytej zostały dobrane eksperymentalnie poprzez sprawdzenie kilku moŝliwych konfiguracji tylko konfiguracja 13 neuronów potrafiła sprostać parametrom uczenia. Wynik nauczania zapisujemy do pliku: klasyfikacja_jezykow

III. Tworzenie programu uczącego sieć Wyjście FANN podczas trenowania: Liczba epok w zaleŝności od uŝytego algorytmu uczenia: Rodzaj algorytmu Domyślnyrprop Incremental Batch Quickprop (przy zwiększeniu czasu działania algorytmu) Ilość epok 57 8108 91985 662 IV. Tworzenie programu klasyfikującego tekst PoniŜszy program wczytuje zachowaną SSN i uŝywa jej do klasyfikowania tekstu jako angielski, francuski lub polski. Korzysta z niektórych funkcji utworzonych w Kroku I oraz z pliku zawierającego wyniki uczenia.

IV. Tworzenie programu klasyfikującego tekst Wynik działania programu: KONIEC