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

今天我们机器学习老师在说到周志华老师的《机器学习》这本书的时候,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. SSRS Reports 2008性能优化案例

    我们的一个Reporting Service服务上部署了比较多的SSRS报表,其中有一个系统的SSRS报表部署后,执行时间相对较长,加之供应商又在ASP.NET页面里面嵌套了Reporting Ser ...

  2. java实现支付宝接口--文档..转载

    //实现java支付宝很简单,只要从支付宝官方下载   http://help.alipay.com/support/index_sh.htm下载程序,配置一下参数就OK了:   1.先到http:/ ...

  3. .NET应用架构设计—重新认识分层架构(现代企业级应用分层架构核心设计要素)

    阅读目录: 1.背景介绍 2.简要回顾下传统三层架构 3.企业级应用分层架构(现代分层架构的基本演变过程) 3.1.服务层中应用契约式设计来解决动态条件不匹配错误(通过契约式设计模式来将问题在线下暴露 ...

  4. Python爬虫代理池

    爬虫代理IP池 在公司做分布式深网爬虫,搭建了一套稳定的代理池服务,为上千个爬虫提供有效的代理,保证各个爬虫拿到的都是对应网站有效的代理IP,从而保证爬虫快速稳定的运行,当然在公司做的东西不能开源出来 ...

  5. Python检查xpath和csspath表达式是否合法

    在做一个可视化配置爬虫项目时,需要配置爬虫的用户自己输入xpath和csspath路径以提取数据或做浏览器操作.考虑到用户的有时会输入错误的xpath或csspath路径,后台需要对其做合法性校验. ...

  6. 浅谈Linux中的信号处理机制(二)

    首先谢谢 @小尧弟 这位朋友对我昨天夜里写的一篇<浅谈Linux中的信号处理机制(一)>的指正,之前的题目我用的“浅析”一词,给人一种要剖析内核的感觉.本人自知功力不够,尚且不能对着Lin ...

  7. 关于Finereport移动端报表二次开发的两个小例子

    例1:刷新页面 1. 问题描述 A超链至B填报,B提交数据后返回A时,A自动刷新显示新的数据. 2. 解决方案 1. contentPane.setAppearRefresh();  //在A的加载结 ...

  8. 374&375. Guess Number Higher or Lower 1&2

    做leetcode的题 We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You ...

  9. 【CSS】使用盒模型

    盒子是CSS中的基础概念,我们需要使用它来配置元素的外观以及文档的整体布局. 1. 为元素应用内边距 应用内边距会在元素内容和边距之间添加空白.我们可以为内容盒的每个边界单独设置内边距,或者使用 pa ...

  10. mongodb基本操作的学习

    1.基本操作: 如何安装?创建存放数据的文件夹 robomongo: 图形化管理工具 create -->save -->connect 创建数据库:use Database_name 检 ...