Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Europejski lider sprzedaży techniki i elektroniki.
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Program do symulacji choroby Alzheimera

dir3ctor 01 Sie 2008 17:36 3050 22
  • #1 01 Sie 2008 17:36
    dir3ctor
    Poziom 27  

    Witam wszystkich.

    Pewien znajomy poprosil mnie o napisanie programu do symulacji choroby alzheimera. Niestety to co dostalem to strzepki informacji, a mianowicie:
    - zastosowac metode delty
    - zastosowac funkcje XOR
    - zastosowac funkcje aktywacji typu skok jednostkowy

    O ile programowanie samo w sobie nie stanowi zadnego problemu to bede wdzieczny za jakiekolwiek sugestie i wskazowki jak taki program ma wygladac i o co tak wlasciwie w nim chodzi. Moze ktos spotkal sie z czyms podobnym, ewentualnie pisal progrmy do symulacji dzialania sieci neuronowych.

  • #2 01 Sie 2008 22:49
    shadow0013
    Poziom 34  

    Witam!
    Czeka Cię ciężka praca, miałem styczność z paroma osobami chorymi na tę chorobę i u każdej z nich choroba przebiegała inaczej, chociaż były podobne charakterystyczne zachowania, poszukaj jakiś materiałów prof. Grzegorza Opala i dr Stanisława Ochudło może Ci się nasunie jakiś pomysł.

  • #3 02 Sie 2008 17:39
    dir3ctor
    Poziom 27  

    Zarwana nocka i hektolitry kawy pozwolily mi stworzyc siec, ktora nauczylem funkcji XOR. Co prawda zrobilem to za pomoca metody delty, mam odpowiednia funkcje aktywacji i siec umie liczyc XORa, ale za cholere nie wiem jak sie to ma do symulacji choroby alzheimera.

    Mam tak jakies zaklocenia wprowadzac czy co?

  • #4 02 Sie 2008 21:10
    Dżyszla
    Poziom 42  

    Może sieć ma z czasem coraz bardziej zapominać, jak wykonać wyuczoną czynność? :D A poważniej - domyślam się, że może faktycznie chodzić o postępowaniu na kolejne poziomy w sieci (ile ich masz?) informacji, która doprowadzi do skutku odwrotnego niż uczenie się.

  • #5 02 Sie 2008 21:30
    dir3ctor
    Poziom 27  

    Struktura bardzo prosta: 1-10-1 neuronow.

  • #6 03 Sie 2008 09:31
    _Robak_
    Poziom 33  

    Moze uzyj do testowania sieci matlaba, zamiast pisac wszystko od poczatku, mozna wykorzystac tool boxa :)

  • #7 03 Sie 2008 11:45
    dir3ctor
    Poziom 27  

    Niby o wiele prosciej bo funkcje ma wbudowane, ale ten program ma byc napisany w C albo C++, wiec matlab odpada.

    Ale teraz zauwazylem inny problem. W jednym z postow powyzej napisalem ze uzylem jako funkcji aktywacyjnej skoku jednostkowego. Pomylka - obecnie jako aktywacyjna mam sigmoide (funkcja ciagla nieliniowa). Gdy zmienie funkcje aktywacyjna na skok jednostkowy to za cholere nie moge nauczyc sieci prosciutkiego XORa. Ktos moze pomoc?

  • #8 03 Sie 2008 21:03
    _Robak_
    Poziom 33  

    W matlabie jest cos takiego jak real time workshop, generuje kod w C :) Ale chodzilo mi zebys zrobil strukture sieci, sposob nauki itd w matlabie, a potem jak juz bedziesz wiedzial co to napisac w C :)

  • #9 03 Sie 2008 21:11
    dir3ctor
    Poziom 27  

    W sumie to znalazlem swietna biblioteke do tworzenia sieci neuronowych: FANN -=> http://leenissen.dk/fann/index.php

    Problem w tym ze i ona nie ma funkcji aktywacyjnej typu skok jednostkowy :/ Swoja droga tego typu funkcja aktywacyjna to jakies nieporozumienie. Musze sie dokladniej dowiedziec czy zastosowanie takowej to przymus.

    ---edit---
    A wiec skok jednostkowy sam dopisalem do FANNa, ale rezultaty nauki z zastosowaniem takowego sa raczej przykre. Co do symulacji alzheimera, to polagac ma ona na zerowaniu poszczegolnych wag w neuronach i sprawdzaniu jak reaguje siec.

    Dzieki za udzial w dyskusji :-)

  • #10 09 Sie 2008 11:06
    marek_Łódź
    Poziom 36  

    Symulację tak złożonego procesu powinno się chyba rozpocząć od zebrania materiałów w badaniach klinicznych, bo inaczej będzie to model niewiadomoczego. Masz jakieś materiały porównawcze?

    Bardzo przyjemnym narzędziem jest też Statistica NN i też umożliwia wygenerowanie kodu w C.

  • #11 09 Sie 2008 23:08
    dir3ctor
    Poziom 27  

    Tak, wiem.. statistice tez mam i zamierzam sie nia pobawic wkrotce. Zalorzenia tego projektu jak i sposob symulacji alzheimera zostay podany mojemu znajomemu przez promotora, wiec nic od siebie raczej w to nie wcisne. Na poczatku przyznam sie ze myslalem iz chodzi o cos bardziej zaawansowanego, np rozpoznawanie alzheimera za pomoca analizy zdjec PET.

  • #12 10 Sie 2008 15:02
    W.Wojtek
    Specjalista od telefonów

    Cos mi się wydaje że sięgnąłeś po temat który przerasta wszystkie możliwości symulacji.
    Na początek musisz zasymulować mózg. Prawidłowy.Razem z narządami zmysłow a na dodatek mowy.
    A potem jak to implementujesz i jakie mają być zewnętrzne objawy procesu dezintegracji niektórych funkcji losowo wybranych neuronów z sieci aby dały takie objawy:
    Wczesna faza choroby :!:
    Stopniowo :!: pogarszająca się zdolność zapamiętywania ostatnich :!: wydarzeń.
    Niezdolność rozpoznawania znajomych :!: przedmiotów.
    Wyczerpanie emocjonalne, którego objawami są niepokój :!: lub depresja. :!:
    Utrata orientacji. :!:
    Widoczna :!: obojętność :!: w stosunku do otoczenia.
    Późna faza choroby
    Złudzenia, :!: halucynacje. : !:
    Niemożność rozpoznawania osób, nawet najbliższych :!: krewnych.
    Trudności :!: w chodzeniu, :!: aż do powłóczenia nogami włącznie (chory stawia bardzo małe kroki).
    Pogarszanie się, a w końcowej fazie - utrata zdolności samodzielnego myślenia :!: i poruszania się.

    To są wszystko wyższe funkcje psychiczne, o ile wiem :idea: nie mające jeszcze nawet modelu matematycznego..
    PS.jestem lekarzem..

  • #13 11 Sie 2008 10:56
    piotrkopec
    Poziom 17  

    To nie ma być symulator chorego na Alzheimera( z gamepadem) tylko symulacja choroby( nie podojrzewajmy promotora o sadystyczne zapędy)
    Budowa sieci, zawarcie trzech wyżej wymienionych elementów, nauczenie sieci jednej czynności, stopniowe degradowanie sieci i zapisywanie wyników
    Można tak na kilku czynnościach... i przypisy ;)
    Przynajmniej ja tak to widzę

  • #14 11 Sie 2008 12:10
    marek_Łódź
    Poziom 36  

    piotrkopec napisał:
    To nie ma być symulator chorego na Alzheimera( z gamepadem) tylko symulacja choroby( nie podojrzewajmy promotora o sadystyczne zapędy)
    Budowa sieci, zawarcie trzech wyżej wymienionych elementów, nauczenie sieci jednej czynności, stopniowe degradowanie sieci i zapisywanie wyników
    Można tak na kilku czynnościach... i przypisy ;)
    Przynajmniej ja tak to widzę

    Tylko co to będzie miało wspólnego z rzeczywistą chorobą :?: Chyba nie za wiele. Inaczej mówiąc będzie to model degradacji funkcji sztucznej sieci neuronowej i nic więcej. Zadam pomocnicze pytanie - jak miałaby się przejawiać np. depresja czy niepokój w ANN.

    [W.Wojtek]
    W sumie model nie musi implementować pełnej "architektury" modelowanego obiektu, pod warunkiem, ze dysponuje przynajmniej jakimiś danymi rzeczywistymi (w tym przypadku z badań pacjentów). Modelowanie z wyobraźni to już bardziej sztuka przeplatana z mistycyzmem. Coś tak jak pisanie wiersza o Alzheimerze.

  • #15 11 Sie 2008 12:25
    W.Wojtek
    Specjalista od telefonów

    Popieram całkowicie.
    Promotor prawdopodobnie nie wie o czym mówi.
    Na początek proponuje aby nauczył sieć rozpoznawania twarzy ( no może to za ambitne, na poczatek wystarczy trójkąt spośród kilku figur o różnej wielkości) znajomej osoby a później tak degradował sieć aby rano rozpoznawała od razu, w południe wcale a wieczorem po chwili. A w dniu następnym odwrotnie.
    Zobaczymy.

    A w ogóle to starość byłaby piękna gdyby nie ten Nimiec (piep.. Alzeheimer który przychodzi do domu jak mnie nie ma i wszystko mi chowa, i ten drugi Angol-Parkinson co zawsze za mna stoi i jak coć chwytam to mnie bez przerwy w łokieć trąca.. I te dłonie coraz większe i te ręce coraz krótsze..) :D :D

  • #16 11 Sie 2008 14:47
    marek_Łódź
    Poziom 36  

    W.Wojtek napisał:
    Na początek proponuje aby nauczył sieć rozpoznawania twarzy ( no może to za ambitne, na poczatek wystarczy trójkąt spośród kilku figur o różnej wielkości) znajomej osoby a później tak degradował sieć aby rano rozpoznawała od razu, w południe wcale a wieczorem po chwili. A w dniu następnym odwrotnie.
    Albo halucynacje. Podajesz do sieci ciemność, a ona odpowiada
    Code:
    {widzę piękny, fioletowy kwadrat z konwaliami w środku (3D i wiruje)};

  • #17 11 Sie 2008 15:54
    dir3ctor
    Poziom 27  

    Ehhhehe, ato sie usmialem :-)

    Panowie, moze ten sposob symulacji nie ma nic wspolnego z alzheimerem, ale tak zazyczyl sobie promotor kolegi - ja nie wnikam, w koncu nasz klient - nasz pan. Zrobilem wg jego wskazowek, dam znac jak promotor to obejrzy i co o tym powie.

    Siec nauczona poprawnie liczyc XORa dawala 100% dobrych odpowiedzi dla zbioru uczacego. Przy usunieciu 1 polaczenia (wyzerowaniu 1 wagi) wynik poprawny byl dawany dla ~75% dzialan. Przy dwoch zerwanych polaczeniach skutecznosc sieci wynosila 56%. Dodam jeszcze ze przy zerwaniu wszystkich polaczen siec odpowiadala w 50% przypadkow dobrze (wiadomo, dzialanie na zbiorze dyskretnym, mialem otrzymac 0 lub 1, a dla zerwanych polaczen zawsze byla jedynka na wyjsciu). Dalszych symulacji zaniechalem gdyz (statystycznie) skutecznosc nizej by juz raczej nie spadla.

  • #18 11 Sie 2008 20:20
    And!
    Admin grupy Projektowanie

    W.Wojtek napisał:

    To są wszystko wyższe funkcje psychiczne, o ile wiem Idea nie mające jeszcze nawet modelu matematycznego..


    To faktycznie trudne a może nawet niemożliwe,
    swego czasu słyszałem dość zastanawiające porównanie struktury SSN z wyobrażeniami człowieka:

    zapętlony neuron -> odpowiednik wyolbrzymienia, dziecięcej wyobraźni wyolbrzymiającej cechy (np. potwór z wielkimi oczami zębami itp.)

    etap uczenia gdzie część neuronów odpowiada bardzo podobnie na wzorzec A i B -> wyobrażenia himer, np. syrenka itp.

    ciekawe nieprawdaż ?

  • #19 11 Sie 2008 21:40
    W.Wojtek
    Specjalista od telefonów

    Problem tym że neuron kory mózgowej ma połączenia synaptyczne z tysiącami innych. Jedne hamują inne pobudzaja. Nie nie są to funkcje cyfrowe (1-0).
    Proces uczenia się jest wieloetapowy, siedliska pamięci nie ma. Codziennie umiera ok 30 tys a jak popijemy to kilka razy więcej. I to wszystko działa. Jak sieć objawi ból głowy??
    JAk na razie nie udaje sie zasymulowac mózgu muchy..

  • #20 11 Sie 2008 22:19
    marek_Łódź
    Poziom 36  

    Nie pierwszy i nie ostatni stosuje się taki chwyt marketingowy. Wcześniej mówiono o "mózgach elektronowych", czy "sztucznej inteligencji" (nie tacy się dawali wpuszczać w kanał na hasło "piąta generacja"), teraz mówimy o "uczeniu" sieci neuronowych. Takie wytrychy są chwytliwe i z pewnością ułatwiają wyciąganie kasy na badania (niezależnie od rzeczywistych możliwości stosowania ANN). Dopóki sam badacz wie nad czym pracuje, to chyba nie jest groźne. Gorzej, gdy po wyrwaniu pchle ostatniej nóżki (ostatniej wagi w sieci) powie "skacz" i stwierdzi "pchła straciła słuch".

  • #21 12 Sie 2008 09:53
    dir3ctor
    Poziom 27  

    Gorzej jak jej powie "lez", ona bedzie lezec, a on zanotuje prawidlowe dzialanie...

  • #23 18 Sie 2008 00:19
    W.Wojtek
    Specjalista od telefonów

    Chore ziemniaczki z żywymi wirusami..( i szczypiorkiem..)
    A tak poza tematem sieciowym nie do końca jasne jest czy ten amyloid to skutek czy przyczyna tej wrednej choroby..

 
Black Friday do -15%
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME
Ferguson