Una IA chi connoschet is colores
Calicunu s'at a regordare chi in su nùmeru 5 de sa revista de Ite Mi Contas apo publicadu un'esempru de IA chi imparaiat a fàghere sa summa de duos nùmeros. Nd'apo faeddadu fintzas in custu artìculu. Impreende sa pròpiu istrutura pro sa retza neurale, apo preparadu un'esempru de IA chi imparat a connòschere is colores e dd'apo fatu una bella interfache, de manera chi totus dda potzant proare sena dèpere impreare cumandos iscritos e cosas de aici.
Si podet proare inoghe e nde podides iscarrigare su còdighe dae inoghe.
Comente podides bìdere, s'interfache est simpre meda: cando sa retza finit s'annestru, podides seberare unu colore cale si siat e pedire a sa retza de nàrrere ite est. Fatu custu, podides seberare si at intzertadu o no, e, si est isballiadu, pònnere boisàteros etotu su colore giustu. Su colore chi ponides agiudat sa retza a sighire a imparare e a pagu a pagu si diat dèpere fàghere semper prus pretzisa.
A su contràriu de sa summa, chi est un'operatzione chi podet fàghere su protzessore de manera direta, custu est un'impreu bonu de s'IA ca su de connòschere is colores est unu protzessu chi non benit bene meda a fàghere cun unu càrculu matemàticu.
No apo a torrare a ispricare comente si fràigat e annestrat sa retza neurale: pro custu bos imbiu a custu artìculu e a sa revista, nùmeros 2 e 5.
Andende a castiare su còdighe, bidimus in /App/Controllers/ColorsController.js lìnia 42 chi sa prima cosa chi si faghet, a pustis de carrigare su documentu cun sa lìngua seberada, est a creare sa retza e incumentzare s'annestru. Sa retza tenet unu totale de 50 neurones partzidos in 3 pro s'intrada (is cumponentes de colore RGB), 24 e 12 pro is duos pìgios intermèdios chi serbint a afinare sa classificatzione e 11 pro s'essida: unu pro onni classe de colore (birde, ruju, grogu, asulu, etc). Cadaunu de is 11 neurones de essida in s'agabbu de su càrculu at a cuntènnere sa probabilidade chi su colore chi ddi currispondet siat su giustu. Pro nàrrere, su colore RGB = 236, 205, 153 ( unu clàssicu "colore de cane fuende") diat pòdere èssere grogu cun una probabilidade de su 65,8% o marron cun probabilidade de su 34,2%, sende classificadu a sa fine comente a "grogu". Custu ca intra is 11 classes de colore non ddoe est unu "beige" e duncas tocat a dd'incasciare in su chi tenimus.
S'annestru impreat una sèrie de datos giai prontos chi s'agatant /App/Datasets/ColorDataset.js pondende·ddos in òrdine casuale, agiunghende variatziones pro tènnere balores in prus (data augmentation) e is datos de is sugerimentos de s'impitadore. In retzas mannas s'annestru non si faghet ònnia borta chi s'aviat su programma, ma inoghe est còmodu pro bìdere chi fintzas comente ponimus in òrdine is esempros pro annestrare sa retza e cantas bortas torramus a fàghere su protzessu (nùmeru de èpocas) faghet sa diferèntzia in sa pretzisione de is càrculos. Podimus bìdere difatis, in su registru a manu dereta de sa pàgina, chi sa pertzentuale de colores intzertados andat dae su 53% a prus de su 70%, acostende·si a su 100% cando càrrigat is datos de is sugerimentos nostros.
Amus duncas torradu a bìdere su cuntzetu de imparu automàticu: is pesos e is bias de sa retza neurale s'arràngiant a pagu a pagu finas a cando a una sèrie de balores in intrada non currispondet una tzerta sèrie de balores in essida: in custu esempru is balores in intrada sunt is nùmeros RGB e s'essida sunt is classes de colore. Pro nàrrere, unu colore RGB 255,0,0 depet èssere amarolla assotziadu a su ruju cun probabilidade (agiumai) de su 100%. Ònnia borta chi cussigiamus unu colore nou, sa retza arràngiat pagu pagu pesos e bias pro adatare is rispostas benidora. Si faghimus custu unu nùmeru artu de bortas, sa retza si faghet prus pretzisa. Pro chie bolet pònnere manu a su còdighe, ddoe sunt maneras pro dda megiorare ancora chi apo cussigiadu in su documentu readme.md chi agatades in Gitlab.
Cummenta