統計學習方法九 EM演算法

2022-08-09 12:12:16 字數 696 閱讀 9710

一、em演算法是什麼?

em演算法是一種迭代演算法,用於含有隱變數的概率模型引數的極大似然估計。

作用:簡單直白的說,估計引數

是一種生成模型

(1)用在概率模型中

(2)含有隱變數

(3)用極大似然估計方法估計引數

個人理解,概率模型中的一些引數,通常是一些概率:

(1)如果概率模型中的變數全部可觀測,那可以統計各個變數出現的次數,然後可以求取頻率,用頻率估計概率

(2)如果概率模型中存在著不可觀測的隱變數,直接求頻率可能會不可行,此時採用em演算法來求取引數。

按照什麼標準極大化引數呢?

用y表示觀測隨機變數的資料

用z表示隱隨機變數的資料

我們可觀測到y,y通常是由z生成的,而生成規則遵循概率模型,也就是概率模型中的引數。

我們希望找到這些的引數,這些引數使得出現觀測序列y的概率最大

演算法思想:

二、演算法步驟

1、初始化引數:給要估計的引數乙個初始值

2、e步驟:根據現有的引數求期望

3、m步驟:期望最大化求引數的估計值

4、重複步驟2、3直到收斂

《統計學習方法》筆記 EM演算法

em expectation maximization algorithm 用於含有隱變數的概率模型引數的極大似然估計。例子 有三枚a,b,c硬幣。首先a為選擇硬幣,對其進行投擲,其投擲結果正則選擇b硬幣進行投擲,反為選擇c硬幣,然後根據選擇的硬幣再進行投擲,記錄該硬幣的投擲結果,正面為1,反面為0...

統計學習方法 第九章 EM演算法

em演算法是用於解決含有隱變數的概率模型引數的極大似然估計,每次迭代由兩步組成,e步求期望,m步求極大。而對於高斯混合模型 gmm 上em演算法也是乙個有效的解決方法。現以習題9.1為例,簡單實現一下em演算法 import numpy as np 計算e步 defexpectationcal pi...

《統計學習方法》筆記(十三) EM

em本身是一種迭代演算法,目的是實現含有隱變數的模型引數的極大似然估計,以及後驗分布的眾數。em也可以用來補全缺失的資料集。在此不做重點考慮 演算法描述 輸入 觀測變數資料y,隱含變數z,聯合分布p y,z theta 條件分布p z y,theta 輸出 模型引數theta 1.選擇引數的初值th...