Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
自然言語可視化ライブラリ 「nlplot」のご紹介
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Takanobu Nozawa
September 22, 2022
Technology
4.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
自然言語可視化ライブラリ 「nlplot」のご紹介
2022/09/22に開催された「みんなのPython勉強会#85」にて登壇した資料です #stapy #python
Takanobu Nozawa
September 22, 2022
More Decks by Takanobu Nozawa
See All by Takanobu Nozawa
データ基盤をDataformで整えた話 〜 開発環境を添えて 〜
takapy
1
220
低コストで実現する社内文書RAG機能を搭載したAIチャットボット開発
takapy
4
6.2k
コミュニティサービスに「あなたへ」フィードを リリースするまでの試行錯誤
takapy
1
2k
NLPを活用したオンボーディング改善とコールドスタート問題への対策
takapy
4
6.1k
コミュニティサービスにおけるレコメンデーションの変遷とMLパイプラインについて
takapy
2
7.4k
SageMaker StudioとStep Functionsを用いてMLOpsへの一歩を踏み出そう
takapy
0
13k
GoogleColabとVSCodeを用いた分析環境運用Tips
takapy
15
15k
word2vecを利用した埋め込み分析とSWEMを用いた比較実験
takapy
0
2.5k
トピックモデルを活用したレコメンデーションの実装
takapy
1
6.9k
Other Decks in Technology
See All in Technology
WEBフロントエンド研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
1
670
信頼できるテスティングAIをどう育てるか?
odan611
0
150
実践が先生だった— 新卒サーバーエンジニア1年目のリアル
mixi_engineers
PRO
0
190
SRENEXT_2026_Chairs__Talks_in_Tamachi.sre.pdf
srenext
1
160
AIエージェントの知識表現と推論に なぜグラフが使われるのか - 記号的AIの復権とニューラルAIとの統合
yohei1126
1
190
CloudWatchから始めるAWS監視
butadora
0
270
文字起こし基盤の信頼性
abnoumaru
0
150
害獣害虫を自動判別! ペストコントロール支援ビジネス成功のヒント【SORACOM Discovery 2026】
soracom
PRO
0
120
どこまでAIに任せるか 〜確率論と決定論の境界決定〜
shukob
0
550
データエンジニアこそ組織のオントロジーに向き合うべき — 問いに答えるAIから、事業を動かすAIへ
gappy50
4
1.1k
クラウドを使う側から、作る側へ / 大吉祥寺.pm 2026前夜祭
fujiwara3
7
1.7k
AI工学特論: MLOps・継続的評価
asei
11
2.9k
Featured
See All Featured
It's Worth the Effort
3n
188
29k
Making Projects Easy
brettharned
120
6.7k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
670
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
400
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6k
Ruling the World: When Life Gets Gamed
codingconduct
0
290
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
380
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
HDC tutorial
michielstock
2
760
Transcript
自然言語可視化ライブラリ 「nlplot」のご紹介 Takanobu Nozawa 2022/9/22 みんなのPython勉強会#85
▪自己紹介 名前:野澤 哲照(Nozawa Takanobu) 所属:コネヒト株式会社 :たかぱい@takapy0210 • ML Engineer, ML
PdM(見習い)として、機械学習のサービス導入を 軸に、機械学習基盤や機械学習モデル, APIの開発をしたりしています • ビジネスと機械学習を紐付けながら、どのようにインパクトを出すか に興味があります • 本日お話しするnlplotの開発者です
▪今日話すこと 1. コネヒトという会社、プロダクトの紹介 2. nlplotとは 3. nlplotを開発したきっかけ 4. nlplotの使い方 5.
streamlitと組み合わせたデモ 6. まとめ
コネヒトという会社について 簡単に紹介させてください
▪コネヒトのVISION ありとあらゆる価値観が見つめ直され、 それぞれに思い描く家族の姿はどんどん変わっている 家族の数だけ形があって、つくりたい未来がある 私たちコネヒトは「家族像」というテーマに向き合う会社です
▪コネヒトの事業 「あなたの家族像が実現できる社会をつくる」 というVISIONに基づく中期的な目標として 子どもを望む家族像の多様性を実現するために日々取り組んでいます サービス | コネヒト株式会社
▪ママリについて 家族に向き合うママの毎日は、新しい選択の連続。慌ただ しい日々の中で、正解のない選択をし続けることは容易な ことではありません 「ママの一歩を支える」をミッションに、悩みの「解消」 と「共感」を軸に、妊活中女性・プレママ・ママに寄り添 うコミュニティを運営しています 子どもを出産したママの3人に1人(※)が利用するアプリ に加え、Instagram、LINE、Twitter、facebookといった SNS、情報サイトを通じて、ママが日々の選択に自信を
もって一歩を踏み出せるよう取り組んでいます ※「ママリ」で2019年内に出産予定と設定したユーザー数と、厚生労 働省発表「人口動態統計」の出生数から算出
▪家族ノートについて 家族ノートでは、一般的なアンケート調査とは異なり、 日々の暮らしの中で無意識的に行っている「検索」や「質 問/回答」の中に現れる、家族の心の動きや真の欲求を知 ることができます ママの3人に1人(※1)が利用するアプリ「ママリ」の月 間400万検索、130万投稿(※2)もの活発な利用の中 で、家族が今悩んでいることや、求めている商品・サービ スがタイムリーに反映され、アンケート調査等では踏み込 めないリアルな課題や態度変容が映し出されています
家族ノートを通して、家族の悩みを社会に届け、志を共に するパートナーのみなさんとともに「あなたの家族像が実 現できる社会」の実現に取り組んでいます ※1:「ママリ」で2019年内に出産予定と設定したユーザー数と、厚生労働省発表「人 口動態統計」の出生数から算出。 ※2:2021年3月現在。
nlplot とは Github Star★よろしくお願いします! nlplot
▪nlplotとは • 自然言語をいい感じに可視化できるライブラリ • nlp + plot から命名 • pip
install nlplot でインストール可能 • 本日紹介する使い方の一部はブログにも書いているのでご興味あ る方は是非(Github Star★も!何卒!)
▪nlplotとは 以下のような可視化が手軽に行える機能を有する • bar chart • tree map • histogram
• wordcloud • co-occurrence network • sunburst chart
▪nlplotとは 2022/09現在も定期的にダウンロードされている cf. https://pepy.tech/project/nlplot
nlplotを開発した背景
▪nlplotを開発した背景 自然言語データを扱う中で、同じような可視化方法で分析を行なうこ とが多かった(例:頻出単語の可視化 etc…) 同じ分析を少ないコストで、かつ誰でも再現性ある形で行えるように なったらハッピーじゃない?そうだよね? → ライブラリにしてしまおう!という結構軽いノリで始めた 軽いノリだったが、PyPIへの登録作業など初めてのことも多く苦労し た。と同時に良い経験にもなった。
▪なぜOSSにしたのか 理由は2点 • 自分が課題感を持ったということは、地球上で1人くらいは同じこ と思っている人いるよね?その人が幸せになれば嬉しい • 自分自身、独学も転職も技術コミュニティからいろいろな恩恵を 得て進めて来れた部分が大きいので、その恩返しを少しでもでき れば嬉しい
nlplotの使い方
▪nlplotの使い方 日本語の場合はtokenizeされているデータがあることが前提 今回はTwitterのハッシュタグデータをサンプルとして使用 →#データサイエンティスト と #kaggle がついている投稿
▪nlplotの使い方 以下のようにインスタンスを生成できる
▪nlplotの使い方 描画の対象外としたいワード(ストップワード)の計算もできる
▪bar chart unigram
▪bar chart bigram
▪bar chart 異なるデータ群を比較することも可能
▪bar chart 異なるデータ群を比較することも可能
▪tree map
▪histogram 出現単語数(今回の例だとハッシュタグの数)の分布
▪wordcloud 日本語データも特に意識することなく描画が可能
▪co-occurrence networks & sunburst chart これから説明する共起ネットワークとサンバーストチャートの描画に は、事前にグラフのビルド処理が必要 ビルド処理のmin_edge_frequency引数でプロットするノードの数を 制限できる(指定数以下のエッジ(辺)しか存在しないノードはプロッ ト対象から除外することができる)
▪co-occurrence networks ノードの色は、コミュニティを表している ノードの大きさは、隣接エッジが多ければ多いほど大きくなる
▪sunburst chart 色の濃さはネットワークの媒介中心性が高いほど濃い色になる (媒介中心性 is 着目している点以外の2点を結ぶ最短経路のうち、その点を通過するものの割合) 幅は前述した隣接エッジが多ければ多いほど大きくなる
streamlitを使ったデモ
▪streamlitとは • pythonでフロントエンドを構築することができるフレームワーク • フレームワーク側がデザイン仕様をある程度定めているため、デザ イン決めのコストが(ほぼ)無く、データ処理・分析のスクリプト 開発に注力できる
▪streamlitとは • サポートされているライブラリも多い
▪streamlitとは • 例)irisのデータをプロットするサンプルコード
▪streamlitを使ったデモ • csvファイルをstreamlit上で読み込ませ、その中のデータをnlplotを 使用して可視化してみます • コードはGithubに公開しているので手元で動かしたい方がいれば是 非!(docker compose up で動くようにしています)
◦ https://github.com/takapy0210/nlplot_demo
まとめ
▪まとめ • nlplotの使い方を紹介しました • 普段自然言語のデータを扱う人には割と使えるライブラリになって いると思います ◦ 自然言語以外にも系列データであれば利用できると思います • 使いづらい点などあればISSUEの起票
or PRお待ちしております! • そして何よりGithub Star★よろしくお願いします() nlplot
最後に
▪We’re Hiring! 弊社ではMLエンジニアを絶賛募集中です! • ライフイベント/ライフスタイルの課題解決をするサービスに興味がある方 • MLプロダクト開発に興味のある方 機械学習への取り組み事例や、今後やっていきたいことなどをまとめた資料も あるので、興味ある方はこちらもご覧いただけると嬉しいです! →
https://tech.connehito.com/entry/ml_data_info コネヒト 機械学習 詳しくは で検索!
▪(宣伝) PyConJP 2022では自然言語処理やレコメンデーションの話をする 予定なので、ご興味ある方はぜひ(今年はオフライン開催予定 🎉) https://staging.pycon-jp-2022.pages.dev/
▪参考文献 • Networkxのグラフのクラスタリング(コミュニティ) ◦ https://bit.ly/3Sl5NPd • グラフ・ネットワーク分析で遊ぶ ◦ https://tjo.hatenablog.com/entry/2015/12/09/190000 •
Tutorial — NetworkX 2.8.6 documentation ◦ https://networkx.org/documentation/stable/tutorial.html • Streamlit ◦ https://streamlit.io/
おわり ご清聴ありがとうございました