Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sztuczna inteligencja i php, jeśli się da to jak., Informacje potrzebne do projektu na zaliczenie
tabassccoo
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.08.2007

Ostrzeżenie: (0%)
-----


Mam pewien projekt do zrobienia ze sztucznej inteligencji. Technologia nie ma znaczenia, ale najpewniej się czuję w językach webowych. Stąd moje pytanie czy się da. Program ma "rozmawiać" z potencjalnym klientem w celu ustalenia pewnego ostatecznego faktu. Nie będę wnikał w szczegóły. Nie jestem aż tak zaawansowany w php, żeby znać wszystkie jego możliwości. Dlatego się zastanawiam czy da się za pomocą php właśnie zrealizować tego typu aplikację internetową. Jeśli tak to o czym powinienem poczytać, jakimi bibliotekami się zainteresować, jakie rozwiązania mogą być pomocne.

Nie chcę nikomu zlecać tego projektu, bo mam zamiar zrobić go sam - stąd też ten temat.

Z góry dzięki za wszelkie informacje.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
blooregard
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Coś w ten deseń?

http://artykuly.zyxist.com/czytaj.php/piszemy_chatbota

Go to the top of the page
+Quote Post
tabassccoo
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.08.2007

Ostrzeżenie: (0%)
-----


Chatbot może być. A żeby bardziej nakreślić problem opisze troszkę jednak działanie aplikacji. Program po rozmowie z klientem - serii kluczowym pytań, ma określić najbardziej prawdopodobną usterkę załóżmy telefonu komórkowego. Literatury już się naczytałem. O Teście Turinga też coś wchłonąłem, o systemach ekspertowych, sieciach neuronowych etc. Ale większość rozwiązań jest w innych językach z naciskiem na C/C++. Artykuł który mi podałeś jest oparty na kodzie języka D, o którym wiem tylko tyle że jest (IMG:style_emoticons/default/wstydnis.gif) . Artykuł oczywiście dokładnie przeczytam i dzięki Ci za niego, a jakieś inne propozycje?

I kolejne pytanie czy da się w php zaimplementować takie struktury danych jak listy? A co z drzewami decyzyjnymi - bo te akurat mogą mi się przydać.
Go to the top of the page
+Quote Post
Uriziel01
post
Post #4





Grupa: Zarejestrowani
Postów: 307
Pomógł: 37
Dołączył: 9.11.2010
Skąd: Zielona Góra

Ostrzeżenie: (0%)
-----


A może zrób jakiś prosty algorytm A* z podążaniem za 'graczem', wyglądało by to jak gdyby 'komputer' zawsze chciał dotrzec na Twoja aktualna pozycję. jest to 100x prostsze, tylko nie jestem pewny czy jest to dostatecznie blisko pojęcia AI (IMG:style_emoticons/default/smile.gif)

EDIT:
Po przemysleniu, no to niestety to jest chyba zbyt czysto algorytmicznie rozwiązanie.

Ten post edytował Uriziel01 22.11.2011, 14:36:40
Go to the top of the page
+Quote Post
blooregard
post
Post #5


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Implementacja rozwiązania nie zależy od konkretnego języka (IMG:style_emoticons/default/wink.gif)

Cytat
I kolejne pytanie czy da się w php zaimplementować takie struktury danych jak listy? A co z drzewami decyzyjnymi - bo te akurat mogą mi się przydać.


Oczywiście:

http://pl2.php.net/spl
http://pl2.php.net/manual/pl/class.spldoublylinkedlist.php

Cytat
Program po rozmowie z klientem - serii kluczowym pytań, ma określić najbardziej prawdopodobną usterkę załóżmy telefonu komórkowego.

Czyli chodzi o system ekspercki (ekspertowy).

To może zacznij od tego, to da Ci podstawy do reszty materiałów do poszukania w necie:

http://pl.wikipedia.org/wiki/System_ekspertowy


Go to the top of the page
+Quote Post
skowron-line
post
Post #6





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Ja pisałem prace inż ze sztucznej inteligencji
http://www.skowronline.pl/ai/

Generalnie możesz użyć każdej technologi bo chodzi tam o rozwiązywanie działań matematycznych.

Edit. Przypomniało mi się
tytuł to "Problem klasyfikacji na przykładzie kwiatu irysa"

Ten post edytował skowron-line 22.11.2011, 15:19:32
Go to the top of the page
+Quote Post
erix
post
Post #7





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Do systemów ekspertowych jest dostępny gotowy lib na phpclasses.org. [;
Go to the top of the page
+Quote Post
tabassccoo
post
Post #8





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.08.2007

Ostrzeżenie: (0%)
-----


Dzięki wielkie za wszelkie linki i podpowiedzi. Jeśli ktoś ma coś jeszcze śmiało podrzucać. I tak zapoznanie się z powyższymi trochę czasu mi zajmie. Po przejrzeniu materiałów i pierwszych próbach na pewno pojawią się bardziej sprecyzowane pytanie z mojej strony. Póki zabieram się za wchłanianie nowej wiedzy.

Skowron - Twój link nie działa.

Ten post edytował tabassccoo 22.11.2011, 15:30:26
Go to the top of the page
+Quote Post
erix
post
Post #9





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Implementacja systemów ekspertowych nie będzie problemem, bo to tego są odpowiednie biblioteki; oczywiście kolosy w stylu Matlaba coś takiego posiadają.

U siebie - trochę się naczytasz, bo kluczowe nie są działające systemy, tylko przygotowanie danych uczących.

Wniosek: nie ominie Cię najpierw analiza problemu i próba przyporządkowania aksjomatów, z których będziesz korzystać w celu skonstruowania reguł wag dla sieci. Więc nie zabieraj się od d...olnej strony, tylko najpierw siadaj z kartką i rozpatruj przypadki, zbieraj dane, które przydadzą się do rozmów, wyłapuj słowa-klucze.

Potem wpuszczasz to do sieci neuronowej, uczysz np. metodą LVQ (http://wekaclassalgos.sourceforge.net/) i dostajesz sieć neuronową z ustalonymi wagami.

Zajmij się analizą, implementacja, to już szczegół.
Go to the top of the page
+Quote Post
thek
post
Post #10





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Klasyfikacja? Zastanawiałbym się więc w tym przypadku także nad systemami rozmyto-neuronowymi, ponieważ wtedy problem wag "rozwiązuje się sam" poprzez fakt nauki takiej sieci. Ty dostarczasz jej dane wejściowe i wyjściowe, a on na tej podstawie sam modyfikuje wagi węzłów, a co ciekawe, potrafi "wnioskować" już przy niepełnej ilości (uszkodzonych, brakujących) danych wejściowych, co akurat nie każdy system potrafi. A takimi danymi przecież będziesz dysponował (IMG:style_emoticons/default/smile.gif) Na wejściu zestaw odpowiedzi, a na wyjściu konkretny numer rozwiązania (lub zestaw rozwiązań z różnym prawdopodobieństwem). Wrzucasz w system, ustawiasz ileś iteracji lub poziom błędu i system się uczy. Potem już tylko podstawiasz dla testów jakies z kosmosu zestawy odpowiedzi i patrzysz co wypluje system na wyjściu i jak ma się to do prawidłowego rozwiązania.A sam wspomniałeś, że teorię z neuronów już zacząłeś zgłębiać. Od razu zaznaczam, że logika rozmyta jest nieco zakręcona. Jest uogólnieniem logiki Boola dla zbiorów. Tu już nie masz bowiem stanów 0 i 1 ale cały zakres od 0 do 1 włącznie, czyli choćby 0.9 jako odpowiednik "wysoce prawdopodobny" lub 0.01 dla "niezwykle mało prawdopodobny". Własnie dlatego tystemy te służą do klasyfikacji, gdyż na wyjściu masz wyniki w stylu "0.9 prawdopodobieństwa dla rozwiązania A, 0.25 dla B i 0.01 dla C", a nie jak zazwyczaj, że coś "jest rozwiązaniem A", ale nie wiemy dokładnie jak bardzo ta informacja jest pewna.

EDIT: Jeśli chcesz wiedzieć na ten temat wiele rzeczy w stylu "kompendium", to polecam zajrzeć tu oraz przyjrzeć pozycjom 4 i 6 (zwłaszcza ta druga), bo tam masz właśnie ów problem klasyfikacji ładnie opisany (w 6 na podstawie wspomnianego przez skowrona irysa). Co do ludzi to osoby w stylu Rutkowski, Cpałka czy Nowicki lub Starczewski czyli osoby związane z "polską sceną AI" to byli moi wykładowcy/ćwiczeniowcy, co do których wiem, że są w tym co robią dobrzy i potrafią rozwalić temat. A poza tym spoko kolesie.
Go to the top of the page
+Quote Post
erix
post
Post #11





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




~thek, a o czym ja napisałem? (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
thek
post
Post #12





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Systemy ekspertowe czy sieci neuronowe to nie do końca to samo co rozmyto-neuronowe. Uwierz osobie która specjalizację ze sztucznej inteligencji na studiach robiła. To ciutkę inna matematyka, ponieważ tam zachodzi oprócz uczenia jeszcze kilka innych dodatkowych rzeczy w oparciu o zbiory rozmyte, które służą między innymi do zgrupowania i klasyfikacji danych. Jest to oparte o sieci neuronowe, owszem, ale implementacja jest nieco bardziej rozszerzona, lecz w wyniku otrzymuje się lepsze wyniki niż z wykorzystaniem samych sieci. A co ciekawsze, zazwyczaj przy mniejszej ich wielkości.
Go to the top of the page
+Quote Post
ZenekN
post
Post #13





Grupa: Zarejestrowani
Postów: 419
Pomógł: 5
Dołączył: 7.08.2012

Ostrzeżenie: (0%)
-----


Witam dzięki za rozjaśnienie tematu AI, zastanawiam się z jakiej bazy danych korzystać do wykorzystania tej technologii i jak może wyglądać struktura takiej bazy
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 18:46