广义线性模型(Generalized Linear Model)——机器学习

article/2025/8/19 18:05:01

零、前言

对于条件分布(y|x;θ),对于线性回归模型有,而对分类问题有。其实这些分布均是广义线性模型(GLM)的特殊情况。

我们通过定义广义线性模型,可以据此求出拟合函数h(x)

 

一、指数分布族(Exponential Family)

其定义如下

其中,η称为自然参数(natural parameter),T(y)称为充分统计量(sufficient statistic)(通常T(y)=y)。当a、b、T都确定了,就定义了以η为参数的指数分布族。

下面以伯努利分布与正态分布为例子,从指数分布族推导出它们。

1.1 Bernoulli分布

伯努利分布可写作:

对比指数分布族的定义,可知,同时也有:

注意,这时我们可以得到,即sigmoid函数的表达式,其意义后篇将说明。

1.2 Gaussian分布

实际上,σ^2的选取不影响各函数与参数的确定,这里不再证明,为了简化,我们令σ^2=1,于是有

根据指数分布族的定义,我们得到

实际上,指数分布、泊松分布、伽马分布、狄利赫里分布等很多分布也属于指数分布族,这里不再叙述。

 

二、GLM模型的建立

2.0 GLM的假设

对于回归或是分类问题,我们的目标是若其分布属于指数分布族的某种分布,那么根据这求出拟合函数h。具体假设如下:

1.

2.拟合函数h为条件概率期望关于特征x的函数,即

3.自然参数满足

其中假设3对η的线性假设,就是GLM中线性的由来。

2.1 普通的最小二乘

在线性回归模型中,最小二乘是最大似然,其中y|x服从高斯分布。

那么在GLM,若假设对给定x的y服从高斯分布,根据前文的证明,有μ=η,又根据线性假设η=θTx,所以μ=θTx=E(y|x)=h(x),所以得到h是线性回归

2.2 Logistic回归

对于二分问题,根据前文所述,有,根据线性假设,有φ=hθ(x),所以在二分问题中,h为logistic回归/sigmoid分布

2.3 Softmax回归

由二分问题演化,现在考虑k分问题,即y是离散的且

分类问题要对每个类别有一个判决概率φi。注意到如果对与k个分类都有对应的概率的话,会出现冗余。因为如果知道k-1个概率的话,第k个可以从其补集求出。因此,我们定义k-1个概率,,且有,那么有,因此令

我们队T(y)的定义如下

为一k-1维向量。

那么多项式分布可表示如下

所以多项式分布也属于指数分布族,且有

,那么有

所以得到,将其带入到φi中有

上式将η映射到φi,此函数称为softmax函数

又根据线性假设,对于每个η有,同时令ηk=0,对求和式没有影响,那么有

综上所述,得到的预测函数h为:

这是对于前k-1个概率,那么φk可用补集的方法求出。

最后是对softmax回归的参数最优化,对其输入m个训练样本的对数似然函数易得如下

 

对此最大化可用牛顿法或梯度上升法等


http://chatgpt.dhexx.cn/article/8JCU3TSy.shtml

相关文章

广义线性模型和线性回归

广义线性模型(GLM) 首先术语广义线性模型(GLM)通常是指给定连续和/或分类预测变量的连续响应变量的常规线性回归模型。它包括多元线性回归,以及ANOVA和ANCOVA(仅具有固定效果)。形式为 yi〜N&a…

机器学习之广义线性模型

深夜博客在今天开张啦 一年前接触了机器学习,纯属个人兴趣,还没想到要入坑,现在沉迷无法自拔了哈哈哈。好了也不说太多废话了,今天的主题是广义线性模型啦!这篇博客是参考斯坦福cs229 lecture1中的Generalize Linear …

广义线性模型理解

本文纯属个人理解,恳求指正。 广义线性回归能做什么?为什么我们要使用广义线性回归? 这俩天看到了广义线性回归这个概念,百度上面基本是吴恩达的copy版本,知乎上面都是大神写的,表示看完等于没看。 看了p…

广义线性模型1

1.1 Generalized Linear Models[广义线性模型] 线性模型[linear model],也称经典线性模型[classical linear model]或一般线型模型[general linear model,GLM]。广义线性模型[generalized linear model,GENMOD]由Nelder & Wedderburn[19…

R之广义线性模型

R之广义线性模型 一、广义线性模型和glm()函数 结果变量是类别型的。二值变量(比如:是/否、有效/无效、活着/死亡)和多分类变量(比如差/良好/优秀)都显然不是正态分布;结果变量是计数型的。(比…

第5章 广义与一般线性模型

第1章 多元统计分析概述 第2章 多元数据的数学表达 第3章 多元数据的直观表示 第4章 多元相关与回归分析 第5章 广义与一般线性模型 5.1 模型的选择5.2 广义线性模型5.3 一般线性模型 第6章 判别分析及R使用 第7章 聚类分析及R使用 第8章 主成分分析及R使用 第9章 因子分析及…

广义线性模型

今天我来介绍一种在机器学习中应用的比较多的模型,叫做广义线性模型(GLM)。这种模型是把自变量的线性预测 函数当作因变量的估计值。在机器学习中,有很多模型都是基于广义线性模型的,比如传统的线性回归模型&#xff…

广义线性模型(Generalized Linear Model)

转载于:广义线性模型(Generalized Linear Model) - 肉鹅阿笨 - 博客园 (cnblogs.com) 1.指数分布族 我们在建模的时候,关心的目标变量Y可能服从很多种分布。像线性回归,我们会假设目标变量Y服从正态分布,而…

R|广义线性模型知识点归纳

本文分为两个部分: (1)广义线性模型的分类及其运用场景; (2) 相关R代码。需要说明的是,参考资料是上课课件,根据本人理解整理,如果有不对的地方,欢迎探讨! 目录 引言 1. 广义线性模型 (1)二…

IOS CoreData 多表查询(上)

在网上搜索了下,发现只有部分讲解CoreData关系的,但对多表之间的查询并没有相应的介绍。 因此操作自己写了个。 先创建几个表。 1、部门表:department dp_id Integer primary key dp_deptname varchar(20) //使用coredata实体创建时用…

iOS CoreData详解(五)多线程

原创blog,转载请注明出处 blog.csdn.net/hello_hwc 欢迎关注我的iOS SDK详解专栏,这里有很多基础的文章 http://blog.csdn.net/column/details/huangwenchen-ios-sdk.html 前言:很多小的App只需要一个ManagedContext在主线程就可以了&…

CoreData在Xcode 8 中的使用

如需转载,请注明出处 在Xode8之前,CoreData的使用是非常方便的,先创建一个DataModel , ,然后创建NSManagedObject SubClass,都是一个界面上操作,非常方便,但是更新过Xcode 8后,CoreData的创建需要进行一…

CoreData

Core Data数据持久化是对SQLite的一个升级,它是ios集成的,在说Core Data之前,我们先说说在CoreData中使用的几个类。(1)NSManagedObjectModel(被管理的对象模型) 相当于实体,不过它包含 了实体间的关系(2)N…

Core Data详解

转载于:程序媛与程序猿 7.1. 什么是Core Data Core Data是一个Cocoa框架,用于为管理对象图提供基础实现,以及为多种文件格式的持久化提供支持。管理对象图包含的工作如撤销(undo)和重做(redo&#xff…

Coredata的版本升级

在开发的后期,可能因为完善和修复功能,需要对Coredata数据库表进行修改,这样就需要对CoreData进行版本升级。 比如你修改了DB字段以后,用户在旧版本上升级为新版本时会crash. 因为升级只升级了应用app,没有升级目录下的数据据db文…

在建好的项目中加入CoreData

这几天在做一个ios的小项目,项目中需要对数据进行基本的增删改查操作。于是就想用一把CoreData。但在创建项目初期,没有包含进CoreData。于是就在已建好的项目中加入CoreData。由于第一次用CoreData,各方面还不是很熟悉,在网上爬文…

CoreData的简单使用

简介 Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象。在此数据操作期间,我们不需要编写任何…

数据持久化(五)之CoreData

简单的说,Core Data就是可以存储到磁盘的对象图,[...]Core Data可以帮我们做很多任务作.它可以作为软件的整个模型层。它不仅仅在磁盘上存储数据,也把我们需要的数据对象读取到内存中。 ——Marcus Zarra, Core Data Core Data是Mac OS X中Cocoa API的一部分&#…

coredata 详解

原文:Core Data Overview,感谢CocoaChina翻译组帮忙校对。 Core Data可能是OS X和iOS里面最容易被误解的框架之一了,为了帮助大家理解,我们将快速的研究Core Data,让大家对它有一个初步的了解,对于想要正确…

Core Data 详解

Core Data是一个Cocoa框架,用于为管理对象图提供基础实现,以及为多种文件格式的持久化提供支持。管理对象图包含的工作如撤销(undo)和重做(redo)、有效性检查、以及保证对象关系的完整性等。对象的持久化意…