a user-oriented splog filtering based on machine learning

44
A User-Oriented Splog Filtering Based on Machine Learning Tokyo Denki University : Takayuki Yoshinaka University of Tokyo : Tomohiro Fukuhara Tokyo Denki University : Hidetaka Masuda University of Tokyo : Hiroshi Nakagawa

Upload: guestb5b108c

Post on 08-Jul-2015

749 views

Category:

Education


3 download

DESCRIPTION

Authors : Takayuki Yoshinaka, Tomohiro Fukuhara, Hidetaka Masuda, Hiroshi Nakagawa

TRANSCRIPT

Page 1: A User-Oriented Splog Filtering Based on Machine Learning

A User-Oriented Splog Filtering Based on Machine Learning

○Tokyo Denki University : Takayuki YoshinakaUniversity of Tokyo : Tomohiro Fukuhara

Tokyo Denki University : Hidetaka MasudaUniversity of Tokyo : Hiroshi Nakagawa

Page 2: A User-Oriented Splog Filtering Based on Machine Learning

Agenda

• Back ground

• Collect data sets from users

• Feature

• Experiment of A User-Oriented Splog Filtering

• Conclusion

Page 3: A User-Oriented Splog Filtering Based on Machine Learning

Background

• スパムブログ(Splog)の大量発生

• ブログはユーザの興味や嗜好により必要とする情報が異なる

• “Gray blogs”の出現

– ユーザごとに判断が異なる

– 一概に判断がつけられない

このようなブログの特性とユーザの興味や嗜好に対応できる柔軟なフィルタが必要である

“A User-Oriented Splog Filtering”

Page 4: A User-Oriented Splog Filtering Based on Machine Learning

Splog

• Affiliate Type

– ブログ記事中に悪意のあるアフィリエイトリンクを埋め込んだ商用目的のブログ

• 大量生成 Type– ブログ記事を一度に大量に生成しばらまく

– 「Copy and Paste Type」 and 「Word Salad」

– サイト誘導による商用目的

• Adult Type– アダルト情報を掲載したブログ

Page 5: A User-Oriented Splog Filtering Based on Machine Learning

Affiliate Type

5

Page 6: A User-Oriented Splog Filtering Based on Machine Learning

Copy and Paste Type

6

Page 7: A User-Oriented Splog Filtering Based on Machine Learning

Word Salad Type

7

Page 8: A User-Oriented Splog Filtering Based on Machine Learning

“Gray” Blogs

• アフィリエイト付きブログ– 悪意のあるアフィリエイトではない

– レビューがしっかりしてる

• ニュースサイトやBBSのコピーブログ

– 最新ニュースや気になるジャンルのニュースをコピーしそのまま転載したブログ

– あるBBSにおけるスレッドをブログサイトに転載

• 日誌などのプライベートな記事も・・・(?)

言わば、コピーによるまとめブログサイト

Page 9: A User-Oriented Splog Filtering Based on Machine Learning

Blog+AffiliateBlogger’s Review

Affiliate link

Page 10: A User-Oriented Splog Filtering Based on Machine Learning

C&P from BBSContents of BBS

Page 11: A User-Oriented Splog Filtering Based on Machine Learning

A User-Oriented Splog Filtering

• ユーザからの直接の判定情報を収集

• 特徴の選定

– 従来のSplogフィルタリングで使用される特徴(Kolari特徴)

– 我々が提案する特徴(軽量的数値特徴)

• SVMを用いて学習モデルの作成

– 上記2つの収集したデータを用いて学習を行う

Page 12: A User-Oriented Splog Filtering Based on Machine Learning

A User-Oriented Splog Filter

CommonFilter

ServerClient

Offer by Service (Web App etc.)

Collect Data

WebFeedback from Users and Re-learning Part of Filter

Learning Module

Each user’s Filter

Feature Selection

A User-Oriented Splog Filtering System (Over View)

Page 13: A User-Oriented Splog Filtering Based on Machine Learning

Agenda

• Back ground

• Collect data sets from users

• Feature

• Experiment of A User-Oriented Splog Filter

• Conclusion

Page 14: A User-Oriented Splog Filtering Based on Machine Learning

Collect data sets from users

• ユーザからの直接の判定情報を収集することでユーザ適応型Splogフィルタリングのデータとして利用する

• 被験者50人を募り、50件のテストブログ記事に対して判定を行わせる

以下– user’s attributes– test blog articles

について説明を行う

Page 15: A User-Oriented Splog Filtering Based on Machine Learning

User’s attribute

2%

58%

28%

10%

2%

44%

34%

18%

2% 2%

Age Work

25-29 age

30-34 age

35-44 age

Over 55 age 21-24 age

コンピュータ関連技術職

事務職、事務専門職

販売、サービス職

管理職 取締役

Page 16: A User-Oriented Splog Filtering Based on Machine Learning

Test blog articles

• 2種類のテスト記事を用意– 40件の共通記事

• 被験者間で全員が共通に判定を行うテスト記事

– 10件の個別記事• 被験者ごとに個別に選択が行えるテスト記事

• 14カテゴリから2カテゴリを選択し判定を行う

Type Number of articles

Affiliate 12

Copy and paste 10

Word salad 3

Adult 0

Non splog 15

Page 17: A User-Oriented Splog Filtering Based on Machine Learning

How to judge

• 2次元4値の判定軸を採用

被験者の判定傾向を詳細に分析する

スパム度[spam]

情報価値の尺度[value]

1. 有益だった

5. 有益でなかった

1. スパムでない5. スパム

4. どちらかと言えばスパム

2. どちらかと言えばスパムでない

4. どちらかと言えば有益でなかった

2. どちらかと言えば有益だった

17

Page 18: A User-Oriented Splog Filtering Based on Machine Learning

Result

Page 19: A User-Oriented Splog Filtering Based on Machine Learning

1

2

4

5

0

100

200

300

400

500

600

700

12

45

95

55114

84

96 148126

9

182 198

79

9

678

6054

13

spam

jud

ge_c

ou

nt

40件の共通記事における判定結果

Page 20: A User-Oriented Splog Filtering Based on Machine Learning

1

2

4

5

0

10

20

30

40

50

60

70

80

90

12

45

38

27

67

41

46

57

49

5

23

35

14

1

81

95

2

spam

jud

ge_c

ou

nt

10件の共通記事における判定結果

Page 21: A User-Oriented Splog Filtering Based on Machine Learning

• Back ground

• Collect data sets from users

• Feature

• Experiment of A User-Oriented Splog Filter

• Conclusion

Agenda

Page 22: A User-Oriented Splog Filtering Based on Machine Learning

Feature

• 2種類のFeatureを使用する

– 従来のSplogフィルタリングで使用される特徴(Kolari特徴)

– 我々が提案する特徴(軽量的数値特徴)

• 狙い

– Kolari特徴をユーザ適応型に適応した場合にどのような傾向を表すのかを調査する

– 2種類の特徴を比較することで軽量的特徴の有効性を示唆したい

Page 23: A User-Oriented Splog Filtering Based on Machine Learning

Kolari特徴• Bag-of-words

– 品詞に関係なく抽出した形態素群

– 値にはTFIDFを用いる

• Bag-of-anchors– <A>タグに囲まれた部分のテキスト情報

• <a href=http://affiliate.com >この部分</a>

– 値にはBinary(1 or 0)を用いる

• Bag-of-urls– 全URL情報を「.(ドット)」「/(スラッシュ)」で分割したもの• http://www.cdl.im.dendai.ac.jp/yoshinaka⇒

• 「cdl」「im」「dendai」「ac」「jp」「yoshinaka」(「http://」「www.」は除く)

Page 24: A User-Oriented Splog Filtering Based on Machine Learning

Kolari特徴

• Bag-of-kolaris

– 「bag-of-words」「bag-of-anchors」「bag-of-urls」を複合した特徴

• Number of Dimension

Feature Name Number of Dimension

Bag-of-words 9,014

Bag-of-anchors 4,014

Bag-of-urls 3,091

Bag-of-kolaris 16, 119

Page 25: A User-Oriented Splog Filtering Based on Machine Learning

軽量的数値特徴

• 我々が提案する特徴

• 全12次元であり、かつ抽出が容易に行える

• Kolari特徴同様全ての特徴はブログのHTMLデータから抽出が可能

Page 26: A User-Oriented Splog Filtering Based on Machine Learning

軽量的数値特徴

Feature Name Abstract

1. Count-of-keywords ブログ本文内のみの名詞の数

2. Count-of-circle 「。」の数

3. Count-of-point 「、」の数

4. Count-of-length ブログHTMLデータの文字列長

5. Count-of-noTag-length タグを除いたブログHTMLデータの文字列長

6. Count-of-br <BR>タグの数

7. Count-of-inlink 同一ブログ記事内へのリンク数 ex.) comment, archive etc

8. Count-of-outlink 同一ブログ記事以外へのリンク数

9. Count-of-image 画像数

10. Count-of-height 存在する全ての画像における高さの平均値

11. Count-of-weight 存在する全ての画像における幅の平均値

12. Count-of-affiliateID アフィリエイト識別番号の数 ex.) GoogleAds, amazon, rakulten

Page 27: A User-Oriented Splog Filtering Based on Machine Learning

複合特徴

• Kolari特徴と軽量的特徴を複合した特徴

– 複合特徴=「bag-of-kolari」+「軽量的数値特徴」

• 次元数

– 16,119 + 12 = 16, 131

「bag-of-words」「bag-of-anchors」「bag-of-urls」「bag-of-kolaris」「軽量的数値特徴」「複合特徴」

6パターンの特徴を使用

つまり全部で

Page 28: A User-Oriented Splog Filtering Based on Machine Learning

Agenda

• Back ground

• Collect data sets from users

• Feature

• Experiment of A User-Oriented Splog Filtering

• Conclusion

Page 29: A User-Oriented Splog Filtering Based on Machine Learning

Experiment

• 学習ツールLibSVMを用い、5分割交差検定により評価を行う

• カーネルは「Linear kernel」「Polynomial kernel(3D)」「RBF kernel」「Sigmoid kernel」にて行う– オプションは全てデフォルト値を用いる

• 評価の値には学習結果のSplogにおけるF値を用いる

• 6パターン全ての特徴において各被験者ごとに学習を行い評価する

Page 30: A User-Oriented Splog Filtering Based on Machine Learning

Result

Page 31: A User-Oriented Splog Filtering Based on Machine Learning

Bag-of-wordsにおける学習結果

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

46 5 44 39 47 8 40 1 6 41 7 37 10 15 24 21 19 35 45 11 4 12 26 20 49 17 13 29 23 14 22 16 27 18 32 2 43 31 30 25 9 36 48 33 28 3 42 34 38

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

Page 32: A User-Oriented Splog Filtering Based on Machine Learning

Bag-of-anchorsにおける学習結果

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

46 44 5 39 47 1 6 40 8 41 7 15 10 35 37 11 21 24 45 12 19 4 26 20 49 29 13 17 22 14 23 27 16 18 2 32 25 9 43 31 30 36 33 48 42 28 34 3 38

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

Page 33: A User-Oriented Splog Filtering Based on Machine Learning

Bag-of-urlsにおける学習結果

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

46 5 44 39 47 1 35 8 40 41 6 11 7 15 37 24 10 21 49 17 12 4 45 19 20 26 29 22 23 16 13 27 14 18 2 32 9 28 31 43 30 25 48 36 42 34 3 33 38

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

Page 34: A User-Oriented Splog Filtering Based on Machine Learning

Bag-of-kolarisにおける学習結果

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

46 44 5 47 39 8 1 40 6 41 7 15 37 10 24 21 19 45 35 4 11 12 26 20 49 17 29 13 14 22 23 16 18 27 32 2 31 43 25 30 48 36 9 33 28 42 3 38 34

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

Page 35: A User-Oriented Splog Filtering Based on Machine Learning

軽量的数値特徴における学習結果

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

46 44 5 39 47 35 1 6 41 15 40 11 21 8 24 7 10 37 49 19 12 17 4 45 22 26 20 27 13 14 18 29 32 2 23 16 43 9 36 30 42 33 34 48 38 3 25 31 28

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

Page 36: A User-Oriented Splog Filtering Based on Machine Learning

複合特徴における学習結果

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

46 5 44 39 47 1 8 6 40 41 7 15 37 10 24 21 19 35 45 4 11 12 26 20 17 49 29 13 14 22 23 16 18 27 32 2 31 43 25 30 48 36 9 33 28 42 3 34 38

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

Page 37: A User-Oriented Splog Filtering Based on Machine Learning

考察

• 若干ではあるが「bag-of-urls」の精度が良

かったが、全体として見ればあまり特徴の変化に差は生じなかった

• カーネルの変化によりSplogF値が大きく変化する被験者が多くみられた

• 「bag-of-kolaris」と「複合特徴」の結果はほぼ同様であった

ユーザ適応では軽量的数値特徴でも効果あり

ユーザごとには最適なカーネルが存在する

複合特徴においては軽量的数値特徴の影響がない

Page 38: A User-Oriented Splog Filtering Based on Machine Learning

考察

• 特徴の変化によっても被験者ごとにSplogF値が変化しているユーザごとに最適な特徴が存在する

各被験者ごとの「最適なカーネル」における「最適な特徴」を算出する

そこで

Page 39: A User-Oriented Splog Filtering Based on Machine Learning

最適特徴の算出• 「最適なカーネル」と「最適な特徴」を各被験者ごとに算出する

• SplogF値を元に算出する

– もし、SplogF値が同一の場合下記のランク表

を元に特徴抽出コストが掛らない特徴を優先する

Rank Feature Name

1 軽量的数値特徴

2 Bag-of-urls

3 Bag-of-words

4 Bag-of-anchors

5 Bag-of-kolaris

6 複合特徴

ランク表

Page 40: A User-Oriented Splog Filtering Based on Machine Learning

Result

Page 41: A User-Oriented Splog Filtering Based on Machine Learning

「最適カーネル」と「最適特徴」の出現回数

Feature Name Count

1. Bag-of-words 3

2. Bag-of-anchors 2

3. Bag-of-urls 14

4. Bag-of-kolaris 3

5. 軽量的数値特徴 27

6. 複合特徴 0

kernel Count

1. Linear 16

2. Polynomial 23

3. RBF 9

4. Sigmoid 1

Feature

kernel

Pair Count

1-1 2

1-2 1

2-1 2

3-1 2

3-2 11

3-4 1

4-1 1

4-2 2

5-1 9

5-2 9

5-3 9

Pair

Page 42: A User-Oriented Splog Filtering Based on Machine Learning

「最適カーネル」と「最適特徴」における各被験者ごとのSplogF値

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

46 44 5 39 47 1 15 24 35 8 10 21 6 40 7 41 49 11 19 37 17 12 4 20 45 22 26 14 29 13 23 27 16 2 32 18 31 36 43 48 30 25 9 28 42 3 33 34 38

User’s ID

Splog’s F-measure

0.316

Page 43: A User-Oriented Splog Filtering Based on Machine Learning

Conclusion

• ユーザからの直接の判定情報を収集しユーザ適応型Splogフィルタリングの作成した

• 2つの特徴「Kolari特徴」「軽量的数値特

徴」を使用しユーザ適応型に適応することで、軽量的特徴の有効性を述べた

• 各ユーザには「最適なカーネル」による「最適な特徴」を提供することが有効であると述べた

Page 44: A User-Oriented Splog Filtering Based on Machine Learning

Feature Work

• 規模の拡大

– 判定情報データセットの拡大

– 大規模なテストデータを作成してのユーザ適応型フィルタの評価

• 特徴選定

– 軽量的数値特徴の拡充