LDA线性判别分析——投影的疑问解答
在周志华老师的《机器学习》中,线性判别这一节中说,样本点在直线上的投影为,这和线性代数中正交投影中所描述的可不大一样。
首先,要明确一点,是指投影后的点到原点的距离,而不是投影后的点,原书有点误导。
因为,线性判别分析要分析投影后的点的距离(类间散度,类内散度),所以不用求投影点,直接求投影后的距离就可以了。
但是这并没有解答主要疑问,根据正交投影的公式,投影后距离也不是
先来看一下,正交投影的公式:
对中的一个非零向量,考虑中的一个向量y,y在上的正交投影记为
(推导过程请参考线性代数相关章节)
矩阵的点乘表示,矩阵对应元素乘积的和。
我们来看一个例子:
,,求在上的正交投影。
从计算结果来看投影后向量的模,并不等于,反而。这就是产生疑问的点。
在观察LDA建模过程中最大化目标方程时,有了一些想法,最大化目标方程如下所示:
可以看到,分子分母都有,所以,是否是因为有相同的常数项可以消去,所以在消去常数项之后表示为了
在代数定义中找不到先关的解释,那我们就在几何中找找关系。
二维空间中点向直线的投影,如下图所示:
要求A'到原点的距离(即原点到点A'向量的长度),有(dis代表距离,distance的缩写),用向量范数表示为,而,综合两式得:
用原书中的符号表示就是(用表示的投影点):,而矩阵点乘等于,例如
所以,而为公共常量(都是同一个),一个公共常量对于最大化目标是无意义(虽然上下式可以消这个常量),并不影响结果,所以可以舍去,从而有了投影长度为
LDA线性判别分析——投影的疑问解答相关推荐
- 机器学习】LDA线性判别分析
[机器学习]LDA线性判别分析 1. LDA的基本思想 2. LDA求解方法 3. 将LDA推广到多分类 4. LDA算法流程 5. LDA和PCA对比 [附录1]瑞利商与广义瑞利商 线性判别分析 ( ...
- ML:基于自定义数据集利用Logistic、梯度下降算法GD、LoR逻辑回归、Perceptron感知器、SVM支持向量机、LDA线性判别分析算法进行二分类预测(决策边界可视化)
ML:基于自定义数据集利用Logistic.梯度下降算法GD.LoR逻辑回归.Perceptron感知器.支持向量机(SVM_Linear.SVM_Rbf).LDA线性判别分析算法进行二分类预测(决策 ...
- R语言LDA线性判别分析
LDA线性判别分析 R语言中LDA的实现过程 lda()函数理解 lda()用法 lda()参数介绍 lda示例 可视化结果 应用前景 最流行或最成熟的机器学习技术之一是线性判别分析 (LDA) ...
- 脑电信号(EEG)处理中的机器学习方法总结——回归模型,SVM、K近邻、人工神经网络、朴素贝叶斯、决策树和随机森林、集成学习、模糊逻辑、LDA线性判别分析、K-means聚类、强化学习、迁移学习
本文归纳总结了机器学习在脑电分析中的应用,并详细介绍回归模型,SVM.K近邻.人工神经网络.朴素贝叶斯.决策树和随机森林.集成学习.模糊逻辑.LDA线性判别分析.K-means聚类.强化学习.迁移学习 ...
- 史上最好的LDA(线性判别分析)教程
一.前言 最近由于研究需要,要用到线性判别分析(LDA).于是找了很多资料来看,结果发现大部分讲的都是理论知识,因此最后还是看的一知半解,后来终于找到了个英文的文档,作者由PCA引入LDA,看过后豁然 ...
- 【机器学习基础】数学推导+纯Python实现机器学习算法27:LDA线性判别分析
Python机器学习算法实现 Author:louwill Machine Learning Lab 线性判别分析(Linear Discriminant Analysis,LDA)是一种经典的线性分 ...
- LDA(线性判别分析)详解 —— matlab
目录 前言 正题 1.LDA的思想 2. 瑞利商(Rayleigh quotient)与广义瑞利商(genralized Rayleigh quotient) 3. 二类LDA原理 4.多类LDA原理 ...
- 降维算法-LDA线性判别分析实例
内容简介 线性判别分析LDA的基本概念 代码实例:第一部分使用python详细说明了LDA的计算过程: 第二部分记录了如何使用sklearn完成LDA. 什么是线性判别分析? LDA,全名 Linea ...
- LDA 线性判别分析
1. LDA是什么 线性判别式分析(Linear Discriminant Analysis),简称为LDA.也称为Fisher线性判别(Fisher Linear Discriminant,FLD) ...
最新文章
- 23 Python常用模块(一)
- SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户
- php interface exists,43、面向对象方法get_object_vars、is_subclass_of、interface_exists
- 图像分割综述【深度学习方法】
- 北京某公司.NET面试题
- YOLOv5训练coco128数据集流程
- vue目录结构及简单的开发介绍
- 于小c三国语言_云顶之弈:三国成最强打工羁绊 校长教学顺滑转九五
- LeetCode 875. 爱吃香蕉的珂珂(二分查找)
- LeetCode 447. 回旋镖的数量(哈希map+组合数)
- 【Elasticsearch】es Ingest 节点
- c语言如何输入未知数据类型的_C语言新手踩坑记!大坑小坑全部都是你的!
- java集合类的学习总结一
- oppo手机快速截屏的方法
- ps html插件初始化失败,解决PSCC2019无法安装扩展插件怎么办?
- Python爬虫用到的一些浏览器代理标识
- Velocity之vm页面注释
- Nagios:用门户邮箱+mailx+139邮箱实现实时短信报警
- 勒让德Legendre变换
- PHP学习——输出学生名单