机器学习算法之-逻辑回归(1)

什么是回归

回归树,随机森林的回归,无一例外他们都是区别于分类算法们,用来处理和预测连续型标签的算法。然而逻辑回归,是一种名为"回归"的线性分类器,其本质是由线性回归变化而来的,一种广泛使用于分类问题中的广义回归算法。要理解逻辑回归从何而来,得要先理解线性回归。线 性回归是机器学习中最简单的的回归算法,它写作一个几乎人人熟悉的方程:

⊖0为截距,⊖1~⊖n为系数;

如上方程,构建成矩阵如下,现在的目标就是构建⊖T的值。

于是,我们就可以得到一个观点,即:线性回归的任务,就是构造一个预测函数来映射输入的特征矩阵x和标签值y的线性关系,而构造预测函数的核心就是找出模型的参数:⊖T和⊖0;

通过函数Z ,线性回归使用输入的特征矩阵X来输出一组连续型的标签值y_pred,以完成各种预测连续型变量的任务,那如果我们的标签是离散型变量。

这是引申了一个概念,连续型变量和离散型变量: 连续性变量是指可以取任何数值的变量,通常以测量或计量方式获得,例如身高、体重、温度等。离散型变量是指只能取有限个数值或整数的变量,通常以计数方式获得,例如家庭成员人数、投掷骰子点数等。

这时就会产生一个问题,如果是满足0-1分布的离散型变量,我们要怎么办呢?我们可以通过引入联系函数(link function)。联系函数即一种将线性预测器转换为概率的函数。就是将线性回归方程z变换为g(z),并且令g(z)的值分布在(0,1)之间,且当g(z)接近0时样本的标签为类别0,当g(z)接近1时样本的标签为类别1,这样就得到了一个分类模型。而这个联系函数对于逻辑回归来说,就是Sigmoid函数:

这时又引申了一个概念,即归一化,归一化是一种数据预处理技术,用于将不同规模的数据转换为相同的比例。它通常是将数据缩放到特定的范围,例如0到1或-1到1之间。归一化可以消除不同变量之间的量纲影响,使得它们可以在相同的尺度下进行比较和分析。常用的归一化方法包括MinMaxScaler,而MinMaxScaler是可以取到0和1的(最大值归一化后就是1,最小值归一化后就是0),但Sigmoid函数只是无限趋近于0和1。
线性回归中Z=⊖T*x, 于是我们将Z带入,就得到了二元逻辑回归模型的一般形式:

y(x) 就是我们逻辑回归返回的标签值。此时,y(x)在[0,1]之间,而y(x)和1-y(x)之和必然是0,如果
就形成了几率,在此基础上取对数,就是:

我们让线性回归结果逼近0和1,此时y(x)和1-y(x)之和为1,因此它们可以被我们看作是一对正反例发生的概率,即y(x)是某样本i 的标签被预测为1的概率,而1-y(x)是i的标签被预测为0的概率,y(x)/1-y(x), 就是样本 i 的 标签被预测为 1的相对概率。 基于这种理解,我们使用最大似然法和概率分布函数推到出逻辑回归的损失函 数,并且把返回样本在标签取值上的概率当成是逻辑回归的性质来使用,每当我们诉求概率的时候,我们都会 使用逻辑回归。

相关推荐
大二转专业40 分钟前
408算法题leetcode--第24天
考研·算法·leetcode
凭栏落花侧1 小时前
决策树:简单易懂的预测模型
人工智能·算法·决策树·机器学习·信息可视化·数据挖掘·数据分析
hong_zc2 小时前
算法【Java】—— 二叉树的深搜
java·算法
吱吱鼠叔3 小时前
MATLAB计算与建模常见函数:5.曲线拟合
算法·机器学习·matlab
嵌入式AI的盲4 小时前
数组指针和指针数组
数据结构·算法
Indigo_code6 小时前
【数据结构】【顺序表算法】 删除特定值
数据结构·算法
阿史大杯茶7 小时前
Codeforces Round 976 (Div. 2 ABCDE题)视频讲解
数据结构·c++·算法
LluckyYH7 小时前
代码随想录Day 58|拓扑排序、dijkstra算法精讲,题目:软件构建、参加科学大会
算法·深度优先·动态规划·软件构建·图论·dfs
转调7 小时前
每日一练:地下城游戏
开发语言·c++·算法·leetcode
不穿格子衬衫8 小时前
常用排序算法(下)
c语言·开发语言·数据结构·算法·排序算法·八大排序