CodingTrain / CodingTrain/Auto-Encoder-Demo

Refactorings

Aperta
#4 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
JavaScript
Stelle
12
Fork
14
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hi there :)

I wanted to make the code a bit more readable and organize everything in it's own class and file. I iopened pull request #3 for it.

I also added a DataSource class, which can provide training and testing data. I wanted to make an interface for it but yeah, JS does not have interfaces which is sad. The 3 sources i added are: [Mnist](https://github.com/CodingTrain/Auto-Encoder-Demo/pull/3/files#diff-3f564f5401f32a7d6e2f4cd89ac5e13c34f52518a3ea01435b844f3e73ba4e80), [Random](https://github.com/CodingTrain/Auto-Encoder-Demo/pull/3/files#diff-0be83b3e0a3f3593a840957dda9f5f4a6d73299c0ead498f495936cb043e00b9), and [Arbitrary Images](https://github.com/CodingTrain/Auto-Encoder-Demo/pull/3/files#diff-d1e391fdd5d710572f4958143f8bca131f71ba6b82feca4d844505f30b82a4be). The last one takes what ever is in the images folder, converts it an 28*28 greyscale images and uses it as test and training data.

I also expanded the [NN](https://github.com/CodingTrain/Auto-Encoder-Demo/blob/d1369b08857136a734951e7909da7750ead5c7b4/model.js) by adding more layers to it. It is now divided into an encoder and decoder. It can also save it's state so you don't have to retrain it everytime.

The [ImageTransformer](https://github.com/CodingTrain/Auto-Encoder-Demo/blob/d1369b08857136a734951e7909da7750ead5c7b4/ImageTransformer.js) takes an array of normalized pixel images and saves it to disk. It can also be used to save the encoded images from the NN (you just need to adjust the width and the height of the images which shall be saved to disk, e.g.: `transformer.toImages(model.encode(testData, 'enc', 2, 16));`)

The rest should be pretty much the same, just a bit more organized :) 🚂

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia esaminando la pull request #3, che contiene il refactoring proposto e le implementazioni di DataSource aggiunte. Leggi model.js e ImageTransformer.js, insieme alle sorgenti Mnist, Random e Arbitrary Images indicate nell’issue. Il lavoro è completato quando le modifiche sono organizzate nelle proprie classi e nei propri file, preservando il comportamento descritto di addestramento, test, codifica e salvataggio delle immagini.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
computer-vision, machine-learning
Tipo di issue
Refactoring
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
20/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.