my.knowledge.graph <- function(file,from=NULL,to=NULL,target.date=NULL,target.node=NULL,max.edge=NULL,alpha=1){ library(igraph)
tmp <- as.matrix(read.table(file,sep="\t",fill=TRUE))
dates <- as.numeric(tmp[,1])
if(is.null(from))from<-min(dates)
if(is.null(to))to<-max(dates)
targets <- which(dates >= from & dates <= to)
d <- tmp[targets,-1]
u.d <- unique(c(d))
d.id <- d
null.id <- which(u.d=="")
v.label <- c()
for(i in 1:length(u.d)){
d.id[which(d==u.d[i])] <- i
v.label[i] <- u.d[i]
}
e <- matrix(0,0,2)
for(i in 1:length(d[,1])){
if(length(d[i,]) > 1){
for(j in 2:length(d[i,])){
if(length(null.id)>0){
if(d[i,j]==""){
}else{
e <- rbind(e,c(d[i,1],d[i,j]))
}
}
}
}
}
e.uniq <- unique(e)
e.weight <- rep(0,length(e.uniq[,1]))
for(i in 1:length(e.uniq[,1])){
e.weight[i] <- length(which(e[,1]==e.uniq[i,1] & e[,2]==e.uniq[i,2]))
}
selected.e <- 1:length(e.weight)
if(is.null(max.edge)){
selected.e <- which(e.weight >= quantile(e.weight,1-alpha))
}else{
sort.w <- sort(e.weight,decreasing=TRUE)
tmp.max.edge <- min(max.edge,length(e.weight))
tmp.w <- sort.w[tmp.max.edge]
selected.e <- which(e.weight >= tmp.w)
}
library(igraph)
g <- graph.edgelist(e.uniq[selected.e,],directed=FALSE)
E(g)$weight <- e.weight
v <- V(g)$name
col <- rep(rgb(0.3,0.3,0.3,alpha=0.3) ,length(v))
if(!is.null(target.date)){
tmp.v <- which(dates[targets]==target.date)
col[which(v %in% d[tmp.v,1])] <- rgb(1,0.3,0.3,alpha=0.5)
}
if(!is.null(target.node)){
col[which(v %in% target.node)] <- rgb(1,0.3,0.3,alpha=0.5)
}
e.w <- E(g)$weight
plot(g,vertex.color=col,edge.width = e.w)
}
my.knowledge.graph("統計基礎勉強会.txt",target.node="サポートベクターマシン")
my.knowledge.graph("統計基礎勉強会.txt",from=-1,to=20140501,target.date=20140402)
my.knowledge.graph("統計基礎勉強会.txt",from=-1,to=20131201,target.date=20140402)
my.knowledge.graph("統計基礎勉強会.txt",from=-1,to=20131113,target.date=dd.u[i],max.edge=20)
dd <- c(20131113,20131113,20131127,20131204,20131211,20131218,20131225,20131225,20131225,20131225,20140108,20140108,20140108,20140115,20140122,20140122,20140122,20140129,20140212,20140226,20140305,20140319,20140326,20140326,20140402,20140409,20140416,20140423,20140514,20140521,20140528)
dd.u <- unique(dd)
for(i in 1:length(dd.u)){
jpeg(paste(dd.u[i],"s.jpeg"))
my.knowledge.graph("統計基礎勉強会.txt",from=-1,to=dd.u[i],target.date=dd.u[i],max.edge=20)
dev.off()
}
for(i in 1:length(dd.u)){
jpeg(paste(dd.u[i],"k.jpeg"))
my.knowledge.graph("統計基礎勉強会.txt",from=-1,to=dd.u[i],target.date=dd.u[i])
dev.off()
}
20131113 ヒストグラム 分布 最適化
20131113 カーネル密度推定 カーネル ヒストグラム 推定 近似 平滑化
20131127 楕円 回転 回転行列 固有値分解
20131204 固有値分解 逆行列 楕円
20131211 リサンプリング クロスバリデーション ギッブスサンプリング パーミュテーション法 ジャックナイフ法 推定
20131218 ニュートン法 最適化 微分
20131225 二項分布 ベータ分布 分布
20131225 共役事前分布 ベータ分布
20131225 二項分布 離散
20131225 ベータ分布 連続
20140108 ワイブル分布 故障 最弱リンクモデル 形状パラメタ 尺度パラメタ
20140108 分布 パラメタ
20140108 最弱リンクモデル 確率モデル モデル
20140115 連検定 離散 組み合わせ 順列
20140122 尤度関数 最尤推定 微分 極値 尤度
20140122 尤度 確率 事前確率 事後確率 ベイズ
20140122 尤度関数 ワイブル分布
20140129 TeX 数学 表記
20140212 アルゴリズム 線形計画法 動的計画法 貪欲法 分割統治法 数え上げ ヒューリスティック 遺伝的アルゴリズム モンテカルロ法 計算量
20140226 疑似乱数列 乱数 分布 シード ギッブスサンプリング 線形合同法 メルセンヌ・ツイスター 素数
20140305 MCMC 状態推移 状態推移行列 行列 モンテカルロ 乱数
20140319 p値 検定
20140326 LAPACK 線形代数 パッケージ
20140326 線形代数 行列
20140402 統計学 用語 定義
20140409 統計学 記法
20140416 データマイニング データベース データウェアハウス 分類 クラスタリング
20140423 スプライン曲線 近似 微分 平滑化 推定
20140514 オッカムの剃刀 ゲーム理論 ランダム モデル 自由度
20140521 自己相関 カーネル関数 周期性 畳みこみ 内積
20140528 サポートベクターマシン カーネル関数 内積 内積空間 分類 回帰