Skip to content

Latest commit

 

History

History
106 lines (82 loc) · 2.48 KB

File metadata and controls

106 lines (82 loc) · 2.48 KB

Hidden Layers in ML5

De standaard instelling in ML5 is dat er één hidden layer is met 16 neurons. In deze afbeelding zie je dat er 4 inputs zijn en 2 outputs.

const options = { 
    task: 'classification', 
    debug: true   
}
nn = ml5.neuralNetwork(options)

Dit kan je ook zien in het debug venster.




Layers toevoegen

Een neural network kan effectiever worden met een afgestemde configuratie van hidden layers. De juiste afstemming kan je vinden door te testen! Let op dat de configuratie voor classification en regression er iets anders uit ziet.


Classification

In dit voorbeeld maken we 3 hidden layers die elk 32 neurons hebben.

In code ziet dit er als volgt uit. De laatste layer is de output layer. ML5 bedenkt zelf hoeveel output neurons er nodig zijn, gebaseerd op je data. De input layer hoef je helemaal niet mee te geven.

const options = { 
    task: 'classification', 
    debug: true,
    layers: [
        {
            type: 'dense',
            units: 32,
            activation: 'relu',
        }, {
            type: 'dense',
            units: 32,
            activation: 'relu',
        }, {
            type: 'dense',
            units: 32,
            activation: 'relu',
        },
        {
            type: 'dense',
            activation: 'softmax',
        },
    ]
}
nn = ml5.neuralNetwork(options)

In de model summary kan je zien of je instellingen goed zijn gegaan:



Regression

Bij regression moet je opletten dat activation bij de output layer op sigmoid staat. Dit zorgt ervoor dat je output een getal tussen 0 en 1 wordt. Je kan dit ook leeg laten, dan krijg je een getal dat niet wordt afgerond.

const options = { 
    task: 'regression', 
    debug: true,
    layers: [
        {
            type: 'dense',
            units: 32,
            activation: 'relu',
        }, {
            type: 'dense',
            units: 16,
            activation: 'relu',
        },
        {
            type: 'dense',
            activation: 'sigmoid',     // <-- opgelet!
        },
    ]
}
nn = ml5.neuralNetwork(options)



Links