- prepare cd_jens() for linear hidden units
This commit is contained in:
+7
-4
@@ -17,6 +17,8 @@
|
||||
|
||||
using namespace Matutils;
|
||||
|
||||
#define USE_CD_HINTON 0
|
||||
|
||||
Rbm::Rbm(size_t numVisible, size_t numHidden)
|
||||
: m_params()
|
||||
, m_whv(numVisible, numHidden)
|
||||
@@ -140,14 +142,15 @@ void Rbm::gibbs_hv(arma::mat &h_probs, arma::mat &v_probs) const
|
||||
|
||||
void Rbm::cd(arma::mat const &v_data, arma::mat &dw, arma::mat &dbh, arma::mat &dbv)
|
||||
{
|
||||
if (m_params.doGaussianHidden)
|
||||
#if USE_CD_HINTON
|
||||
{
|
||||
cd_hinton_hid_linear(v_data, dw, dbh, dbv);
|
||||
cd_hinton(v_data, dw, dbh, dbv);
|
||||
}
|
||||
else
|
||||
#else
|
||||
{
|
||||
cd_jens(v_data, dw, dbh, dbv);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void Rbm::cd_hinton_hid_linear(arma::mat const &v_data, arma::mat &dw, arma::mat &dbh, arma::mat &dbv)
|
||||
@@ -241,7 +244,7 @@ void Rbm::cd_hinton(arma::mat const &v_data, arma::mat &dw, arma::mat &dbh, arma
|
||||
void Rbm::cd_jens(arma::mat const &v_states, arma::mat &dw, arma::mat &dbh, arma::mat &dbv)
|
||||
{
|
||||
arma::mat v_probs(v_states);
|
||||
arma::mat h_states = v_to_h(v_states);
|
||||
arma::mat h_states = toHiddenProbs(v_states);
|
||||
arma::mat h_probs;
|
||||
|
||||
// Sample hidden
|
||||
|
||||
Reference in New Issue
Block a user