- moved context awareness from Rbm to Layer (final)
git-svn-id: http://moon:8086/svn/software/trunk/projects/Rbm@770 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
+3
-18
@@ -114,7 +114,7 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
Rbm(size_t numVisible, size_t numHidden, size_t numContext=0);
|
||||
Rbm(size_t numVisible, size_t numHidden);
|
||||
Rbm(const Rbm& orig);
|
||||
virtual ~Rbm();
|
||||
|
||||
@@ -149,19 +149,9 @@ public:
|
||||
|
||||
arma::mat toVisibleProbs(const arma::mat &hidden) const
|
||||
{
|
||||
return arma::reshape(Rbm::prob(h_to_v(hidden)), 1, numVisible() - numContext());
|
||||
return Rbm::prob(h_to_v(hidden));
|
||||
}
|
||||
|
||||
arma::mat toContextProbs(const arma::mat &hidden) const
|
||||
{
|
||||
return Rbm::prob(h_to_v(hidden)).submat(0, numVisible() - numContext(), 0, numVisible() - 1);
|
||||
}
|
||||
|
||||
size_t numContext() const
|
||||
{
|
||||
return m_ctx.size();
|
||||
}
|
||||
|
||||
size_t numHidden() const
|
||||
{
|
||||
return m_bhv.size();
|
||||
@@ -172,17 +162,13 @@ public:
|
||||
return m_bv.size();
|
||||
}
|
||||
|
||||
arma::mat vc_to_v(const arma::mat &vc) const;
|
||||
arma::mat vc_to_c(const arma::mat &vc) const;
|
||||
arma::mat to_vc(const arma::mat &v, const arma::mat &c) const;
|
||||
|
||||
arma::mat v_to_h(const arma::mat &visible) const;
|
||||
arma::mat h_to_v(const arma::mat &hidden) const;
|
||||
|
||||
private:
|
||||
Params m_params;
|
||||
arma::mat sample(arma::mat const &src);
|
||||
void weightUpdate(arma::mat const &v_states, arma::mat &dwhv, arma::mat &dbhv, arma::mat &dbv);
|
||||
void contrastiveDivergence(arma::mat const &v_states, arma::mat &dwhv, arma::mat &dbhv, arma::mat &dbv);
|
||||
void uniform(arma::mat &srcDst, double stdDev=1.0, double mu=0.5);
|
||||
void gibbs(arma::mat &hv_states, arma::mat &v_states);
|
||||
|
||||
@@ -193,7 +179,6 @@ protected:
|
||||
private:
|
||||
noise_gen_t m_noise;
|
||||
arma::mat m_whv;
|
||||
arma::mat m_ctx;
|
||||
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user