问题的提出问题来自于Kaggle的一个比赛项目:房价预测。给出房子的众多特征,要求建立数值回归模型,预测房子的价格。 本文完整代码在此 数据集到此处下载 训练数据长这个样子:Id MSSubClass MSZoning LotFrontage LotArea Street ... ...
Binary Classification by RandomForest 基于随机森林的二分类问题实践
问题的提出问题来自于Kaggle的一个Titanic的竞赛项目:给出泰坦尼克号上的乘客的特征(舱位,年龄,性别等),预测Ta是否被选中上援救船 模型训练和预测代码在此(不包含本文中的分析绘图部分代码) 数据集的获取数据集在这里可以下载 我们来看看训练数据(测试数据只是少了label所在的列) 需要 ...
Digit Recognizer by CNN 基于卷积神经网络的手写数字识别
本文将用TensorFlow来实现CNN经典的入门项目:手写数字识别 数据集 手写数字的数据集来自著名的MNIST(美国国家标准与技术研究所),它包含了6万个训练样本和1万个测试样本,并且所有样本都已经标准化为28*28个像素,每个像素值在0~1之间。同时每张图片的储存方式已经扁平化为784(28* ...
CNN 卷积神经网络
卷积和神经网络卷积了解卷积神经网络(Convolutional Neural Network)之前先来了解卷积。见下图: 从上图看,一个矩阵被另一个矩阵(我们称作“卷积核”)执行卷积,就是中矩阵通过一定步长(图中步长为1,也就是每次移动一个元素)扫描左矩阵,每次停留时计算对应元素的乘积之和作为新矩 ...
Neural Network 神经网络
神经网络结构神经网络的结构如下 我们只需要从这个图中得到这几点:1) 输入和输出的个数是固定的2) 隐藏层是可变的,它的变化就是神经网络设计结构的变化3) 连线是权重4) 连线的交汇圈包含求和以及激活函数,是输出,也可以作为下一个隐藏层的输入5) 圆圈的发散出的多条连线是同一个输入的多份拷贝 关于 ...
K-means K均值聚类
聚类K-means 是聚类算法。不同于分类,聚类是事先不知道有几类的情况下,将数据聚合成几个群体,相当于自己划出几个类出来,属于无监督学习。 K-means 算法流程1)选质心:随机选取K个数据作为质心 2)聚集:对全局数据,计算质心之外的数据到K个质心的距离,到哪个质心距离最近就归到这个质心的团体 ...
Random Forest 随机森林
Random Forest 随机森林,它的名字包含了两个信息 1)是用很多决策树组成的森林;2)是采用随机的特征选取和样本选取方法。 它的名字没有包含的信息或许更加重要:Bagging方法 BaggingBagging 常常和Boosting放一起讨论,他们作为Ensemble Learning集成 ...
XGBoost 提升树的高效实现
eXtreme Gradient Boosting简称XGBoost,不算一种全新的算法,而是GBDT的一种高效的实现,它的repo在这里 XGBoost在GBDT基础上进行了很多抽象和优化,以至于乍一看不像同一个算法了。接下来解释XGBoost的原理 XGBoost原理推导首先它继承的是GBDT的 ...
Maximum Entropy Model 最大熵模型
最大熵模型的思想是:数据集没有约束(或满足了已知约束之后)的情况下,认为数据的概率分布是均匀的,没有偏向说哪些数据是概率更大的,这种情况也代表整个数据集是熵最大的。这是在缺乏信息的情况下能够做到的最合理的“认为”,此时通过求熵最大,来求得模型参数。这样求得的模型在进行预测时,尽管精度不保证更高,但它 ...