一般論文

DBSJ Journal,Vol.8, No.1
June 2009

一般論文

DBSJ Journal,Vol.8, No.1

データストリーム処理へのベイジア
ンネットワークの導入

Introduction of Bayesian Networks for Data
Stream Processing

1. はじめに
近年，無線センサノードや GPS や RFID，ネットワークカメラのような様々なセンサデバイスが使われている．これらのセン
サデバイスからは逐次大量のデータが生成されており，このようなデータをデータストリームと呼ぶ．データストリームを用いて実世界で生じるイベントを検知したり，あるいは検知結果から状

佐藤
北川

亮♥
博之 ♠

Ryo SATO
Hiroyuki KITAGAWA

川島況を推論する研究も行われている．この推論技法の代表的なもの

英之 ♦に，ベイジアンネットワーク [2] がある．ベイジアンネットワー
クを用いて実世界の状況を認識するシステムは多数開発されていHideyuki KAWASHIMA

る．その例には状況推定 [1][9]，麻酔行為表現，電子メールエー
ジェント等がある．これらは時間的変動のない静的な事象を対象としているため，動的な事象であるデータストリームを対象にしていない．

本研究では確率推論の一技法であるベイジアンネットワークと関係ストリーム処理を統合するシステムについて述べる．ベイジアンネットワークはオブジェクト関係データモデルにおける ADT として格納される．ベイジアンネットワークへの入力はイベント生起であり，これを取得するため，入力リレーション
をイベントに変換する ASSOC 処理を提案する．さらに，このASSOC 処理とベイジアンネットワークの確率伝播を実行し，問合せに応じて確率的タプルを生成する BNM 演算子を提案する．
そして ASSOC 処理を記述するための構文および問合せ言語について述べた後，ネットワークカメラを用いて作成した 6 ノードからベイジアンネットワークについて述べる．

そこで本研究は，ベイジアンネットワークを用いて不確実な状
況を表す確率的データストリームを連続的に処理するシステムを提案する．ベイジアンネットワークを用いたデータストリーム処理システムを構築するためには 3 つの課題がある．1 つ目は，ベイジアンネットワークから生成されるデータとデータベース内に格納されているデータとの関係演算処理を実行するために，グラフ構造であるベイジアンネットワークを関係データモデル内で表現する方法である．2 つ目は，データストリーム処理システムに対する入力であるデータストリームをベイジアンネットワークの各イベントに対応させる方法である．最後の 3 つ目は，グラフ構造であるベイジアンネットワークから，ベイジアンネットワーク
内の各イベントの確率値等の情報を取得する方法である．本研究This paper describes a system that integrates a probabilistic reasoning technique Bayesian networks and relational
stream processing. Bayesian networks are stored in the form of
ADT in the object relational data model. Inputs to a Bayesian
network is event occurences. To obtain them, we propose an operator that converts an input relation to events, and refer it to
ASSOC processing. Next, we propose BNM operator. The BNM
operator conducts ASSOC processing and probability propagation then it outputs probabilistic tuples with regard to a query.
On the query, methods extract probabilistic tuples from graphstructured Bayesian networks. And, we describe a syntex todescribe query language. Then finally we describe a Bayesian
network consisted of 6 nodes.

では，以上の 3 課題を解決し確率的データストリーム処理システ
ムの構築を行う．
本論文の構成は以下の通りである．2 節ではベイジアンネット
ワークとデータストリームについて概説する．3 節では提案シス
テム構築における 3 つの課題についての解決方法を説明する．4
節では提案システムの評価実験について述べる．5 節で関連研究と本研究を比較する．最後に 6 節では結論を述べる．

2. ベイジアンネットワークとデータスト
リーム
本節では，確率を用いるために使用しているベイジアンネット
ワークの説明と本研究で扱うデータストリームについて述べる．

2.1

ベイジアンネットワーク

不確実な状況を表現するためにベイジアンネットワークが広く用いられている．ベイジアンネットワークとは，確率的な因果関係をモデル化する手法であるグラフィカルモデリングの一つである．因果関係のある事象の確率変数をノードとするグラフ構造と，各ノードに割り当てられた条件付き確率分布群によってベイ
♥
♦

学生会員

筑波大学大学院システム情報工学研究科

punisiro@kde.cs.tsukuba.ac.jp

正会員 筑波大学大学院システム情報工学研究科／計算科学研究センター kawasima@cs.tsukuba.ac.jp♠
正会員 筑波大学大学院システム情報工学研究科／計算科学研究センター kitagawa@cs.tsukuba.ac.jp

ジアンネットワークは定義される．因果関係の有無を有向グラフで表す．また，因果関係の強さを条件付き確率で表す．各変数の条件付き確率分布は，本研究で対象とする離散的な確率変数の場
合には，親ノードと子ノードの各変数がとる具体的な値ごとに割り当てられた条件付き確率を離散的な表，すなわち条件付き確率1

日本データベース学会論文誌 Vol.8, No.1

― 137 ―

日本データベース学会論文誌 Vol.8, No.1
2009年 6月

一般論文

DBSJ Journal,Vol.8, No.1
June 2009

一般論文

DBSJ Journal,Vol.8, No.1
グラフ構造を有するため，そのままでは関係データベース内で扱うことができない．この問題を解決するためにオブジェクト関係

A

P(A)

eventX

eventY

eventZ

0.2

0.7

0.1

データベースのオブジェクトとして，ベイジアンネットワークの拡張データ型 (ADT) を作成する．ADT として BN-Obj 型を定義
し，ベイジアンネットワークのオブジェクトを格納する．BN-Obj

B

C

true

false

P(B|A=eventX)

0.25

0.75

P(B|A=eventY)

0.6

0.4

P(B|A=eventZ)

0.15

0.85

true

false

P(C|A=eventX)

0.45

0.55

P(C|A=eventY)

0.1

0.9

P(C|A=eventZ)

0.2

0.8

を作成することにより，今まではデータベースに蓄えられていな
かったベイジアンネットワークをデータベース内に格納可能になる．データベースにベイジアンネットワークを格納することで，関係テーブルに格納されているデータと同じようにベイジアン

D

true

false

P(D|C=true)

0.6

0.4

P(D|C=false)

0.02

0.98

ネットワークを扱うことができ，関係演算子 (選択，射影，結合等) を使用可能になる．

3.2

図 1 ベイジアンネットワークの例

表 (Conditional Probability Table(CPT)) として表現する．図 1 にベイジアンネットワークの例を示す．このベイジアンネットワー
クは A，B，C，D の 4 ノードで構成されている．本研究で扱う
ベイジアンネットネットワークは，それぞれのノードが true とfalse の 2 値だけを扱うだけでなく，ノード A のよう複数イベン
ト (eventX，eventY，eventZ) も扱う．

ベイジアンネットワークに対する入力

提案システムは，センサデバイス等から生成されるデータスト
リームを受信し，window 演算 [10] を適用してデータストリー
ムを有限長の関係データに変換し，そのデータに基づきベイジ
アンネットワークの各イベントの確率計算を実行する．そのとき，データストリームがどのベイジアンネットワークのイベントと対応しているか不明なのでデータストリームをイベント生起を示すデータに変換しなければならない．そこで，データスト
リームとベイジアンネットワークのイベントを対応付けるため

2.2に，ASSOC 処理を提案する．また，本システムが扱うデータモ

データストリーム

近年，大量に流れ来るデータを効率的に処理する技術として
データストリーム処理が注目されている．データストリームとは，センサデバイスなどの情報源から逐次配信さるデータのことである．データストリームに関する研究は 2002 年頃 [6] から始まった．当初は関係データ演算をストリームモデルに適応させ，処理系において性能を追求する研究が行われたが，現在では多様なアプリケーションに特化した専用問合せ言語を持つ専用システ
ムに関する研究が多数行われている．本システムでは，データス
トリームを受信しイベント生起を表わすタプルに変換して，確率的データストリームという各タプルに確率値が付与されている
データストリームをユーザに配信する．

3.

データストリーム処理システムに対するベ
イジアンネットワークの導入

デルには，関係データモデル (R)，データストリームモデル (S)，
確率的関係データモデル (PR)，そして確率的データストリーム
モデル (PS) の 4 種類がある．これら異なるデータモデルを統一的に扱うためには，モデル変換演算子が必要になるため，データモデルを変換する演算子を導入する．

3.2.1 ASSOC 処理: 入力データストリームとベイジア
ンネットワークとの関連付け
window 演算により関係データに変換されたデータに対して，
ASSOC 処理を適用すると，入力データ 1 タプルにつき 1 タプルのイベント生起情報を含む関係データが生成される．なお，

window 演算における window 幅はこの ASSOC 処理を定義する
ASSOC 構文に記述される．構文の詳細は 3.5 節で述べる．

3.2.2 データモデル変換演算子
本提案システムで扱うデータモデルは 4 種類であるから，全ての組合せを考えると 16(= 4 × 4) 種類のモデル変換演算子が考

本節では，データストリーム処理システムに対するベイジアン

えられるが，本研究では 7 つのモデル変換演算子のみを扱う．そネットワークの導入における 3 つの課題の解決方法と提案システの他 9 つのモデル変換演算子は，本研究で扱う 7 つのモデル変ムの処理ついて述べる．

換演算子の組合せや，PS は入力としては出現せず出力のみ出現

3.1 DB におけるベイジアンネットワークの表現する事などを考慮し，定義しない．そして，本研究ではベイジア

本節では，グラフ構造であるベイジアンネットワークの DB 内

ンネットワークと関係データベースとの統合を行なうために，ベにおける表現方法について述べる．

イジアンネットワークが有する確率的データモデルを確率的関係

3.1.1

データモデルへと変換する演算子を導入する．

オブジェクト関係データモデル

ベイジアンネットワークの推論結果と，DB 内に格納されていこれら 7 つのモデル変換演算子は 3 種類の状況で用いられる．

るデータを関係演算処理を用いて統合利用するために，ベイジア

それらの状況は，提案システムへの入力時，提案システムからのンネットワークを関係データベースに格納する．

出力時，そして提案システム内での処理時である．

ベイジアンネットワークと関係データベースを自然に統合する
ため，オブジェクト関係データモデルを採用し，オブジェクトにベイジアンネットワークを格納する．ベイジアンネットワークは• 提案システムへの入力時– S-to-R (Stream to Relation)2

日本データベース学会論文誌 Vol.8, No.1

― 138 ―

日本データベース学会論文誌 Vol.8, No.1
2009年 6月

一般論文

DBSJ Journal,Vol.8, No.1
June 2009

一般論文

DBSJ Journal,Vol.8, No.1

入力データストリームを有限の関係データに変換する．

3.3.2 タプル生成メソッドの定義
グラフ構造である BN-Obj 型から確率値を有するタプルを抽出

S-to-R には window 演算がある．

するためのメソッド, getNodeContent() を本節で定義する．

• 提案システム内での処理時– R-to-R (Relation to Relation)■getNodeContent(output-attr，nodeset)

は nodeset で指定したベイジアンネットワークのノード集合からの関係演算子を全て含む．

output-attr で指定した属性で構成するタプルに変換する．
■output-attr output-attr は Time，Id，Node，Ev，Pr から好– PR-to-PR (Probabilistic Relation to Probabilistic Relation)

きな属性を指定して出力する．出力する属性は複数でも可能で確率的関係データから，確率的関係データを導出する．

ある．Time は時間，Id はノードの ID 番号，Node はノードのR-to-R 演算子とは異なり，問合せ処理においてタプル独立性を保つ問合せ計画が立案される必要がある [8]．さ名前，Ev はイベントの名前，Pr は確率値の属性である．例えば，全ての属性を出力したい時には，getNodeContent(*, nodeset)

らに，ベイジアンネットワーク上のイベント生起確率をと記述すれば良い．又，Ev，Pr の 2 つの属性が欲しい時は，

getNodeContent((Ev,Pr), nodeset) と記述すれば良い．

確率的関係データへ変換する．

■nodeset nodeset は，ベイジアンネットワークオブジェクト– R-to-PR (Relation to Probabilistic Relation)
関係データを確率的関係データへと変換する．確率的関から，任意のノード集合を選択する．ノード集合を抽出する構文

係データと関係データとの結合の時に，関係データは本を図 2 の BNF に示す．get は，nodeset により抽出されたノード

演算子を適用する必要がある．

の子や親や兄弟ノードを抽出する．そして select は，条件に一致– PR-to-R (Probabilistic Relation to Relation)

するノードを抽出する．引数の value は任意の数値である．

確率的関係データを関係データへと変換する．

nodeset::= monadic | dyadic
dyadic::= nodeset aggregate nodesetmonadic::= getNode | selectNode
get::= getChild(nodeset)|
getParent(nodeset)|
getSibling(nodeset)
select::= selectTime(compare，value)|selectId(compare，value)|selectEv(compare，value)|selectPr(compare，value)
selectNode(compare，value)
aggregate::= ∪ | ∩ | compare::= < | <= | = | >= | > | <>• 提案システムへの出力時– PR-to-PS (Probabilistic Relation to Probabilistic Stream)
確率的関係データを確率的データストリームに変換
する．

– R-to-S (Relation to Stream) 関係データをデータストリー
ムに変換する．

3.3

ベイジアンネットワークからの推論結果抽出

DB 内に格納したベイジアンネットワークから確率計算を実行後の確率値を抽出するとき，BN-Obj 型はオブジェクト型であるため，通常の関係演算子に適用できない．これを解決するために，本提案システム特有のベイジアンネットワークメソッド演算
子 (以下 BNM 演算子) を BN-Obj 型に用意し，BN-Obj をタプルに変換することで，問合せに対応する．この詳細を下記で述べる．

3.3.1

getNodeContent()

関係データから関係データを導出する．R-to-R は通常

BNM 演算子

本提案システムでは，リレーショナル演算子や window 演算子の他に，イベント生起のタプルを入力として受取り，その情報を基に確率計算を実行し，タプルを生成するメソッド群を BNM 演
算子として扱う．

BNM 演算子の入力タプルは window 演算後の有限長のタプルである．BNM 演算子は，全入力タプルに対して，ASSOC 処理
を実行しイベント生起のタプルを変換し，イベント生起タプルと3.3.3 節で説明する lifespan により現在生起しているイベントを決定し確率計算を実行する．確率計算を実行後のベイジアンネッ
トワークから 3.3.2 節で述べるメソッドを使用し指定したタプルを生成する．BNM 演算子は複数タプルを生成することもある．
複数イベントを扱うベイジアンネットワークのノードでは，1 つのノードで同時に複数のイベントが生起することは有り得ないため，同じノードのイベント生起のタプルを複数個受け取った場合には，最新のタプルのイベント生起のみ適用する．

図 2 BNF of nodeset

3.3.3 ベイジアンネットワークモデルの拡張
2.1 節で定義したベイジアンネットワークのモデルには生起期間の概念が無い．あるイベントが生起したら，その一瞬だけイベントが生起することは不自然なので，Lifespan を導入する．
Lifespan はイベントの生起期間を表す．Lifespan の例を図 3 に示す．図 3 中の下向矢印はノードの生起を示し，右向矢印の長さはイベント生起期間を示す．図 3 において，時刻 t2 においてはイ
ベント A のみが生起している状態を表す．時刻 t3 ではイベント
A とイベント B が生起している状態を表す．そして時刻 t4 では
イベント B が生起している状態を表す．すなわち，問合せが時刻
t2, t3, t4 で実行されたとすると，それぞれイベント A, イベント
A とイベント B, イベント B が生起しているとみなされてベイジ
アンネットワーク中で確率伝播が実行される．

3.4

システムの処理の流れ

以上のようにしてベイジアンネットワークをデータストリーム
処理システムに導入した．ここで，本提案システムの処理の流れ

3

日本データベース学会論文誌 Vol.8, No.1

― 139 ―

日本データベース学会論文誌 Vol.8, No.1
2009年 6月

一般論文

DBSJ Journal,Vol.8, No.1
June 2009

一般論文

DBSJ Journal,Vol.8, No.1
MASTER
SELECT

10sec
bn.getNodeContent(*,selectPr(>,0.5))
FROM
tableBN
WHERE
tableBN.Room = ’103’
ASSOC
FROM
sensor1[5]TOtableBN.BN
WHERE
tableBN.Room = ’103’
CONDITION
WHEN
sensor1.temp > 50 AND
BN.Node = ’NodeA’ THEN ’eventX’

図 3 Lifespan
確率的
データストリーム
部屋番号103の火災の確率と管理者の情報が欲しい

Tell

Admin

Pr

4566

Sato

0.8

σ

tableR
Users

連続的
問合せ

bnpr

Ev

Tell

Admin

火災

4566

Sato

×

Id

Ev

Pr

1

火災

0.8

Databasebn(BN-Obj)

101

Ev1
Ev2

Ev3

103

Sensors

Time

Temp

12:00

120

12:07

130

12:11

150

Time

Temp

12:00

120

12:07

130

Node

Ev

Pr

T1

1

NodeA

eventX

1

T1

2

NodeB

eventB

0.8

BNM

データ
ストリーム

W

Id

⇒

tableBNRoomTime

図 5 問合せ例 1

eventB だとする．この問合せ結果として図 5 の下に示す確率的
データストリームがユーザに配信される．

3.5.1 各節の説明
図 5 を用いて各節の説明をする．

図4■MASTER 節 MASTER 節では，提案システムに対する問合処理の流れせを実行するタイミングを定義する．Master は時間幅のパラメ
タにより決定される．例えば 10 秒毎や，1 時間毎などである．

を説明する．
提案するシステムは，データストリームを入力として受信し，■SELECT 節

SELECT 節では，射影演算，集約演算を記述す

べイジアンネットワークを用いて確率的関係データを生成した

る．BN-Obj 型に対する処理である getNodeContent() メソッドは後，それと既存の関係データと統合し，その結果を確率的データ

ここで記述する．また，ベイジアンネットワークから生成されるストリームとして出力する．図 4 に本システムの処理の流れを示

タプルが複数存在する可能性があるため，メソッドから生成されす．ユーザは本システムに対して「部屋 103 の火災の確率と，火たタプルは UNNEST 操作を用いて平坦化を行うことにより，第災時の問合せ先の情報が欲しい」という連続的問合せを登録して一正規形に変換する．

いる．システムはセンサからのデータストリームを window 演算■FROM 節 FROM 節は，問合せ対象とするテーブル名を記述

子を用いて有限長の関係データに変換する．BNM 演算子は図 4する．

の例では，ASSOC 処理を適用し，温度の数値データを「高温」■WHERE 節 WHERE 節では，FROM 節で選択したテーブルというイベントの生起に変換している．このイベント生起のタプに対しての選択演算処理を記述する．

ル 1 つを受け取り，その情報に基づいて「火災」の確率値を計算■ASSOC 節

し，確率的関係データを生成する．上記のように生成した確率的を FROM 節で記述する．TO 節と WHERE 節で対応するベイジ

関係データと既存の関係データを統合し，確率的データストリー

アンネットワークのイベントが格納されているテーブル名と属性

ベイジアンネットワークと対応付けを行う情報源

ムとしてユーザに配信する．このようにシステムはユーザが欲し

名を記述する．CONDITION 節で対応するイベント名と条件をい不確実な情報を既存の関係データと統合し配信できる．

記述する．情報源を選択するときに window 幅も指定する．又，

3.5

ASOOC 構文は図 6 のように予め登録して，図 7 のようにして
ASSOC 構文を使用することも可能である．この時 WINDOW 幅
は ASSOC を使用するときに指定する．

問合せ言語

最後にユーザがシステムに対してどのような問合せを記述する
かについて述べる．問合せは，ユーザが容易に記述できるよう

SQL ライクにした．この例を図 5，図 7 に示す．
図 5 の問合せ例は，tableBN というテーブルから，RoomN =’103’ であるタプルに格納されているベイジアンネットワーク
に対して，Pr>0.5 のイベントの情報を 10 秒間隔で要求している．このとき，ASSOC 節以下で sensor1 からの属性名 temp というデータを window 幅 5 タプルで NodeA の’eventX’ というイ
ベントに変換している．この時 Pr>0.5 のイベントが eventX とCREATE

ASSOC
sensor1
FROM
sensor1
TO
tableBN.BN
WHERE
tableBN.Room = ’103’
CONDITION
WHEN
sensor1.temp > 50 AND
BN.Node = ’NodeA’ THEN ’eventX’4

図 6 ASSOC 構文の登録

日本データベース学会論文誌 Vol.8, No.1

― 140 ―

日本データベース学会論文誌 Vol.8, No.1
2009年 6月

一般論文

DBSJ Journal,Vol.8, No.1
June 2009

一般論文
MASTER
SELECT
FROM
WHERE
USING

DBSJ Journal,Vol.8, No.1
10sec
bn.getNodeContent(*,selectPr(>,0.5))
tableBNtableBN.Room = ’103’
ASSOC
sensor1[5]図74.

問合せ例 2

実環境への適用

ベイジアンネットワークがデータストリーム処理に応用可能か評価する為に，実データを用いてベイジアンネットワークを構築し評価した．確率推論を実行するベイジアンネットワークは図 9を用いた．このベイジアンネットワークはカメラにより撮影され図8た背景画像 (図 8) や working 時の画像 1〜3，一つ前に撮影した画像を比較画像として，現在撮影した画像との差分画像の絶対値

背景画像

10000

ノルムの値をノードのイベントとして扱う．上記の差分値を用い

Event

20000

ることにより現在の部屋の状況を推論する．部屋の状況は，人が15000

Working

15000

20000

Moving

25000

None

25000

30000

30000

35000

35000

40000

ベントである “Moving”，そして何もイベントが生起していない

40000

45000

“None” の 3 つである．

50000

机で作業しているイベントである “Working”，人が動いているイ

45000

55000
60000

10000

各ノードの説明は以下の通りである．

Background

20000

30000

BeforeWorking2

35000

5000
10000

40000

15000

10000

45000

20000

15000

50000

25000

20000

55000

30000

25000

60000

35000
40000

30000

45000

35000

Working1

40000
45000

50000
55000
60000

図 9 構築したベイジアンネットワーク

教師データとして 1400 枚の画像データを用いてベイジアンネッ

Event の各確率値

が何 % 以上の時にそのイベントが生起しているとみなしたとす

Working3

15000

25000

• Event：現在部屋で生起している状況 (イベント数 3：Working，Moving，None)• Background：背景画像 (図 8) との差分値 (イベント数 10)• Before：一つ前に撮影した画像との差分値 (イベント数 8)• Working1：Working 時の画像 1 との差分値 (イベント数 12)• Working2：Working 時の画像 2 との差分値 (イベント数 12)• Working3：Working 時の画像 3 との差分値 (イベント数 10)
トワークを構築した．確率計算後のノード

50000
5000

55000

確率値 85% 以上

確率値 90% 以上

確率値 95% 以上

0.98

0.96

0.92

検出率

る．画像データをランダムに 100 枚使用し，画像によって推論し

図 10

実験結果

たイベントと現実の部屋の状況と同様かどうかを検証．結果を図

このような演算子を研究している例は，我々の知る限り他に存在

10 に示す．どれも高い正解率を示しているので，ベイジアンネッ

しない．

トワークによる推論が可能だと言える．

5.

確率的データベースを用いて不確実性を扱う研究には，Stan-

ford 大学 Trio プロジェクトの ULDB[7] が存在する．ULDB は来関連研究

歴を用いて確率計算を実行する．しかし，本研究のようにベイジ

本システムと同じように, データストリームを連続的に処理すアンネットワークなどの手法を用いてデータベース内で推論し，るシステムは多数存在する．

確率値を含むタプルを新しく生成することについては考慮されて代表的なものでは，STREAM [4]，Aurora [5]，TelegraphCQ
Borealis WaveScope そして StreamSpinner [3] 等がある．これら

ムは扱わない．

いない．さらに ULDB は関係データ処理を対象とし，ストリーのシステムではデータストリームに対する連続的問合せ処理を行

ベイジアンネットワークを使用し，データストリームを扱う研

うが，不確実な状況を表す確率的データストリームについては考究には，D-JENGA [1] がある．D-JENGA はセンサデバイスから慮していない．ストリーム処理と関係データ処理の違いに，演算得られる信号データを対象に確率計算をするが，本研究はセンサ

子が Stateless か Stateful かという点がある．これまでの研究でデバイスから得られるデータを解析した後に生成される，イベン

は結合演算子と集約演算子 [11] の Stateful 化が研究されてきた．

トストリームを対象に確率計算を実行する．さらに，本研究は確我々が導入した lifespan により BNM 演算子は Stateful となるが，率推論のみならず関係演算子全般を対象とするが，D-JENGA は

5

日本データベース学会論文誌 Vol.8, No.1

― 141 ―

日本データベース学会論文誌 Vol.8, No.1
2009年 6月

一般論文

DBSJ Journal,Vol.8, No.1
June 2009

一般論文

DBSJ Journal,Vol.8, No.1

を DB に格納した．さらに，データストリームとベイジアンネッ

Manager, IEEE Data Engineering Bulletin， 2003．
[5] Daniel J． Abadi and Donald Carney and Ugur Cetintemeland Mitch Cherniack and Christian Convey and Sangdon Lee
and Michael Stonebraker and Nesime Tatbul and Stanley B．
Zdonik , Aurora: a New Model and Architecture for Data
Stream Management, VLDB Journal, 2007,[6] Brian Babcock, Shivnath Babu, Mayur Datar, Rajeev Motwani, and Jennifer Widom. Models and Issues in Data Stream
Systems. In ACM Symposium on Principles of Database Systems, 2002.
[7] O.Benjelloum，et al. Uldbs: Databases with uncertainty andlineage．Proc. VLDB, 2006.
[8] N. Dalvi and D. Suciu. Efficient query evaluation on probabilistic databases. In Proc. of VLDB, 2004.
[9] 石川詔三，本村陽一，河田諭志，西田佳史，原一之．日常

トワークの各イベントを対応付けるための ASSOC 処理を提案

生活行動における確率的因果構造モデルの構築と行動推し，イベント生起のデータによりベイジアンネットワークの確率論．The 22nd Annual Conference of the Japanese Society for
Artificial Intelligence，2008．
[10] A．Arasu，S．Babu，and J．Widom．The cql continuous
query language：semantic foundations and query execution．
The VLDB Journal，15(2)：121-141，2006．
[11] Mayur Datar, Aristides Gionis, Piotr Indyk, and Rajeev Motwani. Maintaining Stream Statistics over Sliding Windows.
SIAM Journal on Computing, Volume 31, Issue 6, Pages 1794
- 1813, 2002.

ベイジアンネットワークしか計算対象としていない．
ベイジアンネットワークを用いた，状況推定を目的とした研究に [9] がある．この研究は，ベイジアンネットワークを用いて確率計算を実行し，状況推定を行っているが，データストリームを対象にしておらず，他のデータとの統合利用についても言及して
いない．

6.

結論と今後の課題

実世界状況を連続的に監視するシステムを支援する基盤技術の開発を目指し，本研究では研究課題として，確率的表現と連続的問合せモデルを有する技術の開発を取り上げた．そこで本研究ではベイジアンネットワークを用いたデータストリーム処理モデル
及び，データベースとの統合を提案した．提案モデルでは，関係演算処理をするためにグラフ構造であるベイジアンネットワーク

計算を実行し，確率的関係データを生成する BNM 演算子を提案した．さらに，確率的データとデータベースのデータとの統合を可能にした．
以上より，本研究ではベイジアンネットワークと関係データ
ベースとの連携を可能にするモデルを提案したと結論する．
今後の課題は以下の通りである．(1) 提案システムを実装する．
すでに選択，射影，結合，集約，和，窓の演算子を処理可能なµSPE を準備済である．同 µSPE への BNM 演算子導入を速やかに行う．(2) 実験で用いたベイジアンネットワークを使用してカメラデータによる実環境での状況推論の実験を行う．また，本研
究ではカメラを 1 台のみ用いてベイジアンネットワークを構成したが，我々は既に 30 台程度のネットワークカメラを室内に敷設している．それゆえ複数台のカメラから得られるデータを元にして大規模なベイジアンネットワークを構成し，研究室環境における状況推定アプリケーションを稼働させる．
謝辞

本 研 究 の 一 部 は 科 学 研 究 費 補 助 金 基 盤 研 究 (＃佐藤亮 Ryo SATO

筑波大学大学院システム情報工学研究科在学中. 2008 年筑波大学
第三学群情報学類卒業．センサデータ管理に関する研究に従事．
日本データベース学会学生会員.

川島英之 Hideyuki KAWASHIMA2005 年慶應義塾大学大学院理工学研究科開放環境科学専攻後期博士課程修了．同年，慶應義塾大学理工学部助手．2007 年筑波

18200005)，筑波大学 VBL 研究プロジェクトによる．

大学大学院システム情報工学研究科講師，ならびに計算科学研究[文献]事．情報処理学会，ACM 各会員．

センター講師．博士 (工学)．センサデータ管理に関する研究に従[1] Masaya Kadota, Hiroto Aida, Jin Nakazawa, and Hideyuki
Tokuda．D-jenga: A parallel distributed bayesian inference
mechanism on wireless sensor nodes．Proc． of the International Conference on Networked Sensing Systems, 2006．
[2] Richard E． Neapolitan, Learning Bayesian Networks, Prentice Hall, 2004
[3] Shinichi Yamada, Yousuke Watanabe, Hiroyuki Kitagawa,and Toshiyuki Amagasa．Location-based information delivery using stream processing engine streamspinner．Proc． of
the International Conference on Mobile Data Management p．
57, 2006．
[4] The STREAM Group, STREAM: The Stanford Stream Data

北川博之 Hiroyuki KITAGAWA

1978 年東京大学理学部物理学科卒業．1980 年同大学理学系研究科修士課程修了．日本電気（株）勤務の後，1988 年筑波大学電子・情報工学系講師．同助教授を経て，現在，筑波大学大学院シス
テム情報工学研究科教授，ならびに計算科学研究センター教授．
理学博士（東京大学）．異種情報源統合，XML とデータベース，
データマイニング，センサーデータベース，WWW データ管理等の研究に従事．著書「データベースシステム」（昭晃堂），「The

Unnormalized Relational Data

Model」（共著，Springer-Verlag）

等．日本データベース学会理事，情報処理学会フェロー，電子情報通信学会フェロー，ACM，IEEE-CS，日本ソフトウェア科学会，各会員．

6

日本データベース学会論文誌 Vol.8, No.1

― 142 ―

日本データベース学会論文誌 Vol.8, No.1
2009年 6月