R의 최대 유사도로 선형 기함수 모델(고스키)의 계수를 추정하다
set.seed(0)
x<-seq(0.05,1,0.1)
t<-sin(2*pi*x)+rnorm(10,0,0.5)
t<-matrix(t,nrow=length(t))
M=4
base<-function(m,x) {
# r<-x^m #多項式基底の場合
r<-exp(-(x-(m-1)/(M-2))^2/(2*0.2^2)) #ガウス基底の場合
r[m == 0]<-1 # w0をバイアス項とするためφ0=1
r
}
makePhi<-function(M) {
A <- matrix(nrow=length(x),ncol=M)
for (i in 1:length(x)) {
for (j in 0:(M-1)) {
A[i,1+j] <- base(j,x[i])
}
}
A
}
xrange=c(-0.5,1.5)
yrange=c(-2,2)
phi<-makePhi(M)
w<-solve(t(phi) %*% phi) %*% t(phi) %*% t
w
estimate<-function(x){
i <- 0:(M-1)
(sapply(x,function(xn){ (sum(w * base(i, xn))) } )) # (w[1]+w[2]*base(1,x)+w[3]*base(2,x)...)
}
plot(x,t,xlim=xrange,ylim=yrange)
par(new=T)
curve(estimate,type="l",xlim=xrange,ylim=yrange)
Reference
이 문제에 관하여(R의 최대 유사도로 선형 기함수 모델(고스키)의 계수를 추정하다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/data9824/items/c11497fc353f86675c16텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)