本文申明:本系列文章为本人原创,如有转载请注明文章原地址。

今天我们机器学习老师在说到周志华老师的《机器学习》这本书的时候,p60页讲到了LDA,但是其中的公式推导省略了很多,现在我来补充一下。

一:LDA的思想

给定两个数据集一个是XX一个是OO,然后我们把XXOO投影到一条直线上,但是啊,这个人是很坏的,人家XXOO本来想分配到一起,但是你非要让人家两类离得越远越好,相同的呢离得越近越好,美其名:异性只是繁衍,同性才是真爱。哎,你说这不是泯灭人性么,好吧,我们先不扯蛋了。说正题:

1.1首先我们定义mi,它表示这个i类样本d维空间的均值。也就是这个分别代表类xx和oo。mi表示如下。

那么我们既然知道了这个,我们是不是也要找一个投影到这条直线上的代表点啊,所以就有了:

那么现在我们就可以知道两个分类之间的距离了:

从上述式子我们可以看出,改变直线的斜率,也就是方向,可以改变两者之间的大小。

刚刚我们说了我们的准则就是让类内之间的距离最小,这是不是有点像我们之前的指示函数,那么如下图公式:

我们前面已经说过,这是一个二分类问题,现在已经给了一般形式的离散度(我们叫他离散度,其实就是真实值与预测值(这里用平方表示预测值)的平方),那我们是不是要把这个两个离散度相加,然后让这个达到最小?

总得离散度为:

为了让类内的距离越小,类间的距离越大,我给出下面的判别式。你们看,能不能满足。

,现在只要让J(W)达到极大,是不是就可以让我们前面说的两个要求满足?

那就让我们来求出J(W)的极大值。

1.2求其中一类的离散度(就是那一类的点到这个类中平均点的距离之和)

公式:

二分类问题就是总得离散度为:

1.2类间的离散度用矩阵表示为:

那么:

所以总得类内离散度:

有因为:

所以:

这就是广义瑞利商(generalized Rayleigh quotient)。它有如下性质:

1:,a是一个实数。

2:大小与w大小无关,只与w的方向有关。

至于求极值那就从周志华老师的那本书有,我现在截图给大家吧:

本篇文章就写到这里了,如有疑问请提问,我会解答的。谢谢大家。

机器学习笔记-----Fisher判别式的更多相关文章

  1. cs229 斯坦福机器学习笔记(一)-- 入门与LR模型

    版权声明:本文为博主原创文章,转载请注明出处. https://blog.csdn.net/Dinosoft/article/details/34960693 前言 说到机器学习,非常多人推荐的学习资 ...

  2. 机器学习笔记:Gradient Descent

    机器学习笔记:Gradient Descent http://www.cnblogs.com/uchihaitachi/archive/2012/08/16/2642720.html

  3. 机器学习笔记5-Tensorflow高级API之tf.estimator

    前言 本文接着上一篇继续来聊Tensorflow的接口,上一篇中用较低层的接口实现了线性模型,本篇中将用更高级的API--tf.estimator来改写线性模型. 还记得之前的文章<机器学习笔记 ...

  4. Python机器学习笔记:使用Keras进行回归预测

    Keras是一个深度学习库,包含高效的数字库Theano和TensorFlow.是一个高度模块化的神经网络库,支持CPU和GPU. 本文学习的目的是学习如何加载CSV文件并使其可供Keras使用,如何 ...

  5. Python机器学习笔记:sklearn库的学习

    网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常 ...

  6. Python机器学习笔记:不得不了解的机器学习面试知识点(1)

    机器学习岗位的面试中通常会对一些常见的机器学习算法和思想进行提问,在平时的学习过程中可能对算法的理论,注意点,区别会有一定的认识,但是这些知识可能不系统,在回答的时候未必能在短时间内答出自己的认识,因 ...

  7. 机器学习笔记(4):多类逻辑回归-使用gluton

    接上一篇机器学习笔记(3):多类逻辑回归继续,这次改用gluton来实现关键处理,原文见这里 ,代码如下: import matplotlib.pyplot as plt import mxnet a ...

  8. 【转】机器学习笔记之(3)——Logistic回归(逻辑斯蒂回归)

    原文链接:https://blog.csdn.net/gwplovekimi/article/details/80288964 本博文为逻辑斯特回归的学习笔记.由于仅仅是学习笔记,水平有限,还望广大读 ...

  9. 吴恩达机器学习笔记(六) —— 支持向量机SVM

    主要内容: 一.损失函数 二.决策边界 三.Kernel 四.使用SVM (有关SVM数学解释:机器学习笔记(八)震惊!支持向量机(SVM)居然是这种机) 一.损失函数 二.决策边界 对于: 当C非常 ...

随机推荐

  1. Linux iptables配置错误导致ORA-12535 & ORA-12170

    实验环境:       操作系统  : Red Hat Enterprise Linux Server release 5.7 (Tikanga)       数据库版本: Oracle Databa ...

  2. Linux忘记root密码怎么办?

    开篇前言:Linux系统的root账号是非常重要的一个账号,也是权限最大的一个账号,但是有时候忘了root密码怎么办?总不能重装系统吧,这个是下下策,其实Linux系统中,如果忘记了root账号密码, ...

  3. 机器学习实战笔记(Python实现)-01-K近邻算法(KNN)

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  4. Spark调度管理(读书笔记)

    Spark调度管理(读书笔记) 转载请注明出处:http://www.cnblogs.com/BYRans/ Spark调度管理 本文主要介绍在单个任务内Spark的调度管理,Spark调度相关概念如 ...

  5. kmeans算法c语言实现,能对不同维度的数据进行聚类

    最近在苦于思考kmeans算法的MPI并行化,花了两天的时间把该算法看懂和实现了串行版. 聚类问题就是给定一个元素集合V,其中每个元素具有d个可观察属性,使用某种算法将V划分成k个子集,要求每个子集内 ...

  6. x01.os.19: linux 0.0

    linux 0.0 是一个丢失的版本,但赵炯老师又在 linux 0.11 的基础上,使它起死回生.www.oldlinux.org 有大量资源可供下载,值得一看. 1.要编译运行,首先需安装:sud ...

  7. TCP通信丢包原因总结

    今天在公司问老大,公司的项目底层,是使用的TCP,因为可靠,自动断线重连,在底层都实现了,但是我记得TCP也会有掉包的问题,所以这文章就诞生了——关于TCP掉包的问题,TCP是基于不可靠的网络实现可靠 ...

  8. 解密H264、AAC硬件解码的关键扩展数据处理

    通过上一篇文章,我们用ffmpeg分离出一个多媒体容器中的音视频数据,但是很可能这些数据是不能被正确解码的.为什么呢?因为在解码这些数据之前,需要对解码器做一些配置,典型的就是目前流行的高清编码“黄金 ...

  9. Mui沉浸模式以及状态栏颜色改变

    沉浸模式只需要设置下就可以  ios:  打开应用的manifest.json文件,切换到代码视图,在plus -> distribute -> apple 下添加UIReserveSta ...

  10. android第一行代码-1.项目结构

    0.项目结构 一个简单的android项目结构大致如下 入口就是MainActivity这个类,如果对于一个陌生的项目,最好的办法是看AndroidMainifest.xml,如下 <?xml ...