![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
爱学习的小仙女!
这个作者很懒,什么都没留下…
展开
-
吴恩达机器学习笔记 三十八 二进制标签 均值归一化
将原始评分矩阵的每一项减去相应的平均分,得到一个新的矩阵。此时用户 j 对电影 i 的评分要在 w*x+b 的基础上加一个。计算每个电影的平均得分,例如第一部电影的平均分为2.5,第五部电影的平均分为1.25,得到一个平均分向量。, 例如一个新用户的评分预测,w5*x1+b5+μ1恰为第一部电影的均分2.5。标签 0 和 1 可以有很多种意义。从回归到二分分类:之前定义。好久没看这个课程了,还是决定翻出来看完。给出y^(i,j)为 1 的概率,其中。,而对于二进制标签,通过。原创 2024-07-16 08:59:42 · 199 阅读 · 0 评论 -
吴恩达机器学习笔记 三十七 电影推荐系统 使用特征 成本函数 协同过滤算法
假设我们不知道电影的特征向量 x,而Alice给第一部电影评分为5,Bob给第二部电影评分为5,可得 w1*x1约为5,w2*x1约为5,找到一个合适的向量 x 满足方程组即可。以电影评分系统为例,令 r(i, j) 来表示用户 j 已经对电影 i 评分, y(i, j)表示评分具体是多少。假如每部电影有自己的特征,那么用户 j 对电影 i 的评分预测为 w(j) * x(i) + b(j)r(i, j) :一个用户 j 是否对电影 i 进行了评分, 1 为已评。w(j) b(j):用户 j 的参数。原创 2024-05-03 16:41:19 · 345 阅读 · 0 评论 -
吴恩达机器学习笔记 三十六 异常检测选择使用什么特征
对于无监督学习,尽量使特征是高斯分布的。例如下图中 x 的分布看起来不是对称的钟形分布,可以通过取对数使它变得更像高斯分布,这样会使模型更好地拟合数据。实际中可以尝试几个不同的 c 来确定哪个使数据变得更加像高斯分布。不加 c 的话有的 x 会使 log函数没有意义,尝试加一个小小的 c 并不断调整。对于监督学习,有一些多余的特征影响不大,对于无监督学习,更难发现哪些特征是可忽略的。注意,对训练集做的操作同样也要对交叉验证集和测试集做。原创 2024-04-27 14:21:42 · 174 阅读 · 0 评论 -
吴恩达机器学习笔记 三十五 异常检测与监督学习
有很多不同的异常,现有的算法不能从正样本中得知什么是异常,或未来可能出现完全没见过的异常情况。有足够的正样本让算法学习到正样本什么样,且未来出现的正样本会和以前的类似。例如金融欺诈,隔几个月或几年就有新的方式出现。控制数据中心的设备,黑客总会使用全新的方式入侵。例如垃圾邮件,大概率和从前的垃圾邮件类似。正样本 ( y = 1 ) 的数量非常少。负样本 ( y = 0 ) 的数量非常多。制造业:发现已知的,从前出现过的缺陷。当正样本和负样本的数量非常多时。制造业:发现从前没有的缺陷。原创 2024-04-20 20:01:04 · 325 阅读 · 0 评论 -
吴恩达机器学习笔记 三十四 异常检测算法 开发和评估一个异常检测系统
飞机发动机的检测,假设有10000个正常的样本和20个异常的样本,我们拿6000个正常的样本当做训练集用来训练算法,拿2000个正常的样本和10个异常的样本用来调整算法的参数,剩下的当做测试集。一个有 x1、x2 两个特征的数据集,这两个特征的高斯分布分别如图右边所示,将两个概率乘起来得到左下角的图,越靠近中心的概率越大,越可能是正常的,而边缘的概率更低,更可能是异常数据。但是当异常样本的数量非常非常少时,也可以不要测试集,只用训练集和交叉验证集,这种做法的缺点是没办法评估模型在未来的真实数据中的表现。原创 2024-04-03 10:57:15 · 252 阅读 · 0 评论 -
吴恩达机器学习笔记 三十三 发现异常事件 高斯分布
也叫正态分布,normal distribution,钟形分布,bell-shape distribution),计算训练样本的 x 落在某个区间的概率,当验证集的样本的概率小于一个很小的数时,认为这种情况是异常的。例如飞机发动机的异常检测,假设只有两个特征,新的样本和之前的样本偏离的很多,就认为可能是异常的点。μ 和 σ如下图所示,其中有些统计学家会用1/m-1替换1/m, 但这不是很重要。如下图,这个曲线以 μ 为中心,表示的是 p(x),σ是标准差。原创 2024-04-01 20:56:43 · 211 阅读 · 0 评论 -
吴恩达机器学习笔记 三十二 K-means初始化 选择聚类数量
另一种方法是根据后续的工作进行评估 ,例如调整T恤衫的尺寸,可以分为三类,也可以分为五类,但两种情况下T恤衫的合适程度以及生产成本不同,需要根据这些进行选择。一种方法是肘方法(elbow method), 把 J 当做是集群数量 K 的函数,选择函数弯曲的地方(即手肘)作为 K 的值。的情况,如左下图和右下图,因此应当多次运行 K-means 算法 ,取成本 J 最小的那个。随机初始化的步骤如下,通常50-1000次是正常的,次数太多计算成本会很高。第二步:设这 K 个样本为 μ1 μ2 ... μk。原创 2024-04-01 20:22:33 · 425 阅读 · 0 评论 -
吴恩达机器学习笔记 三十一 K-means算法及优化目标 成本函数
对 K 个质心,每次都计算分配给他的所有点的“中心”,这个中心通过计算不同维度的平均值得到,假如只有两个特征,(如图)计算横的平均值,竖的平均值,得到的点就是新的质心。图中最下方式子的 x(1) x(5)等,都是有 n 个特征的向量,计算平均值时每个特征都要计算到。第一步分配点给质心的时候 μ1 到 μk 是不动的,分配点来使 J 最小;对 m 个 点,每个点对应的质心为 c(i) ,若离红色的质心近,则 c(i) 的值为1,否则为2。计算距离用的是L2范式。c(i) 是当前这个样本点被分配的集群的下标。原创 2024-03-31 10:42:40 · 318 阅读 · 0 评论 -
吴恩达机器学习笔记 三十 什么是聚类 K-means
并把集群中心移动到这里,然后再次遍历每个点看看它离哪一个更近,然后重复,直到中心不再变化。无监督学习算法的数据集中没有标签 y ,所以不能说哪个是“正确的 y ”。K-means算法就是在重复做两件事:一个是。,关注多个数据点并自动找到相似的数据点,在。例如,要求算法找到下图中的两个类,原创 2024-03-28 16:24:20 · 423 阅读 · 0 评论 -
吴恩达机器学习笔记 二十九 树的增强 XGBoost 极端梯度提升 什么时候使用决策树 决策树和神经网络的比较
增强树:和随机森林类似,但再抽取时每个样本被抽到的概率不是相同的,而是。2. 不建议在非结构化的数据(如图像、音频、文本)上使用决策树;1. 神经网络适用于所有类型的数据,包括结构化的和非结构化的。3. 神经网络可以更方便地连接起来组成一个更大的模型。用 XGBoost 解决分类和回归问题的代码。,相当于把做的不好的部分再拿出来练习一遍。3. 有一套很好的关于分裂和停止分裂的标准。4. 一个小的决策树可以人力解释。的数据(类似表格之类的);1. 一种增强树的开源实现。决策树(包括树集合)原创 2024-03-26 09:34:23 · 464 阅读 · 0 评论 -
吴恩达机器学习笔记 二十八 使用多个决策树 树集合 有放回抽样 随机森林算法
如下图,猫猫分类问题中,若改变一只猫的特征,得到的将是两种完全不同的决策树,这使算法没那么健壮。使用一个树集合(tree ensemble),集合中每个树预测的结果可能不同,由每个树进行。B越大越好,但好到一定程度之后再增大,实际上没有变好多少,尤其是当 B 远大于100时。,如下图,每次从十个样本里抽一个直到抽够十个,是有放回抽样,所以抽出来的可能有重复。,这里 replacement 指的是抽一次之后把抽出来的放回去再继续抽。,最多的是 cat, 所以结果就是cat。,这时可以使用多个决策树,称。原创 2024-03-25 10:31:27 · 342 阅读 · 0 评论 -
吴恩达机器学习笔记 二十七 决策树中连续值特征的选择 回归树
如下图,计算不同分类后的左右两支子树的带权重方差和,再用根节点的方差减去这个数,得到方差的减少量,同理,把条件设为weight<=8,划分后左边有两个样本,全是猫,右边有八个样本,其中三个是猫,计算信息增益(蓝色的那个),可以发现边界设为9时信息增益最大,所以就按照这个标准分。还是猫狗分类的案例,假如再增加一个特征weight,该值是一个连续的值,如何在决策树中使用该特征?,如 weight<=9 , 此时左边有四个样本,都为猫,右边有六个样本,其中一个为猫,-->推广到回归问题:回归树。原创 2024-03-23 16:04:32 · 332 阅读 · 0 评论 -
吴恩达机器学习笔记 二十六 决策树学习过程 独热编码one-hot
例如猫狗分类,原本耳朵形状这个特征有三个可能的取值,采用独热编码的方式创建三个新的特征,每个特征只有两种情况(0或1) ,每个特征恰好有一个是1,所以叫独热。也可以推广到其他特征,用0或1来表示特征,可以将数字作为神经网络的输入。停止标准有:一个节点只有一类样本;分裂一个节点会导致树的深度超过最大值;从新的分裂得到的信息增益低于一个阈值;一个节点中的样本数低于一个阈值。2.计算所有可能的特征的信息增益,选择信息增益最大的那个。3.根据选择的特征分离数据集,创造左右两支子树。1. 所有样本都在根结点。原创 2024-03-22 16:29:02 · 408 阅读 · 0 评论 -
吴恩达机器学习笔记 二十五 衡量纯度 决策树特征选择 信息增益 熵的计算公式
实际中要对比的熵的减少,用根结点的熵减去计算出的加权平均,得到的结果就是信息增益,衡量的是让树分裂而导致的纯度的提升。如果计算出来 没减少多少熵,那么就不必冒着过拟合的风险再分裂树。熵(entropy): 衡量一组数据纯度的指标。熵的图象如下图所示,纵轴通常用 H 来表示。当训练集的比例为一半一半的时候熵最高,为1;全是猫或者全是狗的时候最低,为0。其中 p 是当前这个结点有多少是正样本(多少只猫),w 是有多少样本进入到了这个结点。熵的减少在 决策树 中称。全都是猫,很纯,有的不是猫,也很纯。原创 2024-03-19 09:22:54 · 567 阅读 · 0 评论 -
吴恩达机器学习笔记 二十四 决策树模型 学习过程 什么时候停止分裂 如何选择结点特征
当一个结点的样本数低于一个阈值时。决策树最顶端的结点称根结点(root node),除了根结点和叶子结点之外的叫决策结点(decision node),最底层的叫叶子结点(leaf node),叶子结点做出预测。确定根结点使用什么特征,分类后再选一个特征进行分类,直到分出的一组中都是同一类了结束。要选能使纯度(一个子集更接近完全是狗,或者更接近完全是猫)最大的那个。:识别小猫,上面这个分类的特征 x 采用分类值(几个离散的值)保持树不太深有两个原因:一是为了快,另一个是这样不太容易过拟合。原创 2024-03-17 16:26:59 · 455 阅读 · 0 评论 -
吴恩达机器学习笔记 二十三 倾斜数据集的误差指标 精确率 召回率 精确率与召回率的平衡 F1分数
假设 f(x) 大于等于0.5时为1, 小于0.5时为0.如果是一个罕见疾病的预测,我们希望只有在非常确定为 1 时才预测为 1 ,可以。此时可以用精确率和召回率。假设只有非常确定没有病的时候才预测为 0,可以降低这个阈值,此时精确率下降,但召回率会提高。根据精确率和召回率选择算法时,一种方法是计算二者的平均值,但这通常不好。计算F1分数可以结合精确率和召回率选择好算法。相当于检测出的正有75%是真的正,能检测出的正大概占所有真的正样本的60%:真阳的样本数/预测为阳的样本数=真阳数/(真阳+假阳)原创 2024-03-16 10:14:32 · 461 阅读 · 0 评论 -
吴恩达机器学习笔记 二十二 机器学习项目的完整周期 公正、偏见和伦理
3.训练模型:收集完数据后开始训练模型,训练、错误分析(可能会通过分析发现还需要收集更多的数据)、迭代地改进。4.制定一个缓解计划,如果部署后有问题可以触发(如自动驾驶汽车,应提前制定好汽车发生事故后的措施)2.收集数据:确定需要什么数据来训练神经网络,然后收集。4.部署到实际生产:部署并监控系统的性能,维护系统。2.做一些相关行业的专业调查,比如系统的定义是什么。1.确定项目范围:定义项目是什么以及你想要做什么。1. 有一个多元化的团队。原创 2024-03-15 11:29:31 · 407 阅读 · 0 评论 -
吴恩达机器学习笔记 二十一 迁移学习 预训练
迁移学习为什么有用?例如图像识别来说,一个识别猫狗的神经网络的某些隐藏层可能是用来识别边界、识别线条,这些都是一些基本的操作,所以也可以直接用来识别手写数字。当只有一个小数据集的时候,第一种方法很好;若数据集稍微大一些的话第二个方法更好。:直接把神经网络拿来,前面的参数可以直接用,把最后一层改了。迁移学习的另一个优点:可以直接用别人训练好的神经网络。:进一步训练,微调权重以适应具体的应用。:在一个大数据集上训练,得到参数。原创 2024-03-15 11:05:31 · 622 阅读 · 0 评论 -
吴恩达机器学习笔记 二十 机器学习开发过程 增加数据
选择结构(模型、数据等)-->训练模型-->诊断(偏差、方差、误差分析)目前算法和模型已经比较完善了,可以考虑专注设计算法使用的数据。2.数据增强(data augumentation)3.数据合成(data synthesis)1.增加全新的 x、y。原创 2024-03-14 17:55:28 · 376 阅读 · 0 评论 -
吴恩达机器学习笔记 十九 解决高偏差/高方差的方法
5.增加 λ ,意味着我们更注重 J(w,b) 的前一项,即对训练样本的拟合,这样可以解决高偏差;通常大一点的神经网络更好,通过恰当的正则化可以使大的神经网络优于小的或至少和小的表现差不多。神经网络只要足够大(更多隐藏层或层中有更多单元),总能强大到适应训练集。3.增加特征,例如房价预测中不只根据大小来预测房价,可以解决高偏差;1.增加训练样本,这可以使模型泛化的更好,从而修正高方差;4.增加多项式的项,可以减少欠拟合,修正高偏差;2.减少特征数量,可以减少过拟合,解决高方差;6.减小 λ ,和上面相反。原创 2024-03-12 09:39:07 · 454 阅读 · 0 评论 -
吴恩达机器学习笔记 十八 制定一个性能评估标准 学习曲线 高偏差 高方差
J_train可能会比人类的表现好一些,但 J_cv 仍远大于 J_train。这种情况下可以增加样本数量或许能使模型表现得更好。模型太简单了,再怎么加数据误差也差不多,假设以人类水平为基准,则J_train和基准之间差距较大,图像一直水平向右延伸,,因此 J_train 会逐渐增大一点点,但泛化能力也逐渐增强;1.考虑人类在这个问题上的表现。判断是高偏差还是高方差。2.对比竞争算法的表现。原创 2024-03-11 16:28:19 · 543 阅读 · 0 评论 -
吴恩达机器学习笔记 十七 通过偏差与方差诊断性能 正则化 偏差 方差
当 λ 非常大时, w 会非常小, 每个 w 都接近0,模型会是常数 b ,即一条水平线。这种情况下会出现高偏差(欠拟合),并且J_train会很大。当 λ 为0时,没有正则化,只是拟合一个多项式,会出现过拟合/高方差。此时 J_train 很小但 J_cv 会非常大。从一阶到四阶,训练集的误差越来越小,而验证集的误差先变小后变大。高方差(过拟合):J_cv要远大于J_train。J_train 和 J_cv 与 λ 的关系。刚刚好:J_cv和J_train都小。J_cv和J_train。原创 2024-03-11 09:38:08 · 418 阅读 · 0 评论 -
吴恩达机器学习笔记十五 什么是导数 计算图 大型神经网络案例
例如 w=3+0.001, 则J(w)=9.006001,因此当w=3且增加一个变化量 ε 时,J(w)将会增加 6ε,也就是此时J(w)对 w 的导数值为6.:从后往前计算 J 对每一个的导数,是一种有效计算导数的方法,可以减少重复计算。假设函数 J(w)=w^2,当 w=3 时, J(w)=3*3=9。大型神经网络案例,计算图如下。如下图中由边或箭头连接的结点。在python中求导。原创 2024-03-07 13:32:19 · 648 阅读 · 0 评论 -
吴恩达机器学习笔记十四 多输出的分类 多类和多标签的区别 梯度下降优化 卷积层
这可以被认为是预测不相互排斥的数据点的属性,例如与文档类型相关的主题。一个文本可以归类为任意类别,例如可以同时为政治、金融、 教育相关或者不属于以上任何类别。意味着一个分类任务需要对多于两个类的数据进行分类。比如,对一系列的橘子,苹果或者梨的图片进行分类。多类分类假设每一个样本有且仅有一个标签:一个水果可以被归类为苹果,也可以 是梨,但。每个神经元只关注前一层的部分输入,优点是能提高计算速度、需要更少的训练数据(减少过拟合的可能)若 w或b 一直沿着 一个方向,Adam算法将自动增大学习率α;原创 2024-03-01 15:16:11 · 432 阅读 · 0 评论 -
吴恩达机器学习笔记十三 多分类问题(multiclass) Softmax 神经网络的softmax输出 softmax改进
sparse(稀疏)指 y 的每个数字都是类别之一.下面的代码能用但不建议,有更好的。例如有十种类别的输出,此时称这个神经网络有一个softmax输出层或上层是softmax层。softmax layer有时也称softmax activition function.计算2/10000,两种不同的方式得到的结果不同,第二种更准确。多分类问题指可能会有多于两个的输出标签,而不只是0或1的问题。如果在程序中指定表达式而不是使用中间变量的话,会更加精确。Softmax算法是逻辑回归的一种推广。原创 2024-02-29 16:00:20 · 609 阅读 · 0 评论 -
吴恩达机器学习笔记十二 Sigmoid激活函数的替代方案 激活函数的选择 为什么要使用激活函数
Sigmoid激活函数的替代方案 激活函数的选择 为什么要用激活函数 最初常用的是sigmoid函数,使ReLU函数有两个原因:一是ReLU函数更简单,更快;在需求预测案例中,此时相比将awareness规定为0、1,不如考虑概率,认为它是一个0-1之间的数。如果神经网络的每个层都采用线性激活函数,最后的结果和线性回归是完全相同的,相当于一个单层神经网络,无法处理复杂的非线性问题。原创 2024-01-28 14:23:48 · 490 阅读 · 0 评论 -
机器学习笔记十一 矩阵乘法 Tensorflow实现神经网络
向量a和向量w的点积(dot product) 与 向量a转置和向量w的点积相同。第一步指定模型,告诉TensorFlow如何计算推理。如何使用TensorFlow实现神经网络。第二步定义编译模块调用哪个函数。原创 2024-01-17 19:37:51 · 421 阅读 · 0 评论 -
吴恩达机器学习笔记十 神经网络 TensorFlow 人工智能
sequential()把两层顺序连接起来;如果有新的x,用predict()说几层的时候是指隐藏层及输出层,不包含输入层。例如下图是一个四层神经网络。前向传播(forward propagation)TensorFlow(张量流)实现神经网络的搭建。越靠近输出层,该层的神经元数量越少。原创 2024-01-08 19:26:15 · 425 阅读 · 0 评论 -
吴恩达机器学习笔记八 正则化
λ=0,采用高阶多项式会过拟合;λ非常大,则每个 w 都很小,F(X)约为 b ,结果为一条直线,欠拟合。使第一项均方差较小来符合数据,使第二项正则化项较小来使 w 较小。到这里第一个专项课程就结束了,同志仍需努力!含正则化线性回归的梯度下降。原创 2023-12-19 15:00:14 · 64 阅读 · 0 评论 -
吴恩达机器学习笔记七 逻辑回归的梯度下降 过拟合及解决方法
3.正则化(regularization):鼓励算法减小参数 w 的大小。泛化(generalization):对全新的示例也能做出良好的预测。2.特征选择(feature selection):使用更少的特征。1.收集更多的测试数据。原创 2023-12-18 09:51:01 · 68 阅读 · 0 评论 -
吴恩达机器学习笔记六 逻辑回归 决策边界 逻辑损失函数
作用是将输入的特征或集合输出为一个0-1之间的数字。输出为 0.7 意味着有70%的可能性 y 的标签为1,而为 0 的可能性必是30%。:令z为0,求出各个特征之间的关系,如x1+x2=3,或x1²+x2²=1.:把线性回归当做z,代入到sigmoid函数中。原创 2023-12-16 10:27:41 · 62 阅读 · 0 评论 -
吴恩达机器学习笔记五 判断梯度下降收敛 学习率的选择 特征工程 多项式回归
正常情况下,成本函数应该随迭代次数的增加而减小,否则意味着学习率选择的不合适(太大),或代码错误(如α前面的负号写成了正号)。设一个很小的 ε ,如0.001.若J在一次迭代中增长不超过ε,即J<=ε,称收敛。先设一个小的,0.001,再设三倍0.003,再设0.01,以此类推。(learning curve):横轴是迭代的次数,纵轴是成本函数。根据直觉设计新的特征,通常是通过变换或组合原始的特征。在这种情况下特征缩放更加重要。平方根这种不那么陡峭。原创 2023-12-14 20:07:25 · 67 阅读 · 0 评论 -
吴恩达机器学习笔记四 多维特征 特征缩放
只适用于线性回归,不需要迭代就能求出参数 w,b;没有推广到其他算法,输入很多时速度很慢。首先计算平均值μ,然后计算标准差(standard deviation) σ,x-μ/σ。第一种方法:都除以范围的最大值,让变量的范围落在0-1。这里的点积是向量乘法,对应两个相乘然后再相加。:代码更简单,运行更快。原创 2023-12-11 10:45:42 · 58 阅读 · 0 评论 -
吴恩达机器学习笔记三 学习率
梯度下降可能会过冲(overshoot)且永远不会达到最小值;可能会不收敛,甚至发散。(bashed gradient descent):每次都用所有的训练示例。接近一个局部最小值时,导数将变小,学习率不会变大。原创 2023-12-10 09:34:31 · 47 阅读 · 0 评论 -
吴恩达机器学习笔记二 代价函数 梯度下降
例:站在最高的山顶,假设要最快走到山谷,从所有的方向挑一个最陡的走一步,到达一个新位置,然后重复该步骤。平方误差成本函数(squared error cost function),除以2是为了后续计算方便。1.从某个 w 和 b 开始,线性回归中初始值不重要,通常将它们都设为0.2.不断改变 w,b 来减小成本函数 J(w,b),通常是一个0-1之间的一个小的正数,如0.01。两个参数同时更新,不能用更新后的 w 计算 b。可能会找到不同的最小值,都是。原创 2023-12-09 10:30:16 · 50 阅读 · 0 评论 -
吴恩达机器学习一 监督学习无监督学习
输出是一组有限的可能输出类别,预测类别(class/category),类别不必是数字。常见的监督学习是指学习x到y或输入到输出的映射的算法,特征是给出正确的学习算法示例。从无标签的数据中获取某种结构或模式,数据只有输入但不输出标签。:将一个大数据集压缩成一个很小的数据集,并尽可能少得丢失信息。:从无限多个可能的数字中预测一个数。:将无标签的数据放置在不同的集群中。原创 2023-11-28 19:26:56 · 70 阅读 · 0 评论