
机器学习
叶锦小兴
我好帅
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Task03 基于支持向量机的分类预测
1 支持向量机介绍 支持向量机(Support Vector Machine,SVM)常用于数据分类,也可以用于数据的回归预测中。 对于一个二分类,我们得到了以下两种分类器的决策边界(黑线和蓝线): 如果此时新加入一个属于红色数据点的新数据,黑色的线会把这个新的数据集分错,而蓝色的线不会。 以上的例子较为主观,客观地评判分类器的健壮性,我们需要引入一个概念:最大间隔。 最大间隔刻画着当前分类器与数据集的边界,以这两个分类器为例: 可以看到, 蓝色的线最大间隔是大于黑色的线的,所以我们会选择蓝色的线作为我原创 2020-08-25 23:27:53 · 814 阅读 · 0 评论 -
Task02 基于决策树的分类预测
1决策树的介绍和应用 决策树的核心思想是基于树结构对数据进行划分: 1.1 决策树的主要优点: (1) 具有很好的解释性,模型可以生成可以理解的规则。 何为可解释性?即模型逻辑/预测结果多大程度上是人类可以理解的,也就是说我们能够理解一个模型的整个逻辑,并遵循整个推理导致所有不同的可能结果。 (2)可以发现特征的重要程度。 特征的重要程度,比如我们如何知道根节点需要选择“有房”这个属性,而不是其他的“有车”“有存款”等等?数学上有一种方法就是信息熵。整个过程的描述有点复杂,可以查看链接: link.除了信原创 2020-08-21 23:03:11 · 1252 阅读 · 0 评论 -
Task01 基于逻辑回归的分类预测
第一部分 准备知识 使用一个小Demo讲解了可视化的过程,以及如何使用sklearn的方法进行逻辑回归分类。 1.1 需要导入的库函数 ## 基础函数库 import numpy as np ## 导入画图库 import matplotlib.pyplot as plt import seaborn as sns ## 导入逻辑回归模型函数 from sklearn.linear_model import LogisticRegression 1.2 训练逻辑回归模型 ##Demo演示Logis原创 2020-08-19 18:18:01 · 445 阅读 · 0 评论 -
吴恩达机器学习ex8
第一部分 异常检测 这一部分实现异常检测算法,检测服务器的异常行为。 1.高斯分布 使用高斯模型来检测数据集中的异常数据。 公式: μ:均值;σ^2:方差 实现代码计算上述两个参数,需要注意的是在octave中,计算方差时,分母使用m-1,而不是m mu = sum(X) / m; sigma2 = sum((X - mu) .^ 2) / (m-1); 2.选择阈值ε 确定哪些数据异常的一种方法是根据交叉验证集选择一个阈值。可以通过交叉验证集的F1分数实现算法来选择阈值。 F1分数由精确度(pre原创 2020-06-12 12:08:17 · 368 阅读 · 0 评论 -
吴恩达机器学习ex7
第一部分 K-means聚类 这一部分实现K-means聚类方法并用于图像压缩。 1.实现K-means K-mean算法是一种自动将相似数据聚类到一起的方法。该算法是一个迭代的过程,开始时随机设定一个质心,之后重复地将数据点分配到离其最近的质心,再重新计算质心。 算法过程就是重复以下两个步骤: 1)将每个样本点分配到最近的质心 2)重新计算每个类的均值作为新的质心 由于一开始选定的随机质心对结果有很大的影响,因此通常用随机化质心运行多次。最后选择代价函数最低的值作为解。 1.1 最近邻质心 代价函数(距离原创 2020-05-21 16:52:27 · 722 阅读 · 0 评论 -
吴恩达机器学习ex6
第一部分 支持向量机 1.使用SVM对线性可分样本进行分类 样本点: 这一部分让我们使用不同的参数C观察分类效果。C就是SVM中对误分类样本的惩罚程度(正值)。C越大对训练样本的分类就会越准确,但是泛化能力也会变差。 C=1时: C=100时: 可以看到C=100时虽然没有了误分类样本,但这个决策边界却过拟合了,当样本点轻微波动时,可能就会分类错误。而C=1时虽然有一个误分类的样本,却能满足样本点波动的条件,也就是样本点到决策边界的间距较大。 2.高斯核函数SVM 2.1 非线性分类 这一部分使用SV原创 2020-05-16 11:51:01 · 371 阅读 · 0 评论 -
吴恩达机器学习ex4
第一部分 神经网络 题目介绍:使用反向传播实现手写数字识别 数据集与上一次作业相同 1.数据可视化 与上一次作业相同 2.神经网络模型 这里的内容也与上一次作业相同。 3.前馈和损失函数 神经网络的损失函数公式: h_θ(x)就是模型中的输出,手写数字分为十类所以K=10,原本的标签维度是(5000,1),需要转化为(5000,10)才能够参与运算,若标签是n,则将第n行置1,其余行置0。 ...原创 2020-04-30 15:01:15 · 543 阅读 · 0 评论 -
吴恩达机器学习ex3
第一部分 多分类问题 题目介绍:使用逻辑回归识别0到9的手写数字 数据集:5000个手写数字的训练样本,每一个训练样本都是20像素×20像素的灰度图像的数字,每个像素由一个表示该位置灰度强度的点编号表示,这个20x20的像素网格被“展开”成一个400维的向量。每一个训练样本都是矩阵X的一行数据,这就得到了一个5000×400矩阵X,其中每一行都是一个手写数字图像的训练示例。 训练集的第二部分是一个...原创 2020-04-17 12:25:38 · 719 阅读 · 0 评论 -
吴恩达机器学习ex2
逻辑回归 题目介绍:用现有的数据建立分类模型,通过给出的成绩,预测学生是否能够进入大学,前两维都是学生的成绩,第三维是标签,代表是否能进入大学。 1.数据可视化 在开始实现算法之前,将数据可视化通常是很有帮助的。这一部分代码已给出。 % 分出正样本和负样本的点 pos = find(y == 1); neg = find(y == 0); % 绘制 plot(X(pos, 1), X(pos, ...原创 2020-04-07 16:54:08 · 389 阅读 · 0 评论 -
吴恩达机器学习ex1
吴恩达机器学习第一周作业 第一部分:线性回归(单变量) 题目介绍:预测食品利润,第一列数据是城市的人口,第二列数据是该城市的食品利润。 1.绘制数据 通过可视化可以更好地理解数据。在ex1.m中已经加载了数据并且设置了X,y变量分别为人口和利润: data = load('ex1data1.txt'); X = data(:, 1); y = data(:, 2); m = length(y); ...原创 2020-04-03 15:07:42 · 766 阅读 · 0 评论