Artificial Intelligence ή Machine Learning?

Ξεκίνησε από itt, 12 Ιουλ 2019, 10:24:00 ΠΜ

« προηγούμενο - επόμενο »

itt

Παράθεση από: evry στις 11 Ιουλ 2019, 11:13:44 ΜΜ
Κοιτώντας το πρόγραμμα σπουδών στο Χαροκόπειο από την μια είναι παρωχημένο (Τεχνητή Νοημοσύνη σε prolog)

Εδώ να αναφέρουμε ότι αυτό που έγραψες δεν είναι ορθό. Η Prolog και το Cyc είναι οι πιο σοβαρές προσπάθειες που στοχεύουν σε AI (ό,τι σημαίνει αυτό δεδομένου πως είναι υπερβολικά debatable κατα πόσον το concept του AI είχε νόημα). Είναι το πιο φυσικό να διδάξεις ένα εισαγωγικό μάθημα σε AI, με τη χρήση της Prolog.

evry

#1
@itt
Μου κάνει εντύπωση που εκφράζεις αυτή την άποψη. Θεωρείς ότι η prolog δεν είναι παρωχημένη όταν όλη η κοινότητα του AI σήμερα έχει μετακινηθεί στο Machine learning και σε γλώσσες όπως Python, R, Matlab κλπ?
Όσο σοβαρή προσπάθεια και να είναι παραμένει πάντως παρωχημένο, δεδομένου ότι όλα σχεδόν τα μαθήματα AI που υπάρχουν αυτή τη στιγμή σε πλατφόρμες όπως Coursera, EDX αλλά και στα πιο γνωστά πανεπιστήμια γίνονται σε Python, R ή Matlab. Κάποια γίνονται ακόμα και σε C++ (Υπάρχουν βιβλιοθήκες όπως o ILOG Solver (το αγόρασε η IBM)). Επίσης το τι είναι φυσικό είναι σχετικό, στην άλλη πλευρά του Ατλαντικού δούλευαν κυρίως σε συναρτησιακές γλώσσες (Lisp).
Αυτή τη στιγμή πάντως αυτό που λέγαμε AI έχει γίνει πλέον machine learning και σε αυτόν τον χώρο δεν υπάρχει η prolog ούτε για αστείο, γιατί έχει άλλη στοχοθεσία ως γλώσσα.
Άρα νομίζω ότι ότι θα ήταν καλύτερο να υπήρχε στο πανεπιστήμιο ένα μάθημα machine learning σε matlab ή Python παρά ένα μάθημα AI σε PROLOG.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

itt

#2
Παράθεση από: evry στις 12 Ιουλ 2019, 03:32:26 ΜΜ
@itt
Μου κάνει εντύπωση που εκφράζεις αυτή την άποψη. Θεωρείς ότι η prolog δεν είναι παρωχημένη όταν όλη η κοινότητα του AI σήμερα έχει μετακινηθεί στο Machine learning και σε γλώσσες όπως Python, R, Matlab κλπ?
Όσο σοβαρή προσπάθεια και να είναι παραμένει πάντως παρωχημένο, δεδομένου ότι όλα σχεδόν τα μαθήματα AI που υπάρχουν αυτή τη στιγμή σε πλατφόρμες όπως Coursera, EDX αλλά και στα πιο γνωστά πανεπιστήμια γίνονται σε Python, R ή Matlab. Κάποια γίνονται ακόμα και σε C++ (Υπάρχουν βιβλιοθήκες όπως o ILOG Solver (το αγόρασε η IBM)). Επίσης το τι είναι φυσικό είναι σχετικό, στην άλλη πλευρά του Ατλαντικού δούλευαν κυρίως σε συναρτησιακές γλώσσες (Lisp).
Αυτή τη στιγμή πάντως αυτό που λέγαμε AI έχει γίνει πλέον machine learning και σε αυτόν τον χώρο δεν υπάρχει η prolog ούτε για αστείο, γιατί έχει άλλη στοχοθεσία ως γλώσσα.
Άρα νομίζω ότι ότι θα ήταν καλύτερο να υπήρχε στο πανεπιστήμιο ένα μάθημα machine learning σε matlab ή Python παρά ένα μάθημα AI σε PROLOG.

Το ότι είναι πλέον πιο εμπορικό (και ergo καλύτερο για να βρεις funding) το να ταυτίζεις το AI με το ML δεν σημαίνει τίποτα. Η ακαδημαϊκή κοινότητα δυστυχώς προσανατολίζεται στο FOTM στις δημοσιεύσεις τους, κάτι που δεν είναι χαρακτηριστικό μόνο του comp.sci, πχ στη φυσική είναι τάξης μεγέθους χειρότερο φαινόμενο.

Οι connectionists υπάρχουν εδώ και αρκετές δεκαετίες, αλλά το stalemate που υπήρξε στο συγκεκριμένο subdiscipline από την περίοδο του Perceptron κράτησε 2 AI winters. Ξαφνικά έγιναν πάλι σέξυ, γιατί απλούστατα έχουμε το hardware για να τρέξουν αυτοί οι αλγόριθμοι σε ρεαλιστικά workloads και timeframes. Σε καμία περίπτωση δεν πιστεύω ότι η/το Prolog/Symbolic Programming είναι παρωχημένη προσέγγιση. Ο IBM Watson χρησιμοποιεί Prolog για να κάνει pattern matching πάνω σε natural language parse trees και μιλάμε για ένα QnA υπολογιστικό σύστημα με μεγάλη εμπορική επιτυχία. Επίσης τίποτα δεν εμποδίζει μελλοντικά τη χρήση Deep Learning αλγορίθμων στην Prolog, βασικά μια τέτοια υβριδική προσέγγιση φαίνεται και αρκετά λογική.

Θα κάνω link και το επιστημονικό άρθρο του Pearl που διατυπώνει τη θέση ότι το ML δεν μπορεί να είναι η βάση για να επιτύχουμε Strong AI:
https://arxiv.org/pdf/1801.04016.pdf

Kαι ένα ενδιαφέρον άρθρο του Michael Jordan από το Berkley, που υποστηρίζει αυτό που υποπτεύονται όλοι, ότι είναι πιθανό να ξαναδούμε τη symbolic προσέγγιση να γίνεται FOTM:

https://medium.com/@mijordan3/artificial-intelligence-the-revolution-hasnt-happened-yet-5e1d5812e1e7

Γενικά είναι πολύ ενδιαφέρουσα συζήτηση, μπορούμε να τη συνεχίσουμε σε κάποιο πιο appropriate thread.

evry

@itt
εδώ είναι το νέο thread που ζήτησες.
Λοιπόν νομίζω κατάλαβα τι λες, διόρθωσέ με αν κάνω λάθος. Ότι το machine learning είναι μια υποπεριοχή της Τεχνητής Νοημοσύνης, και ναι οκ μπορεί να κάνει μερικά πράγματα καλά κυρίως ότι έχει να κάνει με pattern recognition όμως δεν είναι Τεχνητή Νοημοσύνη με την έννοια ότι μπορεί κάποιος να φτιάξει έτσι μια μηχανή που να σκέφτεται "γενικά".
Αυτο μπορεί να γίνει με την Prolog η οποία δεν είναι μια απλή γλώσσα αλλά κρύβει μέσα μια ολόκληρη θεωρία.
οκ το παρωχημένη ήταν μια άστοχη έκφρασή μου, μάλλον το αντιδημοφιλής ίσως είναι καλύτερη.
Όσο για τα νευρωνικά δίκτυα υπάρχει και ο αστικός μύθος ότι για τον "χειμώνα" που ήρθε έφταιγαν ο Minsky και ο Papert :

Αντιγράφω το σχετικό κείμενο από την wikipedia:
Neural network research stagnated after the publication of machine learning research by Marvin Minsky and Seymour Papert[14] (1969). They discovered two key issues with the computational machines that processed neural networks. The first issue was that single-layer neural networks were incapable of processing the exclusive-or circuit. The second significant issue was that computers were not sophisticated enough to effectively handle the long run time required by large neural networks. Neural network research slowed until computers achieved greater processing power. Also key in later advances was the backpropagation algorithm which effectively solved the exclusive-or problem (Werbos 1975)

Μετά από αυτά που έγραψαν οι Minsky και Papert μειώθηκαν πολύ τα χρήματα για έρευνα στον τομέα αυτό (έτσι λένε  :-\). Ίσως αυτό είναι ένα καλό παράδειγμα που δείχνει γιατί δεν πρέπει να χρησιμοποιούμε ως επιχείρημα την επίκληση στην αυθεντία.

Όσον αφορά την Prolog νομίζω ότι χρειάζεται μια μηχανή με ιδιαίτερη αρχιτεκτονική που να ταιριάζει πιο πολύ στο υπολογιστικό (λογικό) μοντέλο της Prolog, ώστε μια μέρα να δούμε κάτι σημαντικό.

Πολύ ενδιαφέροντα τα άρθρα που προτείνεις.

ΥΓ. Τυχαίνει να έχω γράψει αρκετό κώδικα σε Prolog και θυμάμαι ότι όταν το πρόγραμμα μεγάλωνε επικίνδυνα τα πράγματα ζόριζαν πολύ. Ένα πρόγραμμα που είχα φτιάξει κάποτε για να βγάζει το ωρολόγιο πρόγραμμα έπαιρνε κάπου μισή ώρα ή παραπάνω. Νομίζα ότι είχα κάνει καλή δουλειά μέχρι που ένα συμφοιτητής μου μου έδειξε το δικό του σε C++ που έκανε 5 λεπτά. Νομίζω από τότε μίσησα την Prolog      (Δεν θυμάμαι καλά τους χρόνους, ίσως να ήταν παραπάνω, αλλά είχαν μεγάλη διαφορά). Φυσικά θα μπορούσε κάποιος να πει ότι θα μπορούσε να γίνει γρήγορα στην Prolog ίσως με μερικά cuts ακόμα αλλά εγώ δεν μπόρεσα να το κάνω:-[
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr