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 05-Aug-2015

484 views

Category:

Education


1 download

TRANSCRIPT

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

Agenda

• Back ground• Collect data sets from users• Feature• Experiment of A User-Oriented Splog Filtering• Conclusion

Background

• スパムブログ( Splog )の大量発生• ブログはユーザの興味や嗜好により必要

とする情報が異なる• “Gray blogs” の出現– ユーザごとに判断が異なる– 一概に判断がつけられない

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

“A User-Oriented Splog Filtering”

Splog

• Affiliate Type– ブログ記事中に悪意のあるアフィリエイトリ

ンクを埋め込んだ商用目的のブログ• 大量生成 Type– ブログ記事を一度に大量に生成しばらまく– 「 Copy and Paste Type 」 and 「 Word Salad 」– サイト誘導による商用目的

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

Affiliate Type

5

Copy and Paste Type

6

Word Salad Type

7

“Gray” Blogs

• アフィリエイト付きブログ– 悪意のあるアフィリエイトではない– レビューがしっかりしてる

• ニュースサイトや BBS のコピーブログ– 最新ニュースや気になるジャンルのニュースをコ

ピーしそのまま転載したブログ– ある BBS におけるスレッドをブログサイトに転載

• 日誌などのプライベートな記事も・・・( ? )言わば、コピーによるまとめブログサイト

Blog+Affiliate

Blogger’s Review

Affiliate link

C&P from BBSContents of BBS

A User-Oriented Splog Filtering

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

• 特徴の選定– 従来の Splog フィルタリングで使用される特

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

• SVM を用いて学習モデルの作成– 上記 2 つの収集したデータを用いて学習を行

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)

Agenda

• Back ground• Collect data sets from users• Feature• Experiment of A User-Oriented Splog Filter• Conclusion

Collect data sets from users

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

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

 以下– user’s attributes– test blog articles

 について説明を行う

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

コンピュータ関連技術職

事務職、事務専門職

販売、サービス職

管理職 取締役

Test blog articles• 2 種類のテスト記事を用意– 40 件の共通記事• 被験者間で全員が共通に判定を行うテスト記事

– 10 件の個別記事• 被験者ごとに個別に選択が行えるテスト記事• 14 カテゴリから 2 カテゴリを選択し判定を行う

Type Number of articlesAffiliate 12Copy and paste 10Word salad 3Adult 0Non splog 15

How to judge

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

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

スパム度[spam]

情報価値の尺度[value]

1. 有益だった

5. 有益でなかった

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

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

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

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

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

17

Result

12

45

0

100

200

300

400

500

600

700

1

2

4

595

55 114

84

96 148126

9

182 198

79

9

678

6054

13

spam

valu

e

judg

e_co

unt

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

12

45

0

10

20

30

40

50

60

70

80

90

1

2

4

5

38

27

67

41

4657

49

5

2335

14

1

81

95

2

spam

judg

e_co

unt

valu

e

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

• Back ground• Collect data sets from users• Feature• Experiment of A User-Oriented Splog Filter• Conclusion

Agenda

Feature

• 2 種類の Feature を使用する– 従来の Splog フィルタリングで使用される特

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

• 狙い– Kolari 特徴をユーザ適応型に適応した場合にど

のような傾向を表すのかを調査する– 2 種類の特徴を比較することで軽量的特徴の

有効性を示唆したい

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. 」は除く)

Kolari 特徴• Bag-of-kolaris– 「 bag-of-words 」「 bag-of-anchors 」「 bag-of-

urls 」を複合した特徴

• Number of DimensionFeature Name Number of Dimension

Bag-of-words 9,014

Bag-of-anchors 4,014

Bag-of-urls 3,091

Bag-of-kolaris 16, 119

軽量的数値特徴• 我々が提案する特徴• 全 12 次元であり、かつ抽出が容易に行え

る• Kolari 特徴同様全ての特徴はブログの

HTML データから抽出が可能

軽量的数値特徴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 etc8. Count-of-outlink 同一ブログ記事以外へのリンク数9. Count-of-image 画像数10. Count-of-height 存在する全ての画像における高さの平均値11. Count-of-weight 存在する全ての画像における幅の平均値12. Count-of-affiliateID アフィリエイト識別番号の数 ex.) GoogleAds, amazon,

rakulten

複合特徴• Kolari 特徴と軽量的特徴を複合した特徴– 複合特徴 = 「 bag-of-kolari 」 + 「軽量的数値特

徴」• 次元数– 16,119 + 12 = 16, 131

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

6 パターンの特徴を使用

つまり全部で

Agenda

• Back ground• Collect data sets from users• Feature• Experiment of A User-Oriented Splog Filtering• Conclusion

Experiment

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

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

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

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

Result

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

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 380

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

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

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 380

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

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

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 380

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

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

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 340

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

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

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 280

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

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

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 380

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

linear polynomial rbf sigmoid

User’s ID

Splog’s F-measure

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

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

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

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

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

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

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

考察• 特徴の変化によっても被験者ごとに SplogF

値が変化しているユーザごとに最適な特徴が存在する

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

そこで

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

• SplogF 値を元に算出する– もし、 SplogF 値が同一の場合下記のランク表

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

Rank Feature Name

1 軽量的数値特徴2 Bag-of-urls

3 Bag-of-words

4 Bag-of-anchors

5 Bag-of-kolaris

6 複合特徴

ランク表

Result

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

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

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

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 380

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

User’s ID

Splog’s F-measure

0.316

Conclusion

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

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

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

Feature Work

• 規模の拡大– 判定情報データセットの拡大– 大規模なテストデータを作成してのユーザ適

応型フィルタの評価• 特徴選定– 軽量的数値特徴の拡充