論文からキーワード抽出してキーワード間の関係性を可視化した
本記事でやったこと
- KDD2018のホームページをスクレイピングし、論文のタイトル、アブストラクトを取得
- TF-IDF法により各論文からキーワードを抽出
- キーワード間の共起に基づきグラフを構築し、グラフを可視化
本記事のコードはGitHubにて公開しています。
スクレイピングより論文のタイトル、アブストラクトを取得
以下のコードにより、KDD2018のホームページをスクレイピングし、論文のタイトル、アブストラクトを取得します。
papers = {}
target_url = 'http://www.kdd.org/kdd2018/accepted-papers'
r = requests.get(target_url)
soup = BeautifulSoup(r.text, 'lxml')
for i, item in enumerate( soup.select('a[href^="http://www.kdd.org/kdd2018/accepted-papers/view/"]') ):
title = item.get_text()
url = item.get('href')
r = requests.get(url)
soup = BeautifulSoup(r.text, 'lxml')
s = soup.find('div', {'class': 'g-mb-60'})
author = s.find('h6').get_text()
author_list = [ n.strip() for n in author.split(';')]
abst = s.find('p').get_text()
paper = {}
paper['title'] = title
paper['author'] = author_list
paper['abst'] = abst
papers[i] = paper
TF-IDFによる論文のキーワード抽出
- TF-IDF法とは
TF(Term Frequency, 単語の出現頻度)とIDF(Inverse Document Frequency, 逆文書頻度)を掛け合わせることにより、各文書における単語の重要度を表すスコアを算出できる手法
本記事では、得られた単語の重要度を用いて各論文のキーワードを抽出します。TF-IDF法について詳細に知りたい人は具体例とかもあってわかりやすいので以下のサイト等を参考に。
TF-IDF法についての参考サイト
- キーワード抽出結果
TF-IDF法により各論文から以下のように単語の重要度が取得される。
そして、単語の重要度が閾値より大きいものをその論文のキーワードとする。
各キーワードを含む論文を整理すると以下のようになる。KDD2018はデータマイニングに関する国際会議であるため、"graph"や"cluster(clustering)"というキーワードを含む論文が多い。
キーワードに基づき論文の関係性を可視化
- キーワードに基づき論文の関係性を表すグラフを定義
以下のようなグラフを作成する。
ノード:論文、キーワードをノードとして定義する
エッジ:論文とその論文に含まれるキーワード間にエッジを定義する
- グラフ可視化
グラフの可視化にはGephiを使用し、力学モデルによりノードを配置しています。可視化結果は以下の図です。緑色の文字がキーワード、ピンク色のxが論文です。
上図では、グラフにおけるノードの次数が大きいほど、キーワードの文字サイズを大きくしています。
すなわち、KDD2018では"graph", "recommend", "cluster(clustering)"といったキーワードを含む論文が多いことが確認できます。
また、このグラフは論文上でのキーワード共起に基づきエッジが定義されています。
よって、このグラフから下図のように共起したすいキーワード群を確認することができます。
"risk"と"medic(medical)"や"visual"と"cnn"
"ad","campaign"と"auction"や"privaci","mobile"と"event"
終わりに
本記事では、データマイニングに関する国際会議KDD2018の論文からキーワード抽出して、キーワード間の関係性をグラフにより表現し可視化しました。
論文に出現するキーワードの共起に基づく関係性を何となく確認することができたような気がしましたが、
キーワード抽出、グラフの作り方、グラフの可視化方法などもっと頑張れるところがあったようには思います。
Author And Source
この問題について(論文からキーワード抽出してキーワード間の関係性を可視化した), 我々は、より多くの情報をここで見つけました https://qiita.com/myaun/items/55190791c0dd7d1e477c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .