Training the parameters of a Restricted Boltzman machine The 2019 Stack Overflow Developer Survey Results Are InWhy a restricted Boltzman machine (RBM) tends to learn very similar weights?Regression problem - too complex for gradient descentUnderstanding a simple example of Restricted Boltzmann Machine (RBM)Why training a Restricted Boltzmann Machine corresponds to having a good reconstruction of training data?understanding batch normalizationBackpropagation - softmax derivativeQuestions about Neural Network training (back propagation) in the book PRML (Pattern Recognition and Machine Learning)What does the one function $mathbf1_i,y^(t)$ exactly mean in backward propagation of RNN in the book “Deep learning” of BengioNewbie question on restricted boltzmann machineUnderstanding general approach to updating optimization function parameters

A word that means fill it to the required quantity

Output the Arecibo Message

Why was M87 targeted for the Event Horizon Telescope instead of Sagittarius A*?

If a sorcerer casts the Banishment spell on a PC while in Avernus, does the PC return to their home plane?

How to obtain a position of last non-zero element

How do you keep chess fun when your opponent constantly beats you?

Mathematics of imaging the black hole

Are spiders unable to hurt humans, especially very small spiders?

How did passengers keep warm on sail ships?

Are there any other methods to apply to solving simultaneous equations?

Can withdrawing asylum be illegal?

How much of the clove should I use when using big garlic heads?

Is bread bad for ducks?

How can I define good in a religion that claims no moral authority?

Match Roman Numerals

The difference between dialogue marks

What is the motivation for a law requiring 2 parties to consent for recording a conversation

Why couldn't they take pictures of a closer black hole?

What is the most efficient way to store a numeric range?

Relationship between Gromov-Witten and Taubes' Gromov invariant

Likelihood that a superbug or lethal virus could come from a landfill

Why don't hard Brexiteers insist on a hard border to prevent illegal immigration after Brexit?

Is it a good practice to use a static variable in a Test Class and use that in the actual class instead of Test.isRunningTest()?

Kerning for subscripts of sigma?



Training the parameters of a Restricted Boltzman machine



The 2019 Stack Overflow Developer Survey Results Are InWhy a restricted Boltzman machine (RBM) tends to learn very similar weights?Regression problem - too complex for gradient descentUnderstanding a simple example of Restricted Boltzmann Machine (RBM)Why training a Restricted Boltzmann Machine corresponds to having a good reconstruction of training data?understanding batch normalizationBackpropagation - softmax derivativeQuestions about Neural Network training (back propagation) in the book PRML (Pattern Recognition and Machine Learning)What does the one function $mathbf1_i,y^(t)$ exactly mean in backward propagation of RNN in the book “Deep learning” of BengioNewbie question on restricted boltzmann machineUnderstanding general approach to updating optimization function parameters










4












$begingroup$


Why are the parameters of a Restricted Boltzmann machine trained for a fixed number of iterations (epochs) in many papers instead of choosing the ones corresponding to a stationary point of the likelihood?



Denote the observable data by $x$, hidden data by $h$, the energy function by $E$ and the normalizing constant by $Z$. The probability of $x$ is:
beginequation
P(x) = sum_h P(x,h) = sum_h frace^-E(x,h)Z.
endequation
The goal is to maximize the probability of $x$ conditional on the parameters of the model $theta$. Suppose one has access to a sample of $N$ observations of $x$ with typical element $x_i$. As estimator, one could find the roots of the derivative of the average sample log-likelihood:
beginequation
leftlbrace hattheta in hatTheta : N^-1 sum_x_i fracpartial log p(x_i) partial theta = 0 rightrbrace
endequation
and chose the one $theta^star in hatTheta $ maximizing the empirical likelihood. There exists many different ways to approximate the derivative of the log-likelihood to facilitate (maybe even permit) its computation. For example, Contrastive Divergence and Persistent Contrastive Divergence are used often. I wonder whether it makes sense to estimate the parameters $theta$ recursively until convergence while continuing to approximate the derivative of the log-likelihood. One could update the parameters after seeing each data point $x_i$ as:
beginequation
theta_i+1 = theta_i - eta_i fracpartial log p(x_i)partial theta_i
endequation
The practice I learned in Hinton et al. (2006) and in Tieleman (2008) is different though: Both papers define a number of fixed iterations a priori. Could somebody kindly educate me why recursively updating the parameters until convergence is not a good idea? In particular, I'm interested whether there's a theoretical flaw in my reasoning or whether computational capacities dictate sticking to a fixed number of iterations. I am grateful for any help!










share|improve this question











$endgroup$




bumped to the homepage by Community 2 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.



















    4












    $begingroup$


    Why are the parameters of a Restricted Boltzmann machine trained for a fixed number of iterations (epochs) in many papers instead of choosing the ones corresponding to a stationary point of the likelihood?



    Denote the observable data by $x$, hidden data by $h$, the energy function by $E$ and the normalizing constant by $Z$. The probability of $x$ is:
    beginequation
    P(x) = sum_h P(x,h) = sum_h frace^-E(x,h)Z.
    endequation
    The goal is to maximize the probability of $x$ conditional on the parameters of the model $theta$. Suppose one has access to a sample of $N$ observations of $x$ with typical element $x_i$. As estimator, one could find the roots of the derivative of the average sample log-likelihood:
    beginequation
    leftlbrace hattheta in hatTheta : N^-1 sum_x_i fracpartial log p(x_i) partial theta = 0 rightrbrace
    endequation
    and chose the one $theta^star in hatTheta $ maximizing the empirical likelihood. There exists many different ways to approximate the derivative of the log-likelihood to facilitate (maybe even permit) its computation. For example, Contrastive Divergence and Persistent Contrastive Divergence are used often. I wonder whether it makes sense to estimate the parameters $theta$ recursively until convergence while continuing to approximate the derivative of the log-likelihood. One could update the parameters after seeing each data point $x_i$ as:
    beginequation
    theta_i+1 = theta_i - eta_i fracpartial log p(x_i)partial theta_i
    endequation
    The practice I learned in Hinton et al. (2006) and in Tieleman (2008) is different though: Both papers define a number of fixed iterations a priori. Could somebody kindly educate me why recursively updating the parameters until convergence is not a good idea? In particular, I'm interested whether there's a theoretical flaw in my reasoning or whether computational capacities dictate sticking to a fixed number of iterations. I am grateful for any help!










    share|improve this question











    $endgroup$




    bumped to the homepage by Community 2 mins ago


    This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.

















      4












      4








      4


      1



      $begingroup$


      Why are the parameters of a Restricted Boltzmann machine trained for a fixed number of iterations (epochs) in many papers instead of choosing the ones corresponding to a stationary point of the likelihood?



      Denote the observable data by $x$, hidden data by $h$, the energy function by $E$ and the normalizing constant by $Z$. The probability of $x$ is:
      beginequation
      P(x) = sum_h P(x,h) = sum_h frace^-E(x,h)Z.
      endequation
      The goal is to maximize the probability of $x$ conditional on the parameters of the model $theta$. Suppose one has access to a sample of $N$ observations of $x$ with typical element $x_i$. As estimator, one could find the roots of the derivative of the average sample log-likelihood:
      beginequation
      leftlbrace hattheta in hatTheta : N^-1 sum_x_i fracpartial log p(x_i) partial theta = 0 rightrbrace
      endequation
      and chose the one $theta^star in hatTheta $ maximizing the empirical likelihood. There exists many different ways to approximate the derivative of the log-likelihood to facilitate (maybe even permit) its computation. For example, Contrastive Divergence and Persistent Contrastive Divergence are used often. I wonder whether it makes sense to estimate the parameters $theta$ recursively until convergence while continuing to approximate the derivative of the log-likelihood. One could update the parameters after seeing each data point $x_i$ as:
      beginequation
      theta_i+1 = theta_i - eta_i fracpartial log p(x_i)partial theta_i
      endequation
      The practice I learned in Hinton et al. (2006) and in Tieleman (2008) is different though: Both papers define a number of fixed iterations a priori. Could somebody kindly educate me why recursively updating the parameters until convergence is not a good idea? In particular, I'm interested whether there's a theoretical flaw in my reasoning or whether computational capacities dictate sticking to a fixed number of iterations. I am grateful for any help!










      share|improve this question











      $endgroup$




      Why are the parameters of a Restricted Boltzmann machine trained for a fixed number of iterations (epochs) in many papers instead of choosing the ones corresponding to a stationary point of the likelihood?



      Denote the observable data by $x$, hidden data by $h$, the energy function by $E$ and the normalizing constant by $Z$. The probability of $x$ is:
      beginequation
      P(x) = sum_h P(x,h) = sum_h frace^-E(x,h)Z.
      endequation
      The goal is to maximize the probability of $x$ conditional on the parameters of the model $theta$. Suppose one has access to a sample of $N$ observations of $x$ with typical element $x_i$. As estimator, one could find the roots of the derivative of the average sample log-likelihood:
      beginequation
      leftlbrace hattheta in hatTheta : N^-1 sum_x_i fracpartial log p(x_i) partial theta = 0 rightrbrace
      endequation
      and chose the one $theta^star in hatTheta $ maximizing the empirical likelihood. There exists many different ways to approximate the derivative of the log-likelihood to facilitate (maybe even permit) its computation. For example, Contrastive Divergence and Persistent Contrastive Divergence are used often. I wonder whether it makes sense to estimate the parameters $theta$ recursively until convergence while continuing to approximate the derivative of the log-likelihood. One could update the parameters after seeing each data point $x_i$ as:
      beginequation
      theta_i+1 = theta_i - eta_i fracpartial log p(x_i)partial theta_i
      endequation
      The practice I learned in Hinton et al. (2006) and in Tieleman (2008) is different though: Both papers define a number of fixed iterations a priori. Could somebody kindly educate me why recursively updating the parameters until convergence is not a good idea? In particular, I'm interested whether there's a theoretical flaw in my reasoning or whether computational capacities dictate sticking to a fixed number of iterations. I am grateful for any help!







      neural-network optimization rbm






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Apr 5 '16 at 8:31







      fabian

















      asked Apr 5 '16 at 6:52









      fabianfabian

      1765




      1765





      bumped to the homepage by Community 2 mins ago


      This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.







      bumped to the homepage by Community 2 mins ago


      This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.






















          1 Answer
          1






          active

          oldest

          votes


















          0












          $begingroup$

          I believe the problem is that log-likelihood is not directly computable, because of exponential in number of units complexity. There exist different proxies to the true log-likelihood, for instance pseudo log-likelihood (more here), and in principle you can train RBM until PLL is not changed too much.



          Hovewer, there is a lot of randomness involved in the training process, so PLL most likely will be quite noisy (even true log-likelihood would be I believe).






          share|improve this answer











          $endgroup$













            Your Answer





            StackExchange.ifUsing("editor", function ()
            return StackExchange.using("mathjaxEditing", function ()
            StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
            StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
            );
            );
            , "mathjax-editing");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "557"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdatascience.stackexchange.com%2fquestions%2f11042%2ftraining-the-parameters-of-a-restricted-boltzman-machine%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0












            $begingroup$

            I believe the problem is that log-likelihood is not directly computable, because of exponential in number of units complexity. There exist different proxies to the true log-likelihood, for instance pseudo log-likelihood (more here), and in principle you can train RBM until PLL is not changed too much.



            Hovewer, there is a lot of randomness involved in the training process, so PLL most likely will be quite noisy (even true log-likelihood would be I believe).






            share|improve this answer











            $endgroup$

















              0












              $begingroup$

              I believe the problem is that log-likelihood is not directly computable, because of exponential in number of units complexity. There exist different proxies to the true log-likelihood, for instance pseudo log-likelihood (more here), and in principle you can train RBM until PLL is not changed too much.



              Hovewer, there is a lot of randomness involved in the training process, so PLL most likely will be quite noisy (even true log-likelihood would be I believe).






              share|improve this answer











              $endgroup$















                0












                0








                0





                $begingroup$

                I believe the problem is that log-likelihood is not directly computable, because of exponential in number of units complexity. There exist different proxies to the true log-likelihood, for instance pseudo log-likelihood (more here), and in principle you can train RBM until PLL is not changed too much.



                Hovewer, there is a lot of randomness involved in the training process, so PLL most likely will be quite noisy (even true log-likelihood would be I believe).






                share|improve this answer











                $endgroup$



                I believe the problem is that log-likelihood is not directly computable, because of exponential in number of units complexity. There exist different proxies to the true log-likelihood, for instance pseudo log-likelihood (more here), and in principle you can train RBM until PLL is not changed too much.



                Hovewer, there is a lot of randomness involved in the training process, so PLL most likely will be quite noisy (even true log-likelihood would be I believe).







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Sep 17 '17 at 19:54

























                answered Sep 17 '17 at 19:29









                yellyell

                665




                665



























                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Data Science Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    Use MathJax to format equations. MathJax reference.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdatascience.stackexchange.com%2fquestions%2f11042%2ftraining-the-parameters-of-a-restricted-boltzman-machine%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Францішак Багушэвіч Змест Сям'я | Біяграфія | Творчасць | Мова Багушэвіча | Ацэнкі дзейнасці | Цікавыя факты | Спадчына | Выбраная бібліяграфія | Ушанаванне памяці | У філатэліі | Зноскі | Літаратура | Спасылкі | НавігацыяЛяхоўскі У. Рупіўся дзеля Бога і людзей: Жыццёвы шлях Лявона Вітан-Дубейкаўскага // Вольскі і Памідораў з песняй пра немца Адвакат, паэт, народны заступнік Ашмянскі веснікВ Минске появится площадь Богушевича и улица Сырокомли, Белорусская деловая газета, 19 июля 2001 г.Айцец беларускай нацыянальнай ідэі паўстаў у бронзе Сяргей Аляксандравіч Адашкевіч (1918, Мінск). 80-я гады. Бюст «Францішак Багушэвіч».Яўген Мікалаевіч Ціхановіч. «Партрэт Францішка Багушэвіча»Мікола Мікалаевіч Купава. «Партрэт зачынальніка новай беларускай літаратуры Францішка Багушэвіча»Уладзімір Іванавіч Мелехаў. На помніку «Змагарам за родную мову» Барэльеф «Францішак Багушэвіч»Памяць пра Багушэвіча на Віленшчыне Страчаная сталіца. Беларускія шыльды на вуліцах Вільні«Krynica». Ideologia i przywódcy białoruskiego katolicyzmuФранцішак БагушэвічТворы на knihi.comТворы Францішка Багушэвіча на bellib.byСодаль Уладзімір. Францішак Багушэвіч на Лідчыне;Луцкевіч Антон. Жыцьцё і творчасьць Фр. Багушэвіча ў успамінах ягоных сучасьнікаў // Запісы Беларускага Навуковага таварыства. Вільня, 1938. Сшытак 1. С. 16-34.Большая российская1188761710000 0000 5537 633Xn9209310021619551927869394п

                    Partai Komunis Tiongkok Daftar isi Kepemimpinan | Pranala luar | Referensi | Menu navigasidiperiksa1 perubahan tertundacpc.people.com.cnSitus resmiSurat kabar resmi"Why the Communist Party is alive, well and flourishing in China"0307-1235"Full text of Constitution of Communist Party of China"smengembangkannyas

                    ValueError: Expected n_neighbors <= n_samples, but n_samples = 1, n_neighbors = 6 (SMOTE) The 2019 Stack Overflow Developer Survey Results Are InCan SMOTE be applied over sequence of words (sentences)?ValueError when doing validation with random forestsSMOTE and multi class oversamplingLogic behind SMOTE-NC?ValueError: Error when checking target: expected dense_1 to have shape (7,) but got array with shape (1,)SmoteBoost: Should SMOTE be ran individually for each iteration/tree in the boosting?solving multi-class imbalance classification using smote and OSSUsing SMOTE for Synthetic Data generation to improve performance on unbalanced dataproblem of entry format for a simple model in KerasSVM SMOTE fit_resample() function runs forever with no result