SlideShare a Scribd company logo
1 of 8
HTMLファイルからの
ノイズの削減
 関口宏司@ロンウイット
背景/目的
• HTMLにおける「ノイズ」
 • 広告
 • メニュー
 • フッター/ヘッダー


• 用途
 • 検索エンジン
 • コーパスとしてのHTMLコンテンツの利用
 • ファイルサイズの削減




        Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved.   2
「ノイズ」の同定
   • 2つ以上の同類(*1)のHTMLページを集め、類似
     のブロックをノイズとみなし、除去する

                                       :他のページに類似の
                                       ブロックがある



                                       :他のページに類似の
                                       ブロックがない




   • ブロックはベクトル化し、ブロック同士の類似度は
     コサイン類似度を用いる

(*1)同類のHTMLページとは、同一ドメイン下のWebサイトをクロールして収集したHTMLページを指す。同一ドメイン
下のWebサイトのHTMLページは、単一のテンプレートを使って作成されていることが多く、レイアウトが同じであるため
類似のブロックが多く見つかりやすい。
                    Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved.   3
ブロック
• W3Cの定めたHTMLタグ
 • ブロックレベル要素:<DIV>, <P>, <H1>など
 • インライン要素:<FONT>, <STRONG>, <A>など
• ブロック=ブロックレベル要素+α
• HTMLページを下位ノードにブロック要素が存在し
  ないように分割
                                        BODY




        DIV                              DIV                                    DIV




  P           IMG              IMG                 IMG                 A              SCRIPT



 TEXT                                                               TEXT              CODE

                    Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved.                  4
アルゴリズム
• バッチ処理単位G、HTMLページDi



• HTMLページDiをブロックBijへ分割



• ブロックBijのベクトル化



• 類似度Sの計算


        Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved.   5
ブロックのベクトル化
• ブロックのベクトル素性
  • ブロック内の各タグ:出現回数
  • 各テキスト:正規化した文字の出現回数
  • 属性title、altの各テキスト:正規化した文字の出現回数

                                                                                A   1
• 例                                                                             P   1
                                                                            ど       1
      <P>どうも<A href="i.html">僕</A>です</P>
                                                               B=
                                                                            う       1
                                                                            も       1
                                                                            で       1
• NekoHTMLの利用
                                                                            す       1



                    Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved.           6
まとめ
•   2つ以上の同類のHTMLページが必要
•   単純なアルゴリズム
•   多少の違いは吸収
•   検索エンジンのインデックス作成の前処理
•   テキストコーパスとして有益な部分の抽出
•   ディスク/メモリ消費量の削減に寄与




         Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved.   7
参考文献
• 教師情報を必要としないニュースページ群からのコ
  ンテンツ自動抽出吉田、山本日本データベース学会
  論文誌 Vol.8 No.1 2009年6月

• HTML 4.01 Specification W3C Recommendation 24
  December 1999 7.5.3 Block-level and inline
  elements
  http://www.w3.org/TR/html401/struct/global.html#h-
  7.5.3

• NekoHTML http://nekohtml.sourceforge.net/


              Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved.   8

More Related Content

Similar to Html noise reduction (8)

電技研Web講習
電技研Web講習電技研Web講習
電技研Web講習
 
HTML5プロフェッショナル認定試験対策講座
HTML5プロフェッショナル認定試験対策講座HTML5プロフェッショナル認定試験対策講座
HTML5プロフェッショナル認定試験対策講座
 
Htmlの基本
Htmlの基本Htmlの基本
Htmlの基本
 
HTML5 for IA
HTML5 for IAHTML5 for IA
HTML5 for IA
 
今日からはじめるHTML5 ver.2012
今日からはじめるHTML5 ver.2012今日からはじめるHTML5 ver.2012
今日からはじめるHTML5 ver.2012
 
HTML5での制作、いつから始める?
HTML5での制作、いつから始める?HTML5での制作、いつから始める?
HTML5での制作、いつから始める?
 
Html
HtmlHtml
Html
 
HTML入門
HTML入門HTML入門
HTML入門
 

More from Koji Sekiguchi

系列パターンマイニングを用いた単語パターン学習とWikipediaからの組織名抽出
系列パターンマイニングを用いた単語パターン学習とWikipediaからの組織名抽出系列パターンマイニングを用いた単語パターン学習とWikipediaからの組織名抽出
系列パターンマイニングを用いた単語パターン学習とWikipediaからの組織名抽出
Koji Sekiguchi
 
Luceneインデックスの共起単語分析とSolrによる共起単語サジェスチョン
Luceneインデックスの共起単語分析とSolrによる共起単語サジェスチョンLuceneインデックスの共起単語分析とSolrによる共起単語サジェスチョン
Luceneインデックスの共起単語分析とSolrによる共起単語サジェスチョン
Koji Sekiguchi
 
Lucene terms extraction
Lucene terms extractionLucene terms extraction
Lucene terms extraction
Koji Sekiguchi
 
Visualize terms network in Lucene index
Visualize terms network in Lucene indexVisualize terms network in Lucene index
Visualize terms network in Lucene index
Koji Sekiguchi
 
WikipediaからのSolr用類義語辞書の自動生成
WikipediaからのSolr用類義語辞書の自動生成WikipediaからのSolr用類義語辞書の自動生成
WikipediaからのSolr用類義語辞書の自動生成
Koji Sekiguchi
 
OpenNLP - MEM and Perceptron
OpenNLP - MEM and PerceptronOpenNLP - MEM and Perceptron
OpenNLP - MEM and Perceptron
Koji Sekiguchi
 
自然言語処理における機械学習による曖昧性解消入門
自然言語処理における機械学習による曖昧性解消入門自然言語処理における機械学習による曖昧性解消入門
自然言語処理における機械学習による曖昧性解消入門
Koji Sekiguchi
 
Similarity functions in Lucene 4.0
Similarity functions in Lucene 4.0Similarity functions in Lucene 4.0
Similarity functions in Lucene 4.0
Koji Sekiguchi
 
Pre rondhuit-naming-story
Pre rondhuit-naming-storyPre rondhuit-naming-story
Pre rondhuit-naming-story
Koji Sekiguchi
 

More from Koji Sekiguchi (20)

20221209-ApacheSolrによるはじめてのセマンティックサーチ.pdf
20221209-ApacheSolrによるはじめてのセマンティックサーチ.pdf20221209-ApacheSolrによるはじめてのセマンティックサーチ.pdf
20221209-ApacheSolrによるはじめてのセマンティックサーチ.pdf
 
Solr から使う OpenNLP の日本語固有表現抽出
Solr から使う OpenNLP の日本語固有表現抽出Solr から使う OpenNLP の日本語固有表現抽出
Solr から使う OpenNLP の日本語固有表現抽出
 
Learning-to-Rank meetup Vol. 1
Learning-to-Rank meetup Vol. 1Learning-to-Rank meetup Vol. 1
Learning-to-Rank meetup Vol. 1
 
Lucene 6819-good-bye-index-time-boost
Lucene 6819-good-bye-index-time-boostLucene 6819-good-bye-index-time-boost
Lucene 6819-good-bye-index-time-boost
 
NLP4L - 情報検索における性能改善のためのコーパスの活用とランキング学習
NLP4L - 情報検索における性能改善のためのコーパスの活用とランキング学習NLP4L - 情報検索における性能改善のためのコーパスの活用とランキング学習
NLP4L - 情報検索における性能改善のためのコーパスの活用とランキング学習
 
An Introduction to NLP4L (Scala by the Bay / Big Data Scala 2015)
An Introduction to NLP4L (Scala by the Bay / Big Data Scala 2015)An Introduction to NLP4L (Scala by the Bay / Big Data Scala 2015)
An Introduction to NLP4L (Scala by the Bay / Big Data Scala 2015)
 
An Introduction to NLP4L
An Introduction to NLP4LAn Introduction to NLP4L
An Introduction to NLP4L
 
Nlp4 l intro-20150513
Nlp4 l intro-20150513Nlp4 l intro-20150513
Nlp4 l intro-20150513
 
コーパス学習による Apache Solr の徹底活用
コーパス学習による Apache Solr の徹底活用コーパス学習による Apache Solr の徹底活用
コーパス学習による Apache Solr の徹底活用
 
系列パターンマイニングを用いた単語パターン学習とWikipediaからの組織名抽出
系列パターンマイニングを用いた単語パターン学習とWikipediaからの組織名抽出系列パターンマイニングを用いた単語パターン学習とWikipediaからの組織名抽出
系列パターンマイニングを用いた単語パターン学習とWikipediaからの組織名抽出
 
Luceneインデックスの共起単語分析とSolrによる共起単語サジェスチョン
Luceneインデックスの共起単語分析とSolrによる共起単語サジェスチョンLuceneインデックスの共起単語分析とSolrによる共起単語サジェスチョン
Luceneインデックスの共起単語分析とSolrによる共起単語サジェスチョン
 
Lucene terms extraction
Lucene terms extractionLucene terms extraction
Lucene terms extraction
 
Visualize terms network in Lucene index
Visualize terms network in Lucene indexVisualize terms network in Lucene index
Visualize terms network in Lucene index
 
WikipediaからのSolr用類義語辞書の自動生成
WikipediaからのSolr用類義語辞書の自動生成WikipediaからのSolr用類義語辞書の自動生成
WikipediaからのSolr用類義語辞書の自動生成
 
HMM viterbi
HMM viterbiHMM viterbi
HMM viterbi
 
NLP x Lucene/Solr
NLP x Lucene/SolrNLP x Lucene/Solr
NLP x Lucene/Solr
 
OpenNLP - MEM and Perceptron
OpenNLP - MEM and PerceptronOpenNLP - MEM and Perceptron
OpenNLP - MEM and Perceptron
 
自然言語処理における機械学習による曖昧性解消入門
自然言語処理における機械学習による曖昧性解消入門自然言語処理における機械学習による曖昧性解消入門
自然言語処理における機械学習による曖昧性解消入門
 
Similarity functions in Lucene 4.0
Similarity functions in Lucene 4.0Similarity functions in Lucene 4.0
Similarity functions in Lucene 4.0
 
Pre rondhuit-naming-story
Pre rondhuit-naming-storyPre rondhuit-naming-story
Pre rondhuit-naming-story
 

Recently uploaded

Recently uploaded (12)

Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 

Html noise reduction

  • 2. 背景/目的 • HTMLにおける「ノイズ」 • 広告 • メニュー • フッター/ヘッダー • 用途 • 検索エンジン • コーパスとしてのHTMLコンテンツの利用 • ファイルサイズの削減 Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved. 2
  • 3. 「ノイズ」の同定 • 2つ以上の同類(*1)のHTMLページを集め、類似 のブロックをノイズとみなし、除去する :他のページに類似の ブロックがある :他のページに類似の ブロックがない • ブロックはベクトル化し、ブロック同士の類似度は コサイン類似度を用いる (*1)同類のHTMLページとは、同一ドメイン下のWebサイトをクロールして収集したHTMLページを指す。同一ドメイン 下のWebサイトのHTMLページは、単一のテンプレートを使って作成されていることが多く、レイアウトが同じであるため 類似のブロックが多く見つかりやすい。 Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved. 3
  • 4. ブロック • W3Cの定めたHTMLタグ • ブロックレベル要素:<DIV>, <P>, <H1>など • インライン要素:<FONT>, <STRONG>, <A>など • ブロック=ブロックレベル要素+α • HTMLページを下位ノードにブロック要素が存在し ないように分割 BODY DIV DIV DIV P IMG IMG IMG A SCRIPT TEXT TEXT CODE Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved. 4
  • 5. アルゴリズム • バッチ処理単位G、HTMLページDi • HTMLページDiをブロックBijへ分割 • ブロックBijのベクトル化 • 類似度Sの計算 Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved. 5
  • 6. ブロックのベクトル化 • ブロックのベクトル素性 • ブロック内の各タグ:出現回数 • 各テキスト:正規化した文字の出現回数 • 属性title、altの各テキスト:正規化した文字の出現回数 A 1 • 例 P 1 ど 1 <P>どうも<A href="i.html">僕</A>です</P> B= う 1 も 1 で 1 • NekoHTMLの利用 す 1 Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved. 6
  • 7. まとめ • 2つ以上の同類のHTMLページが必要 • 単純なアルゴリズム • 多少の違いは吸収 • 検索エンジンのインデックス作成の前処理 • テキストコーパスとして有益な部分の抽出 • ディスク/メモリ消費量の削減に寄与 Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved. 7
  • 8. 参考文献 • 教師情報を必要としないニュースページ群からのコ ンテンツ自動抽出吉田、山本日本データベース学会 論文誌 Vol.8 No.1 2009年6月 • HTML 4.01 Specification W3C Recommendation 24 December 1999 7.5.3 Block-level and inline elements http://www.w3.org/TR/html401/struct/global.html#h- 7.5.3 • NekoHTML http://nekohtml.sourceforge.net/ Copyright (c) 2012 RONDHUIT Co.,Ltd. All Rights Reserved. 8