Reti neurali: non sono possibili soluzioni per i dati di test?

4

Quindi ci sono due modi per insegnare una rete neurale per quanto ne so.

  1. Fornisci all'IA i dati di test e la soluzione corretta al problema. Dopo un po 'di tempo la rete sarà in grado di ottenere le risposte giuste.

    Esempio: riconoscimento della scrittura a mano. Fornisci alla rete immagini e comunica quali numeri rappresentano.

  2. Hai lasciato che la rete prendesse le soluzioni da sola. L'IA esegue un'azione e ottiene un punteggio. L'IA cercherà di ottenere un punteggio più alto ogni volta.

    Esempio: ricerca del percorso. Fai andare l'intelligenza artificiale e spiega come ha funzionato dopo che si è schiantato contro un muro.

Ma c'è una terza via?

Ad esempio, se vuoi creare una IA di scacchi, il secondo approccio è il più adatto, ma come valuti le azioni dell'IA? È davvero difficile dire se un giocatore fa bene all'inizio del gioco e l'esito dipende pesantemente dall'azione del suo avversario.

Quello che pensavo era forse mettere l'IA in certe situazioni del gioco, per esempio un trade non uniforme e ripetendolo fino a quando l'IA capisce che è la cifra degli scacchi che vale di più.

Ci sono altre soluzioni o le IA di scacchi non sono nemmeno costruite su reti neurali?

    
posta Post Self 02.05.2016 - 19:07
fonte

2 risposte

3

Il primo approccio è chiamato apprendimento supervisionato e il secondo è chiamato apprendimento di rinforzo. Ci sono due modi in cui puoi usare una rete neurale con l'apprendimento di rinforzo per gli scacchi: come una rete politica o come rete di valori:

  • una rete di policy deciderà quale mossa giocare,
  • mentre una rete di valori valuterebbe solo l'utilità di una posizione di bordo e potrebbe essere utilizzata con minimax o MCTS (ricerca dell'albero Monte-Carlo).

Allenare una rete neurale usando l'apprendimento di rinforzo è semplice (se lento) - se una mossa deriva da una partita vincente, è buona, se proviene da una partita persa, è brutta.

Leggi su AlphaGo se sei interessato. Recentemente ha sconfitto il miglior giocatore umano in una partita più difficile degli scacchi. Utilizza entrambi i tipi di reti neurali, criteri e valori, oltre a MCTS.

    
risposta data 03.05.2016 - 06:41
fonte
0

Le reti neurali sono in grado di risolvere un particolare tipo di problema. Sono fondamentalmente meccanismi che mappano particolari pattern di origine a particolari pattern di target. Quando viene fornito un set di input di nodi "on" o "off" restituiscono un set di output di nodi che sono "on" o "off". (Solitamente si utilizza una sorta di valore di soglia specificato come "on".

Ciò si adatta molto bene a compiti come il riconoscimento del testo. Dare la rete neurale in input pattern (una bitmap) e fornisce un output (una sorta di rappresentazione binaria della lettera).

Per addestrare una rete, generalmente gli dai un set di pattern di origine e gli obiettivi previsti. I metodi di allenamento generalmente partono dal target e spingono indietro, modificando i collegamenti per rendere più probabile la rete a generare il target atteso.

Dopo l'allenamento, puoi inviare gli input di rete per i quali non è stato addestrato e produrrà un output. Se tutto va bene, questo dovrebbe essere significativo. Ad esempio, se lo hai addestrato per generare "A" quando le bitmap fornite con la lettera sono state rese in un numero di font, dovrebbe mostrare "A" quando viene mostrato qualcosa in un font su cui non è stato addestrato.

Quindi non ci sono davvero due modi per allenare le reti. L'intero punto di utilizzo di una rete neurale è che può rispondere a cose su cui non l'hai allenato. Se conosci in anticipo tutte le mappature degli ingressi alle uscite, una rete neurale non è l'opzione migliore.

Per quanto riguarda gli scacchi, il gioco non è un compito adatto alle reti neurali. Dato un consiglio sorgente, non hai davvero un modello finale su cui puoi allenarlo. Non si può davvero dargli il "migliore" obiettivo come per una data posizione di scacchi, quale mossa è "migliore" è quasi sempre una questione di dibattito. potresti essere in grado di utilizzare una rete neurale per segnare le schede (cioè mappare una posizione della scheda a un punteggio numerico), ma continuerai a utilizzare il tradizionale minimax per giocare al gioco attuale.

    
risposta data 02.05.2016 - 20:02
fonte

Leggi altre domande sui tag