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
公開している Notion サイトから人名を抽出して、誤って個人情報を記載していないか検出でき...
Search
おかやまん
September 01, 2022
Programming
0
510
公開している Notion サイトから人名を抽出して、誤って個人情報を記載していないか検出できるようにしてみた
YUMEMI.grow 【自動化特集】の発表資料です。
https://yumemi.connpass.com/event/257184/
おかやまん
September 01, 2022
Tweet
Share
More Decks by おかやまん
See All by おかやまん
具体と抽象の行き来を意識する
blendthink
0
460
FlutterKaigi Day1「Dart のこれから」
blendthink
1
6.6k
Yumemi.apk #6 ~ゆめみのAndroidエンジニア 日頃の成果大発表会!~ Session 2
blendthink
1
690
株式会社ゆめみの Android の採用コーディング試験を公開しました
blendthink
0
140
Yumemi.apk #5 ~Kotlin夏祭り~ Session 2
blendthink
0
430
Developers Boost Session 6
blendthink
1
940
Other Decks in Programming
See All in Programming
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
130
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
370
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
330
iOS 17で追加されたSubscriptionStoreView を利用して5分でサブスク実装チャレンジ
natmark
0
570
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
4
1.3k
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
380
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
140
Breaking Up with Big ViewModels — Without Breaking Your Architecture (droidcon Berlin 2025)
steliosf
PRO
1
320
ネイティブ製ガントチャートUIを作って学ぶUICollectionViewLayoutの威力
jrsaruo
0
130
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
230
iOSDC.pdf
chronos2500
2
660
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Embracing the Ebb and Flow
colly
88
4.8k
Faster Mobile Websites
deanohume
310
31k
Unsuck your backbone
ammeep
671
58k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
A designer walks into a library…
pauljervisheath
209
24k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Building an army of robots
kneath
306
46k
Making Projects Easy
brettharned
119
6.4k
Transcript
公開している Notion サイトから人名を抽出 して、誤って個人情報を記載していないか 検出できるようにしてみた YUMEMI.grow 【自動化特集】
自己紹介
・おかやまん ・株式会社ゆめみ3年目 ・Android、Flutter テックリード ・趣味は将棋とプログラミング あっ、自動化も趣味です(笑)
公開している Notion サイトから人名 を抽出して、誤って個人情報を記載 していないか検出できるようにしてみ た
None
モチベーション
ゆめみでは「ゆめみオープン・ハンドブック」として、社内ドキュメントを外部に公開しています
仕組み
Notion でドキュメントを書いて、それを Super でウェブサイト化しています
Notion × Super 最高!
注意点
ゆめみオープン・ハンドブック配下の ページは全て外部に公開される
誤って個人情報が公開されてし まうことがありそう、、
ゆめみオープン・ハンドブックのペー ジ数は 1200 以上
え、、、 人力で全てのページを監視するの 無理そう、、
自動化すればいっか
個人情報を抽出する
※ 今回は人の名前のみ
作ってみた
Super を利用して構築された Notion サイトから人名を抽出するツール
None
利用しているもの
・Web ブラウザの操作を自動化 ・主な目的は Web アプリの UI テストの自動化 詳しくは↓ https://www.selenium.dev
・Python で自然言語処理を行うためのライブラリ ・解析結果を扱いやすいようにコンポーネント化 ・速い 詳しくは↓ https://spacy.io
・日本語に特化した自然言語処理ライブラリ ・spaCy を NLP Framework として使用 ・日本語 20 億文以上を用いて事前学習 詳しくは↓
https://megagonlabs.github.io/ginza
ざっくりコード紹介
requirements.txt
.env
settings.py
main.py
main.py
main.py-analyze()
main.py-analyze()
None
None
main.py-analyze()
main.py-extract()
outputs.electra.log
課題
・それなりに時間がかかる ・ホワイトリスト必要そう ・個人情報は人名だけじゃない
いろいろと課題はあるけど、、
自動化はすばらしい!
ご清聴ありがとうございました