Begrænset Boltzmann-maskine ( eng. restricted Boltzmann-maskine ), forkortet som RBM , er en type generativt stokastisk neuralt netværk , der bestemmer sandsynlighedsfordelingen på inputdataprøver.
Den første begrænsede Boltzmann-maskine blev bygget i 1986 af Paul Smolensky under navnet Harmonium [1] , men fik først popularitet efter Hintons opfindelse af hurtige indlæringsalgoritmer i midten af 2000'erne.
Maskinen fik dette navn som en modifikation af den sædvanlige Boltzmann-maskine , hvor neuroner blev opdelt i synlige og skjulte, og forbindelser er kun tilladt mellem neuroner af forskellige typer, hvilket begrænser forbindelserne. Meget senere, i 2000'erne, vandt begrænsede Boltzmann-maskiner mere popularitet og blev ikke længere betragtet som variationer af Boltzmann-maskinen, men som særlige komponenter i arkitekturen af deep learning -netværk . Kombination af flere kaskader af afgrænsede Boltzmann-maskiner danner et dybt trosnetværk , en speciel slags flerlags neurale netværk, der kan lære sig selv uden en lærer ved hjælp af backpropagation-algoritmen [2] .
Et træk ved begrænsede Boltzmann-maskiner er evnen til at blive trænet uden en lærer , men i visse applikationer trænes begrænsede Boltzmann-maskiner med en lærer. Maskinens skjulte lag er de dybe funktioner i dataene, der afsløres under indlæringsprocessen (se også Data mining ).
Bounded Boltzmann-maskiner har en bred vifte af applikationer - disse er problemer med reduktion af datadimensionalitet [ 3 ] , klassifikationsproblemer [4] , kollaborativ filtrering [5] , feature learning [ 6] og emnemodellering [ 7] .
I en begrænset Boltzmann-maskine danner neuroner en todelt graf , på den ene side af grafen er der synlige neuroner (input), og på den anden side er der skjulte, og der etableres tværbindinger mellem hver synlig og hver skjult neuron. Et sådant system af forbindelser gør det muligt at anvende gradient-nedstigningsmetoden med kontrastiv divergens ved træning af netværket [8] .
Den begrænsede Boltzmann-maskine er baseret på binære elementer med en Bernoulli-fordeling , der udgør de synlige og skjulte lag af netværket. Links mellem lag er specificeret ved hjælp af en matrix af vægte (størrelse m × n ), samt forskydninger for det synlige lag og for det skjulte lag.
Begrebet netværksenergi ( v , h ) introduceres som
eller i matrixform
Hopfield-nettet har også en lignende energifunktion . Hvad angår den sædvanlige Boltzmann-maskine , bestemmes sandsynligheden for fordeling på vektorerne af de synlige og skjulte lag gennem energi [9] :
hvor er partitionsfunktionen defineret som for alle mulige netværk (med andre ord er en normaliseringskonstant, der garanterer, at summen af alle sandsynligheder er lig med én). Bestemmelsen af sandsynligheden for en separat inputvektor (marginalfordeling) udføres på samme måde gennem summen af konfigurationer af alle mulige skjulte lag [9] :
På grund af netværkets struktur som en todelt graf er de enkelte elementer i det skjulte lag uafhængige af hinanden og aktiverer det synlige lag, og omvendt er de enkelte elementer i det synlige lag uafhængige af hinanden og aktiverer det skjulte. lag [8] . For synlige elementer og for skjulte elementer bestemmes de betingede sandsynligheder v gennem produkterne af sandsynligheden h :
og omvendt er de betingede sandsynligheder h defineret i form af produktet af sandsynligheden v :
Specifikke aktiveringssandsynligheder for et element er defineret som
oghvor er den logistiske funktion for lagaktivering.
De synlige lag kan også have en multinomial fordeling , mens de skjulte lag har en Bernoulli- fordeling . I tilfælde af multinomialitet bruges softmax i stedet for logistikfunktionen :
hvor K er antallet af diskrete værdier af synlige elementer. Denne repræsentation bruges i emnemodelleringsproblemer [ 7] og i anbefalingssystemer [5] .
Den begrænsede Boltzmann-maskine er et specialtilfælde af den almindelige Boltzmann-maskine og Markov-netværket [10] [11] . Deres grafmodel svarer til grafmodellen for faktoranalyse [12] .
Læringsmålet er at maksimere sandsynligheden for et system med et givet sæt prøver (en matrix, hvor hver række svarer til en prøve af den synlige vektor ), defineret som produktet af sandsynligheden
eller, som er det samme, maksimering af produktets logaritme: [10] [11]
For at træne det neurale netværk bruges algoritmen for kontrastiv divergens (CD) til at finde de optimale matrixvægte , det blev foreslået af Geoffrey Hinton , oprindeligt til træning af PoE-modeller (“produkt af ekspertestimater”) [13] [14] . Algoritmen bruger Gibbs-sampling til at organisere en gradient-nedstigningsprocedure , svarende til backpropagation-metoden for neurale netværk.
Generelt ser ét trin af kontrastiv divergens (CD-1) sådan ud:
Praktisk vejledning om implementering af læringsprocessen kan findes på Jeffrey Hintons personlige side [9] .
Typer af kunstige neurale netværk | |
---|---|
|
Machine learning og data mining | |
---|---|
Opgaver | |
At lære med en lærer | |
klyngeanalyse | |
Dimensionalitetsreduktion | |
Strukturel prognose | |
Anomali detektion | |
Grafer sandsynlighedsmodeller | |
Neurale netværk | |
Forstærkende læring |
|
Teori | |
Tidsskrifter og konferencer |
|