Arkitekturen för det neurala nätverket som används i exemplet är ett neuralt nätverk för feedforward med tre lager: ett indatalager, ett dolt lager och ett utdatalager. Ingångsskiktet består av 784 enheter, vilket motsvarar antalet pixlar i ingångsbilden. Varje enhet i inmatningsskiktet representerar intensitetsvärdet för en pixel i bilden.
Det dolda lagret består av 128 enheter, som är helt anslutna till ingångslagret. Varje enhet i det dolda lagret beräknar en viktad summa av indata från indatalagret och tillämpar en aktiveringsfunktion för att producera en utdata. I det här exemplet är aktiveringsfunktionen som används i det dolda lagret den rätade linjära enheten (ReLU). ReLU-funktionen definieras som f(x) = max(0, x), där x är den viktade summan av ingångarna till enheten. ReLU-funktionen introducerar icke-linjäritet till nätverket, vilket gör att det kan lära sig komplexa mönster och samband i data.
Utdatalagret består av 10 enheter, som var och en representerar en av de möjliga klasserna i klassificeringsproblemet. Enheterna i utgångsskiktet är också helt anslutna till enheterna i det dolda skiktet. I likhet med det dolda lagret beräknar varje enhet i utdatalagret en viktad summa av indata från det dolda lagret och tillämpar en aktiveringsfunktion. I det här exemplet är aktiveringsfunktionen som används i utlagret softmax-funktionen. Funktionen softmax omvandlar den viktade summan av indata till en sannolikhetsfördelning över klasserna, där summan av sannolikheterna är lika med 1. Enheten med högst sannolikhet representerar den förutsagda klassen för ingångsbilden.
För att sammanfatta består den neurala nätverksarkitekturen som används i exemplet av ett ingångsskikt med 784 enheter, ett dolt lager med 128 enheter som använder ReLU-aktiveringsfunktionen och ett utdatalager med 10 enheter som använder softmax-aktiveringsfunktionen.
Andra senaste frågor och svar ang Bygga ett neuralt nätverk för att utföra klassificering:
- Är det nödvändigt att använda en asynkron inlärningsfunktion för maskininlärningsmodeller som körs i TensorFlow.js?
- Hur sammanställs och tränas modellen i TensorFlow.js, och vilken roll spelar den kategoriska korsentropiförlustfunktionen?
- Vilken betydelse har inlärningshastigheten och antalet epoker i maskininlärningsprocessen?
- Hur delas träningsdata upp i tränings- och testset i TensorFlow.js?
- Vad är syftet med TensorFlow.js för att bygga ett neuralt nätverk för klassificeringsuppgifter?