zoukankan      html  css  js  c++  java
  • 【deep learning学习笔记】注释yusugomori的LR代码 --- LogisticRegression.h

    继续看yusugomori的代码,看逻辑回归。在DBN(Deep Blief Network)中,下面几层是RBM,最上层就是LR了。关于回归、二类回归、以及逻辑回归,资料就是前面转的几篇。套路就是设定目标函数(softmax损失函数),对参数求偏导数,得出权重更新公式等。

    LogisticRegression.h注释如下:

    class LogisticRegression 
    {
    public:
      	int N;  		// number of input samples
      	int n_in;		// number of input nodes
      	int n_out;		// number of output nodes
      	double **W;		// weights connecting the input nodes and the output nodes
      	double *b;		// bias of the output nodes
      	// allocate memory and initialize the parameters
      	LogisticRegression(
      			int, 	// N
      			int, 	// n_in
      			int		// n_out
    		  	);
      	~LogisticRegression();
      
    public:
    	// train the logistic regression model, update the value of W and b
      	void train (
    	  		int*, 	// the input from input nodes in training set
    	  		int*, 	// the output from output nodes in training set
    	  		double	// the learning rate
    		  );
     	// calculate the softmax for a input vector
     	// dSoftMax = exp(d_i - Max) / sum_i( exp(d_i - Max) )
      	void softmax (
    	  		double*	// the calculated softmax probabiltiy -- input & output
    			  );
    	// do prediction by calculating the softmax probability from input
      	void predict (
    	  		int*, 	// the input from input nodes in testing set
    	  		double*	// the calculated softmax probability
    			  );
    };
    


    顺便提一句。从前RBM的那个注释,是在家用VS2008写的;现在这个,用CFree5.0,轻量级、编辑器操作贴心,赞一下!


  • 相关阅读:
    反射-基础方法-java
    排序-插入-java
    排序-选择-java
    决策树
    python基础2 -画图
    python基础1
    如何实现用户的历史记录功能(最多n条)
    如何让字典保持有序
    如何快速找到多个字典中的公共键(key)
    如何根据字典中值的大小, 对字典中的项排序
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3194133.html
Copyright © 2011-2022 走看看