摘要: 机器学习实战 -- 决策树(ID3) ID3是什么我也不知道,不急,知道他是干什么的就行 ID3是最经典最基础的一种决策树算法,他会将每一个特征都设为决策节点,有时候,一个数据集中,某些特征属性是不必要的或者说信息熵增加的很少,这种决策信息是可以合并的修剪的,但是ID3算法并不会这么做 决策树的核心论点是香农信息论,借此理论得出某种分类情况下的信息熵 某种决策下,分类趋... 阅读全文
posted @ 2018-12-09 23:35 天字三号房 阅读(299) 评论(0) 推荐(0) 编辑
摘要: defcreatePlot(inTree): fig=plt.figure(1,facecolor='white') fig.clf() axprops=dict(xticks=[],yticks=[]) createPlot.ax1=plt.subplot(111,frameon=False... 阅读全文
posted @ 2018-12-06 23:46 天字三号房 阅读(422) 评论(0) 推荐(0) 编辑
摘要: 获取树节点的数据以及树的层数 defgetNumLeafs(myTree): numLeafs=0 firstStr=list(myTree.keys())[0] #此处注意,书上用的是py2的版本,所以有些不同,对于a.keys()的类型需要先转成列表 secondDict=myTree[firstStr... 阅读全文
posted @ 2018-12-02 23:42 天字三号房 阅读(506) 评论(0) 推荐(0) 编辑
摘要: 吴恩达第2课第2周编程习题 目标:使用mini—batch来加快学习速度;比较梯度下降,momentum,adam的效果 核心:指数加权平均值得计算及其意义,它是momentum,RMSProp,Adam算法的基石 不足:本例程没有使用学习率衰减的步骤,同时本例程只适于3层的二分法的神经网络 常记点: 1. 偏差修正时是除以,此处是-,t从1开始; 2. L=len(parameters) //2... 阅读全文
posted @ 2018-07-24 23:27 天字三号房 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 2-2-1:mini-batch初步 mini-batch,将巨大的数据集的样本,不再做一个向量里做运算了,而是分割成T个小样本的合集。 特点:一次只处理m/T个样本,执行深度学习过程 优点:当遍历完整个数据集时,执行了T次梯度下降,加快了学习过程。 并不再是人为的去规定遍历多少次数据集了,而是根据条件去选择合适时机终止(如损失函数或者达到一定的值,用while语句确定) 一代(one epoch... 阅读全文
posted @ 2018-07-23 21:39 天字三号房 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 1.6其它防止过拟合方法 1.扩增数据,(如果不能获取更多的新数据时,你可以将图片水平翻转,任意裁剪图片,对于光学字符,可以扭曲旋转) 2.early stop 即在测试误差小的一个点时,就停止继续迭代下去,如在下图标记的地方就停止迭代 原理:一开始W很小,接近0,神经网络简单, early stop的缺点,过早的停止迭代,造成训练误差很大 纠正一个点:训练数据集是找到一个合适的算法,... 阅读全文
posted @ 2018-07-19 21:56 天字三号房 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 1.1数据分集 将所有的训练划分为3个集:训练集,验证集,测试集 验证集:迭代选择出最优的几个算法 测试集如果不需要做无偏估计时,可省略 数据量小622(73)开 大时可以(98/1/1)或者(99.5/0.4/0.1)开 无偏估计,验证你的数据是否遵循同一个分布 1.2 方差,偏差 在神经网络中,偏差指的事训练数据集的表现,方差对应测试集 如果训练集的误差很大,即偏差很大,称之为欠拟合 如果训练... 阅读全文
posted @ 2018-07-18 23:30 天字三号房 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 第四周编程 目标:建立一个深层的神经网络识别猫 核心思想: 正向传播 反向传播 需要注意的事正反向传播的初始值, , , 数据集:与第一个编程作业的数据集一样 代码流程: 根据神经网络结构初始化参数(W,b) 将单元函数写出来(linear,sigmoid,relu,sigmoid_backward,relu_backward) 正反向传播,输出梯度 单步梯度下降更... 阅读全文
posted @ 2018-07-18 11:51 天字三号房 阅读(1224) 评论(0) 推荐(1) 编辑
摘要: 第四周 4.1深度神经网络符号约定 L=4______(神经网络层数) 4.2 校正矩阵的维数 校正要点:,, dZ,dA,dW,db都与它们被导数(Z,A,W,b)的维数相同 4.3 为什么使用深层表示 按神经网络的概念(仿人脑):有浅层的简单识别出一些特征,然后再通过深层的组合,最终,整个网络实现一个复杂的问题 按电路来说:一个巨大的计算问题,分几路出去(特征,隐藏层... 阅读全文
posted @ 2018-07-16 21:10 天字三号房 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 平面数据分类 吴恩达深度学习第一课第三周编程作业 目的:分类空间中的点 方案:二分分类法 神经网络结构:单隐藏网络,n_h=4(n_h是一个超参数) 隐藏层使用的是tanh作为激活函数,输出层是sigmoid函数 X是一个(2,400),Y是一个(1,400)的矩阵,X[0]表示x的坐标值,X[1]表示y的坐标值,从而确定平面上的一点 Y是一个很粗糙的行向量,前半部分都是0,后半部分都是1.... 阅读全文
posted @ 2018-07-15 22:11 天字三号房 阅读(470) 评论(0) 推荐(0) 编辑