8
DEIM Forum 2010 F5-3 Web マイニングを うデータベースシステム 大学大学院 システム学 182–8585 1–5–1 E-mail: †{saito,omori}@hol.is.uec.ac.jp あらまし Web いに うページ (コミュニティ)を する Web コミュニティ ってきている.また, じて をパーソナライズして るこ される. ,多 から Web コミュニティマイニングを ,データキューブモデル づいた多 Web マイニングを うデータベースシステムを 案してきており, に, FROM TO によるデータキューブ わせ された. 「ある ついてより りたい」「あるキーワード コミュニティが りたい」 いうよう に対 した について い, わせ して システム する. キーワード データ ェアハ ス,Web マイニング,データキューブ A Report on Database Systems for Multi-Dimensional Web Mining By Using General Data-Cube Constraints Taiyo SAITO , Tadashi OHMORI , and Mamoru HOSHI The University of Electro-Communications, Graduate School of Information Systems, Chofugaoka 1–5–1, Chofu, Tokyo, 182–8585 Japan E-mail: †{saito,omori}@hol.is.uec.ac.jp Abstract Recently, the web-community mining has been researched. Moreover, personalization is very important. Last year, we proposed database systems for web-community mining by multi-dimensional constraints based on the data cube model and described basic operations for the data cube query processing using the “FROM-constraints” and “TO-constraint”. In this paper, we evaluate this database systems by using general data cube constraints (for example, “a part of departments in more details” or “communities based on a given keyword”). Key words data warehouse, Web mining, data cube 1. はじめに Web んに ったこ い, Web いに うページ する Web コミュニティ っている [1] [2].また, じて Web (personalization) して るこ あり,そ ために,パーソナリゼーションに した Web データベース わせ システムが されている [3] [4].そこ から Web コミュニティマイニングを うこ して, データ キューブモデルに づいた多 Web マイニ ングを うデータベースシステムを’05 から 案してきた. そして, (大学) ドメイン Web を対 して, システムによるコミュニティ わせ てきた [6] [7]. 案システム ,「 ドメインから コア か」 いう「FROM ,「 したドメインに して 囲から きに コア れか」 いう「TO づいた多 をデータキューブモデル えて, Web コミュニティ わせを うデータベー スシステム ある. から て活 りたい」 した Web マイニ ング データキューブからスライス ロールアップ演 する って,Web いうコア( 2 グラフ)を多 め,それに づいたコミュニティ をコアコミュニティグラフ して する.

多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

DEIM Forum 2010 F5-3

多次元的なWeb空間マイニングを行うデータベースシステムの実現:制約条件の一般化

齋藤 太陽† 大森 匡† 星 守†

† 電気通信大学大学院情報システム学研究科 〒 182–8585 東京都調布市調布ヶ丘 1–5–1E-mail: †{saito,omori}@hol.is.uec.ac.jp

あらまし 近年,Web空間上の互いに興味を持ち合うページ集合(コミュニティ)を抽出するWebコミュニティの

研究が重要となってきている.また,個人や状況に応じて情報をパーソナライズして調べることが特に重視される.

著者らの研究室では,多様な分析視点からWeb上のコミュニティマイニングを行う目的で,データキューブモデル

に基づいた多次元制約の下でWeb構造マイニングを行うデータベースシステムを提案してきており,昨年度までに,

FROM型と TO型制約によるデータキューブ問い合わせ処理の基本演算体系が示された.本稿では「ある特定部門に

ついてより詳細に知りたい」「あるキーワード関連コミュニティが知りたい」というような一般的制約述語に対応した

場合について評価を行い,問い合わせ木を示して本システムの有効な利用法を評価する.

キーワード データウェアハウス,Webマイニング,データキューブ

A Report on Database Systems for Multi-Dimensional Web Mining

By Using General Data-Cube Constraints

Taiyo SAITO†, Tadashi OHMORI†, and Mamoru HOSHI†

† The University of Electro-Communications, Graduate School of Information Systems,Chofugaoka 1–5–1, Chofu, Tokyo, 182–8585 Japan

E-mail: †{saito,omori}@hol.is.uec.ac.jp

Abstract Recently, the web-community mining has been researched. Moreover, personalization is very important.

Last year, we proposed database systems for web-community mining by multi-dimensional constraints based on the

data cube model and described basic operations for the data cube query processing using the “FROM-constraints”

and “TO-constraint”. In this paper, we evaluate this database systems by using general data cube constraints (for

example, “a part of departments in more details” or “communities based on a given keyword”).

Key words data warehouse, Web mining, data cube

1. は じ め に

近年,Web上で仮想組織の活動が盛んになったことに伴い,

Web空間上の互いに興味を持ち合うページ集合を抽出するWeb

コミュニティの研究が重要となっている [1] [2].また,個人や状

況に応じてWeb空間情報を個別適応 (personalization)して調

べることも重要であり,そのために,パーソナリゼーションに

対応したWebデータベースへの問い合わせ処理システムが研究

されている [3] [4].そこで,著者らは多様な分析視点からWeb

上のコミュニティマイニングを行うことを目的として, データ

キューブモデルに基づいた多次元制約の下でWeb構造マイニ

ングを行うデータベースシステムを’05 年から提案してきた.

そして,特定組織(大学)のドメイン内のWeb 空間を対象に

して, 本システムによるコミュニティ分析機能の有効性や効率

的な問い合わせ処理方法を述べてきた [6] [7].

著者らの提案システムは,「どのドメインから見て重要なコア

か」という「FROM 型制約」と,「指定したドメインに関して

周囲から見たときに重要なコアはどれか」という「TO型制約」

に基づいた多次元制約空間をデータキューブモデルと考えて,

その制約下でWebコミュニティ問い合わせを行うデータベー

スシステムである. 例えば「情報部門と電気部門の関係から見

て活発な集団を知りたい」場合,事前に生成したWebマイニ

ング用のデータキューブからスライスやロールアップ演算に相

当する操作を行って,Web空間構造分析でいうコア(完全 2部

グラフ)を多次元制約下で求め,それに基づいたコミュニティ

構造をコアコミュニティグラフとして出力する.

Page 2: 多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

昨年までに,著者らは文献 [6] [7] で,FROM 型と TO 型制

約によるデータキューブ問い合わせ処理の基本演算体系を示し

てきた. ただし,データキューブのスキーマとなる制約条件と

して対象Web空間を 3領域に直和分割した特定の場合のみ (大

学ドメイン全体を 3分割した)を用いていた.しかし,より一

般的には,データキューブのスキーマとして対象空間の一部分

だけを詳細に調べたい場合や,「キーワード “ロボット”にヒッ

トするページから前方 Nホップ以内の空間を対象にする」など

の一般的な制約条件から成る多次元制約空間を扱いたい. 本稿

では,このような一般的制約条件を許す場合について,提案シ

ステムの有効性を示す.

2. 多次元的なWeb空間マイニング

この節では,著者らが提案している多次元的なWeb空間マ

イニングシステムについて述べる.

2. 1 準備 1: 多次元制約下のコア計算について

Web構造マイニングの分野では,Webページをノード,リ

ンクをエッジとしたグラフにおける完全 2部グラフをコアと呼

び,コアに基づいたWebコミュニティ分析を行うことが多い.

後述するように,コアは高頻度アイテムセットとして計算でき

る. 一方で,著者らは,時間や場所などの多次元制約条件の下

で行うログデータマイニングを,データキューブの枠組に沿っ

て実行する「アイテムセットキューブ」という計算システムを

提案し,対話的なログ分析で有効性を示してきた [5].

そこで我々は,適当な多次元制約の下でコア計算を行いたい

という問い合わせを,アイテムセットキューブの時と同様に,

データキューブモデルとして表し,データキューブに対応した

演算体系を使って与えられた制約を満たすWeb コミュニティ

集合を求めるデータベースシステムを提案してきた [6] [7].

制約条件として,Web ページにおけるリンクの参照関係を

もとに,どのドメインのページ集合からリンクが張られている

かに着目した「FROM 型制約」と,どのドメインのページ集

合に対しリンクを張っているかに着目した「TO型制約」を考

え,この 2次元上で制約を与える.さらに,「いつの時点のWeb

空間データを使うか」の時間軸を加えて,合計 3次元のデータ

キューブモデルで制約空間を表す.

2. 2 準備 2: コアの計算方法

本システムでは,コアの計算方法として,始点数 i 終点数 j

のコア ((i, j)- コア)を,高頻度アイテムセットとして求める.

そのため,まずWebリンク構造を表すデータとして,図 1 左

側のように,各ページ rs について,rs へのリンク入力関係を

表すレコード (リンクレコード)を用意する.つまり,rs への

全ての入方向リンクの始点ページを i1, i2, ..., ik, ...in として,

これらをアイテムとしたレコード [rs, i1, i2, ..., ik, ..., in]([終点

ページ,始点ページ i1, i2, ..., in])を作り,このレコード集合か

ら高頻度アイテムセットを求める.

すると,{i1, i2, ..., ik} を k-アイテムセットと考えているた

めこれらを含むリンクレコード数が当該 k-アイテムセットのサ

ポート数になる.その結果,計算するサポート数の最小値 (最

小サポート数 s)を決めた時,リンクレコード集合 D において

図 1 コアの計算方法

A B C

A

B

C

A

B

C

A B C

TO

TO

FROM

FROM

FROM型制約 FROM(A)

TO型制約 TO(A)

どの集団から見るか

どの集団を見るか 

Aに属するページ

Aに属するページ

h1

h2

h2

h1

a1

a2

a3

a1

a2

a3

FROM(A)制約を満たすコア

TO(A)制約を満たすコア

図 2 FROM 型制約と TO 型制約

高頻度 (サポート数 s以上)となるアイテムセットを I とし,I

を含む全てのレコードの終点ページ集合を A とすると,求ま

る高頻度アイテムセットは,I を始点集合,Aを終点集合とし

たコアになっている.以下,コアの始点側ノードを,そのコア

のハブ (hub)ノードと呼び,コアの終点側ノードを,オーソリ

ティ(authority)ノードと呼ぶ.

2. 3 多次元的制約に基づくWebマイニング問い合わせ機構

提案システムは,コア分析のために「FROM型制約」と「TO

型制約」と呼ぶ 2種類の制約条件を用意しており,これらの制

約と時間軸の合計 3次元のデータキューブモデルに基づいて多

次元的なWeb空間分析を行う.

分析対象とするWeb空間は組織別の階層構造を持つ.例え

ば,電気通信大学(UEC)のトップドメインの下に,A:情報分

野のドメイン,B:電気系ドメイン,C:その他のドメインがある.

そこで,我々の研究では分析用の多次元制約として,これらの

ドメインにおける,誰にとって誰が重要であるかを分析するた

めに,「FROM型制約」と「TO型制約」を定義した(図 2).

FROM型制約は,「どのドメインのページからリンクを張ら

れているか」に着目した制約である.今,対象とするWeb空

間を A,B,Cの 3つのサブドメインにわけて考える.このと

き,「FROM型制約を Aに設定する」とは,「ドメインの Aの

ページを少なくとも 1つ始点に持つようなリンクレコードだけ

を対象にしてコアを求める」ことを意味する.こうして求まる

コアを,「FROM(A) 制約を満たすコア」と呼ぶ.図 2 の上部

Page 3: 多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

05年FROM(OTHER) AND TO(OTHER)に適合したレコードから計算されたコアに対応する

ISJC EE OTHER

ISJC

EE

OTHER

2005年2007年

2009年

FROM→

TO→

TO

FROM

TO TO

FROMA B C

A

B

C

FROM

A

B

C

A B C

Q1 Q2 Q3

図 3 多次元制約下の問い合わせ例

に,その例を示す.FROM(A)制約を満たすコアは,ドメイン

Aから見たときに重要なコアを表している.

一方,TO型制約は「どのドメインページにリンクを張って

いるか」に着目したものである.「TO型制約を Aに設定する」

とは,「ドメイン Aのページを終点に持つようなリンクレコー

ドだけを対象にしてコアを求める」ことを意味する.こうして

求まるコアを,「TO(A)制約を満たすコア」と呼ぶ.このコア

は,ドメイン Aに属するページだけを終点として持つコアであ

る (図 2の下部).TO(A)制約を満たすコアは,Web空間全体

からドメイン Aを見たときに重要なコアを表している.

以上の結果,多次元制約として FROM型制約と TO型制約

を与えると,この制約下の問い合わせは,図 3のようなデータ

キューブモデルで表すことができる.例えば,図 3のQ3は,制

約として,「FROM(A or B) And TO(A or B)」を表しており,

問い合わせとしては,この制約を満たすコア集合を求め,それ

らに基づいたコミュニティ集合を求めたいという要求である.

この要求に答えるため,本システムでは,利用者が多次元

制約として FROM 型制約や TO 型制約を与えると,データ

キューブによる多次元制約下のコア計算を行った後に,そのコ

アを極大コアに直してその集合からコアコミュニティグラフと

呼ぶコミュニティ間の関連性を表すグラフを作成しランク付け

して答えを返す.

コアコミュニティグラフとは,与えられたFROM型制約/TO

型制約下で求まった極大コア集合において, 共通する authority

ノードを 2 つ以上持つ極大コアを 1 つの同値類として 1 ノー

ド化 (「コアコミュニティノード」と呼ぶ) し,2 ノード間の

有向辺を,当該ノードに含まれるページ間のリンクに基づい

て与えて作った有向グラフである.また,このグラフ構造上で

PageRankに似せたランク計算を行い,重要なコアコミュニティ

ノードを判定する. 図 4に,2005年の対象空間全体 (uec.ac.jp

内の約 10万ページ)について計算したコアコミュニティグラフ

と上位ランクのノード順位を示す.

一般的には,データキューブのスキーマを決めると,それに

基づいて「Aまたは Bから見て重要なコミュニティを求めよ」

という FROM(A or B)や,「周囲から A または Bを見て重要

なコミュニティを求めよ」といった TO(A or B)のように多様

な問い合わせが考えられる.図 3の Q3が表す「FROM(A or

1情報理論研究室(NS)2オープンキャンパス3小池研究室(MS)(SEC)4小池研究室(MS)(SEC)5竹内研究室(J)他6情報理論研究室(C,NS)クルカスキー先生のページ7情報理論研究室(C,NS)クルカスキー先生のページ8太田研究室(C)暗号理論の授業ページ9太田研究室(C)暗号理論の授業ページ10長岡・小川研究室(NS)の有村先生のページ(情報理論系統)11高田研究室(M)制御用基盤システムの解説12ロボメカ工房13來住研究室(C)14楽力工房(GP)ロボメカなど15情報基盤センター 情報処理教育用システム(FTPサーバ)16図書館,教育用計算機室,三橋研究室(C)17情報理論研究室(NS)18事務のページ19事務のページ20渡邊研究室(F)

0

5

5

1

1

1

2

2

2

2

23

3

3

9

2

5

11

1

15

8

9

1

2

3

4

2

2

3

1 1

1

1

2

2

2

2

1

2

2

3

3

3

3

3

3

3

1

4

2

3

2

5

4

3

2

6

1

1

2

3

3

7

1

2

3

3

2

1 8

2

5

2

8

1

140

1

2

2

2

33

3

1

1

3

2

5

5

8

1

1

2

1

61

3

3

7

1

3

4

6

1

4

8

2

61

2

4

13

3

3

3

3

51

3

3

1

3

13

6

8

1

8

2

12 3

1

2

3

3

2

2

1

2

92

44

7

1

1

2

2

2

2

3

3

3

1

1

9

4

3

1

2

2

3

4

3

1

5

1

73

1

8

2

4

13

1

1

1

1

22

8

1

2

1 4

3

9

2

2

3

9

1

3

1

2

1

1

2 7

1

1

2

1

2

2

3

3

4

6

2

2

1

1

2

3

01

3

1

1

2

2

3

33

354

3

3

1

1

4

5

2

4

4

2

1

2

2

3

6

6

9

7

1

22

33

3

3

2

2

7 1

2

3

3

6

13

2

3

2

34

12

3

7

93

2

11

1

6

2

3

1 3

2

63

1

12

1

1

1

7

2

3

2

1

3

1

12

1

3

1

3

1

1

23

3

2

2

2

2 22

24

2

2

2

2

3

2 2

8

2

3

2

3

3

8

3

7

3

2

1

4

9

1

23

46

6

77

7

8

9

9

1

101

1

11111

1

1

1

1

1

1

1

1

11

2

2

2

2

2

2

2

2

2

2 20

2

3

3

33333333333

3

3

3

3

3

3

3

3

3

4

29414

202

2オープンキャンパス

16

84

6情報理論研究室

7情報理論研究室

3小池研(SECチーム)

4小池研(SECチーム)

1情報理論研究室

5竹内研究室(他)

3518

19

2

6

7

8

9

8太田研究室

9太田研究室

10長岡・小川研究室

10

5

1

3

4

29

7793

39

92

79

74

189

図 4 05 年 b=8,s=4 制約なしのコアコミュニティグラフ

B) And TO(A or B)」は,「Aと Bの関係性から見て重要なコ

ミュニティを求めよ」という意味に相当する.また,コアの計

算では,計算に用いる内部リンク (同一サイト内のリンク) 数

や,計算対象とするコアの大きさ (始点数と終点数の範囲)に制

限をつけなければ実質的ではない.事前にあらゆる制約やパラ

メータ値についてコアを計算しておくことは現実的ではない.

従って,本システムの技術上の課題は,事前にどのようなデー

タキューブを計算しておき(実体化処理),それらを使った代数

演算 (スライスやロールアップに相当する)を使って,与えられ

た問い合わせに答えることが効率的か,を示すことである.

2. 4 処理方法の概要

文献 [6] [7] では,電気通信大学全体のドメイン (1:ALL) の

階層構造を,情報部門 (2:ISJC), 電気部門 (3:EE), その他部

門 (4:OTEHR) にわけて,この多次元制約スキーマに対して

FROM型/TO型制約問い合わせと,それを組み合わせた複合

問い合わせの処理方法を提案した (図 5).

情報部門 電気部門 その他部門2:IS/J/C 3:EE 4:OTHER

電気通信大学全体1:ALL

ISJC EE OTHER

TO

FROM

OTHER

EE

ISJC

図 5 これまでのスキーマ階層と問い合わせ例

代数演算としては,あらかじめ計算されたコア集合から

FROM型制約か TO型制約を満たすコア集合を抽出する処理

方法 (スライス演算に相当)としてフィルタリング法を持つ.ま

た,ロールアップに相当する処理として,マージ法と呼ぶ演算

を提案している.マージ法は,FROM(A)制約 (または TO(A)

制約))を満たすコア集合と FROM(B)制約 (または TO(B)制

約) を満たすコア集合から FROM(A or B)(または TO(A or

Page 4: 多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

B))を満たすコア集合を差分コア計算により求める演算である.

事前に用意すべきデータキューブとしては,図 6に示す 3つ

のWeb マイニング用データキューブを用意した.(ここで,パ

ラメータ b は,ページの入辺が全て内部リンクで総数 b以上の

ときに当該内部リンクを削除することを意味し,コア計算の妨

げとなる内部リンクの削除数を決める下限閾値である.また,

sは極大コアを計算するときの最小サポート数である(注1)):

TO

FROM

TO TO

FROM FROMISJC EE OTHER

D1:ALL D2:From D3:TO

b=8s=4

b=12s=4

b=12s=4

ISJC

EE

OTHER

図 6 事前に実体化しておくキューブ (昨年まで)

A B C

A

B

C

TO

FROM A B C

A

B

C

TO

FROM

A B C

A

B

C

TO

FROM A B C

A

B

C

TO

FROM

A B C

A

B

C

TO

FROM

filtering

filtering

FROM merge

FROM(A)

FROM(C)

FROM(A) And TO(A or C)

FROM(C) And TO(A or C)

FROM(A or C) And TO(A or C)

図 7 複合問い合わせを表す演算木

D1: FROM型/TO型制約無しで実体化を行い,極大コアを

格納したデータキューブ (b=8, s=4).

D2: 制約を FROM(ISJC), FROM(EE), FROM(OTHER)

各々とした場合に実体化を行い,各場合の極大コアを格納した

データキューブ b=12, s=4).

D3: 制約を TO(ISJC), TO(EE), TO(OTHER) 各々とした

場合に実体化を行い,各場合の極大コアを格納したデータキュー

ブ (b=12, s=4).

データキューブ D1は,全体を大まかに計算したい場合に用

い,フィルタリング法によって各問い合わせに答える. D2 や

D3は,より詳細なコア計算を求める問い合わせを実行すると

きに用いる.例えば,複合問い合わせとして「FROM(A or B)

And TO(A or B)」を b = 12, s = 4 で計算するときは,図 7

のように,TO型のフィルタリング法と FROM型のマージ法

を組み合わせて実行する.

以上をまとめると本システムは,基本 DB演算として直接実

体化演算,FROM型制約と TO型制約各々におけるフィルタ

(注1):bで枝刈り後,コアの始点数 2,終点数 4以上を条件に Pruning処理 [1]

してから Apriori でコア計算している.

リング演算とマージ演算,グラフ作成とランキング処理,類似

度比較演算(Jaccard Similarity Join)を持ち,これらを組合

わせた問い合わせ木を作って実行するWebマイニング用デー

タベースシステムである.

3. 制約条件の一般化

3. 1 一般化された制約条件への対応

データキューブとしてより利用価値を出すためには,これま

でのスキーマ階層の場合のみではなく,一般化された制約条件

に基づいた多次元制約を扱うことが必要である.ここで,一般

化された制約条件とは「ある特定部門についてより詳細に知り

たい」や,「指定キーワード Kを満たすページから前方 Nホッ

プ以内にある」というような制約条件のことである.正確に

言うと,ページに関するブール述語 pi(i = 1, 2, . . .) を与えた

時に,pi を満たすページを始点 (または終点)に持つリンクレ

コードを使って, 図 2の場合と同様に FROM(pi)制約 (または

TO(pi)制約)を満たすコアを定義し,これによって多次元制約

下のコア計算を行う.

図 8右は,上記のような一般的制約条件 p5, p6, p7, p8 を対

象とした FROM 型制約と TO 型制約から構成されたデータ

キューブのスキーマである.

ISJC EE OTHER

TO

FROM

OTHER

EE

ISJC

TO

FROMp5

p6

p7

p8

p5 p6 p7 p8

図 8 一般制約条件に対応した問い合わせ例

注意すべき点は,これらの制約は,対象空間全体 (ALL) を

被覆しないし,直和分割にもなっていない,ということである.

また,これらの一般的制約条件を事前に予想することはできな

いから,利用者が実行時に与えることが想定されるし,b, sと

いったコアの細かさもより厳しい条件になる.例えば,b=16

や 20では空間全体 (ALL)や FROM(OTHER)のコアは計算

コストが高過ぎて予め用意できないか用意することが現実的で

ないが,一般的制約条件なら可能となる場合である.

前回のスキーマでは,b = 12, s = 4で用意した D2, D3をよ

り詳細なコミュニティ構造を求める場合に用いていた.しかし,

実際には,D2は空間全体を被覆しているので,必要なコアは

必ず FROM(X) (X=ISJC, EE, OTHER)のどれかに含まれる

から,問い合わせごとにフィルタリング演算をこれらに適用す

れば求めることはできる. つまり,必ずしもマージ演算を使う

必要はない.

一方,今回の図 8 右のような一般制約条件の場合,「FROM

(p5 or p6) And TO(p5 or p6)」の問い合わせを行うには,図 7

のような複合問い合わせ処理が必要である.今までのフィルタ

リング演算やマージ演算の処理方法は,一般的制約条件でも成

Page 5: 多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

立する(注2).

したがって,問題となるのは,一般的制約条件を許したとき

に,データキューブとして何を,どの詳細度に応じて用意する

か,というデータキューブとしての維持戦略である.

3. 2 新しく用意するデータキューブと詳細度

一般的制約の例として,制約条件 p5,制約条件 p6,制約条件

p7,制約条件 p8 についてそれぞれを IS(情報システム学部門)

のみ,J(計算機科学部門)のみ,C(情報通信部門)のみ,M(機

械部門)のみという制約条件に設定し,現在のシステムでどこ

まで詳細度を細かくできるか調べた.

その結果,Cについては b=14まで,J,Mについては b = 18

まで,IS については b=20 まで細かくしても FROM 型制約,

TO型制約で求めることができた.

例として,b=16,s=4 FROM(IS)の例 (’05年の uec.ac.jp下)

を図 9に示す.

0

1549

157

1 91

16

71

104

173

2

12

45

58

74

165

31

3

17

23

163

170

20090

22

4

73

29

213145

183

188

204

223

242

5

83

237

214

6

84

96

174

8

37136

197

164

177

9

92

40

27

179

226

55

215

113

130

151

11

67

147

144

30

50

53

54

250

14

115

152

18

120139

20

190

245

61

140

21

233

153

154

32

24

108116

25

76114

205

209

161

46

118

150

56

156

72

77

80169

224

78

82

246

132

241

248

168119

123

142

235

26

63

133

236

86

182

48

251

34

75

128212

219

220

225

232

253

257

36

43

106

44

252

79

210

229

47

244

52

185

249

186

57

122

125

62

167

211

127

172

189

208

230

64

65

19

68

7

95

160

216

238

234

247

159

176

231

112

88

187

93

97

228

98

99

100

240

103

105

129

184

134

162

137

143

69

148

166

146

158

175

38

180

181

194207

239

192

196

121

35

66

256

42

85

87

101

102

111

141

178

202

222

221

201

206

243

218

254

81

2551013

28

33

39

41

5159

60

70

89

94

107

109

110117124

126

131 135

138

149155

171

191

193

195 198

199

203

217227

258

259

260

261

262

263

図 9 b=16,s=4 FROM(IS) のコアコミュニティグラフ

このように,今まで使えなかった「ある特定部門についてよ

り詳細に知りたい」といった一般的制約が使えるようになった.

FROM(ISJC)では b=12までしか求めることができなかった

が,「IS のみ」ではコアの細かさ (詳細度)bをさらに深くしてよ

り細かい分析も可能となる.

次に,これらを利用して,一般的制約条件による複合問い合

わせを行う場合を考える.利用者の想定する制約条件に応じ

て必要最小限のデータキューブのみを実体化して,そこから要

求に応じた問い合わせに答えるという方針に基づいて事前に

用意するキューブを決める必要がある.新しく考える実体化

範囲の案として,b=8での電気通信大学全体 (ALL),b=12 で

の FROM(ISJC), FROM(EE), FROM(OTHER) のみを常時

持っておき,b=14 から b=20 程度の極めて詳細なコア計算を

行いたいときは一般的制約条件を利用して「ISのみ」のような

データキューブを随時生成/更新するという戦略がある (図 10).

すなわち,図 10では,一般的制約条件 p5, p6, p7, p8 の 4つに

ついて b = 16, s = 4で各々FROM型制約を満たすコア集合を

(注2):文献 [6] の 6 節,[7] の 5, 6 節のアルゴリズムにおいて,A ドメイン,

B ドメインを各々p5, p6 に置き換えても成立する.

保持するデータキューブとして D4を維持し,同じく TO型制

約を各述語に応じて計算し保持するキューブとして D5を維持

する.一般化制約述語の変更にあわせて,D4と D5は適宜更

新して良い.

TO

FROM

TO

FROMISJC EE OTHER

D1:ALL D2:From

b=8s=4

b=12s=4

TO

FROM

D5:ToTO

FROM

D4:From

b=16s=4

b=16s=4

p5 p6 p7 p8

p5

p6

p7

p8

図 10 実体化するキューブの案

また,今まで用意していた b=12のTO型制約用のD3は,D2

から計算できるため今回は省いている. b = 16で FROM(IS)

制約と FROM(J) 制約を D4 として実体化した後に「IS と J

の関係性についてより詳細に (b=16で)知りたい」という問い

合わせが与えられた時は, D4の FROM(IS)と FROM(J)から

フィルタリング法とマージ法の組み合わせによる複合問い合わ

せを用いて答えることができる(注3).

残る問題は,一般化制約述語によって求まる情報の品質,上

記の戦略で維持されるデータキューブの記憶量,および,複合

問い合わせ処理木の計算時間を調べ,問い合わせごとの直接計

算よりも効率的であることを示すことである.

4. 評 価

一般化制約述語の例として,「特定のドメインをより詳細にみ

る場合」を扱う.制約条件 p5,p6 についてそれぞれを IS(情報

システム学部門)のみ,J(計算機科学部門)のみという制約条件

に設定し,コアの詳細度を b=16, s=4に固定した場合のコアコ

ミュニティの品質,実体化したキューブの記憶コスト,実体化

する際の処理時間,について評価実験を行った.実験環境とし

て,CPU:2.66GHz,メモリ:3GBのマシンを用いており,対象

のWeb空間として 2005年の電気通信大学全体のデータ (URL

数:108235 ページ)で実験を行った.

4. 1 コアコミュニティの品質評価

b=8 と b=16 の FROM(IS or J) And TO(IS or J) の結果

に基づき,上位 20位を jaccard類似度 (4%以上)で比較した.

b=8と b=16の順位を比較した対応表を図 11に示す.

(注3):例えば,FROM 型マージ法のアルゴリズムでは,差分コアの終点ノー

ドに制約を付けても成立するため図 7 のような複合問い合わせにも対応できる.

また,始点数に上限をつけても成立するためコア計算方法を変えた場合にも適用

できる.

Page 6: 多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

1

2

3, 4

5

6

7

8

13

14

15

16

17-19

20

9-12

1

2

5

6-13

14

15

16-17

18

19

20

留学生センター

アルゴリズム研究new

並列処理関連全般

並列処理関連

情報理論グループ

個人blog(個別)

b=8 b=16

計算機応用講座(IS,J) (IS,J)

情報理論グループ(IS,J) (IS,J)

(IS)情報理論グループ

セキュリティ研究グループ セキュリティ研究グループ

(IS) (IS)3, 4

情報理論グループ教員のページ(IS)

情報理論グループ(IS)教員のページ

ネットワーク関連研究室

情報理論グループ(IS)

(IS)

高性能コンピューティング並列処理研究 (IS)

(IS)

(J)インターネット応用研究

(J)インターネット応用研究

blog マイニング実験

セキュリティ研究グループ

(IS)ロボット関連研究

(IS)ロボット関連研究

(IS)ネットワーク関連研究

(IS)

アルゴリズム研究

(IS)

授業関連

ネットワーク関連研究室(IS)

new

new

(IS)情報理論グループ

教員のページ

ネットワーク関連研究室(IS)

new(J)

ヒューマンインタラクション研究

NS2解説サイト

(IS,J,OTHER)

NS2解説サイト

NS2解説サイト

図 11 b=8 と b=16 の jaccard 類似度 (4%) による比較

1位のサイトについて,b=8の場合,並列関連ページが集まっ

たコアコミュニティノードであったが,b=16 で見た時,その

中のある特定の研究室サイトが目立って現れていることに気づ

くことができた.

また,b=16の 6位から 13位にネットワークシミュレータの

解説サイトが出てきている.これは b=8のとき 85位以降に出

てくるノードである.

b=16 で詳細度をあげてみた場合に 15 位に出てきたコアコ

ミュニティノードは blogマイニングに使われる実験用の blog

サイトであった.これは,b=8の 9位から 12位に出ていた個

人の個別 blogと対応していることが分かった.

これらのことから,図 7のように特定の制約間の関係を求め

る複合問い合わせについて,b=8のみで大まかにみる場合だけ

ではなく,b=16を用いてより詳細にみることで,細かいコミュ

ニティ分析が行えることを示した.

4. 2 キューブの記憶量とマージ演算のコスト

まず,D4と D5に必要な記憶量を表 1に示す.次に,D4と

D5の上で行われる FROM型マージ,TO型マージの問合わせ

として,FROM(IS or J),及び,TO(IS or J)について,その

b = 16のときの計算時間 (秒) を表 2と表 3に示す.比較対象

として,マージ法を使わずに直接コア計算を行った場合 (直接

実体化)の処理時間も示した.各表の「差分コア」の欄は,マー

ジ法による差分コア計算の時間であり,「後処理」欄は,極大

コア集合からコミュニティノードを求めてグラフ構造作成,ラ

ンク計算,の総時間である.表 4に,各マージ法実行時の差分

コア数を示す. これらの結果から分かるように,一般的制約条

件で選択レコード数が減ると差分コアが少なくなるため,毎回

FROM(IS or J)のような直接再実体化を行うよりも,マージ

法の使用が効率的である.

表 1 D4, D5 に対応した記憶量 (b=16)

問合わせ コア数 ページ数 ノード数

FROM(IS) 1933 20282 264

TO(IS) 1930 20256 263

FROM(J) 2338 24679 169

TO(J) 2334 24645 166

表 2 FROM(IS or J) の処理時間(秒)(b=16)

内訳 直接再実体化(秒) マージ法 (秒)

極大コア 69 -

差分コア - 9

後処理 10 11

合計 79 20

表 3 TO(IS or J) の処理時間(秒)(b=16)

内訳 直接再実体化 マージ法

極大コア 69 -

差分コア - 1

後処理 10 10

合計 79 11

表 4 FROM 型マージ,TO 型マージ問合わせの記憶量 (b=16)

問合わせ コア数 ページ数 ノード数

FROM(IS or J) 4274 44980 435

FROM(IS or J) の差分 3 19 -

TO(IS or J) 4267 44922 430

TO(IS or J) の差分 3 21 -

4. 3 複合問合わせの処理時間

次に,複合問合わせである FROM(IS or J) And TO(IS or

J) について b=16 で記憶量と計算時間を求めた.計算結果に

おけるコア数,ページ数,ノード数を表 5に示す.複合問合わ

せには,TO型フィルタリングしてから FROM型マージを行

う方法 (方法 1)と,FROM型フィルタリングしてから TO型

マージを行う方法(方法 2)の 2種類がある.

表 5 複合問合わせの記憶量 (b=16)

問合わせ コア数 ページ数 ノード数

FROM(IS or J) 4267 44922 430

And TO(IS or J)

TO フィルタ+ 1 7 -

FROM マージの差分

FROM フィルタ+ 3 21 -

TO マージの差分

表 5に示すように,必要な際に差分を求め,既に実体化され

ている単一制約条件と組合わせて複合問合わせを行えば,b=16

の FROM(IS or J) And TO(IS or J)を事前に実体化して持っ

Page 7: 多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

ておくという記憶コストが無くなる.

複合問い合わせ時の方法 1と 2の処理時間を,表 6に示す.

直接再実体化ではなくマージ法を用いた複合問合わせを行うほ

うが処理時間が短くて済む.

表 6 FROM(IS or J) And TO(IS or J) の処理時間(秒)(b=16)

内訳 直接再実体化 方法 1 方法 2

極大コア 70 - -

差分コア - 8 7

フィルタリング A - 5 5

フィルタリング B - 5 5

後処理 11 11 11

合計 81 29 28

4. 4 問い合わせ処理木の例

本システムで図 12の左のようなスキーマ構造を与えて,図

12右のような図 10の D4に対応するキューブを作り,その上

でいくつかの問い合わせ例を実行し,得られる情報の内容と実

行時間を調べた.

情報部門 電気部門 その他部門2:IS/J/C 3:EE 4:OTHER

電気通信大学全体1:ALL TO

FROM

D4:From

IS J M

b=16s=4

情報システム学研究科

5:IS情報工学科

b=8

b=12

b=16 知能機械工学科

6:J 8:M

図 12 今回の例で使用するスキーマ構造

4. 4. 1 Q1:ISとMの関係性で重要なコミュニティ

問い合わせ例 Q1として「ISとMの関係性を見たときに重

要なコミュニティは何か」という問い合わせを与えられたとき,

複合問い合わせ FROM(IS or M) And TO(IS or M)を行うこ

とでこの問い合わせに応答することができる.この例の問い合

わせ木を図 13に示す.

図 13 問い合わせ例 Q1 に対応する問い合わせ木

結果のコミュニティグラフを図 14に示す.

また,単一制約で問い合わせを行なった場合と複合問い合わせ

で関係性を見た場合の違いをみるために,Jaccard類似度 (4%)

で FROM(IS), FROM(M) ,FROM(IS or M) And TO(IS or

M)を比較した.

上位 20位の分析結果を図 15に示す.

図 14 b=16, FROM(IS or M) And TO(IS or M) のコミュニティ

1

2-3

5-6

9-11

14

15

16

18-20

12-13

1

5

20-21

情報理論グループ

b=16

(IS)

(IS)

情報理論グループ

(IS)

(IS)

(IS)

b=16

FROM(IS) FROM(IS or M) And TO(IS or M)

(IS,J,OTHER)

セキュリティ研究グループ

(IS)

4

ネットワーク関連研究室NS2解説サイト

情報理論グループ7

ロボット関連研究

ネットワーク関連研究室

NS2解説サイト

ネットワーク関連研究室NS2解説サイト

(IS)情報理論グループ

ネットワーク関連研究室NS2解説サイト

(IS)ロボット関連研究

17

ネットワーク関連研究室

NS2解説サイト

b=16

FROM(M)

1

2

3

ロボティクス講座(M)

(M,OTHER)楽力工房,M科研究室

留学生センター(IS,M,OTHER)

ロボメカ工房(M)

(IS,M,OTHER)

4-6ロボティクス講座

機械制御系研究室(M)

7

ロボメカ工房,M科研究室(M)

8

9ロボティクス講座

(M)

ロボットシステム研究室10(M)

11ヒューマンインターフェース研究

(EE,M,OTHER)

12機械制御系研究室

(M)ロボティクス講座

(M)

15

13-14

生体・医療工学研究室(M)

16

17

18

19

20

ロボメカ工房(M)

制御,流体系研究室(M)

材料系研究室(M)

ヒューマンインターフェース研究

(M)

生体・医療工学研究室(EE,M,OTHER)

(IS)

情報理論グループ2-4

分散処理関連研究(IS)

(M,OTHER)楽力工房,M科研究室

6

ロボメカ工房(M)

7

(IS)情報理論グループ8

9ロボティクス講座

(M)

10-11セキュリティ研究グループ

(IS)

12

13-15

(IS)

ネットワーク関連研究室

NS2解説サイト

16ロボティクス講座

(M)

(IS)

ネットワーク関連研究室

NS2解説サイト17-19

(IS)ロボット関連研究

マルチメディア系研究室(IS)

new

new

new

new

8ネットワーク関連研究室

NS2解説サイト (IS)

new

new

new

new

new

new

new

new

new(IS)

(IS)

(IS)

図 15 b=16 FROM(IS or M) And FROM(IS or M) の上位 20 位

比較

FROM(IS or M) And TO(IS or M)の中に,FROM(IS)の

コミュニティが多く出現している.複合問い合わせの 1位であ

る留学生センターは,FROM(IS) の 115 位と 4%で類似する

ノードであり,ISとMの関係性でみたときにとても目立つコ

ミュニティである.FROM(M)の 20位の中に留学生センター

のページがコアに含まれているが,1位のコミュニティとは対

応しない.

FROM(M)でみると 1位がロボティクス講座,2位が楽力工

Page 8: 多次元的な Web 空間マイニングを行うデータベースシステム …db-event.jpn.org/deim2010/proceedings/files/F5-3.pdfDEIM Forum 2010 F5-3 多次元的なWeb空間マイニングを行うデータベースシステムの実現:

房,3位がロボメカ工房であるが,ISと Mの関係性でみたと

きには順位が逆転しており,楽力工房とロボメカ工房の順位が

上がっている.このことから,楽力工房,ロボメカ工房が ISと

Mの関係性でみた場合により重要なコミュニティであるという

ことが分かる.この他,複合問い合わせの 5位である分散処理

関連研究は,FROM(IS) で見たときの 25 位に完全一致する.

また,12位のマルチメディア系研究室は FROM(IS)の 115位

と完全一致するため,これらは ISとMの関係性でみたときに

順位があがったコミュニティであることがわかる.

4. 4. 2 Q2:FROM(IS or J) top40 に含まれる FROM(IS)

top40は何か

問い合わせ例Q2として,「ISと Jからなるコミュニティtop40

を見たときに,ISの top40に対応しているものはどれか」とい

うような,興味のある情報を提供する問い合わせに対して次の

問い合わせ木を作り応答する.この例における問い合わせ木を

図 16に示す.

図 16 問い合わせ Q2 に対応する問い合わせ木

問い合わせ例の結果として,FROM(IS or J)の top40のう

ち FROM(IS)top40に属するノードは 32ノード出てきており,

8ノードが消えていることが分かった.消えているノードは 17,

23, 26, 34, 36, 37, 39, 40位であるが,これらは無くなったわけ

ではなく top40以下には全て存在している.また,FROM(IS

or J) のコアコミュニティの中に FROM(IS) のノードが split

や mergeされて出てきている様子もみることができた.

このように,本システムでは既に実体化されたキューブを

組合わせることで 40秒程度で「ISと Jからなるコミュニティ

top40 を見たときに,IS の top40 に対応しているものはどれ

か」というような問い合わせを行うコミュニティ分析を行うこ

とができる.

この他の例として,「あるキーワード周辺の関連コミュニティ

を知りたい」という場合についても図 12とは別のスキーマを

用いた場合でも同様の評価を行っている [8].

5. お わ り に

本稿では,著者らが提案してきたデータキューブモデルに基

づいた多次元制約下のWeb空間マイニング向けデータベース

システムについて,従来のおおまかなドメイン別だけでなく,

一般的な制約を許す場合を対象にデータキューブの実体化維持

方法と複合問い合わせの処理方法を述べた.一般的制約条件の

例として今回新たに許した制約は,大学ドメインの特定の狭い

Web空間領域を表すもの (「ISのみ」「Jのみ」など)と,指定

キーワードを含む Seedページから前方 Nホップ以内の空間」

などである.想定した利用方法は,このような一般化制約条件

を使った多次元制約問い合わせで,かつ,より内部リンクを考

慮して詳細なコアを求めてコミュニティ計算したい場合である.

提案したデータキューブの維持戦略は,一般化制約条件に対

応して FROM型制約を満たすコア集合と TO型制約を満たす

それを別々にデータキューブとして維持し,条件の変更に対応

してこれらのキューブを更新するものである.問い合わせ処理

方法は,従来から提案しているフィルタリング演算とマージ演

算,Jaccard Similarity Joinなどの基本演算からなる問い合わ

せ木を作って実行する.本稿では,特定組織ドメイン内のWeb

空間を対象に,この手法により得られるコミュニティ分析能力

の有効性を示してきた.例えば,FROM(IS or J) And TO(IS

or J)の b=8と b=16を比較し,詳細ドメインでみた場合にあ

る特定のコミュニティが目立って現れていることが分かった.

さらに,コミュニティ分析を行う具体的な問い合わせ木の例を

提示し,Jaccard Similarity Joinを用いて「ISと Jからみた際

に IS からみたコミュニティがどのように split, merge されて

でているか」といったコミュニティ分析が 40秒程度で行える

ことを示した.

以上により,問い合わせ処理時間が直接再計算によりも提案

したマージ演算や複合問い合わせ処理手法が効率的であること

を示し,本システムである特定の空間を自分の知りたい空間に

パーソナライズして様々なコミュニティ分析が有用に行えるこ

とを示した.

文 献[1] Ravi Kumar, Prabhakar Raghavan, Sridhar Rajagopalan,

Andrew Tomkins, “Trawling the Web for emerging cyber-

communities,” WWW8/Computer Networks, Vol.31(11-

16), pp.1481–1493, 1999.

[2] 豊田 正史, 吉田 聡, 喜連川 優, “ウェブコミュニティチャート:

膨大なウェブページを関連する話題を通して閲覧可能にするツール,” 電子情報通信学会論文誌, D-1 Vol. J87-D-1 No.2,

pp.256–265, 2004.

[3] S.Raghavan, H.Garcia-Molina, “Complex Queries over Web

Repositories,” VLDB 2003, pp.33-44, 2003.

[4] Pedro DeRose, Warren Shen, Fei Chen, AnHai Doan, Raghu

Ramakrishnan, “Building Structured Web Community Por-

tals: A Top-Down, Compositional, and Incremental Ap-

proach,” VLDB 2007, pp.399-410, 2007.

[5] T.Ohmori, M.Naruse, M.Hoshi, “A New Data Cube for Inte-

grating Data Mining and OLAP,” ICDE Workshop on Data

Mining and Business Intelligence, paper ID 3, IEEE, 2007.

[6] 栗原 大輔,大森 匡,星 守,“Web 構造分析を目的とした多次元データマイニング構造の効率化”,DEWS2008, D1-6, 2008.

[7] 張 洪鋒,大森 匡,星 守,“Web 構造分析を目的とした多次元データマイニング機構の効率化:To 型制約問い合わせの処理方法,” DEIM フォーラム 2009, E7-3, 2009.

[8] 齋藤 太陽,“多次元的なWeb空間マイニングを行うデータベースシステムの実現:分析条件一般化への対応,” 電気通信大学大学院情報システム学研究科 2009 年度修士論文, 2010.