octave
江玦
这个作者很懒,什么都没留下…
展开
-
无监督学习-Kmeans(K均值)算法
K均值算法两个步骤 1.分配簇 2.移动聚类中心原创 2021-09-26 20:20:55 · 141 阅读 · 0 评论 -
支持向量机SVM
支持向量机并不会输出概率,会直接输出1或者0原创 2021-09-07 21:45:10 · 289 阅读 · 0 评论 -
如何选择下一步的操作与错误评估
几种提高性能的操作 误差分析应该在交叉验证集上做 查准率和召回率 查准率是看查出来的癌症是不是查正确了 召回率是看能查出多少癌症来原创 2021-09-06 22:16:59 · 91 阅读 · 0 评论 -
模型选择问题(高方差高偏差,过拟合欠拟合)
如何选择 6比2比2,训练集,交叉验证集,测试集 训练集得到θ,用交叉验证集选一个误差最小的,这样就省下了测试集 训练集误差大,没有很好的拟合训练集,验证集误差也大,接近训练误差,就是左边的高偏差,欠拟合 训练集误差小,表明对训练集拟合得很好,验证集误差大,远远大于训练误差,高方差,过拟合。区别两者主要看训练误差大不大。 用这些λ(lambda)去一一最小化代价函数J(θ) 就能得到这些θ在验...原创 2021-09-03 15:24:47 · 457 阅读 · 0 评论 -
1评估假设
‘通常采用7比3的比例,百分之七十作为训练集,百分之三十作为测试集。’ 如果这些数据有规律,就要随机选取百分之七十和三十。 线性回归:实际上就是测试集平方误差的平均值,也就是我们包含参数θ的假设函数。 逻辑回归:这里用到了0/1错误分类 ...原创 2021-09-03 11:03:47 · 149 阅读 · 0 评论 -
实现神经网络
第一次实现反向传播求偏导数时,最好还是用for循环来遍历,对每一个训练对象进行迭代 计算完这些应该就得到了计算偏导数项的程序 反向传播算法的目的就是求出梯度下降的方向,梯度下降就是顺着这个方向下降 改进算法的一些方式 ...原创 2021-09-03 10:12:21 · 68 阅读 · 0 评论 -
octave随机初始化
实现代码 rand(10,12) 随机生成一个10*11的矩阵,矩阵的值都在0-1之间。 *(2*INIT_EPSILON) 都会乘2epsilon - INIT_EPSILON 再减去epsilon 最后得到 需要注意的是:这里的epsilon和之前梯度检验里的epsilon没有任何关系 总结:为了训练神经网络 1.首先应该把权重随机初始化为一个接近0且 2.进行反向传播 3.进行梯度检验 4.使用梯度下降或者其他...原创 2021-09-02 11:46:29 · 227 阅读 · 0 评论 -
验证反向传播的计算
算出该点导数的近似值,只要e足够小就行,高数内容 完整操作 Dvec是我们从反向传播中计算出来的导数 ==================前面几个加一起的总步骤=================== 4是关键,确认导数值相似后不要再使用上面计算gradapprox的方式,关掉梯度检验,因为计算量庞大,使用Dvec即可,因为高效 重要: 就是记得一旦验证反向传播的计算是正确的,就及时关闭梯度检测,不然每次都检验会特别特别慢...原创 2021-09-02 11:33:22 · 160 阅读 · 0 评论