More Related Content Similar to アクションマイニングを用いた最適なアクションの導出 (20) More from Shintaro Fukushima (20) アクションマイニングを用いた最適なアクションの導出23. Alarmデータセット
� 患者の診断項⽬とアラームのデータセット
> library(bnlearn)
> alarm[1:2, ]
CVP
PCWP HIST
TPR
BP
CO HRBP HREK HRSA
PAP
SAO2
FIO2
1 NORMAL NORMAL FALSE
LOW NORMAL HIGH HIGH HIGH HIGH NORMAL NORMAL
LOW
2 NORMAL NORMAL FALSE NORMAL
LOW LOW HIGH HIGH HIGH NORMAL
LOW NORMAL
PRSS ECO2 MINV
MVS
HYP
LVF
APL ANES
PMB
INT KINK DISC
1
HIGH ZERO HIGH NORMAL FALSE FALSE FALSE FALSE FALSE NORMAL FALSE TRUE
2
HIGH ZERO ZERO NORMAL FALSE FALSE FALSE FALSE FALSE NORMAL FALSE FALSE
LVV
STKV CCHL ERLO
HR ERCA
SHNT
PVS
ACO2 VALV VLNG VTUB
1 NORMAL NORMAL HIGH FALSE HIGH FALSE NORMAL NORMAL NORMAL HIGH LOW ZERO
2 NORMAL
LOW HIGH FALSE HIGH FALSE NORMAL
LOW
LOW ZERO ZERO LOW
VMCH
1 NORMAL
2 NORMAL
22
24. Alarmデータセット
� 診断項⽬(変数)間の関係を可視化
> library(bnlearn)
> res = empty.graph(names(alarm))
> modelstring(res) <paste("[HIST|LVF][CVP|LVV][PCWP|LVV][HYP][LVV|HYP:LVF]",
+
"[LVF][STKV|HYP:LVF][ERLO][HRBP|ERLO:HR][HREK|ERCA:HR][ERCA]",
+
"[HRSA|ERCA:HR][ANES][APL][TPR|APL][ECO2|ACO2:VLNG][KINK]",
+
"[MINV|INT:VLNG][FIO2][PVS|FIO2:VALV][SAO2|PVS:SHNT][PAP|PMB][PMB]",
+
"[SHNT|INT:PMB][INT][PRSS|INT:KINK:VTUB][DISC][MVS][VMCH|MVS]",
+
"[VTUB|DISC:VMCH][VLNG|INT:KINK:VTUB][VALV|INT:VLNG][ACO2|VALV]",
+
"[CCHL|ACO2:ANES:SAO2:TPR][HR|CCHL][CO|HR:STKV][BP|CO:TPR]",
sep = "")
> graphviz.plot(res)
23
31. Rでの実装
cream.main <- function(target="BP", n=173328)
{
# CREAM
CREAMアルゴリズムを実⾏する関数
# @param target: target attribute(character)
# @param n: number of record of observational data
library(bnlearn)
(
)
# 観測データ(アラームデータセット)
data(alarm)
# CREAM
CREAMアルゴリズムの実⾏
cost <- 1.0
profit <- 1.0
cn <- hc(alarm)
cream(alarm, target, "NORMAL", cost, profit, cn)
プログラムは
後⽇公開予定
}
30
32. Rでの実装
cream <- function(x, target, target.value, cost, profit, cn)
{
# The CREAM algorithm
# for learning cost-effective action sets from causal networks
#
#
#
#
#
#
#
@param x: object data(data frame or matrix)
@param target: target attribute(character)
@param target.value: target value
@param cost: cost data(numeric)
@param profit: profit(numeric)
@param cn: underlying causal network
@return
library(foreach)
library(doSNOW)
プログラムは
後⽇公開予定
var.list <- colnames(x)
to.str <- paste0("(", target, "=='", target.value, "')")
result <- vector("list", nrow(x))
fitted <- bn.fit(cn, x)
...
...
}
31
38. 参考⽂献
⽂献名
著者
出版社等
Incorporating
Hendrik Blockeel COSTS
causal reasoning
workshop @
ICDM 2012
in cost-effective
コメ ント
下記の論⽂を要訳し
たスライドであり,分
かりやすい.
action mining
Causality-based
Cost-effective
Action Mining
Action Rules
Mining
Pirooz
Shamsinejadbab
aki, Mohamad
Saraee, and
Hendrik
Agnieszka
Dardzinska
因果ネットワークを⽤
いたCREAM, ICECREAMという2つのア
クションマイニングのア
ルゴリズムを提唱.
Springer
未読.この分野を専
⾨的に扱った本.
37