Upgrade to Pro — share decks privately, control downloads, hide ads and more …

形態素解析で勉強会のトレンドワードを調べてみた

 形態素解析で勉強会のトレンドワードを調べてみた

Hiroki.Abe

June 08, 2019
Tweet

More Decks by Hiroki.Abe

Other Decks in Technology

Transcript

  1. Pythonで使える 日本語の形態素解析ツール  Janome  Sudachi (ワークスアプリケーションズ)  Mecab bi-gram

    マルコフモデル (京都大学・NTT)  nagisa RNN  JUMAN++ RNN (京都大学)  英語の形態素解析には、英語の形態素解析ツールが必要 4
  2. nagisaを使ってみる import nagisa text = 'Flutterはモバイルアプリケーションフレームワークである。' words = nagisa.tagging(text) print(words)

    print(words.words) $ python3 nagisa_test.py Flutter/名詞 は/助詞 モバイル/名詞 アプリケーション/名詞 フレームワーク/名詞 で/助動詞 ある/動詞 。/補助記号 ['Flutter', 'は', 'モバイル', 'アプリケーション', 'フレームワーク', 'で', 'ある', '。'] 6
  3. nagisaを使ってみる 品詞によるフィルタリング import nagisa text = 'Flutterはモバイルアプリケーションフレームワークである。' words = nagisa.extract(text,

    extract_postags=['名詞']) print(words.words) $ python3 nagisa_test2.py ['Flutter', 'モバイル', 'アプリケーション', 'フレームワーク'] 7
  4. connpass APIで取得できる情報 { "event_url": "https://yamanashi-it.connpass.com/event/133038/", "event_type": "participation", "owner_nickname": "ku_taka", "series":

    {"url": "https://yamanashi-it.connpass.com/", "id": 7759, "title": "山梨IT同好会(仮)"}, "updated_at": "2019-05-30T21:26:38+09:00", "lat": "35.657263100000", "started_at": "2019-06-08T13:30:00+09:00", "hash_tag": "flutter", "title": "Flutter 入門勉強会", "event_id": 133038, "lon": "138.565054500000", ~~~ 9
  5. タイトルから名詞を抽出した結果 ['プログラミング', '最良', '方法', '実際', 'こと', 'フィード', 'バック', '大会'] ['4',

    '0', '回', 'Python', 'くもく', '会'] ['1', '0', '朝活', 'Friday', '五反田'] ['IEEEVR', '2', '0', '1', '9', 'CHI', '2', '0', '1', '9', '報告', '会', 'with', 'リリス', 'リリー', 'ホワイト'] ['3'] ['レベル', '目的', '3', '本', 'DeepLearning', '勉強', '会', '2'] ['DESIGN', '参加', '募', '集中'] ['3', '回', 'meDNA', '6', '月', '2', '1', '日', 'ワークショップ'] ['EC', 'CUBE', '千葉', 'UG', '業務', '無駄', '1', '%', '利益', '率', 'EC', '運営', '業務', '効率'] ['ももち浜', 'TECH', 'カフェ', 'in'] ['大阪', '3', '8', '回', '西中島', 'Group', 'くもく', '会'] ['2', '5', '回', '学生', 'エンジニア', 'LT', '大会', 'in', '名古屋'] ['学生', 'エンジニア', '限定', '難関', 'IT', '企業', '攻略', 'エンジニア', 'セミナー'] 10
  6. 単語の出現頻度を集計する  形態素解析して抽出した名詞をリストに追加する  collections.Counter()を使って出現回数をカウントする Counter()は標準ライブラリcollectionsに含まれる。 {‘会’: 39, ‘1’: 33,

    ‘2’: 22, ‘勉強’: 18, ‘0’: 17, ‘9’: 15, ‘3’: 12, ‘6’: 11, ‘回’: 9, ‘AI’: 7, ‘4’: 6, ‘7’: 6, ‘5’: 6, ‘IoT’: 5, ‘in’: 5, ‘エンジニア’: 5, ‘月’: 5, ‘初心’: 4, ‘報告’: 4, ‘LT’: 4, ‘体験’: 4, ‘学習’: 4, ‘枠’: 4, ‘プロ グラミング’: 4, ‘アップ’: 4, ‘wifi’: 4, ‘完備’: 4, ‘コーヒー’: 4, ‘放題’: 4, ‘基礎’: 3, ‘IT’: 3, ‘AWS’: 3, …  月ごとのCSVファイルに出現回数を出力する 11