_대문 | 방명록 | 최근글 | 홈피소개 | 주인놈
FrontPage › 레만투_독립성분분석
Describe 레만투_독립성분분석 here

독립성분분석을 지원하는 패키지에는 fastICA와 mlica가 있다. 보통 fastICA가 널리 쓰인다.

예제 자료 만들기
간단한 예제를 하나 따라가면서 해보자. 먼저 2개의 값을 가지는 500개의 자료를 만들자.
S = matrix(runif(1000), 500, 2)
다음엔 혼합 행렬(mixing matrix)를 만든다.
A = matrix(c(1, 1, -1, 3), 2, 2, byrow = TRUE)
원자료와 혼합행렬을 곱하면 관찰자료가 만들어진다.
X <- S%*%A

fastICA
fastICA는 간단히 패키지를 불러들인 다음 관찰자료와 성분의 개수만 넣어주면 된다.
require(fastICA)
a <- fastICA(X, 2)

mlica
mlica는 PriorNormPCA으로 주성분분석을 실시한 후에, proposeNCP으로 성분 수를 결정하고 mlica 함수에 넘겨주면 된다.
require(mlica)
prPCA <- PriorNormPCA(S)
prNCP <- proposeNCP(prPCA,0.01)
b = mlica(prNCP,nruns=5)

그래프
맨 위의 그림을 그래프로 그리려면 아래와 같다.
par(mfrow = c(1, 5))
plot(S, main="original")
plot(a$X, main = "Pre-processed",col="red")
plot(a$X%*%a$K, main = "PCA",col="green")
plot(a$S, main = "fastICA",col="blue")
plot(b$S, main = "mlICA",col="purple")

댓글 남기기..
이름: : 오른쪽의 새로고침을 클릭해 주세요. 새로고침
EditText : Print : Mobile : FindPage : DeletePage : LikePages : Powered by MoniWiki : Last modified 2018-04-13 23:12:53

우리의 현재 위치가 소중한 것이 아니라 우리가 가고자 하는 방향이 소중한 것이다. (홈즈)