干货|机器学习零基础?不要怕,吴恩达课程笔记第三周!逻辑回归与正则
吴恩达Coursera机器学习课系列笔记
课程笔记|吴恩达Coursera机器学习 Week1 笔记-机器学习基础
干货|机器学习零基础?不要怕,吴恩达机器学习课程笔记2-多元线性回归
1.1 Logistic Regression (Classification) Model
之前对房价的预测,其预测结果是一个连续变量,属于回归模型(Linear regression)。接下来要讲的是分类模型(Logistic regression),即其预测结果是一个离散变量,有固定的取值分布。
分类问题,又分成了“二分类”和“多分类”,先讲简单的“二分类”。
例子:判断一个病人是否罹患癌症。一个二分类问题,是或者否。
sigmoid函数形状如下:
现在可以用这个[0,1]之间的值来表示罹患癌症的概率了,设定一个阈值(threshold),如果h(x)>threshold,则罹患癌症,反之。
注意:这里的sigmoid只是起到了映射到(0, 1)范围的作用。
逻辑回归的边界依然是: θ^(T)x==threshold
从这个边界中看到,这样的逻辑回归是一个线性分类器。
用等高线图画出来就是这样的:
三维图是这样的:
画图的代码如下:
% Here is the grid rangeu = linspace(30, 100, 100);v = linspace(30, 100, 100);z = zeros(length(u), length(v));% Evaluate z = theta*x over the gridfor i = 1:length(u)for j = 1:length(v)t = [1, u(i), v(j)];z(i,j) = sigmoid(t * theta);endendz = z'; % important to transpose z before calling contour% Plot z = 0% Notice you need to specify the range [0, 0]contour(u, v, z, [0.5, 0.5], 'LineWidth', 2)xlabel('Exam 1 score')ylabel('Exam 2 score')hold off;figure;surf(u, v, z)
接下来就是loss function的设置了。
在logistic regression中,不再使用平方差来表示error了,转而使用negative log来表示error:
解释为什么使用negative log;
首先说明loss function的定义:当预测结果越接近真实结果时,loss越小。只要函数可以满足这一点,就可以成为loss function
逻辑回归一般情况下是线性分类器,但是在特定的情况下,可以转变成非线性分类器,如下图:
1.3 Multiclass Classification Model
OK, OK…但是还有很多情况,分类不止“是”、“否”两种。
下图左边是二分类的情况,右边是多分类的情况。
对于多分类问题可以转化成多个二分类问题来解决,如下图,先取一种类别,把其他的都归并为一类。然后再去一种类别,把剩余的归并为一类……直至所有类别都遍历完。
最后,对于一个x,有k个h(x),分别代表k个类概率,取最大h(x)所属的类别即可。
2.1 Overfitting Problem
overfitting就是在训练集中拟合的特别好,或者说是过分好了,导致在新数据上的预测的效果不好。如下图:
左边没有overfitting,右边的overfitting
2.2 Regularization Intuition
下面两幅图中,左边的没有overfitting,右边的overfitting了,原因就是多了最后θ3和θ4这两项使得整个模型变复杂了。
所以我们需要在cost function中增加一项惩罚项penalty,我们的目的就是让θ3和θ4尽可能的小,最好接近于0,这样就可以消除这两项的干扰了。
2.3 Regularization Term
总而言之,λ是用来控制惩罚项的影响因子,越大就是让惩罚项越发挥作用。
最后,在gradient descent中,把这一项也求导了就好了。
干货|机器学习零基础?不要怕,吴恩达课程笔记第三周!逻辑回归与正则相关推荐
- Machine Learning(吴恩达<一>线性回归与逻辑回归)
目录 一.机器学习(ML)简介 1. 人工智能.机器学习.深度学习的关系 2. 机器学习与深度学习的比较 2.1.应用场景 2.2.所需数据量 2.3.执行时间 2.4.解决问题的方法 3. 监督学习 ...
- 吴恩达深度学习 —— 2.14 向量化逻辑回归的梯度输出
这一节将学习如果向量化计算m个训练数据的梯度,强调一下,是同时计算. 前面已经说过,在逻辑回归中,有dz(1)=a(1)−y(1)dz^{(1)}=a^{(1)}-y^{(1)}dz(1)=a(1)− ...
- 吴恩达深度学习L1W2——实现简单逻辑回归
文章目录 一些笔记 写作业 导入数据 取出训练集.测试集 处理数据的维度 标准化数据 sigmoid 函数 初始化参数w.b 前向传播.代价函数.梯度下降 优化 预测函数 模型整合 使用模型 绘制代价 ...
- Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Support Vector Machines)
Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Support Vector Machines) 文章目录 Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Su ...
- 花书+吴恩达深度学习(三)反向传播算法 Back Propagation
目录 0. 前言 1. 从 Logistic Regression 中理解反向传播 2. 两层神经网络中单个样本的反向传播 3. 两层神经网络中多个样本的反向传播 如果这篇文章对你有一点小小的帮助,请 ...
- P3 吴恩达推荐笔记:22张图总结深度学习全部知识
吴恩达推荐笔记:22张图总结深度学习全部知识 本文简要的解释了深度学习中的基本概念,包括监督学习.逻辑回归.正则化等等. 并且,在了解了一些基本概念后,本文还对目标检测.人脸识别.自然语言处理进行了简 ...
- Residual Networks(吴恩达课程)
Residual Networks(吴恩达课程) # UNQ_C1 # GRADED FUNCTION: identity_blockdef identity_block(X, f, filters, ...
- Deep Learning Art: Neural Style Transfer(吴恩达课程)
Deep Learning & Art: Neural Style Transfer(吴恩达课程) # UNQ_C1 # GRADED FUNCTION: compute_content_co ...
- Image Segmentation with U-Net(吴恩达课程)
Image Segmentation with U-Net(吴恩达课程) # UNQ_C1 # GRADED FUNCTION: conv_block def conv_block(inputs=No ...
最新文章
- Windows下创建进程简介
- 动态规划——最长上升子序列问题 两种角度及优化算法
- 便利的开发工具 CppUnit 快速使用指南
- java转账_使用Java模拟银行账户存、取款、转账功能
- [娱乐]一款浅陋的C++控制台贪吃蛇小游戏
- 直播预告 | AAAI 2022论文解读:基于锚框排序的目标检测知识蒸馏
- ios 请求失败封装_vue_axios请求封装、异常拦截统一处理
- 好看的个人介绍引导页PHP源码
- 【kafka】Kafka消息压缩与解压与相关实验
- 程序员专属段子集锦 3/10
- C++ 中宏的使用 --来自:http://blog.csdn.net/hgl868/article/details/7058906
- IntelliJ IDEA文件模板变量
- 多项式拟合缺点_三种回归算法及其优缺点
- 五 IP核行业潜在投资方向和机会
- Java项目:springboot超市进销存管理系统
- 【并发编程一:走进并发编程】
- IDEA乱码问题(jdk18)
- linux lds,Linux LDS 文件格式详细分析.pdf
- 离线地图下载和webGIS简单应用
- 华为云大数据轻量级解决方案,让数据“慧”说话