Traducere imagine-la-rețetă cu rețele neuronale convoluționale profunde de Muriz Serifovic Către date

Muriz Serifovic

9 septembrie 2018 · 13 min de citire

În acest articol vom analiza modul de instruire a rețelelor neuronale convoluționale profunde cu Keras pentru a clasifica imaginile în categorii de alimente și pentru a scoate o rețetă potrivită. Setul de date conține> 800.000 imagini alimentare și> 300.000 rețete de la chefkoch.de.

neuronale

În mod grav orice altă zonă afectează bunăstarea umană într-o măsură similară cu nutriția. În fiecare zi sunt publicate nenumărate imagini cu alimente de la utilizatori pe rețelele de socializare; de la primul tort de casă până la cel mai bun fel de mâncare Michelin, bucuria vă este împărtășită în cazul în care un fel de mâncare a fost gătit cu succes.

Este un fapt că oricât de diferit ai fi unul de celălalt, mâncarea bună este apreciată de toată lumea.

Progresele în clasificarea ingredientelor individuale de gătit sunt rare. Problema este că aproape nu există înregistrări editate publice disponibile. Această lucrare tratează problema recunoașterii automate a unui vas de gătit fotografiat și rezultatul ulterior al rețetei corespunzătoare. Distincția dintre dificultatea problemei alese și problemele de clasificare supravegheate anterioare constă în faptul că există suprapuneri mari în felurile de mâncare (cunoscută și ca similaritate înaltă între clase)), deoarece felurile de mâncare din diferite categorii pot arăta foarte asemănător numai în ceea ce privește informațiile despre imagine.

Tutorialul este împărțit în părți mai mici în conformitate cu deviza divizează și cucerește:

Conform stării actuale, cel mai mare set de date în limba germană cu peste 300.000 de rețete va fi răzuit și analizat. Apoi, va fi prezentată o metodă nou dezvoltată, conform cunoștințelor autorului: combinația de recunoaștere a obiectelor sau recunoașterea curții de gătit utilizând rețele neuronale convolutionale (CNN scurt) și căutarea celor mai apropiați vecini (clasificarea Next-Neighbor) într-o înregistrare de peste 800.000 de imagini. Această combinație ajută la găsirea rețetei corecte mai probabilă, deoarece primele 5 categorii ale CNN sunt comparate cu următoarea categorie de vecini cu corelație clasată. Abordări bazate pe corelarea rangului, cum ar fi Kendall Tau măsurați în esență probabilitatea ca două articole să fie în aceeași ordine în cele două liste clasate. Matematic, Kendall Tau este calculat ca

  • N = Numărul total de perechi
  • C = Numărul de perechi concordante
  • D = Numărul de perechi discordante

Conducta exactă arată după cum urmează:

  1. Pentru fiecare rețetă W sunt K numărul de imagini. Pentru fiecare dintre aceste imagini, vectorii de caracteristici sunt extrase dintr-o rețea neuronală de convoluție pre-antrenată, formată pe 1000 de categorii în competiția de recunoaștere a imaginii ILSVRC 2014 cu milioane de imagini. Vectorii caracteristici formează o reprezentare internă a imaginii în ultimul strat complet conectat înainte de Softmax Layer din categoria 1000, care a fost eliminat în prealabil. Acești vectori caracteristici sunt apoi reduși dimensional prin PCA (Principal Component Analysis) de la un N x 4096 matrice la un N x 512 matrice. Ca rezultat, se aleg primele 5 imagini cu cea mai mică distanță euclidiană față de imaginea de intrare (aproximativ cel mai apropiat vecin), adică primele 5 optice, doar din informațiile despre imagine, imagini similare cu imaginea de intrare.
  2. Mai mult, un CNN este instruit cu C numărul de categorii cu imagini cu W Rețete. C a fost determinat dinamic folosind modelarea subiectului și analiza semantică a numelor rețetelor. Ca rezultat, obținem pentru fiecare categorie o probabilitate la care ar putea aparține imaginea de intrare.
  3. Categoriile top-k din CNN (2.) sunt comparate cu categoriile din top-k imagini optic similare (1.) cu corelație Kendall Tau.