- 博客(83)
- 收藏
- 关注
原创 leetcode 98. Validate Binary Search Tree
平衡二叉树的验证,中序遍历的结果是否有序。class Solution {public: void inorder(TreeNode* root,vector<int> &array){ if(root==NULL){ return ; } inorder(root->left,array...
2019-09-17 11:00:15
185
原创 CapsNet胶囊网络
胶囊网络本文基于Hinton 17年nips上的一篇论文Dynamic Routing Between Capsules,Hinton在本文中提出了一种对于胶囊网络的可行方案,并没有去尝试探索实现胶囊网络的全局方案。这次Capsule盛宴的特色是“vector in vector out”,取代了以往的“scaler in scaler out”,也就是神经元的输入输出都变成了向量,从而算是...
2019-06-11 23:09:28
1394
原创 leetcode 14 Longest Common Prefix
LeetCode 14 Longest Common Prefix找到最长公共前缀class Solution {public: string longestCommonPrefix(vector<string>& strs) { int len=strs.size(); string com_pre=""; int...
2019-02-07 12:49:34
224
原创 Latent Dirichlet Allocation(LDA主题模型)
LDA主题模型符号与术语词word为离散数据的一个基本单位,使用一个{1,…,V}的词表索引。其中的V是整个语料库中的词的个数。LDA中的参数求解问题LDA对应的概率图模型:我们现在使用LDA面临的首要问题是推断给定文档的隐变量z的后验概率。p(θ,z∣w,α,β)=p(θ,z,w∣α,β)p(w∣α,β)p(\theta,z|w,\alpha,\beta)=\frac{p(\th...
2018-12-14 22:03:27
1053
原创 cs224n词向量表示word2vec
cs224n词向量表示word2vecWord2vecSkip-gram predictiongradientWord2vecword2vec模型的核心是构建一个简单、可扩展的快速训练模型。利用语义理论来预测每个单词和它的上下文的词汇两个算法:Skip-grams (SG):预测上下文Continuous Bag of Words (CBOW):预测目标单词两种稍微高效一些的训练方法:...
2018-12-02 19:23:57
714
原创 变分推断(Variational Inference)
变分推断变分变分推断平均场理论变分下界求解过程(极大化ELOB)一元高斯分布的例子模型比较例子:混合高斯的变分变分分布在概率模型的应用中,一个中心任务是在给定观测(可见)数据变量X的条件下,计算潜在变量Z的后验概率分布p(Z j X),以及计算关于这个概率分布的期望。对于实际应⽤中的许多模型来说,计算后验概率分布或者计算关于这个后验概率分布的期望是不可⾏的。这可能是由于潜在空间的维度太搞,以...
2018-11-29 20:55:45
10638
2
原创 社会计算笔记:谱类聚
谱类聚谱类聚是用与解决图的划分问题,将无向图划分为两个或者两个以上的最优子图,使子图内部尽量相似,子图间的距离尽量远,谱类聚的最优目标通常有两个准则:比例割集准则(ratio cut),规范化割集准则(normalized cut)。RatioCut(π)=1k∑i=1kcut(ci,ci‾)∣ci∣Ratio Cut(\pi) =\frac{1}{k}\sum_{i=1}^k \frac{...
2018-10-30 11:58:39
762
原创 PRML笔记 第二章概率分布
2.1二元变量首先,我们考虑一个二元随机变量x (0,1)。例如, x可能描述了扔硬币的结果, x = 1表示硬币为正面, x = 0表示反面。我们可以假设由一个损坏的硬币,这枚硬币正面朝上的概率未必等于反面的概率。x=1的概率被记为μ,因此x的概率分布可以写为 : 这被称为伯努利分布(Bernoulli distribution),其方差与均值为:假设我们现在有数据集D...
2018-10-24 20:14:41
988
原创 PRML笔记 第一章绪论
1概率论:P(Y=yj)=rj,P(X=xi)=ci.X取值xi且Y 取值yj的概率被记作p(X = xi; Y = yj),被称为X = xi和Y = yj的联合概率(joint probability)。它的计算方法为落在单元格i; j的点的数量与点的总数的比值。这 是 概 率 的 加 和 规 则 (sum rule)。 注 意, p(X = xi)有 时 被 称 为 边 缘 ...
2018-09-28 19:23:08
1253
原创 吴恩达机器学习笔记第八周 非监督学习与维度规约
聚类算法:我们在进行无监督学习的时候面对的数据是没有进行标记的。如图所示:所以我们能看到的数据是一系列如X(1),X(2)........X(m)并没有相对应的y来作参考。就此数据而言, 其中一种可能的结构 是 所有的数据 可以大致地划分成 两个类或组。 因此,像我介绍的 这种划分组的算法, 称为 聚类算法。 这是我们第一种 无监督学习算法。K-means:K-means为最简...
2018-07-31 13:05:31
901
原创 吴恩达机器学习笔记第七周 SVM支持向量机
支持向量机 或者简称SVM 在学习复杂的非线性方程时 提供了一种更为清晰 更加强大的方式 ,我们在逻辑回归中所用的假设函数h(x)的曲线如图:当y=1时,我们希望假设函数能趋向于1,即z>=0,当预测y=0时,我们希望假设函数能趋向于0,即z<0.Kernels(核函数):当我们进行复杂的非线性分类的的时候,我们的决策边界通常会使用多次多项式。但是我们并不知道这些高次项是否有用。假设有...
2018-07-03 14:11:13
1637
原创 吴恩达机器学习 课程笔记第五周
Gradient checking(梯度检验):在行经梯度下降的时候常会有各种bug,有时候虽然代价函数的值在下降但实际上还有有很大的误差可能是由小bug导致的。我们可以使用梯度检验对其进行检测,保证产生模型的质量。可以使用J(theta+ε)-J(theta-ε)/ε来检验J(theta)的导数n为theta的数量,从theta的第一项开始,将thetaPlus赋值为theta+epsilon,...
2018-06-06 15:14:36
636
原创 吴恩达机器学习 第四周学习笔记
Neural Network:1Non-linear Hypotheses:在计算机视觉中的例子中,假设判断一个50*50像素的图像是否为一辆汽车,在逻辑回归中所构成的维数是2500个,那么他的一次项为2500个,二次项的数量为2500^2/2。导致了过于庞大的计算量。2Model representation:神经网络的逻辑单元:x0---x3为输入,theta被称为权重或者参数。途中layer...
2018-05-27 22:52:40
886
原创 吴恩达机器学习 第三周学习笔记
逻辑回归:逻辑回归的因变量可以是二分类的,也可以是多分类的,但是二分类的更为常用,也更加容易解释,多类可以使用softmax方法进行处理。实际中最为常用的就是二分类的logistic回归。hypothesis representation:我们可以想到利用假设函数y=hθ(x)来预测分类,而普通的hθ(x)函数存在函数值大于1和小于0的情况,于是我们要构造特殊函数使0≤hθ(x)≤1。通常将z大于...
2018-05-12 16:51:24
585
原创 吴恩达 机器学习课程第二周
Linear Regression:线性回归课程中的例子是房价预测属于监督学习预测函数表示通过x获取对房价的期望。Cost Function:计算期望值与实际值的方差。使J尽可能取得最小值。Gradient Descent:梯度下降法通过该点出各方向的偏导获取下一步的方向,alpha决定下一步的大小。function [theta, J_history] = gradientDescent(X, ...
2018-05-08 16:07:22
366
原创 第十五周——用文件保存学生名单
#include #include#include#includeusing namespace std;//定义学生类class Student{public: bool pass (); Student() {}; ~Student(); double get_total(); static int gets
2014-06-06 13:26:47
736
原创 第15周——工资数据的输入
#include #include #includeusing namespace std;int main( ){ double salarys[500]; int t,n=0; freopen("a.txt","r",stdin); while(cin>>salarys[n]) { n++; //从
2014-06-03 13:32:40
796
原创 第十四周——纯虚函数(二)
#include #include using namespace std;class Shape{ public: virtual double area()=0;};class Circle:public Shape{ public: Circle (double r):radius(r){} vir
2014-05-27 15:12:48
674
原创 第十四周——项目3 立体类族共有的抽象类
#include using namespace std;class CSolid{ public: virtual double Area()=0; virtual double Volume ()=0;};class CCube :public CSolid//正方体{ private: double len
2014-05-27 14:23:25
775
原创 第十四周——项目2-形状类族的中的纯虚函数
#include using namespace std;class Shape{ public: virtual double area()=0;};class Circle:public Shape{ public: Circle (double r):radius(r){} virtual double a
2014-05-27 12:31:36
677
原创 第13周——动物叫
#include using namespace std;class Animal{protected: string name; char sex;public: virtual void cry() { cout<<"不知哪种动物,让我如何学叫?"<<endl; }};class Mouse :
2014-05-27 09:14:15
708
原创 第12周——教师干部类
#include using namespace std;class Teacher{ public: Teacher(string nam,int ag,string add,string tel,string se,string ti): name(nam),age(ag),addr(add),telnum(tel),sex(se),title
2014-05-13 13:19:11
885
原创 第12周——protected继承
#include using namespace std;class Animal{public: Animal() {} void eat() { cout << "eat\n"; }protected: void play() { cout << "play\n"; }
2014-05-13 09:03:44
773
原创 第12周——private继承方式(阅读程序)
#include using namespace std;class Animal{public: Animal() {} void eat() { cout << "eat\n"; }protected: void play() { cout << "play\n"; }
2014-05-13 08:54:13
648
原创 第12周——public继承方式(阅读程序)
#include using namespace std;class Animal //动物类{public: Animal() {} void eat(){ cout << "eat\n"; }protected: void play() { cout << "play\n";
2014-05-13 08:42:32
530
原创 存储班长信息的学生类
#include using namespace std;class Stu //声明基类{public: Stu(int n, string nam ) //基类构造函数 { num=n; name=nam; } void display( ); //成员函数,输出基类数据
2014-05-06 15:05:28
755
原创 第九周——时间类和输入输出运算符的重载
#includeusing namespace std;class CTime{private: int hour; // 时 int minute; // 分 int second; // 秒public: CTime(int h=0,int m=0,int s=0); void setTime(int h,int m,int s);
2014-04-28 09:39:30
659
原创 第九周——<<>>的重载(正常了)
#include using namespace std;class Complex{public: Complex(){real=0;imag=0;} friend ostream& operator<< (ostream& output, Complex& c); friend istream& operator>> (istream& i
2014-04-22 14:38:18
986
原创 第九章——<<>>的重载 (额这是怎么回事)
#include using namespace std;class Complex{public: Complex(){real=0;imag=0;} friend ostream& operator<< (ostream& output, Complex& c); friend istream& operator>> (istream& i
2014-04-22 13:24:38
909
原创 第八周————运算符重载(三)
#include using namespace std;#include using namespace std;class Complex{public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r; imag=i;} friend Complex
2014-04-15 14:02:34
701
原创 第八周——用友元类完成重载
#include using namespace std;#include using namespace std;class Complex{public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r; imag=i;} friend Complex
2014-04-15 09:17:28
947
原创 第八周——运算符的重载
#include using namespace std;class Complex{public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r; imag=i;} Complex operator+(Complex &c2); Complex operato
2014-04-15 08:45:00
624
原创 第七周——友元函数求坐标距离
//例:使用成员函数、友元函数和一般函数的区别#include #include using namespace std;class CPoint{private: double x; // 横坐标 double y; // 纵坐标// 两点距离 public: CPoint(double xx=0,double yy=0):x(x
2014-04-10 14:28:02
722
原创 第七周——体验常成员函数
#includeusing namespace std;class A{private: int *arrayAddr;//保存一个有len个整型元素的数组的首地址 int len; //记录动态数组的长度 int max; //动态数组中的最大值(并非动态数组中必须要的数据成员)public: A(int *a,
2014-04-08 13:42:35
806
原创 坐标求三角形类
#include #include using namespace std;class CPoint{private: double x; // 横坐标 double y; // 纵坐标public: CPoint(double xx=0,double yy=0); double Distance1(CPoint p) const;
2014-04-01 15:12:08
785
原创 第六周——平面坐标点类
#include #include using namespace std;class CPoint{private: double x; // 横坐标 double y; // 纵坐标public: CPoint(double xx=0,double yy=0); double Distance1(CPoint p) const;
2014-04-01 12:55:08
766
原创 项目3-对象数组操作长方柱类
#include using namespace std;class Bulk{public: double area(); double volume(); void get_value(); void output(); Bulk(double l=1.0,double w=1.0,double h=1.0);pri
2014-03-27 14:36:13
696
原创 第五周——分数类
#include #include using namespace std;class CFraction{private: int nume; // 分子 int deno; // 分母public: CFraction(int nu=0,int de=1); //构造函数,初始化用 void set(int n
2014-03-27 13:24:46
656
原创 第五周——使用带参数构造函数
#include #include using namespace std;class Triangle{public: Triangle (double x,double y,double z) { a=x; b=y; c=z; } double perimeter();
2014-03-25 13:07:09
683
原创 第五周——构造函数三角形类
#include #include using namespace std;class Triangle{public: Triangle () { a=4; b=3; c=5; } double perimeter();//计算三角形的周长 double are
2014-03-25 12:58:36
784
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人