【逻辑回归学习笔记】
算法描述
1.逻辑回归要做的事就是寻找分界面实现二分类。
2.问题假设:对一堆三角形和正方形分类。
3.数据输入:已知正方形和三角形的坐标和标签。
4.算法过程:
知识储备
1.分类和回归
①分类的目标是预测一个离散型变量(e.g. 是/否,好/坏等)。
②回归的目标是预测一个连续型变量(e.g. 温度37.0℃,光强1000mcd等)。
③逻辑回归利用已知数据拟合一条分界线,进而利用这条分界线做二分类。
2.Sigmoid公式如下:
②异或问题
异或逻辑是当输入不同时,输出真;反之输出假。
在二维异或问题中,一条直线无法将正方形和三角形区分开,但曲线可以轻易实现。由此我们需要使用sigmoid函数引入非线性。
3.最优化
梯度上升:沿着函数的梯度方向寻找到函数的最大值,其迭代公式如下:
4.欠拟合和过拟合
首先,推荐阅读[4]的129页,这一章节吴恩达老师已作详细说明。欠拟合即拟合出来的函数与数据的真实分布有较大的整体偏差,而过拟合则是拟合函数与数据分布有较大的方差,泛化能力差。
举个栗子
1.假设仅有四个数据如下图:
2.将结果代入梯度上升公式:
其中,学习率取0.01,数据①的标签减去sigmoid的结果:
注:此处仅为单个数据的训练,一般需要整个训练集多次训练迭代。下图为分类结果和过程关系,可视化代码来源于[1]。
实现代码
1.debug代码引用《机器学习实战》提供的demon,此书作者提供完整代码和数据集,强烈推荐。[1]
2.sklearn实现版本。[3]
算法分析
1.适用于二分类且需要数值型特征。
2.计算开销小但容易欠拟合。
资料引用
[1]GitHub:https://github.com/wzy6642/Machine-Learning-in-Action-Python3/tree/master/Logistic_Project1
[2]CSDN:https://blog.csdn.net/jiaoyangwm/article/details/79570864
[3]CSDN:https://blog.csdn.net/loveliuzz/article/details/78708359
[4]GitHub:https://github.com/fengdu78/deeplearning_ai_books
此算法笔记会在CSDN、知乎、b站及公众号同步更新,账号名为一枚嘉应子。转载注明出处,侵权必究。
【逻辑回归学习笔记】相关推荐
- 人工智能入门算法逻辑回归学习笔记
逻辑回归是一个非常经典的算法,其中也包含了非常多的细节,曾看到一句话:如果面试官问你熟悉哪个机器学习模型,可以说 SVM,但千万别说 LR,因为细节真的太多了. 秉持着精益求精的工匠精神不断对笔记进行 ...
- 线性回归、逻辑回归学习笔记
学习源代码 import numpy as np import matplotlib.pyplot as plt def true_fun(X): # 这是我们设定的真实函数,即ground trut ...
- 线性回归、逻辑回归-学习笔记整理
线性回归 线性回归(Linear regression)是利用回归方程(函数)对一个或多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方式. 只有一个自变量的情况称为单变量回归,多于一 ...
- 天池龙珠训练营逻辑回归学习笔记
1.知识点 "线性回归"试图学得一个线性模型以尽可能准确地预测实值输出标记.线性回归模型一般可简写为 y = w T x + b y = w^{T}x + b y=wTx+b更一般 ...
- 【机器学习】Logistic回归---学习笔记(重新整理)
Logistic回归学习笔记 Logistic回归学习线路 预备知识:建议先去B站学习一下信息量,熵,BL散度,交叉熵的概念. Logistic回归的函数模型 损失函数.损失最小化架构 对数损失作为损 ...
- 逻辑回归函数学习笔记
继续逻辑回归学习,今日笔记记录. 1.逻辑回归和线性回归的关系:对逻辑回归的概率比取自然对数,则得到的是一个线性函数,推导过程如下. 首先,看逻辑回归的定义 其次,计算两个极端y/(1-y),其值为( ...
- 2.2 逻辑回归-机器学习笔记-斯坦福吴恩达教授
逻辑回归 上一节我们知道,使用线性回归来处理 0/1 分类问题总是困难重重的,因此,人们定义了逻辑回归来完成 0/1 分类问题,逻辑一词也代表了是(1) 和 非(0). Sigmoid预测函数 在逻辑 ...
- 逻辑回归模型笔记整理6 - 参数详细说明
LogisticRegression,一共有14个参数: 逻辑回归参数详细说明 参数说明如下: penalty:惩罚项,str类型,可选参数为l1和l2,默认为l2.用于指定惩罚项中使用的规范.new ...
- 《使用Java理解程序逻辑》学习笔记
第一章 1.public 公共的 2.static 静态的 3.void 无返回值的 4.main 主方法 5.class ...
最新文章
- Android之如何优雅的管理ActionBar
- scala中的部分应用函数和偏函数的区别
- 奇异值的物理意义是什么?
- ateq测漏仪f620说明书_手环测漏仪规格齐全-同江
- 将字符串转换成ListT
- ML神器:sklearn的快速使用
- 数据库本地服务器为空,本地搭建的服务器访问不到数据库数据
- python-configparser模块
- 程序员赚钱致富的6种方法
- python解题软件哪个好用_几个好用的Python数据分析工具
- [Unity 3D] Unity 3D 性能优化 (一)
- Eclipse内存溢出
- RunLoop相关知识
- 移动通信原理B-------例题解答3
- matlab怎么排序数组,如何在MATLAB中排序结构数组?
- setting配置文件详解
- 【专题5: 硬件设计】 之 【62.案例四:简易空气净化器,完整原理图】
- Arccatalog连接到postgresql失败问题
- linux关闭firefox进程,Firefox 68+ 怎样关闭多进程
- linux无线网卡ucod文件,基于Linux的无线网卡驱动程序
热门文章
- Skype是台湾繁体中文,告诉大家变成简体的办法
- 良品铺子:金选年货礼盒里,装着“高端零食”的初心
- 屏的像素与传输速率_高像素时代 究竟多少万像素才够你用?
- 关于小米9音量键一直弹出加大声音的解决方案
- 2020年自考计算机应用基础都考什么题型,2019年10月自考计算机应用基础试题和答案...
- 防扰民型无线传输武汉卫通达定位终端防盗报警器
- 一个Axis2 + eclipse开发Web服务的例子SayHi
- 阿里旺旺聊天获取(ring3)
- 记一次初级渗透测试模拟过程
- 谷歌翻译网页版已支持直接翻译图片中的文字