기계 학습에서 EM 알고리즘이란 무엇입니까? [예시 설명]
게시 됨: 2021-03-10EM 알고리즘 또는 Expectation-Maximization 알고리즘은 1977년 Arthur Dempster, Nan Laird 및 Donald Rubin에 의해 제안된 잠재 변수 모델입니다.
잠재 변수 모델은 관찰 가능한 변수와 관찰할 수 없는 변수로 구성됩니다. 관찰된 변수는 측정할 수 있는 변수이고 관찰되지 않은(잠재적/숨겨진) 변수는 관찰된 변수에서 추론됩니다.
트리오에 의해 설명된 바와 같이, EM 알고리즘은 통계 모델에서 잠재 변수(관찰 가능한 변수에서 추론해야 하는 관찰 불가능한 변수)에 대한 로컬 최대 가능성(MLE) 매개변수 또는 사후 최대(MAP) 매개변수를 결정하는 데 사용할 수 있습니다. 이러한 잠재 변수와 관련된 확률 분포의 일반적인 형태를 알고 있는 경우 이러한 값을 예측하거나 누락되거나 불완전한 데이터를 결정하는 데 사용됩니다.
간단히 말해서, 기계 학습에서 EM 알고리즘의 기본 원리는 학습을 위해 관찰할 수 없는 인스턴스의 값을 예측하기 위해 잠재 변수의 관찰 가능한 인스턴스를 사용하는 것과 관련됩니다. 이것은 값의 수렴이 발생할 때까지 수행됩니다.
알고리즘은 기계 학습에서 다소 강력한 도구이며 많은 비지도 알고리즘의 조합입니다. 여기에는 다른 EM 알고리즘 변형 중에서 k-평균 클러스터링 알고리즘이 포함됩니다.
세계 최고의 대학(석사, 대학원 대학원 과정, ML 및 AI 고급 인증 프로그램) 의 기계 학습 과정 에 온라인으로 참여 하여 경력을 빠르게 추적하십시오.

목차
기대 최대화 알고리즘
기계 학습에서 기대치 최대화 알고리즘의 메커니즘을 살펴보겠습니다.
원천
- 1단계: 누락되거나 불완전한 데이터 세트와 다른 시작 매개변수 세트가 있습니다. 관찰된 데이터나 매개변수의 초기값이 특정 모델에서 생성되었다고 가정합니다.
- 2단계: 사용 가능한 데이터의 관찰 가능한 인스턴스에서 관찰 가능한 값을 기반으로 데이터 또는 누락된 데이터의 관찰할 수 없는 인스턴스의 값을 예측하거나 추정합니다. 이를 기대 단계(E – 단계)라고 합니다.
- 3단계: E – 단계에서 생성된 데이터를 사용하여 매개변수를 업데이트하고 데이터 세트를 완성합니다. 이것은 가설을 업데이트하는 데 사용되는 최대화 단계(M – 단계)로 알려져 있습니다.
2단계와 3단계를 수렴할 때까지 반복합니다. 값이 수렴하지 않으면 E – 단계와 M – 단계를 반복합니다.
.
원천
EM 알고리즘의 장점과 단점
EM 알고리즘의 단점 | |
1 | EM 알고리즘의 모든 반복은 보장된 가능성의 증가를 가져옵니다. |
2 | 기대 단계와 최대화 단계는 다소 쉬우며 후자의 솔루션은 대부분 닫힌 형태로 존재합니다. |
EM 알고리즘의 장점 | |
1 | 기대 최대화 알고리즘은 순방향 확률과 역방향 확률을 모두 고려합니다. 이것은 순방향 확률만 고려하는 수치 최적화와 대조됩니다. |
2 | EM 알고리즘 수렴은 매우 느리고 로컬 최적값으로만 만들어집니다. |
EM 알고리즘의 응용
잠재 변수 모델은 기계 학습에서 실제 응용 프로그램이 많이 있습니다.
- 비지도 데이터 클러스터링 및 심리 측정 분석에 사용됩니다.
- 또한 함수의 가우스 밀도를 계산하는 데 사용됩니다.
- EM 알고리즘은 HMM(은닉 마르코프 모델) 매개변수 및 기타 혼합 모델을 예측하는 데 광범위하게 사용됩니다.
- EM 알고리즘은 자연어 처리(NLP), 컴퓨터 비전 및 양적 유전학에서 많이 사용됩니다.
- EM 알고리즘의 다른 중요한 응용 프로그램에는 의학 및 구조 공학 분야의 이미지 재구성이 포함됩니다.
Gaussian Mixture Model을 사용하는 EM 알고리즘을 이해합시다.

가우스 혼합 모델에 대한 EM 알고리즘
가우스 혼합 모델의 매개변수를 추정하려면 확률 분포가 알려진 두 개의 개별 프로세스에서 생성된 일부 관측 변수가 필요합니다. 그러나 두 프로세스의 데이터 포인트가 결합되어 어느 분포에 속하는지 알 수 없습니다.
위에서 설명한 대로 EM 알고리즘의 최대 가능성 추정을 사용하여 이러한 분포의 매개변수를 추정하는 것을 목표로 합니다.
사용할 코드 는 다음과 같습니다 .
# 밀도를 계산해야 하는 함수가 주어졌을 때
# mu, sigma가 주어진 x_i 지점에서의 가우스: G(x_i, mu, sigma); 그리고
# 로그 가능성을 계산하는 또 다른 함수: L(x, mu, sigma, pi)
def 추정치_gmm(x, K, tol=0.001, max_iter=100):
”' GMM 매개변수를 추정합니다.
:param x: 관찰된 실수 값 변수 목록
:param K: 가우시안 수에 대한 정수
:param tol: 로그 가능성에 대한 허용된 변경
:return: mu, sigma, pi 매개변수
"'
# 0. ta 초기화 = (mu, sigma, pi)
N = 렌(x)
뮤, 시그마 = [rand()] * K, [rand()] * K
파이 = [랜드()] * K
curr_L = np.inf
범위(max_iter)의 j에 대해:
prev_L = curr_L
# 1. E-단계: 책임 = p(z_i = k | x_i, ta^(t-1))
r = {}
범위(N)의 i에 대해:
부품 = [pi[k] * G(x_i, mu[k], sigma[k]) for i in range(K)]
합계 = 합계(부품)
k의 i에 대해:
r[(i, k)] = 부품[k] / 총계
# 2. M-step: mu, sigma, pi 값 업데이트
rk = [sum([r[(i, k)] for i in range(N)]) for k in range(K)]
범위(K)의 k에 대해:
파이[k] = rk[k] / N
mu[k] = sum(r[(i, k)] * x[i] for i in range(N)) / rk[k]
시그마[k] = 합(r[(i, k)] * (x[i] – mu[k]) ** 2) / rk[k]
# 3. 종료 조건 확인
curr_L = L(x, 뮤, 시그마, 파이)
abs(prev_L – curr_L) < 톨:

부서지다
리턴 뮤, 시그마, 파이
E-Step에서는 Bayes 정리를 사용하여 알고리즘의 과거 반복에서 가져온 주어진 데이터 포인트의 예상 값을 결정할 수 있습니다. M-Step에서는 Maximum Likelihood를 사용하여 관찰되지 않은 인스턴스의 프록시를 추정하기 위해 잠재 변수의 값이 고정되어 있다고 가정합니다. 마지막으로 표준 평균 및 표준 편차 공식을 사용하여 가우스 혼합 모델의 매개변수를 추정합니다.
결론
이것은 우리를 기사의 끝으로 이끕니다. 기계 학습 개념에 대한 자세한 내용은 upGrad의 기계 학습 및 AI 과학 석사 프로그램을 통해 IIT Bangalore 및 리버풀 John Moores University의 최고 교수진 에게 문의 하십시오 .
450시간 이상의 학습 콘텐츠, 12개 이상의 산업 프로젝트, 10개의 Capstone 프로젝트 옵션 및 10개 이상의 코딩 과제를 제공하는 18개월 과정입니다. 또한 업계 전문가의 맞춤형 멘토링과 라이브 세션을 통한 진로 지도 상담을 즐길 수 있습니다. 다음 배치는 2021년 2월 28일에 시작됩니다!
EM 클러스터링이란 무엇을 의미합니까?
관측 데이터의 확률을 최적화하기 위해 EM 클러스터링을 사용하여 각 클러스터(분포)에 대한 평균 및 표준 편차를 추정합니다. 서로 다른 클러스터에 있는 고유한 분포의 조합을 기반으로 EM 알고리즘은 관찰된 값 분포를 근사화하려고 시도합니다. EM은 유한 가우스 혼합 모델을 사용하여 데이터를 클러스터링하고 원하는 수렴 값에 도달할 때까지 매개변수 세트를 반복적으로 추정합니다. EM 클러스터링은 K-평균 클러스터링으로 얻은 결과와 다른 결과를 산출합니다.
EM 알고리즘의 실제 응용 프로그램은 무엇입니까?
의학 분야에서 EM 알고리즘은 이미지 재구성에 사용됩니다. 또한 HMM(Hidden Markov Models) 및 기타 혼합 모델의 매개변수를 예측하는 데 사용됩니다. 또한 특정 샘플에서 누락된 데이터를 완성하는 데 도움이 됩니다. 항목 응답 이론 모델의 항목 매개변수 및 잠재 능력은 심리 측정에서 EM을 사용하여 추정됩니다. 구조 공학 분야에서도 널리 사용됩니다.
MLE 알고리즘은 EM 알고리즘과 어떻게 다릅니까?
숨겨진 변수가 있는 경우 최대 가능성 추정 프로세스는 단순히 데이터에 문제를 제기합니다. MLE는 처음에 모든 데이터를 수집한 다음 이를 활용하여 가장 가능성 있는 모델을 구축합니다. 잠재 변수를 사용하여 기대 최대화 알고리즘은 최대 가능성 추정에 대한 반복 솔루션을 제공합니다. EM은 먼저 매개변수를 교육적으로 추정한 다음 누락된 데이터를 확인한 다음 교육된 추측과 관찰된 데이터에 맞게 모델을 변경합니다.