francescomecca.eu/_posts/_site/2016-10-11-machine-learning-PARTE3.html

45 lines
3 KiB
HTML
Raw Normal View History

2018-03-27 04:26:23 +02:00
<h2 id="riconoscimento-delle-immagini">Riconoscimento delle immagini</h2>
<p>Il machine learning viene utilizzato anche per il riconoscimento delle immagini.
La tipologia di rete neurale utilizzata per questa applicazione è chiamata rete neural a convoluzione ( <strong>convolutional neural networks</strong>), abbreviata CNN.</p>
<p>Innanzitutto consideriamo che ogni immagine può essere codificata come una matrice di valori</p>
<p><img src="/wp-content/uploads/2016/8.jpg" alt="pixel" /></p>
<p>Vediamo ora quali sono le operazioni compiute da una <strong>CNN</strong> per riconoscere delle immagini.</p>
<h4 id="convoluzione">Convoluzione</h4>
<p>Durante la fase di apprendimento, la rete neurale analizza moltissime immagini (categorizzate) utilizzando dei “filtri”, ovvero delle funzioni che mescolate allinput originale permettono di evidenziare dei pattern nellimmagine.
Questi pattern corrispondono alle caratteristiche proprie di un oggetto (quali possono essere ad esempio per un uccello il becco, le piume, le ali) e nel caso queste sono presenti, possiamo riconoscere limmagine.</p>
<p>In questo esempio limmagine di Wally é mescolata (loperazione si chiama <strong>convoluzione</strong>) con un filtro “a cerchio” che risponde molto bene a caratteristiche come quella di possedere degli occhi.</p>
<p><img src="/wp-content/uploads/2016/bluefilter.png" alt="waldoblue" /></p>
<p>La <strong>convoluzione</strong> é unoperazione che ha la proprietà di essere indipendente dalla posizione. Non importa la posizione degli occhi, quando applichiamo la <strong>convoluzione</strong> su unimmagine con un filtro “a cerchio” notiamo che gli occhi sono presenti.</p>
<h4 id="subsampling">Subsampling</h4>
<p>Ogni segnale contiene del “rumore”, ovvero degli elementi che la allontanano dal comportamento ideale.</p>
<p><img src="/wp-content/uploads/2016/ideal.jpg" alt="ideal" /></p>
<p><img src="/wp-content/uploads/2016/real.jpg" alt="real" /></p>
<p>Attraverso il subsampling possiamo ridurre il rumore e rendere il nostro algoritmo meno suscettibile a queste piccole variazioni; benché limmagine abbia una risoluzione minore, i pattern rimangono.</p>
<p><img src="/wp-content/uploads/2016/sub.png" alt="waldosub" /></p>
<h4 id="connessione-completa">Connessione completa</h4>
<p>Alla fine dellanalisi tutte le caratteristiche estrapolate vengono considerate nellinsieme e in questo modo possiamo capire a quale categoria appartiene limmagine.</p>
<p>Questo procedimento a livello algoritmo si esplicita con una connessione completa fra tutti i nodi della rete neurale che possono poi restituire loutput (probabilità che limmagine appartenga ad una determinata categoria).</p>
<h4 id="fase-di-rinforzo">Fase di rinforzo</h4>
<p>Durante il training é presente unultima fase (o strato), chiamato più propriamente <strong>loss layer</strong>. Questo strato provvede a dare un <strong>feedback</strong> alla rete neurale analizzando loutput in relazione ai dati di partenza (ovvero le immagini già categorizzate).</p>