De architectuur van het neurale netwerk dat in het voorbeeld wordt gebruikt, is een feedforward neuraal netwerk met drie lagen: een invoerlaag, een verborgen laag en een uitvoerlaag. De invoerlaag bestaat uit 784 eenheden, wat overeenkomt met het aantal pixels in het invoerbeeld. Elke eenheid in de invoerlaag vertegenwoordigt de intensiteitswaarde van een pixel in de afbeelding.
De verborgen laag bestaat uit 128 eenheden, die volledig zijn verbonden met de invoerlaag. Elke eenheid in de verborgen laag berekent een gewogen som van de invoer van de invoerlaag en past een activeringsfunctie toe om een uitvoer te produceren. In dit voorbeeld is de activeringsfunctie die in de verborgen laag wordt gebruikt de functie Rectified Linear Unit (ReLU). De ReLU-functie is gedefinieerd als f(x) = max(0, x), waarbij x de gewogen som is van de invoer naar de eenheid. De ReLU-functie introduceert niet-lineariteit in het netwerk, waardoor het complexe patronen en relaties in de gegevens kan leren.
De uitvoerlaag bestaat uit 10 eenheden, die elk een van de mogelijke klassen in het classificatieprobleem vertegenwoordigen. De eenheden in de uitvoerlaag zijn ook volledig verbonden met de eenheden in de verborgen laag. Net als bij de verborgen laag berekent elke eenheid in de uitvoerlaag een gewogen som van de invoer van de verborgen laag en past een activeringsfunctie toe. In dit voorbeeld is de activeringsfunctie die in de uitvoerlaag wordt gebruikt de softmax-functie. De softmax-functie zet de gewogen som van de invoer om in een kansverdeling over de klassen, waarbij de som van de kansen gelijk is aan 1. De eenheid met de hoogste waarschijnlijkheid vertegenwoordigt de voorspelde klasse van het invoerbeeld.
Samenvattend: de neurale netwerkarchitectuur die in het voorbeeld wordt gebruikt, bestaat uit een invoerlaag met 784 eenheden, een verborgen laag met 128 eenheden die de ReLU-activeringsfunctie gebruiken en een uitvoerlaag met 10 eenheden die de softmax-activeringsfunctie gebruiken.
Andere recente vragen en antwoorden over Een neuraal netwerk bouwen om classificatie uit te voeren:
- Is het nodig om een asynchrone leerfunctie te gebruiken voor machine learning-modellen die worden uitgevoerd in TensorFlow.js?
- Hoe wordt het model gecompileerd en getraind in TensorFlow.js, en wat is de rol van de categorische cross-entropieverliesfunctie?
- Wat is de betekenis van het leertempo en het aantal tijdperken in het machine learning-proces?
- Hoe worden de trainingsgegevens opgesplitst in trainings- en testsets in TensorFlow.js?
- Wat is het doel van TensorFlow.js bij het bouwen van een neuraal netwerk voor classificatietaken?