Submit Search
Upload
さくっとはじめるテキストマイニング(R言語) スタートアップ編
•
Download as PPTX, PDF
•
45 likes
•
27,081 views
Y
Yutaka Shimada
Follow
R言語を少しかじった人が「さくっとテキストマイニングを始める」ための、お助け資料。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 57
Download now
Recommended
動的計画法の並列化
動的計画法の並列化
Proktmr
ブースティング入門
ブースティング入門
Retrieva inc.
Kashiwa.R#1 画像解析とパターン認識における R の利用
Kashiwa.R#1 画像解析とパターン認識における R の利用
nmaro
最適化計算の概要まとめ
最適化計算の概要まとめ
Yuichiro MInato
プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法
Takuya Akiba
クラシックな機械学習の入門 8. クラスタリング
クラシックな機械学習の入門 8. クラスタリング
Hiroshi Nakagawa
パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0
sleipnir002
不均衡データのクラス分類
不均衡データのクラス分類
Shintaro Fukushima
Recommended
動的計画法の並列化
動的計画法の並列化
Proktmr
ブースティング入門
ブースティング入門
Retrieva inc.
Kashiwa.R#1 画像解析とパターン認識における R の利用
Kashiwa.R#1 画像解析とパターン認識における R の利用
nmaro
最適化計算の概要まとめ
最適化計算の概要まとめ
Yuichiro MInato
プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法
Takuya Akiba
クラシックな機械学習の入門 8. クラスタリング
クラシックな機械学習の入門 8. クラスタリング
Hiroshi Nakagawa
パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0
sleipnir002
不均衡データのクラス分類
不均衡データのクラス分類
Shintaro Fukushima
【解説】 一般逆行列
【解説】 一般逆行列
Kenjiro Sugimoto
RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成
弘毅 露崎
線形計画法入門
線形計画法入門
Shunji Umetani
ブレインパッドにおける機械学習プロジェクトの進め方
ブレインパッドにおける機械学習プロジェクトの進め方
BrainPad Inc.
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Hiroshi Shimizu
Rにおける大規模データ解析(第10回TokyoWebMining)
Rにおける大規模データ解析(第10回TokyoWebMining)
Shintaro Fukushima
Rで計量時系列分析~CRANパッケージ総ざらい~
Rで計量時系列分析~CRANパッケージ総ざらい~
Takashi J OZAKI
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
Koichi Hamada
「ベータ分布の謎に迫る」第6回 プログラマのための数学勉強会 LT資料
「ベータ分布の謎に迫る」第6回 プログラマのための数学勉強会 LT資料
Ken'ichi Matsui
階層的クラスタリング入門の入門
階層的クラスタリング入門の入門
Mas Kot
漸近理論をスライド1枚で(フォローアッププログラムクラス講義07132016)
漸近理論をスライド1枚で(フォローアッププログラムクラス講義07132016)
Hideo Hirose
中断時系列分析の書き方
中断時系列分析の書き方
Shuhei Ichikawa
for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力
imuyaoti
単語・句の分散表現の学習
単語・句の分散表現の学習
Naoaki Okazaki
レコメンドエンジン作成コンテストの勝ち方
レコメンドエンジン作成コンテストの勝ち方
Shun Nukui
MICの解説
MICの解説
logics-of-blue
Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)
Kohta Ishikawa
PFP:材料探索のための汎用Neural Network Potential - 2021/10/4 QCMSR + DLAP共催
PFP:材料探索のための汎用Neural Network Potential - 2021/10/4 QCMSR + DLAP共催
Preferred Networks
Rcppのすすめ
Rcppのすすめ
Masaki Tsuda
π計算
π計算
Yuuki Takano
Working with Word for Qualitative Data Analysis
Working with Word for Qualitative Data Analysis
Jenna Condie
Rデバッグあれこれ
Rデバッグあれこれ
Takeshi Arabiki
More Related Content
What's hot
【解説】 一般逆行列
【解説】 一般逆行列
Kenjiro Sugimoto
RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成
弘毅 露崎
線形計画法入門
線形計画法入門
Shunji Umetani
ブレインパッドにおける機械学習プロジェクトの進め方
ブレインパッドにおける機械学習プロジェクトの進め方
BrainPad Inc.
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Hiroshi Shimizu
Rにおける大規模データ解析(第10回TokyoWebMining)
Rにおける大規模データ解析(第10回TokyoWebMining)
Shintaro Fukushima
Rで計量時系列分析~CRANパッケージ総ざらい~
Rで計量時系列分析~CRANパッケージ総ざらい~
Takashi J OZAKI
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
Koichi Hamada
「ベータ分布の謎に迫る」第6回 プログラマのための数学勉強会 LT資料
「ベータ分布の謎に迫る」第6回 プログラマのための数学勉強会 LT資料
Ken'ichi Matsui
階層的クラスタリング入門の入門
階層的クラスタリング入門の入門
Mas Kot
漸近理論をスライド1枚で(フォローアッププログラムクラス講義07132016)
漸近理論をスライド1枚で(フォローアッププログラムクラス講義07132016)
Hideo Hirose
中断時系列分析の書き方
中断時系列分析の書き方
Shuhei Ichikawa
for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力
imuyaoti
単語・句の分散表現の学習
単語・句の分散表現の学習
Naoaki Okazaki
レコメンドエンジン作成コンテストの勝ち方
レコメンドエンジン作成コンテストの勝ち方
Shun Nukui
MICの解説
MICの解説
logics-of-blue
Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)
Kohta Ishikawa
PFP:材料探索のための汎用Neural Network Potential - 2021/10/4 QCMSR + DLAP共催
PFP:材料探索のための汎用Neural Network Potential - 2021/10/4 QCMSR + DLAP共催
Preferred Networks
Rcppのすすめ
Rcppのすすめ
Masaki Tsuda
π計算
π計算
Yuuki Takano
What's hot
(20)
【解説】 一般逆行列
【解説】 一般逆行列
RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成
線形計画法入門
線形計画法入門
ブレインパッドにおける機械学習プロジェクトの進め方
ブレインパッドにおける機械学習プロジェクトの進め方
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rにおける大規模データ解析(第10回TokyoWebMining)
Rにおける大規模データ解析(第10回TokyoWebMining)
Rで計量時系列分析~CRANパッケージ総ざらい~
Rで計量時系列分析~CRANパッケージ総ざらい~
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
「ベータ分布の謎に迫る」第6回 プログラマのための数学勉強会 LT資料
「ベータ分布の謎に迫る」第6回 プログラマのための数学勉強会 LT資料
階層的クラスタリング入門の入門
階層的クラスタリング入門の入門
漸近理論をスライド1枚で(フォローアッププログラムクラス講義07132016)
漸近理論をスライド1枚で(フォローアッププログラムクラス講義07132016)
中断時系列分析の書き方
中断時系列分析の書き方
for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力
単語・句の分散表現の学習
単語・句の分散表現の学習
レコメンドエンジン作成コンテストの勝ち方
レコメンドエンジン作成コンテストの勝ち方
MICの解説
MICの解説
Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)
PFP:材料探索のための汎用Neural Network Potential - 2021/10/4 QCMSR + DLAP共催
PFP:材料探索のための汎用Neural Network Potential - 2021/10/4 QCMSR + DLAP共催
Rcppのすすめ
Rcppのすすめ
π計算
π計算
Viewers also liked
Working with Word for Qualitative Data Analysis
Working with Word for Qualitative Data Analysis
Jenna Condie
Rデバッグあれこれ
Rデバッグあれこれ
Takeshi Arabiki
Rをはじめからていねいに
Rをはじめからていねいに
Tsukasa Fukunaga
全てをRでやらないと言う事
全てをRでやらないと言う事
Tsukasa Fukunaga
Rによるテキストマイニングの一例
Rによるテキストマイニングの一例
LINE Corp.
TwitterのデータをRであれこれ
TwitterのデータをRであれこれ
Takeshi Arabiki
twitteRで快適Rライフ!
twitteRで快適Rライフ!
Takeshi Arabiki
RではじめるTwitter解析
RではじめるTwitter解析
Takeshi Arabiki
Viewers also liked
(8)
Working with Word for Qualitative Data Analysis
Working with Word for Qualitative Data Analysis
Rデバッグあれこれ
Rデバッグあれこれ
Rをはじめからていねいに
Rをはじめからていねいに
全てをRでやらないと言う事
全てをRでやらないと言う事
Rによるテキストマイニングの一例
Rによるテキストマイニングの一例
TwitterのデータをRであれこれ
TwitterのデータをRであれこれ
twitteRで快適Rライフ!
twitteRで快適Rライフ!
RではじめるTwitter解析
RではじめるTwitter解析
Similar to さくっとはじめるテキストマイニング(R言語) スタートアップ編
DeNAtechcon_DeNAのセキュリティの取り組みと、スマートフォンセキュリティ(same-origin policy)
DeNAtechcon_DeNAのセキュリティの取り組みと、スマートフォンセキュリティ(same-origin policy)
Toshiharu Sugiyama
10min r study_tokyor25
10min r study_tokyor25
Nobuaki Oshiro
10min r study_tokyor25
10min r study_tokyor25
Nobuaki Oshiro
Datomic&datalog紹介
Datomic&datalog紹介
あしたのオープンソース研究所
HiroshimaR4_LT_sakaue
HiroshimaR4_LT_sakaue
SAKAUE, Tatsuya
Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)
Shintaro Fukushima
TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#
ta2c
ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展
Recruit Technologies
トレジャーデータ流,データ分析の始め方
トレジャーデータ流,データ分析の始め方
Takahiro Inoue
統計を始める方へ①_データ環境Rの基本的なプログラミング|データアーティスト
統計を始める方へ①_データ環境Rの基本的なプログラミング|データアーティスト
Satoru Yamamoto
Apache spark 2.3 and beyond
Apache spark 2.3 and beyond
NTT DATA Technology & Innovation
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
Recruit Technologies
Treasure data demo.0517
Treasure data demo.0517
BigData Sios
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
Recruit Technologies
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラム
Recruit Technologies
WebDB Forum 2012 基調講演資料
WebDB Forum 2012 基調講演資料
Recruit Technologies
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Treasure Data, Inc.
初心者のためのRとRStudio入門 vol.2
初心者のためのRとRStudio入門 vol.2
OWL.learn
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
Insight Technology, Inc.
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
Insight Technology, Inc.
Similar to さくっとはじめるテキストマイニング(R言語) スタートアップ編
(20)
DeNAtechcon_DeNAのセキュリティの取り組みと、スマートフォンセキュリティ(same-origin policy)
DeNAtechcon_DeNAのセキュリティの取り組みと、スマートフォンセキュリティ(same-origin policy)
10min r study_tokyor25
10min r study_tokyor25
10min r study_tokyor25
10min r study_tokyor25
Datomic&datalog紹介
Datomic&datalog紹介
HiroshimaR4_LT_sakaue
HiroshimaR4_LT_sakaue
Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)
TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#
ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展
トレジャーデータ流,データ分析の始め方
トレジャーデータ流,データ分析の始め方
統計を始める方へ①_データ環境Rの基本的なプログラミング|データアーティスト
統計を始める方へ①_データ環境Rの基本的なプログラミング|データアーティスト
Apache spark 2.3 and beyond
Apache spark 2.3 and beyond
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
Treasure data demo.0517
Treasure data demo.0517
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラム
WebDB Forum 2012 基調講演資料
WebDB Forum 2012 基調講演資料
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
初心者のためのRとRStudio入門 vol.2
初心者のためのRとRStudio入門 vol.2
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
さくっとはじめるテキストマイニング(R言語) スタートアップ編
1.
さくっとはじめる テキストマイニング(R言語) Version 1.0.1 スタートアップ編 2016年3月6日 Copyright ©
Skywill inc. All Rights Reserved.
2.
Copyright © Skywill
inc. All Rights Reserved. 本スライドについて R言語の初級者 (ちょっとだけなら、R言語を書ける人) 対象者 用途 「さくっとテキストマイニングを始める」ための、お助け資料 テキストマイニング未経験者 (興味があるのでやってみたい人) 2
3.
Copyright © Skywill
inc. All Rights Reserved. 本スライドについて 1)テキストマイニングの技術紹介 内容 3)プログラムを紹介 2)テキストマイニングの流れ 3
4.
Copyright © Skywill
inc. All Rights Reserved. 本スライドについて 作成者 嶋田 裕 R言語経験: 4ヶ月 職業: エンジニア 興味: ビッグデータ、統計解析、Webクローリング 趣味: 家庭菜園、フットサル かいわれ大根 R言語経験: 4ヶ月 職業: エンジニア 興味: ビックデータ、統計解析 趣味: 読書 4
5.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 1)テキストマイニングの技術紹介 内容 3)プログラムを紹介 2)テキストマイニングの流れ 5
6.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 6 テキストマイニング 形態素解析 ワードクラウド Nグラム解析 ネットワーク図 データクレンジング ■紹介する技術の一覧 テキストデータをマイニングする技術 文章を形態素に分解する技術 ゴミ情報を取り除く処理 文章中で連続する形態素を抽出する技術 関連性のある2つの形態素を表す統計手法 形態素の出現頻度を直感的に表す統計手法
7.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 データの中から知識(意味のある情報)を得る事をデータマイニングという。 テキストマイニングは、対象データを文字列としたデータマイニングのこと。 テキストマイニング ホームページ 小説 アンケート ツイッター テキスト マイニング 登場人物の交友関係 つぶやきランキング 分類分け情報 ホームページ の頻出ワード 7 入力情報 出力情報
8.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 形態素解析 文章を言葉の意味の最小構成要素(形態素)に分割し、 それぞれの品詞、活用形などを判別する技術。 この竹藪に竹立て掛けたのは竹立て掛けたかったから竹立て掛けた。 文章の先頭から辞書の見出しを当てていき、 該当する単語を選択 この 竹 に藪 竹 立て掛けた の は 名詞 名詞 動詞助詞 名詞名詞 助詞連体詞 ・・・ 8
9.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 データクレンジング データから不要な情報(ゴミ情報、ノイズ)を取り除くことを、 「データクレンジング(ノイズ除去)」 という。 。 たい は から た 立て掛ける に 竹 藪 の この 立て掛ける 竹 藪 9 例えば、 「名詞」「動詞」以外は、単語として意味をなさないので、ゴミ情報として取り除くなど。
10.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 ワードクラウド 文章の中で出現頻度が高い単語を複数選び出し、その頻度に応じた大き さで図示する手法。 「ビックデータ」「クラウド」「教育」の 出現頻度が高いという 文章の特徴がパッと見でわかる。 10
11.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 この 竹 に藪 竹 立て掛ける 11 Nグラム解析 連続するN個の単語(形態素)の出現頻度を求める手法。 例えば、N=2の場合、以下のようなデータ(バイグラムデータという)が得られる 番号 形態素1 形態素2 出現頻度 1 この 竹 1 2 竹 藪 1 3 藪 に 1 4 に 竹 1 5 竹 立て掛ける 1 連続 連続 連続 連続 連続
12.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 この 竹 に藪 竹 立て掛ける 12 この場合、こんなバイグラムデータが得られる 番号 形態素1 形態素2 出現頻度 1 竹 藪 1 2 藪 竹 1 竹 藪 竹 名詞 名詞 動詞助詞 名詞連体詞 名詞だけに注目して、バイグラムデータを取得することもできる。 名詞の連続性だけに注目 連続 連続
13.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 13 番号 形態素1 形態素2 出現頻度 1 竹 藪 1 2 藪 竹 1 形態素1である「竹」と形態素2である「藪」は、共起関係にあるという。 番号 形態素1 形態素2 出現頻度 1 竹 藪 7 2 藪 竹 1 もし、仮に、この共起関係の出現頻度が高い場合、 「竹」と「藪」は、関係性の高い単語であるとみなせる。
14.
Copyright © Skywill
inc. All Rights Reserved. 1)テキストマイニングの技術紹介 ネットワーク図 関係性のある単語と単語を矢印で結び、それらの関係性を図示する 手法。 A B A B 「A」は、「B」に対して関係あり 「A」「B」は、お互いに関係あり 14
15.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ 1)テキストマイニングの紹介 内容 3)プログラムを紹介 2)テキストマイニングの流れ 15
16.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ 「テキストマイニング」の流れ 1)文章を分解してデータを得る 3)データを整える 2)データからゴミを取り除く 4)データをマイニングする 16
17.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ この 竹 に 形態素に分解 藪 竹 立て掛ける の は ・・・ 名詞 名詞 動詞助詞 名詞名詞 助詞連体詞 1)文章を分解してデータを得る この竹藪に竹立て掛けたのは竹立て掛けたかったから竹立て掛けた。 17 形態素解析を使用して、文章を形態素に分解する。
18.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ 番号 形態素 品詞 区分 出現頻度 1 。 記号 句点 1 2 に 助詞 格助詞 1 3 は 助詞 係助詞 1 4 から 助詞 接続助詞 1 5 た 助動詞 * 3 6 たい 助動詞 * 1 7 立て掛ける 動詞 自立 3 8 竹 名詞 一般 4 9 藪 名詞 固有名詞 1 10 の 名詞 非自立 1 11 この 連体詞 * 1 形態素解析で得られるデータは、こんな感じ 18 1)文章を分解してデータを得る
19.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ 2)データからゴミを取り除く この 竹 に藪 竹 立て掛ける の は 名詞 名詞 動詞助詞 名詞名詞 助詞連体詞 ・・・ 竹 藪 名詞 名詞 竹 立て掛ける 動詞名詞 名詞(非自立を除く)、動詞以外を、 ゴミ情報として取り除く。 非自立 19 取得したデータから不要な情報を取り除く。
20.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ 番号 形態素 品詞 区分 出現頻度 1 。 記号 句点 1 2 に 助詞 格助詞 1 3 は 助詞 係助詞 1 4 から 助詞 接続助詞 1 5 た 助動詞 * 3 6 たい 助動詞 * 1 7 立て掛ける 動詞 自立 3 8 竹 名詞 一般 4 9 藪 名詞 固有名詞 1 10 の 名詞 非自立 1 11 この 連体詞 * 1 ゴミを取り除いた後のデータは、こんな感じ 20 2)データからゴミを取り除く。
21.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ 3)データを整える 竹 藪 3回立て掛ける 出現頻度で並べ替え 4回 1回 竹 藪 立て掛ける 4回 3回 1回 次の工程で実施するデータマイニングをしやすくするための処理です。 データを並べ替えたり、データを分類分けしたり、特定データ抽出をします。 21
22.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ 番号 形態素 品詞 区分 出現頻度 8 竹 名詞 一般 4 7 立て掛ける 動詞 自立 3 9 藪 名詞 固有名詞 1 1 。 記号 句点 1 2 に 助詞 格助詞 1 3 は 助詞 係助詞 1 4 から 助詞 接続助詞 1 5 た 助動詞 * 3 6 たい 助動詞 * 1 10 の 名詞 非自立 1 11 この 連体詞 * 1 有効データを出現頻度で並べ変えた後は、こんな感じ 22 3)データを整える
23.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ 4)データをマイニングする マイニング 竹 藪 立て掛ける 4回 3回 1回 0 1 2 3 4 23 データを統計グラフ化する。 竹 立て掛ける 藪 竹 立て掛 ける 藪
24.
Copyright © Skywill
inc. All Rights Reserved. 2)テキストマイニングの流れ R言語には、データを統計グラフ化するためのライブラリが豊富にある。 プログラマは、このライブラリを使うだけ(楽ちん)。 今回使用するライブラリは、後ほど紹介。 24 4)データをマイニングする
25.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 1)テキストマイニングの紹介 内容 3)プログラムを紹介 2)テキストマイニングの流れ 25
26.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 まず、準備として、紹介するプログラムの中で使用する ライブラリパッケージをインストールします。 【注意】 本スライドの対象者は、R言語の初級者なので、すでにプログラミング環境がある事を 前提として話を進めます。 RMecab wordcloud igraph 形態素解析の機能を提供 ワードクラウドの機能を提供 共起ネットワークの機能を提供 26 > install.packages("RMeCab", repos = "http://rmecab.jp/R") > install.packages("wordcloud") > install.packages(“igraph") インストールコマンド あーるめかぶ あいぐらふ
27.
Copyright © Skywill
inc. All Rights Reserved. ① ワードクラウド 3)プログラムを紹介 紹介するプログラムは、以下の2つ。 ② 共起ネットワーク 登場ワードの出現頻度を解析してワードクラウド表示する。 登場ワードの関係性をネットワーク表示する。 27
28.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 テキスト化した自社のホームページ情報をマイニングして、 登場頻度の高いワードをワードクラウドで直感的に表現する。 SKYWILLってこんな会社 28 ① ワードクラウド
29.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 「ワードクラウド」の流れ 1)文章を分解してデータを得る 3)データを整える (頻度の高いワードを抽出、並び変え) 2)データからゴミを取り除く(名詞以外の情報を取り除く) 4)データをマイニングする (ワードクラウドで表示する) 29
30.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 # ライブラリパッケージ読み込み library(RMeCab) library(wordcloud) # 1)文章を分解してデータを得る word <- RMeCabFreq("./SkyWill.txt") # 2)データからゴミを取り除く word <- subset(word, Info1 == "名詞") type <- c("数","非自立","接尾") word <- subset(word, !Info2 %in% type) # 3)データを整える word <- word[order(word$Freq, decreasing=T), ] word <- head(word, n=30) # 4)データをマイニングする(ワードクラウド表示) patern <- brewer.pal(8, "Dark2") wordcloud(word$Term, word$Freq, min.freq = 1, colors=patern) WordCloud.R 30
31.
Copyright © Skywill
inc. All Rights Reserved. # 1)文字列を分解してデータを得る word <- RMeCabFreq("./SkyWill.txt") 3)プログラムを紹介 【①ワードクラウド】 RMeCabFreq() WordCloud.R テキストを形態素に分解し、形態素ごとの出現頻度を取得する関数。 番号 形態素 品詞 区分 出現頻度 以下のフォーマットのデータ(データフレーム型)が得られる RMecabライブラリが提供する関数。 31 1)文章を分解してデータを得る 対象テキスト
32.
1)文章を分解してデータを得る Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 得られるデータは、こんな感じ 番号 形態素 品詞 区分 出現頻度 1 R言語 名詞 固有名詞 5 2 に 助詞 格助詞 26 3 クラウド 名詞 固有名詞 13 4 たい 助動詞 * 9 5 ビッグデータ 名詞 固有名詞 17 6 教育 名詞 一般 8 7 の 名詞 非自立 23 8 さん 名詞 数 10 9 エンジニア 名詞 一般 6 10 貢献する 動詞 自立 2 : : : : : 32
33.
# 2)データからゴミを取り除く word <-
subset(word, Info1 == "名詞") type <- c("数","非自立","接尾") word <- subset(word, !Info2 %in% type) Copyright © Skywill inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 WordCloud.R 得られたデータから名詞以外をゴミ情報として取り除く。 33 2)データからゴミを取り除く
34.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 番号 形態素 品詞 区分 出現頻度 1 R言語 名詞 固有名詞 5 2 に 助詞 格助詞 26 3 クラウド 名詞 固有名詞 13 4 たい 助動詞 * 9 5 ビッグデータ 名詞 固有名詞 17 6 教育 名詞 一般 8 7 の 名詞 非自立 23 8 さん 名詞 数 10 9 エンジニア 名詞 一般 6 10 貢献する 動詞 自立 2 : : : : : 34 2)データからゴミを取り除く ゴミを取り除いた後のデータは、こんな感じ
35.
# 2)データからゴミを取り除く word <-
subset(word, Info1 == "名詞") type <- c("数","非自立","接尾") word <- subset(word, !Info2 %in% type) Copyright © Skywill inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 WordCloud.R さらに、名詞のうち、”数“、“非自立”、“接尾”に該当するデータを ゴミ情報として取り除く。 35 2)データからゴミを取り除く
36.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 番号 形態素 品詞 区分 出現頻度 1 R言語 名詞 固有名詞 5 2 に 助詞 格助詞 26 3 クラウド 名詞 固有名詞 13 4 たい 助動詞 * 9 5 ビッグデータ 名詞 固有名詞 17 6 教育 名詞 一般 8 7 の 名詞 非自立 23 8 さん 名詞 数 10 9 エンジニア 名詞 一般 6 10 貢献する 動詞 自立 2 : : : : : 36 2)データからゴミを取り除く ゴミを取り除いた後のデータは、こんな感じ
37.
# 3)データを整える word <-
word[order(word$Freq, decreasing=T), ] word <- head(word, n=30) Copyright © Skywill inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 WordCloud.R 登場頻度の高い順で並べ替える。 登場頻度の上位30個のデータを抽出する。 37 3)データを整える
38.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 番号 形態素 品詞 区分 出現頻度 5 ビッグデータ 名詞 固有名詞 17 3 クラウド 名詞 固有名詞 13 6 教育 名詞 一般 8 9 エンジニア 名詞 一般 6 1 R言語 名詞 固有名詞 5 : : : : : 2 に 助詞 格助詞 26 4 たい 助動詞 * 9 7 の 名詞 非自立 23 8 さん 名詞 数 10 10 貢献する 動詞 自立 2 38 3)データを整える 整えた後のデータは、こんな感じ
39.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 WordCloud.R # 4)データをマイニングする(ワードクラウド) patern <- brewer.pal(8, "Dark2") wordcloud(word$Term, word$Freq, min.freq = 1, colors=patern) wordcloud() wordcloudライブラリが提供する関数。 39 4)データをマイニングする 形態素データを使って、統計解析(ワードクラウド表示)する。 形態素名 出現頻度 対象を出現頻度 1回以上の形態素とする 色の表示パターン
40.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【①ワードクラウド】 表示されるデータは、こんな感じ 40 4)データをマイニングする
41.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 アニメのセリフを集めたテキストをマイニングして、 登場人物の関係をネットワーク図で表現する。 41 ② 共起ネットワーク
42.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 「共起ネットワーク」の流れ 1)文章を分解してデータを得る 3)データを整える (共起性の強いデータを抽出する) 2)データからゴミを取り除く(登場人物以外を取り除く) 4)データをマイニングする (ネットワーク図で表示する) 42
43.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 # ライブラリパッケージ読み込み library(RMeCab) library(igraph) # 1)文章を分解してデータを得る ngram <- NgramDF("./Totoro.txt", type=1, pos=c("名詞"), N=2) # 2)データからゴミを取り除く char= c("トトロ", "サツキ", "メイ", "お父さん", "お母さん", "カンタ", "ばあちゃん") ngram <- subset(ngram, (Ngram1 %in% char)&(Ngram2 %in% char)) # 3)データを整える ngram <- subset(ngram, Freq>=4) # 4)データをマイニングする(ネットワーク図表示) graph <- graph.data.frame(ngram) plot(graph, vertex.label=V(graph)$name, vertex.size=15) Network.R 43
44.
Copyright © Skywill
inc. All Rights Reserved. # 1)文字列を分解してデータを得る ngram <- NgramDF("./Totoro.txt", type=1, pos=c("名詞"), N=2) 3)プログラムを紹介 【②共起ネットワーク】 NgramDF() Network.R 文章を形態素に分解し、連続する2つの形態素の出現頻度を取得 (Nグラム解析)する。 RMecabライブラリが提供する関数。 44 1)文章を分解してデータを得る 対象テキスト 分割単位を 形態素に指定 名詞の連続性 のみ注目 2つの形態素の共起性 を解析(バイグラム)
45.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 バス停で、サツキはトトロに出会った。 バス停 で サツキ は トトロ 出会ったに バス停 サツキ トトロ 形態素に分解 名詞の連続性だけに注目 45 1)文章を分解してデータを得る 番号 形態素1 形態素2 出現頻度 1 バス停 サツキ 1 2 サツキ トトロ 1 連続する2つの形態素の出現頻度を取得 バイグラムデータ
46.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 番号 形態素1 形態素2 出現頻度 1 サツキ トトロ 9 2 トトロ サツキ 3 3 バス停 サツキ 6 4 トトロ メイ 4 5 メイ 探索 4 6 探索 お願い 1 7 カンタ サツキ 5 8 カンタ メイ 2 9 ばあちゃん カンタ 4 10 メイ トトロ 12 : : : : 46 1)文章を分解してデータを得る 例えば、得られるデータは、こんな感じ
47.
# 2)データからゴミを取り除く char= c("トトロ",
"サツキ", "メイ", "お父さん", "お母さん", "カンタ", "ばあちゃん") ngram <- subset(ngram, (Ngram1 %in% char)&(Ngram2 %in% char)) Copyright © Skywill inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 Network.R 得られたデータから登場人物以外をゴミ情報として取り除く。 形態素1、形態素2共に、登場人物に該当するデータだけを 有効データとみなす。 47 2)データからゴミ情報を取り除く
48.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 番号 形態素1 形態素2 出現頻度 1 サツキ トトロ 9 2 トトロ サツキ 3 3 バス停 サツキ 6 4 トトロ メイ 4 5 メイ 探索 4 6 探索 お願い 1 7 カンタ サツキ 5 8 カンタ メイ 2 9 ばあちゃん カンタ 4 10 メイ トトロ 12 : : : : 48 2)データからゴミ情報を取り除く ゴミ情報を取り除いた後のデータは、こんな感じ
49.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 登場人物で絞り込みしないで、ネットワーク図を表示すると 情報が多すぎて、ぐちゃぐちゃに Σ( ̄ロ ̄lll) orz 49 2)データからゴミ情報を取り除く
50.
# 3)データを整える ngram <-
subset(ngram, Freq>=4) Copyright © Skywill inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 Network.R 出現頻度が4回以上のデータを抽出する。 共起関係にあるデータで、かつ、出現頻度が高い場合、 2つのワードには、関係性があると言える。 50 3)データを整える
51.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 番号 形態素1 形態素2 出現頻度 1 サツキ トトロ 9 2 トトロ サツキ 3 3 バス停 サツキ 6 4 トトロ メイ 4 5 メイ 探索 4 6 探索 お願い 1 7 カンタ サツキ 5 8 カンタ メイ 2 9 ばあちゃん カンタ 4 10 メイ トトロ 12 : : : : 51 3)データを整える 整えた後のデータは、こんな感じ
52.
# 4)データをマイニングする(ネットワーク図表示) graph <-
graph.data.frame(ngram) plot(graph, vertex.label=V(graph)$name, vertex.size=15) Copyright © Skywill inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 Network.R graph.data.frame() バイグラムデータをグラフ表示用データに変換する。 52 4)データをマイニングする igraphライブラリが提供する関数。 バイグラムデータ
53.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 番号 Nグラム1 Nグラム2 出現頻度 1 サツキ トトロ 9 4 トトロ メイ 4 7 カンタ サツキ 5 : : : : 番号 グラフ情報 1 サツキ -> トトロ 2 トトロ -> メイ 3 カンタ -> サツキ : : 変換 53 4)データをマイニングする 変換後のデータは、こんな感じになる
54.
# 4)データをマイニングする(ネットワーク図表示) graph <-
graph.data.frame(ngram) plot(graph, vertex.label=V(graph)$name, vertex.size=15) Copyright © Skywill inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 Network.R plot() R言語の組み込み関数。 グラフ表示用データを使って、統計解析(ネットワーク図表示)する。 54 4)データをマイニングする グラフデータのノード名 (トトロ、サツキなど) ネットワーク図の ノード(丸)のサイズ
55.
Copyright © Skywill
inc. All Rights Reserved. 3)プログラムを紹介 【②共起ネットワーク】 55 4)データをマイニングする 表示されるデータは、こんな感じ
56.
Copyright © Skywill
inc. All Rights Reserved. まとめ (おさえるべきポイント) 形態素解析を理解すること テキストマイニング処理の流れを理解すること 文章を最小構成要素(形態素)に分解する技術 (8ページ参照)。 R言語では、RMecabライブラリで実現できる。 56 1)文章を分解してデータを得る 3)データを整える 2)データからゴミを取り除く 4)データをマイニングする 流れは、以下の4段階(16~24ページ参照)。 形態素解析、Nグラム解析 データクレンジング(ノイズ除去) 並べ替え、抽出、分類分けなど ワードクラウド、ネットワーク図など
57.
Copyright © Skywill
inc. All Rights Reserved. 参考文献 Rで学ぶ日本語テキストマイニング 石田基広・小林雄一郎 著 みんなのR データ分析と統計解析の新しい教科書 Jared P. Lander [著] 高柳慎一、牧山幸史、簑田高志 [訳] Tokyo.R [協力] 57
Download now