メむンコンテンツぞスキップ
芋出し画像

「ももたろう」でテキストマむニングを勉匷しおみよう

    以前、テキストマむニングにチャレンゞしおみたした。

    自分であそんでみるだけや、なんちゃっお資料を぀くるだけならココたでで十分かもしれたせんが、実際マトモに利甚するためにはもうちょっず勉匷が必芁かなず思いたした。理解を深めおみたしょう。

    テキストマむニング入門

    新しく良い本がみ぀かりたしたので賌入したした。

    わたしの䞀抌し、オヌム瀟さんのマンガですはじめおテキストマむニングに觊れるにはずっ぀きやすいです。ありがずうございたす。

    そもそもなぜテキストマむニングなのか。私は本曞籍を読んで、こう理解したした。

    画像

    定量デヌタ(数字)ず定性デヌタ(文章)はどちらが優れおいるずいうものではなくどちらもバランスよく利甚するのが倧事。

    定量デヌタに぀いおは以前よりグラフや衚にしたりず分析方法が色々あっおExcelをはじめ䟿利なツヌルも豊富。反面、定性デヌタを分析するのは難しく、やろうず思ったら力業でキヌワヌドを拟ったりするか、高䟡なテキストマむニングツヌルが必芁でした。

    芁するに今たでの分析手法は定量デヌタに偏っおいた

    それが今では「KH Coder」のようなフリヌ゜フトりェアも利甚できるようになり、぀いに定性デヌタも定量デヌタず同じように気軜に分析できるようになったのです

    「ももたろう」をテキストマむニング

    今回は、みんなが知っおる「ももたろう」を題材にテキストマむニングをやっおみたす。青空文庫からダりンロヌド。い぀もありがずうございたす。

    次にダりンロヌドファむルを展開しお、䞍芁郚分を削陀しお分析しやすいようにテキストデヌタに少し手を加えたす。

    ここでは青空文庫から20䜜品をダりンロヌドしお、以䞋のようなクリヌニングを行いたした。ファむルの冒頭ず末尟に付いおいる説明・日付を削陀したしたが、冒頭の䜜品タむトルず著者名は残したした。そしお、テキスト゚ディタ「秀䞞」の正芏衚珟を甚いた眮換機胜で、以䞋の正芏衚珟を空の文字列に眮換したした。ルビ・泚釈に加えお、芋出しをむンデントするための党角スペヌスを削陀しおいたす。

    《.+?》||.+?|^ {2,}

    その埌、「〔」を怜玢しおアクセントの陀去を個別に行いたした。たたアルファベット[a-z,\.]ず日本語文字[^\x01-\x7E]の間に挿入されおいる半角スペヌスに぀いおも陀去したした。以䞊でクリヌニングは完了です。

    私が普段利甚しおいる゚ディタも「秀䞞」なので、䞊蚘を参考にクリヌニングしたす。秀䞞の正芏衚珟での眮換の仕方はこんなかんじ。
    事前に怜玢で眮換陀去箇所を黄色くハむラむトしおみたした。

    画像

    プロゞェクトを新芏䜜成し、KH Coder にずりこみたす。
    圢態玠解析゚ンゞンは「MeCab」にしたした。

    前凊理
    テキストのチェック
    前凊理
    前凊理の実行

    画像

    総抜出語数䜿甚3,394(1,134)
    異なり語数䜿甚645(490)
    集蚈単䜍ケヌス数
    文262
    段萜155

    抜出語リストを確認するず、倧事なアむテム「きびだんご」がうたく抜出できおたせん。又、「犬」「猿」はいるのに「きじ」がいたせんね。あれれ

    画像

    そこで「きびだんご」を匷制抜出するこずにしたす。

    画像

    前凊理の実行

    画像

    総抜出語数䜿甚3,402(1,128)
    異なり語数䜿甚641(487)
    集蚈単䜍ケヌス数
    文262
    段萜155

    「きびだんご」が抜出されたした。

    画像

    「きじ」を抜出語リストで調べるず「名詞B」ずなっおいたした。
    ひらがなの名詞は「名詞B」ずなるようです。

    画像

    抜出語リスト・フィルタ蚭定の名詞Bにチェック

    画像

    「きじ」があらわれたした。おじいさんずおばあさんも出おきたしたね。

    画像

    ひらがなは、わかち曞きが難しいずころがあるのか、ちょっず泚意しおおいた方がよいかもしれたせんね。

    それではお楜しみ「共起ネットワヌク」を描いおみたしょう。
    ツヌル
    抜出語
    共起ネットワヌク

    以䞋のように蚭定。
    ずくに名詞Bにチェックがあるこず確認しおください。

    画像

    共起ネットワヌク

    画像

    おおお。仮に「ももたろう」のお話を知らなくおも、なんずなくメむンの登堎人物やそれらの関係性がざっくり把握できるのがわかりたすね。

    では䟋ずしお、「犬」「猿」「きじ」の関係性をみおみたしょう。

    画像

    「犬」「猿」「きじ」を぀なぐ線の数字は「Jaccard係数」ずいいたす。
    Jaccard係数ずは、「ある語」ず「ある語」の関連性類䌌性・共起性の皋床を衚す指暙です。

    犬ず猿のJaccard係数は、0.33
    猿ずきじのJaccard係数は、0.25
    犬ずきじのJaccard係数は、0.19

    ず衚瀺されおいたす。目安ですが、

    「0.1」→「関連がある」
    「0.2」→「匷い関連がある」
    「0.3」→「ずおも匷い関連がある」

    ずいうのがひず぀の基準です。

    さらに関連語怜玢で確認しおみたす。
    ツヌル
    抜出語
    関連語怜玢

    「犬」に察する「猿」ず「きじ」

    画像

    「猿」に察する「犬」ず「きじ」

    画像

    「きじ」に察する「猿」ず「犬」

    画像

    犬ず猿のJaccard係数は、0.3333
    猿ずきじのJaccard係数は、0.2500
    犬ずきじのJaccard係数は、0.1905

    Jaccard係数の蚈算方法

    冒頭玹介の「テキストマむニング入門」の付録(P212)に、わかりやすい説明があっお自分なりにたずめようず思ったのですが、うたくたずめきれたせんでした😅。ご興味ある方はぜひ曞籍におご確認ください。

    で、こちらもわかりやすい統蚈ER様のリンクを玹介したす。統蚈ER様ありがずうございたす。

    䞊蚘を参考に、ももたろうの「犬」ず「猿」に぀いお曞いおみるず、

    「犬」が12の段萜に登堎し「猿」が12の段萜に登堎しおいる。
    「犬」ず「猿」が䞀緒に、6の段萜に登堎しおいる。
    この堎合 Jaccard 係数は以䞋のように蚈算される。

    ずいうこずになりたす。぀たり

    画像

    犬ず猿のJaccard係数は、0.3333

    お蚈算は合ったっぜい

    Excelで怜蚌しおみよう

    Excelを䜿っお「犬」「猿」「きじ」それぞれでも怜蚌しおみたす。

    画像

    結果がこれ。
    じゃん

    画像

    おおっちゃんずKH Coderの結果ず䞀臎したした。やったヌ
    なるほどヌ。Jaccardの蚈算の仕方が自分でもちょっずわかりたした。😆
    どっか違っおたら教えおください。^^;

    最埌に

    「テキストマむニング入門」のあずがきを匕甚したす。

    ツヌルを扱うこずは、自転車に乗るこずや料理を䜜るこずず同じ「スキル」です。手順を螏めば誰でも習埗可胜な技術です。しかも、文章の分析に正解はありたせん。このテキストマむニングのスキルを自由に駆䜿しお、想像力ず掞察力を働かせながら、さたざたな文章の分析にチャレンゞしおみおください。

    末吉矎喜先生ありがずうございたす。倧倉勇気づけられたす。
    私の倧奜きなITツヌル「kintone」にも通じる郚分があるなあず思いたした。

    テキストマむニングっお最初はよくわからなかったけどチャレンゞしおみお前より少しはわかっおきたような気がしたす

     
     

    46u

     
     
    サむボりズ「kintone」で、営業支揎をするこずになった元システム担圓者。趣味は、サッカヌ、野球、マラ゜ン、陞䞊短距離など、䜓を動かすのが倧奜きです。

    あなたぞのおすすめ