Esiste un modo semplice per calcolare i pesi percettrici sulla base di un grafico di classificazione?


8

Sto studiando per un esame AI e sto cercando un modo migliore per risolvere il seguente problema:

Il grafico mostra un problema di classificazione nel quadrato dell'unità , in cui la classe A è indicata dall'area grigia nella figura (esclusi i punti sulle linee tratteggiate) e la classe B si verifica diversamente.[0,1]2

Il grafico mostra un problema di classificazione nel quadrato dell'unità [0,1] ^ 2

Per risolvere questo problema, è necessario costruire 2 percettroni: entrambi i percettroni emettono 1 se l'ingresso si trova nell'area grigia, e almeno uno dei perctroni emette 0 altrimenti.

Esistono 3 modi per trovare pesi appropriati per input e errori che conosco:

  1. Prova ed errore
  2. Algoritmo di apprendimento Perceptron (che coinvolge pesi casuali, tasso di apprendimento, epoche multiple)
  3. Modo geometrico di trovare i vettori dei pesi (che implica la ricerca di una linea ortogonale alla funzione di confine)

Tutti richiedono molto tempo quando lo fai con solo carta e penna.

Esiste un modo semplice per calcolare / trovare pesi percettrici sulla base di un grafico di classificazione?

Risposte:


2

pensa che potresti fraintendere in qualche modo il punto della domanda. l'intento della domanda d'esame sembra essere: "quali pesi percettivi positivi porterebbero a questo problema di classificazione". la ragione di ciò è che non è possibile eseguire tutti i passaggi di un algoritmo di lunga durata durante un esame o persino i compiti a casa.

quindi tornando alla teoria percettrone [che ha diversi decenni] il punto è che è un classificatore basato su funzioni linearmente separabili , cioè disuguaglianze lineari . per il secondo caso ciò si traduce in una semplice geometria algebrica. in altre parole, il percettrone può implementare un certo numero di disuguaglianze lineari per tentare di creare la classificazione. qui è dato comen=2. quindi la domanda probabilmente intesa è "quali sono due disuguaglianze lineari alle quali converrebbe un buon algoritmo percettrone per questo problema".

quindi sembra ridurre per trovare i coefficienti di:

y<m1X+B2

y>m2X+B2

quindi usa l'algebra geometrica di base per determinare i coefficienti m1,m2,B1,B2che funzionano per il diagramma sopra. sulla base del diagramma non esiste una soluzione perfetta, ma una "buona". (nota anche che le equazioni devono solo funzionare all'interno[0,1]2.)

intuitivamente, è anche in qualche modo implicito da questa analisi perché i percettroni sono così limitati. perché anche in 2d è facile disegnare problemi di classificazione per i quali non esiste una soluzione linearmente separabile (forme concave, forme con buchi all'interno, eccetera). Alcuni suggerimenti di questo si vedono nel notare che la forma sopra è leggermente concava). questa osservazione, arricchita in modo più sofisticato / formale / matematico / rigoroso in [1], all'epoca suscitò molte controversie e fu un importante dibattito nella storia dell'IA, e apparentemente scoraggiò alcuni scienziati dall'investigare più sofisticati ha simulato modelli di reti neurali per qualche tempo, anche se Minsky ha negato con enfasi che era il suo intento e ha detto che il suo lavoro è stato frainteso.

[1] Perceptrons, di Minsky & Papert


ps questa tecnica sembra corrispondere al punto (3) sopra, trovando i pesi tramite tecniche geometriche, ma non è veramente "dispendiosa in termini di tempo" a meno che non sia un oggetto complesso (ad esempio un poligono a più facce ecc.)
vzn

in altre parole, trovare linee di confine ortogonali geometriche è davvero "semplice" nel secondo caso perché si riduce alla geometria algebrica, ma non in dimensioni superiori.
vzn,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.