# Model basat en l'energia

Un model basat en energia (EBM) (Canonical Ensemble Learning (CEL) o Learning via Canonical Ensemble (LCE)) és una aplicació de la formulació de conjunts canònics de física estadística per aprendre a partir de problemes de dades. L'enfocament apareix de manera destacada en els models generatius.
Els GM aprenen una distribució de dades subjacent mitjançant l'anàlisi d'un conjunt de dades de mostra. Un cop entrenat, un GM pot produir altres conjunts de dades que també coincideixen amb la distribució de dades. Els EBM proporcionen un marc unificat per a molts enfocaments probabilistes i no probabilistes d'aquest aprenentatge, especialment per a la formació de models gràfics i altres estructurats.
Un EBM aprèn les característiques d'un conjunt de dades objectiu i genera un conjunt de dades similar però més gran. Els EBM detecten les variables latents d'un conjunt de dades i generen nous conjunts de dades amb una distribució similar.
Les xarxes neuronals generatives basades en energia són una classe de models generatius, que tenen com a objectiu aprendre distribucions de probabilitats explícites de dades en forma de models basats en energia les funcions energètiques dels quals estan parametritzades per les xarxes neuronals profundes modernes.
Les màquines Boltzmann són una forma especial de models basats en l'energia amb una parametrització específica de l'energia.

## Descripció

Per a una entrada determinada $x$, el model descriu una energia $E_{\theta }(x)$ tal que la distribució de Boltzmann $P_{\theta }(x)=\exp(-\beta E_{\theta }(x))/Z(\theta )$ és una probabilitat (densitat) i típicament $\beta =1$.
Des de la constant de normalització $Z(\theta ):=\int _{x\in X}dx\exp(-\beta E_{\theta }(x))$, també coneguda com a funció de partició, depèn de tots els factors de Boltzmann de totes les entrades possibles $x$ no es pot calcular fàcilment o estimar de manera fiable durant l'entrenament simplement utilitzant l'estimació de màxima probabilitat estàndard.
Tanmateix, per maximitzar la probabilitat durant l'entrenament, el gradient del registre de probabilitat d'un únic exemple d'entrenament $x$ es dona utilitzant la regla de la cadena
$\partial _{\theta }\log \left(P_{\theta }(x)\right)=\mathbb {E} _{x'\sim P_{\theta }}[\partial _{\theta }E_{\theta }(x')]-\partial _{\theta }E_{\theta }(x)\,(*)$
L'expectativa de la fórmula anterior per al gradient es pot estimar aproximadament mitjançant l'extracció de mostres $x'$ de la distribució $P_{\theta }$ utilitzant la cadena de Markov Montecarlo
Els primers models basats en l'energia, com la màquina Boltzmann de 2003 de Hinton, van estimar aquesta expectativa mitjançant el bloc de mostreig de Gibbs. Els enfocaments més nous fan servir mostres de dibuix de la Dinàmica Langevin de Gradient Estocàstic (LD) més eficients utilitzant:
$x_{0}'\sim P_{0},x_{i+1}'=x_{i}'-{\frac {\alpha }{2}}{\frac {\partial E_{\theta }(x_{i}')}{\partial x_{i}'}}+\epsilon ,$
i $\epsilon \sim {\mathcal {N}}(0,\alpha )$. Un buffer de reproducció de valors passats $x_{i}'$ s'utilitza amb LD per inicialitzar el mòdul d'optimització.
Els paràmetres $\theta$ de la xarxa neuronal són, per tant, entrenats de manera generativa mitjançant l'estimació de màxima probabilitat basada en la cadena de Markov Monte Carlo (MCMC): el procés d'aprenentatge segueix un esquema d'"anàlisi per síntesi", on dins de cada iteració d'aprenentatge, l'algorisme mostra mostres. els exemples sintetitzats del model actual mitjançant un mètode MCMC basat en gradients, per exemple, dinàmica Langevin o Hybrid Monte Carlo, i després actualitza els paràmetres del model $\theta$ a partir de la diferència entre els exemples d'entrenament i els sintetitzats, vegeu l'equació $(*)$. Aquest procés es pot interpretar com un procés alternatiu de recerca de mode i canvi de mode, i també té una interpretació contradictòria.
Al final, el model aprèn una funció $E_{\theta }$ que associa baixes energies a valors correctes, i altes energies a valors incorrectes.
Després de l'entrenament, donat un model energètic convergent $E_{\theta }$, l'algorisme de Metropolis-Hastings es pot utilitzar per extreure noves mostres. La probabilitat d'acceptació ve donada per: $P_{acc}(x_{i}\to x^{*})=\min \left(1,{\frac {P_{\theta }(x^{*})}{P_{\theta }(x_{i})}}\right).$

## Història

El terme "models basats en l'energia" es va encunyar per primera vegada en un document de JMLR de 2003 on els autors van definir una generalització de l'anàlisi de components independents a la configuració de sobrecomplet mitjançant EBM. Altres treballs primerencs sobre EBM van proposar models que representaven l'energia com una composició de variables latents i observables.

## Característiques

Els EBM demostren propietats útils:
* Simplicitat i estabilitat: l'EBM és l'únic objecte que cal dissenyar i entrenar. No cal entrenar xarxes separades per garantir l'equilibri.
* Temps de càlcul adaptatiu: un EBM pot generar mostres nítides i diverses o (més ràpidament) mostres gruixudes i menys diverses. Donat un temps infinit, aquest procediment produeix mostres reals.
* Flexibilitat: en els codificadors automàtics variacionals (VAE) i els models basats en flux, el generador aprèn un mapa d'un espai continu a un espai (possiblement) discontinu que conté diferents modes de dades. Els EBM poden aprendre a assignar baixes energies a regions disjuntives (modes múltiples).
* Generació adaptativa: els generadors d'EBM es defineixen implícitament per la distribució de probabilitat i s'adapten automàticament a mesura que canvia la distribució (sense formació), permetent als EBM abordar dominis on l'entrenament del generador no és pràctic, així com minimitzar el col·lapse del mode i evitar els modes espúris des de fora de -Mostres de distribució.
* Composicionalitat: els models individuals són distribucions de probabilitat no normalitzades, que permeten combinar models mitjançant el producte d'experts o altres tècniques jeràrquiques.

## Resultats experimentals

En conjunts de dades d'imatge com CIFAR-10 i ImageNet 32x32, un model EBM va generar imatges d'alta qualitat amb relativa rapidesa. Admet la combinació de funcions apreses d'un tipus d'imatge per generar altres tipus d'imatges. Va poder generalitzar-se mitjançant conjunts de dades fora de distribució, superant els models basats en flux i autoregressius. EBM era relativament resistent a les pertorbacions adversàries, comportant-se millor que els models entrenats explícitament contra ells amb entrenament per a la classificació.

## Aplicacions

Les aplicacions objectiu inclouen el processament del llenguatge natural, la robòtica i la visió per ordinador.
La primera xarxa neuronal generativa basada en l'energia és la ConvNet generativa proposada el 2016 per a patrons d'imatge, on la xarxa neuronal és una xarxa neuronal convolucional. El model s'ha generalitzat a diversos dominis per aprendre distribucions de vídeos, i voxels 3D. Es fan més efectius en les seves variants. Han demostrat ser útils per a la generació de dades (per exemple, síntesi d'imatges, síntesi de vídeo, síntesi de formes 3D, etc.), recuperació de dades (per exemple, recuperació de vídeos amb píxels o marcs d'imatge que falten, superresolució 3D, etc), reconstrucció de dades (per exemple, reconstrucció d'imatges i interpolació lineal).

## Alternatives

Els EBM competeixen amb tècniques com ara els codificadors automàtics variacionals (VAE), les xarxes adversàries generatives (GAN) o els fluxos normalitzadors.

## Extensions
### Joint energy-based models

Els models conjunts basats en energia ( JEM ), proposats el 2020 per Grathwohl et al., permeten interpretar qualsevol classificador amb sortida softmax com a model basat en energia. L'observació clau és que aquest classificador està entrenat per predir la probabilitat condicional $p_{\theta }(y|x)={\frac {e^{{\vec {f}}_{\theta }(x)[y]}}{\sum _{j=1}^{K}e^{{\vec {f}}_{\theta }(x)[j]}}}\ \ {\text{ for }}y=1,\dotsc ,K{\text{ and }}{\vec {f}}_{\theta }=(f_{1},\dotsc ,f_{K})\in \mathbb {R} ^{K},$ on ${\vec {f}}_{\theta }(x)[y]$ és l'índex y-è dels logits ${\vec {f}}$ corresponent a la classe y. Sense cap canvi als logits, es va proposar reinterpretar els logits per descriure una densitat de probabilitat conjunta:
$p_{\theta }(y,x)={\frac {e^{{\vec {f}}_{\theta }(x)[y]}}{Z(\theta )}},$

## Referències

* ↑ «Implicit Generation and Generalization Methods for Energy-Based Models» (en anglès). OpenAI, 21-03-2019. [Consulta: 27 desembre 2019].
* ↑ Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].
* ↑ Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].
* ↑ Xie, Jianwen; Lu, Yang; Zhu, Song-Chun; Wu, Ying Nian ICML, 2016. arXiv: 1602.03264. Bibcode: 2016arXiv160203264X.
* ↑ Xie, Jianwen; Zhu, Song-Chun; Wu, Ying Nian IEEE Transactions on Pattern Analysis and Machine Intelligence, 43, 2, 2019, pàg. 516–531. arXiv: 1909.11975. Bibcode: 2019arXiv190911975X. DOI: 10.1109/tpami.2019.2934852. ISSN: 0162-8828. PMID: 31425020.
* ↑ Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].
* ↑ Barbu, Adrian. Monte Carlo Methods. Springer, 2020.
* ↑ Xie, Jianwen. «Synthesizing Dynamic Patterns by Spatial-Temporal Generative ConvNet». A: 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (en anglès). IEEE, July 2017, p. 1061–1069. DOI 10.1109/cvpr.2017.119. ISBN 978-1-5386-0457-1.
* ↑ Wu, Ying Nian; Xie, Jianwen; Lu, Yang; Zhu, Song-Chun Annals of Mathematical Sciences and Applications, 3, 1, 2018, pàg. 211–254. DOI: 10.4310/amsa.2018.v3.n1.a7. ISSN: 2380-288X.
* ↑ Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].
* ↑ Teh, Yee Whye; Welling, Max; Osindero, Simon; Hinton, Geoffrey E. JMLR, 12-2003.
* ↑ Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].
* ↑ Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].
* ↑ Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].
* 1 2 Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].
* ↑ Lecun, Y.; Bottou, L.; Bengio, Y.; Haffner, P. Proceedings of the IEEE, 86, 11, 1998, pàg. 2278–2324. DOI: 10.1109/5.726791. ISSN: 0018-9219.
* ↑ Krizhevsky, Alex; Sutskever, Ilya; Hinton, Geoffrey NIPS, 2012.
* 1 2 3 Xie, Jianwen. «Synthesizing Dynamic Patterns by Spatial-Temporal Generative ConvNet». A: 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (en anglès). IEEE, July 2017, p. 1061–1069. DOI 10.1109/cvpr.2017.119. ISBN 978-1-5386-0457-1.
* ↑ Xie, Jianwen; Zhu, Song-Chun; Wu, Ying Nian IEEE Transactions on Pattern Analysis and Machine Intelligence, 43, 2, 2019, pàg. 516–531. arXiv: 1909.11975. Bibcode: 2019arXiv190911975X. DOI: 10.1109/tpami.2019.2934852. ISSN: 0162-8828. PMID: 31425020.
* ↑ Xie, Jianwen. «Learning Descriptor Networks for 3D Shape Synthesis and Analysis». A: 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition (en anglès). IEEE, June 2018, p. 8629–8638. DOI 10.1109/cvpr.2018.00900. ISBN 978-1-5386-6420-9.
* ↑ Gao, Ruiqi. «Learning Generative ConvNets via Multi-grid Modeling and Sampling». A: 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition (en anglès). IEEE, June 2018, p. 9155–9164. DOI 10.1109/cvpr.2018.00954. ISBN 978-1-5386-6420-9.
* 1 2 Nijkamp, Zhu, Song-Chun Wu, Ying Nian, Erik. On Learning Non-Convergent Non-Persistent Short-Run MCMC Toward Energy-Based Model (en anglès), 2019. OCLC 1106340764.
* ↑ Cai, Xu; Wu, Yang; Li, Guanbin; Chen, Ziliang; Lin, Liang Proceedings of the AAAI Conference on Artificial Intelligence, 33, 17-07-2019, pàg. 3256–3263. arXiv: 1812.01186. DOI: 10.1609/aaai.v33i01.33013256. ISSN: 2374-3468 [Consulta: lliure].
* ↑ Xie, Jianwen; Lu, Yang; Gao, Ruiqi; Zhu, Song-Chun; Wu, Ying Nian IEEE Transactions on Pattern Analysis and Machine Intelligence, 42, 1, 01-01-2020, pàg. 27–45. arXiv: 1609.09408. DOI: 10.1109/tpami.2018.2879081. ISSN: 0162-8828. PMID: 30387724.
* ↑ Xie, Jianwen; Lu, Yang; Gao, Ruiqi; Gao, Song-Chun «Còpia arxivada». Thirty-Second AAAI Conference on Artificial Intelligence, 32, 2018. Arxivat de l'original el 2021-12-03. DOI: 10.1609/aaai.v32i1.11834 [Consulta: lliure].
* ↑ Han, Tian. «Divergence Triangle for Joint Training of Generator Model, Energy-Based Model, and Inferential Model». A: 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (en anglès). IEEE, June 2019, p. 8662–8671. DOI 10.1109/cvpr.2019.00887. ISBN 978-1-7281-3293-8.
* ↑ Rodriguez, Jesus. «Generating Training Datasets Using Energy Based Models that Actually Scale» (en anglès). Medium, 01-04-2019. Arxivat de l'original el 2019-04-01. [Consulta: 27 desembre 2019].