精华内容
参与话题
问答
  • 线性回归数学推导是机器学习的基石,是人工智能的算法基础, 可以被广泛的应用在在工作和学习。本节课就带领同学们从零开始一步一步的推导线性回归。课程内容包括矩阵转换、误差值分析、似然函数、小二乘、结果推导...
  • 各种推导式合集

    2018-10-09 18:34:00
    推导式的套路 之前我们已经学习了最简单的列表推导式和生成器表达式。但是除此之外,其实还有字典推导式、集合推导式等等。 下面是一个以列表推导式为例的推导式详细格式,同样适用于其他推导式。 variable = ...

    推导式的套路

    之前我们已经学习了最简单的列表推导式和生成器表达式。但是除此之外,其实还有字典推导式、集合推导式等等。

    下面是一个以列表推导式为例的推导式详细格式,同样适用于其他推导式。

    variable = [out_exp_res for out_exp in input_list if out_exp == 2]
      out_exp_res:  列表生成元素表达式,可以是有返回值的函数。
      for out_exp in input_list:  迭代input_list将out_exp传入out_exp_res表达式中。
      if out_exp == 2:  根据条件过滤哪些值可以。

    列表推导式

    例一:30以内所有能被3整除的数

    multiples = [i for i in range(30) if i % 3 is 0]
    print(multiples)
    # Output: [0, 3, 6, 9, 12, 15, 18, 21, 24, 27]
    列表推导式1

    例二:30以内所有能被3整除的数的平方

    def squared(x):
        return x*x
    multiples = [squared(i) for i in range(30) if i % 3 is 0]
    print(multiples)
    列表推导式2

    例三:找到嵌套列表中名字含有两个‘e’的所有名字

    names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'],
             ['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']]
    
    print([name for lst in names for name in lst if name.count('e') >= 2])  # 注意遍历顺序,这是实现的关键
     
    嵌套列表推导式

     

    字典推导式

    例一:将一个字典的key和value对调

    mcase = {'a': 10, 'b': 34}
    mcase_frequency = {mcase[k]: k for k in mcase}
    print(mcase_frequency)
    字典推导式1

    例二:合并大小写对应的value值,将k统一成小写

    mcase = {'a': 10, 'b': 34, 'A': 7, 'Z': 3}
    mcase_frequency = {k.lower(): mcase.get(k.lower(), 0) + mcase.get(k.upper(), 0) for k in mcase.keys()}
    print(mcase_frequency)
    字典推导式2

     

    集合推导式

    例:计算列表中每个值的平方,自带去重功能

    squared = {x**2 for x in [1, -1, 2]}
    print(squared)
    # Output: set([1, 4])
    集合推导式1

     

    练习题:

    例1:  过滤掉长度小于3的字符串列表,并将剩下的转换成大写字母

    例2:  求(x,y)其中x是0-5之间的偶数,y是0-5之间的奇数组成的元祖列表

    例3:  求M中3,6,9组成的列表M = [[1,2,3],[4,5,6],[7,8,9]]

    1.[name.upper() for name in names if len(name)>3]
    2.[(x,y) for x in range(5) if x%2==0 for y in range(5) if y %2==1]
    3. [row[2] for row in M] 
    code

     

    转载于:https://www.cnblogs.com/liwenzhou/p/9762052.html

    展开全文
  • 贝叶斯通俗易懂推导

    万次阅读 多人点赞 2018-08-01 19:36:05
    简介 贝叶斯定理是18世纪英国数学家托马斯·贝叶斯(Thomas Bayes)提出得重要概率论理论。以下摘一段 wikipedia 上的简介: 所谓的贝叶斯定理源于他生前为解决一个“逆概”问题写的一篇文章,而这篇文章是在他死...

    简介

    贝叶斯定理是18世纪英国数学家托马斯·贝叶斯(Thomas Bayes)提出得重要概率论理论。以下摘一段 wikipedia 上的简介:

    所谓的贝叶斯定理源于他生前为解决一个“逆概”问题写的一篇文章,而这篇文章是在他死后才由他的一位朋友发表出来的。在贝叶斯写这篇文章之前,人们已经能够计算“正向概率”,如“假设袋子里面有 N 个白球,M 个黑球,你伸手进去摸一把,摸出黑球的概率是多大”。而一个自然而然的问题是反过来:“如果我们事先并不知道袋子里面黑白球的比例,而是闭着眼睛摸出一个(或好几个)球,观察这些取出来的球的颜色之后,那么我们可以就此对袋子里面的黑白球的比例作出什么样的推测”。这个问题,就是所谓的逆向概率问题。

    贝叶斯定理的思想出现在18世纪,但真正大规模派上用途还得等到计算机的出现。因为这个定理需要大规模的数据计算推理才能凸显效果,它在很多计算机应用领域中都大有作为,如自然语言处理,机器学习,推荐系统,图像识别,博弈论等等。

    定义

    贝叶斯定理是关于随机事件 A 和 B 的条件概率

    贝叶斯定理

    其中P(A|B)是在 B 发生的情况下 A 发生的可能性。

    在贝叶斯定理中,每个名词都有约定俗成的名称:

    
     
    1. P(A)是 A 的先验概率,之所以称为“先验”是因为它不考虑任何 B 方面的因素。

    2. P(A|B)是已知 B 发生后 A 的条件概率,也由于得自 B 的取值而被称作 A 的后验概率。

    3. P(B|A)是已知 A 发生后 B 的条件概率,也由于得自 A 的取值而被称作 B 的后验概率。

    4. P(B)是 B 的先验概率,也作标淮化常量(normalizing constant)。

    按这些术语,贝叶斯定理可表述为:

    后验概率 = (相似度 * 先验概率)/标淮化常量
    

    也就是说,后验概率与先验概率和相似度的乘积成正比。

    另外,比例P(B|A)/P(B)也有时被称作标淮相似度(standardised likelihood),Bayes定理可表述为:

    后验概率 = 标淮相似度 * 先验概率
    

    条件概率就是事件 A 在另外一个事件 B 已经发生条件下的发生概率。条件概率表示为P(A|B),读作“在 B 发生的条件下 A 发生的概率”。

    联合概率表示两个事件共同发生(数学概念上的交集)的概率。A 与 B 的联合概率表示为联合概率

    推导

    我们可以从条件概率的定义推导出贝叶斯定理。

    根据条件概率的定义,在事件 B 发生的条件下事件 A 发生的概率为:

    贝叶斯定理

    同样地,在事件 A 发生的条件下事件 B 发生的概率为:

    贝叶斯定理

    结合这两个方程式,我们可以得到:

    贝叶斯定理

    这个引理有时称作概率乘法规则。上式两边同除以 P(A),若P(A)是非零的,我们可以得到贝叶斯定理:

    贝叶斯定理

    解释

    通常,事件 A 在事件 B 发生的条件下的概率,与事件 B 在事件 A 发生的条件下的概率是不一样的;然而,这两者是有确定关系的,贝叶斯定理就是这种关系的陈述。

    贝叶斯公式的用途在于通过己知三个概率来推测第四个概率。它的内容是:在 B 出现的前提下,A 出现的概率等于 A 出现的前提下 B 出现的概率乘以 A 出现的概率再除以 B 出现的概率。通过联系 A 与 B,计算从一个事件发生的情况下另一事件发生的概率,即从结果上溯到源头(也即逆向概率)。

    通俗地讲就是当你不能确定某一个事件发生的概率时,你可以依靠与该事件本质属性相关的事件发生的概率去推测该事件发生的概率。用数学语言表达就是:支持某项属性的事件发生得愈多,则该事件发生的的可能性就愈大。这个推理过程有时候也叫贝叶斯推理。

    示例

    示例一:应当根据新情况更新先验概率

    决策与判断》第十二章中讲到人们都有保守主义情结,即使出现了新信息,也不愿意根据新信息来更新先验概率。用前面解释里面的话说就是:新信息是 B 事件不断发生,人们本应该根据这个信息去更新 A 事件发生的概率,但人们却更愿意固守之前估计的 A 事件发生的概率。

    书中举了这样一个调查案例:

    假设有两个各装了100个球的箱子,甲箱子中有70个红球,30个绿球,乙箱子中有30个红球,70个绿球。假设随机选择其中一个箱子,从中拿出一个球记下球色再放回原箱子,如此重复12次,记录得到8次红球,4次绿球。问题来了,你认为被选择的箱子是甲箱子的概率有多大?

    调查结果显示,大部分人都低估了选择的是甲箱子的概率。根据贝叶斯定理,正确答案是96.7%。下面容我来详细分析解答。

    刚开始选择甲乙两箱子的先验概率都是50%,因为是随机二选一(这是贝叶斯定理二选一的特殊形式)。即有:

    P(甲) = 0.5, P(乙) = 1 - P(甲);

    这时在拿出一个球是红球的情况下,我们就应该根据这个信息来更新选择的是甲箱子的先验概率:

    P(甲|红球1) = P(红球|甲) × P(甲) / (P(红球|甲) × P(甲) + (P(红球|乙) × P(乙)))
    P(红球|甲):甲箱子中拿到红球的概率
    P(红球|乙):乙箱子中拿到红球的概率

    因此在出现一个红球的情况下,选择的是甲箱子的先验概率就可被修正为:

    P(甲|红球1) = 0.7 × 0.5 / (0.7 × 0.5 + 0.3 × 0.5) = 0.7

    即在出现一个红球之后,甲乙箱子被选中的先验概率就被修正为:

    P(甲) = 0.7, P(乙) = 1 - P(甲) = 0.3;

    如此重复,直到经历8次红球修正(概率增加),4此绿球修正(概率减少)之后,选择的是甲箱子的概率为:96.7%。

    我写了一段 Python 代码来解这个问题:

    计算选择的是甲箱子的概率

    def bayesFunc(pIsBox1, pBox1, pBox2):
        return (pIsBox1 * pBox1)/((pIsBox1 * pBox1) + (1 - pIsBox1) * pBox2)
    def redGreenBallProblem():
        pIsBox1 = 0.5
    # consider 8 red ball
    for i in range(1, 9):
        pIsBox1 = bayesFunc(pIsBox1, 0.7, 0.3)
        print " After red %d > in 甲 box: %f" % (i, pIsBox1)
    # consider 4 green ball
    for i in range(1, 5):
        pIsBox1 = bayesFunc(pIsBox1, 0.3, 0.7)
        print " After green %d > in 甲 box: %f" % (i, pIsBox1)
        redGreenBallProblem()
    


    程序运行结果如下:在这个调查问题里面,8次红球与4次绿球出现的顺序并不重要,因为红球的出现总是使选择的是甲箱子的概率增加,而绿球的出现总是减少。因此,为了简化编程,我将红球出现的情况以及绿球出现的情况摆在一起了。

    不断修正的选择的是甲箱子的先验概率

    After red 1 > in 甲 box: 0.700000
    After red 2 > in 甲 box: 0.844828
    After red 3 > in 甲 box: 0.927027
    After red 4 > in 甲 box: 0.967365
    After red 5 > in 甲 box: 0.985748
    After red 6 > in 甲 box: 0.993842
    After red 7 > in 甲 box: 0.997351
    After red 8 > in 甲 box: 0.998863
    After green 1 > in 甲 box: 0.997351
    After green 2 > in 甲 box: 0.993842
    After green 3 > in 甲 box: 0.985748
    After green 4 > in 甲 box: 0.967365
    


    从程序运行结果来看,很明显可以看到红球的出现是增加选择甲箱子的概率,而绿球则相反。

    示例二:频率更适合用来解答概率问题

    进化心理学》第十三章(428页)讲到人类的心理从进化角度来看,更偏好使用频率(我最近十次打猎八次有收获)而不是概率(我最近打猎有80%的成功率)。

    书中举了同一个问题用不同方式表述使得问题的难易程度迥然不同:

    表述一:有一种疾病的发病率是千分之一,医院有一种化验技术可以对这种疾病进行诊断,但是却又百分之五的误诊率(也即是说尽管有百分之五的人没有病,但是化验结果却显示为阳性(即假阳性))。现在假设一个人的化验结果显示为有病,仅根据这一化验结果推测,那么这个人确实患病的概率有多大?

    这个问题也可以用贝叶斯定理来解决,不过在看分析之前,你可以先估算下你自己的答案,然后再和正确答案比较。

    这个问题的分析过程如下:

    已知先验概率:P(患病) = 0.001,P(正常) = 0.999;
    该化验技术的准确率(即患病化验结果显示为阳性的概率)为:P(准确率) = 1.00;
    该化验技术的误诊率(即正常化验结果显示为阳性的概率)为:P(误诊率) = 0.05。

    根据上面的数据,我们就能够推测出一个人化验为阳性的情况下,这个人确实患病的概率有多大:

    P(患病|阳性) = P(患病) × P(准确率) / (P(患病) × P(准确率) + P(正常) × P(误诊率)) 
    = 0.001 × 1.00 / (0.001 × 1.00 + 0.999 × 0.05)
    = 0.0198 
    = 2%

    结果让你大吃一惊吧,在没有其他症状增加患病概率的情况下,单凭化验结果显示为阳性来推测的话,其真实患病的概率还不到百分之二。

    用频率作为信息来记忆或回忆更生动也更容易被提取,想想第一次打猎什么情形,第二次打猎什么情形,历历在目。正因为频率作为信息存储载体保留了事件的形象性,提高了记忆的可得性,因此在进化过程中人类的心理机制优先选择了频率而不是抽象的概率。而且在人类十多万年的进化过程中,出现概率概念的文明进程不过几千年,大脑还没有对进化到更适应抽象的概率的地步。

    所以这个问题如果换成用频率来表述的话,相信你的答案会大大接近于正确答案。

    表述二:在一千个人中,就有一个人患有X疾病(即发病率为千分之一),有一种化验技术,可以检验是否患有该疾病。如果一个人确实患有该病,化验结果可定显示为阳性。但有时候也会出现误诊,即在一千个完全健康的人中,有五十个人的化验结果显示为阳性(也即是说误诊率为百分之五)。

    换成以频率方式来表述这个问题,答案就显然易见了:

    P(患病|阳性) = 1/(1 + 50) = 1/51 = 0.0196 = 2%

    通过这个例子,我们可以懂得,若能把概率问题转换成频率来表述,即便是需要使用贝叶斯这样复杂定理来计算的问题,也能轻而易举地解答。这就是《你的灯亮着么?》里面提到的“重述问题”的技巧。

    示例三:在博弈论里面的应用

    挑战者 B 不知道原垄断者 A 是属于高阻挠成本(为阻止 B 进入而花费的成本)类型还是低阻挠成本类型,但B知道,如果 A 属于高阻挠成本类型,B 进入市场时A进行阻挠的概率是20%(阻扰成本高,因此阻挠概率低);如果 A 属于低阻挠成本类型,B 进入市场时 A 进行阻挠的概率是100%。

    博弈开始时,B 认为 A 属于高阻挠成本企业的概率为70%,因此,B 估计自己在进入市场时,受到 A 阻挠的概率为:

    P(阻挠) = 0.7 × 0.2 + 0.3 × 1.0 = 0.44

    0.44 是在 B 给定 A 所属类型的先验概率下,A 可能采取阻挠行为的概率。

    当 B 进入市场时,若 A 确实进行阻挠。根据贝叶斯定理,从 A 进行阻挠这一行为,B 可修正 A 属于高阻挠成本企业的概率为::

    P(高成本阻扰企业) = 0.7 × 0.2 ÷ 0.44 × 1.0 = 0.32

    根据这一新的先验概率,B 估计自己在进入市场时,受到 A 阻挠的概率为:

    P(阻挠) = 0.32 × 0.2 + 0.68 × 1 = 0.744

    若 B 再一次进入市场时,A 又进行了阻挠。根据贝叶斯定理,从 A 再次进行阻挠这一行为,B 可修正 A 属于高阻挠成本企业的概率为

    P(高成本阻扰企业) = 0.32 × 0.2 ÷ 0.744 × 1.0 = 0.086

    这样,根据 A 一次又一次的阻挠行为,B 不断修正判断 A 为高阻挠成本的概率(越来越低了),从而越来越倾向于将 A 判断为低阻挠成本企业。

    示例四:在计算机领域中的应用

    贝叶斯定理在计算机领域中的应用那可是太多了,无论是在机器学习,自然语言处理,图像识别,推荐算法,搜索算法还是垃圾邮件处理中都大有用途。这些应用中都有一个特点,那就是根据既有输入,在庞大的已有数据库中寻找匹配程度(也即是发生概率)最高的那些项。由于这些话题太大,在这里就不展开了。

    徐宥翻译过 Peter Norvig 写的一篇怎样写一个拼写检查器的文章,作者只用了 20 行 Python 代码就实现了拼写检查/纠错,相当强大。文章也写得深入浅出,推荐看看,翻译版本在这里

    参考

     

    原文:http://blog.csdn.net/kesalin/article/details/40370325

    展开全文
  • 最小二乘法详细推导过程

    万次阅读 多人点赞 2019-09-05 13:14:52
    在数据的统计分析中,数据之间即变量x与Y之间的相关性研究非常重要,通过在直角坐标系中做散点图的方式我们会发现很多统计数据近似一条直线,它们之间或者正相关或者负相关。虽然这些数据是离散的,不是连续的,...

    转载自:http://blog.csdn.net/marsjohn/article/details/54911788

    在数据的统计分析中,数据之间即变量x与Y之间的相关性研究非常重要,通过在直角坐标系中做散点图的方式我们会发现很多统计数据近似一条直线,它们之间或者正相关或者负相关。虽然这些数据是离散的,不是连续的,我们无法得到一个确定的描述这种相关性的函数方程,但既然在直角坐标系中数据分布接近一条直线,那么我们就可以通过画直线的方式得到一个近似的描述这种关系的直线方程。当然,从前面的描述中不难看出,所有数据都分布在一条直线附近,因此这样的直线可以画出很多条,而我们希望找出其中的一条,能够最好地反映变量之间的关系。换言之,我们要找出一条直线,使这条直线“最贴近”已知的数据点,设此直线方程为:


    这里的是为了区分Y的实际值y(这里的实际值就是统计数据的真实值,我们称之为观察值),当x取值(i=1,2,3……n)时,Y的观察值为,近似值为(或者说对应的纵坐标是)。

    其中式叫做Y对x的回归直线方程,b叫做回归系数。要想确定回归直线方程,我们只需确定a与回归系数b即可。

     设x,Y的一组观察值为:
       i = 1,2,3……n

    其回归直线方程为:


    当x取值(i=1,2,3……n)时,Y的观察值为,差刻画了实际观察值与回归直线上相应点纵坐标之间的偏离程度,见下图:


     实际上我们希望这n个离差构成的总离差越小越好,只有如此才能使直线最贴近已知点。换句话说,我们求回归直线方程的过程其实就是求离差最小值的过程。

    一个很自然的想法是把各个离差加起来作为总离差。可是,由于离差有正有负,直接相加会互相抵消,如此就无法反映这些数据的贴近程度,即这个总离差不能用n个离差之和来表示,见下图:

     
    一般做法是我们用离差的平方和,即:


    作为总离差 ,并使之达到最小。这样回归直线就是所有直线中Q取最小值的那一条。由于平方又叫二乘方,所以这种使“离差平方和为最小”的方法,叫做最小二乘法
    用最小二乘法求回归直线方程中的a、b的公式如下:


    其中,的均值,a、b的上方加“︿”表示是由观察值按最小二乘法求得的估计值,a、b求出后,回归直线方程也就建立起来了。

    当然,我们肯定不能满足于直接得到公式,我们只有理解这个公式怎么来的才能记住它,用好它,因此给出上面两个公式的推导过程更加重要。在给出上述公式的推导过程之前,我们先给出推导过程中用到的两个关键变形公式的推导过程。首先是第一个公式:
     
     

    接着是第二个公式:

     
     基本变形公式准备完毕,我们可以开始最小二乘法求回归直线方程公式的推导了:


     
     至此,公式变形部分结束,从最终式子我们可以看到后两项


    与a、b无关,属于常数项,我们只需


    即可得到最小的Q值,因此:


    至此,公式推导完毕。
     

    最小二乘法求回归直线方程可用于所有数据分布近似直线的数据统计、分析问题,其用程序实现非常简便,属于基础统计分析算法,必须能够熟练掌握应用。

    展开全文
  • 推导

    2020-04-30 09:05:00
    推导式的主要作用:化简代码,可以得用简单的代码得到有规律的列表、字典、集合 1.列表推导式 列表推导式用简单的代码得到一个列表,下面是列表推导式与非列表推导式的比较 ''' 实现有规律的列表 ''' #while实现 str...

    推导式的主要作用:化简代码,可以得用简单的代码得到有规律的列表、字典、集合
    1.列表推导式
    列表推导式用简单的代码得到一个列表,下面是列表推导式与非列表推导式的比较

    '''
    实现有规律的列表
    '''
    #while实现
    str1='-'
    list1=[]
    i=0
    while i<10:
        list1.append(i)
        i+=1
    print(list1)
    print(str1*20)
    
    #for实现
    list2=[]
    for i in range(10):
        list2.append(i)
    print(list1)
    print(str1*20)
    
    #列表推导式
    list3=[i for i in range(10)]#化简代码,列表中第一个i代表返回列表的值
    print(list3)

    带if的列表推导式

    #目标:实现0到10 有规律的偶数列表
    #1.if实现
    list1=[]
    for i in range(10):
        if i%2==0:
            list1.append(i)
    print(list1)
    
    
    #简单列表推导式实现
    list1=[i for i in range(0,10,2)]
    print(list1)
    #带if的列表推导式实现
    
    list1=[i for i in range(10) if i%2==0]
    print(list1)

    多个for循环列表推导式

    #实现[(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]
    
    #方法1 for循环嵌套
    list1=[]
    for i in range(1,3):
        for j in range(0,3):
            list1.append((i,j))
    print(list1)
    
    #方法2 while循环实现
    
    list2=[]
    i=1
    j=0
    while i<3:
        while j <3:
            list2.append((i, j))
            j+=1
        i+=1
    print(list2)
    
    #方法3 多for循环列表推导实现
    
    list3=[(i,j)for i in range(1,3) for j in range(0,3)]
    print(list3)

    字典推导式

    list1=['name','age','gender']
    list2=['tom','20','man']
    dict1={list1[i]:list2[i] for i in range(len(list1))}
    print(dict1)
    '''
    注意:
    当两个列表长度相同时,len()函数中的列表可以任取,当两个列表长度不相同时len()中取较短的列表
    '''
    #提取字典中的数据
    #准备字典
    count1={'MAP':200,"HP":203,'Dell':253,'leveo':183,'SUM':120}
    #提取所有大于200的电脑品牌
    hot =[keys for keys,values in count1.items()if values>200]#取到所有值大于200的key,返回一个列表
    print(hot)
    #取到所有值大于200的电脑品牌与销售量
    hot1={keys:values for keys,values in count1.items() if values>200}#返回一个字字典
    print(hot1)
    展开全文
  • 主成分分析(PCA)原理及推导

    万次阅读 多人点赞 2014-12-30 12:24:31
    在数据挖掘或者图像处理等领域经常会用到主成分分析,这样做的好处是使要分析的数据的维度降低了,但是数据的主要信息还能保留下来,并且,这些变换后的维两两不相关!至于为什么?那就接着往下看。...
  • 最左推导 定义 在最左推导中,总是选择每个句型的最左非终结符号。 [句型]  如果S=》a,其中S是文法G的开始符号,我们可以称a是G的一个句型,当a是一个终结符时,此时这个句型可以称为句子。 [非终结符号] &...
  • svm超详细推导

    万次阅读 2018-04-10 14:36:40
    支持向量机是一种二分类模型,他的基本想法就是基于训练集和样本空间中找到一个最好的划分超平面,将两类样本分割开来,首先你就要知道什么样的划分发才能称为“最”好划分 看上图,二维平面上有两类样本,一类...
  • 罗德里格斯公式 理解、推导

    万次阅读 多人点赞 2017-12-29 16:55:19
    罗德里格斯公式(Rodriguez formula)是计算机视觉中的一大经典公式,在描述相机位姿的过程中很常用。公式:R=I+sin(θ)K+(1−cos(θ))K2R = I + sin(\theta)K + (1 - cos(\theta))K^{2}   从旋转矩阵RR讲起,在三...
  • Python列表推导

    万次阅读 多人点赞 2019-05-18 00:51:24
    Python列表推导式 列表推导式是Python构建列表(list)的一种快捷方式,可以使用简洁的代码就创建出一个列表. 一、range()函数 python的range()函数可用来创建一个整数列表,一般用在 for 循环中. range()语法:...
  • 卡尔曼滤波 -- 从推导到应用(一)

    万次阅读 多人点赞 2013-12-30 01:26:46
    卡尔曼滤波器是在估计线性系统状态的过程中,以最小均方差为目的而推导出的几个递推数学等式,也可以从贝叶斯推断的角度来推导。 本文将分为两部分: 第一部分,结合例子,从最小均方差的角度,直观地介绍卡尔曼...
  • 泰勒公式的详细推导

    万次阅读 多人点赞 2018-06-01 14:00:50
    在数学中,泰勒公式是一个用函数在某点的信息描述其附近取值的公式。如果函数足够光滑的话,在已知函数在某一点的各阶导数值的情况之下,泰勒公式可以用这些导数值做系数构建一个多项式来近似函数在这一点的邻域中...
  • 自己学习机器学习,深度学习也有好长一段时间了,一直以来都想写点有价值的技术博客,以达到技术分享及记录自己成长的目的,奈何之前一直拖着,近来算是醒悟,打算以后不定时写一写博客,也算是作为自己不断学习,...
  • LDA详细推导过程

    千次阅读 2018-07-09 15:12:03
    说到LDA一直觉得自己掉进了一个大坑,研一的时候,老板叫看论文,然后给他汇报,有一次跟老板汇报文章的时候提到LDA,然后研究生三年LDA一路走到黑。一开始接触LDA,最大的难点就是...接下来就讲讲LDA是如何推导的。...
  • 最大熵模型中的数学推导

    万次阅读 多人点赞 2014-10-27 16:28:57
    10月26日机器学习班第6次课,身为讲师之一的邹博讲最大熵模型,从熵的概念,讲到为何要最大熵、最大熵的推导,以及求解参数的IIS方法,整个过程讲得非常流畅。晚上我把他的PPT 在微博上公开分享了出来。但对于没有...
  • python列表推导式、字典推导式、集合推导式python列表推导式、字典推导式、集合推导式列表推导式生成list格式示例一:输出为==表达式==示例二:输出为==函数(有返回值)==生成generator字典推导式示例一:把字典中的...
  • auto类型推导

    2019-01-17 22:22:58
    auto : 类型推导. 在使用c++的时候会经常使用, 就像在考虑STL时迭代器类型, 写模板的时候使用auto能少写代码, 也能帮助我们避免一些隐患的细节. auto初始化 使用auto型别推导要求必须在定义时初始化, 毕竟需要根据...
  • 神经网络BP反向传播算法原理和详细推导流程

    万次阅读 多人点赞 2018-05-09 22:25:53
    1 反向传播算法和BP网络简介 误差反向传播算法简称反向传播算法(即BP算法)。使用反向传播算法的多层感知器又称为BP神经网络。BP算法是一个迭代算法,它的基本思想为:(1)先计算每一层的状态和激活值,直到最后一...
  • 多元线性回归推导过程

    万次阅读 多人点赞 2018-08-06 20:26:23
    接上篇:人工智能开篇 常用算法一 多元线性回归详解1 此次我们来学习人工智能的第一个算法:多元线性回归.文章会包含必要的数学知识回顾,大部分比较简单,数学功底好的朋友只... 多元线性回归的推导过程详解 如何...
  • 对数公式推导过程

    千次阅读 2018-06-15 11:05:06
    logaMN=logaM+logaNlogaMN=logaM+logaNlog_{a}MN=log_{a}M + log_{a}N的推导过程如下。 证明:设logaM=p,logaN=q则ap=M,aq=N,代入logaMN,得logaMN=loga(ap⋅aq)=logaap+q=p+q=logaM+logaN所以:logaMN=logaM+...
  • 推导式comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体。 共有三种推导,在Python2和3中都有支持: 列表(list)推导式 字典(dict)推导式 集合...
  • 注:1)这篇文章主要参考Alex Graves的博士论文《Supervised Sequence Labellingwith Recurrent Neural Networks》 详细介绍其关于BP算法的推导过程。 2)论文没有提到过偏差的处理,不过如果能耐心推导出论文给出...
  • 几类自适应波束形成算法推导

    万次阅读 多人点赞 2017-06-12 20:34:29
    波束形成是声纳或者雷达信号处理的一个重要的步骤,它旨在使接收的阵列能够按照...今天我将我最近整理的几类常用的关于自适应波束形成算法的推导过程拿出来与大家分享,如果有什么不对的地方,还望大家能够批评指正。
  • CTC学习笔记(二) 训练和公式推导

    万次阅读 多人点赞 2016-06-26 18:57:46
    整体思路训练流程和传统的神经网络类似,构建loss function,然后根据BP算法进行训练,不同之处在于传统的神经网络的训练准则是针对每帧数据,即每帧数据的训练误差最小,而CTC的训练准则是基于序列(比如语音识别的...
  • 傅里叶变换一步步详细推导

    万次阅读 多人点赞 2019-09-17 21:35:49
    也在网上找过很多资料,看过很多视频,但是,这些内容要么举些简单的例子说说直观上的理解,要么就是直接堆出公式没有任何推导. 直到一个巧合在B站上看到这样一个视频才真正搞懂,非常感谢这位UP主DR_CAN.这篇博客也主要...
  • CNN公式推导

    万次阅读 多人点赞 2015-06-20 22:30:01
    CNN公式推导 1 前言  在看此blog之前,请确保已经看懂我的前两篇blog【深度学习笔记1(卷积神经网络)】和【BP算法与公式推导】。并且已经看过文献[1]的论文【Notes on Convolutional Neural Networks】。因为本文...
  • 反向传播算法(过程及公式推导

    万次阅读 多人点赞 2016-04-01 21:19:56
    反向传播算法(Backpropagation)是目前用来训练人工神经网络(Artificial Neural Network,ANN)的最常用且最有效的算法。
  • Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现zouxy09@qq.comhttp://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完过后就会慢慢的淡忘,某一天重新拾起来的时候又好像没有看过一样。...
  • 使用推导式可以快速生成列表、元组、字典以及集合类型的数据,因此推导式又可细分为列表推导式、元组推导式、字典推导式以及集合推导式。 Python列表推导式 列表推导式可以利用 range 区间、元组、列表、字典和集合...
  • svm原理详细推导

    千次阅读 多人点赞 2018-10-29 17:50:54
    笔者在查阅了大量资料和阅读大佬的讲解之后,终于对svm有了比较深一点的认识,先将理解的推导过程分享如下: 本文主要从如下五个方面进行介绍:基本推导,松弛因子,核函数,SMO算法,小结五个方面以%%为分隔,同时...

空空如也

1 2 3 4 5 ... 20
收藏数 246,121
精华内容 98,448
关键字:

推导