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
430
公開している Notion サイトから人名を抽出して、誤って個人情報を記載していないか検出できるようにしてみた
YUMEMI.grow 【自動化特集】の発表資料です。
https://yumemi.connpass.com/event/257184/
おかやまん
September 01, 2022
Tweet
Share
More Decks by おかやまん
See All by おかやまん
具体と抽象の行き来を意識する
blendthink
0
390
FlutterKaigi Day1「Dart のこれから」
blendthink
1
5.9k
Yumemi.apk #6 ~ゆめみのAndroidエンジニア 日頃の成果大発表会!~ Session 2
blendthink
1
610
株式会社ゆめみの Android の採用コーディング試験を公開しました
blendthink
0
78
Yumemi.apk #5 ~Kotlin夏祭り~ Session 2
blendthink
0
370
Developers Boost Session 6
blendthink
1
860
Other Decks in Programming
See All in Programming
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
Beyond ORM
77web
3
430
MCP with Cloudflare Workers
yusukebe
2
220
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
250
42 best practices for Symfony, a decade later
tucksaun
1
180
これが俺の”自分戦略” プロセスを楽しんでいこう! - Developers CAREER Boost 2024
niftycorp
PRO
0
190
CSC305 Lecture 26
javiergs
PRO
0
140
return文におけるstd::moveについて
onihusube
1
1k
複雑な仕様に立ち向かうアーキテクチャ
myohei
0
170
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
1
150
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
710
フロントエンドのディレクトリ構成どうしてる? Feature-Sliced Design 導入体験談
osakatechlab
8
4.1k
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Writing Fast Ruby
sferik
628
61k
We Have a Design System, Now What?
morganepeng
51
7.3k
Bash Introduction
62gerente
608
210k
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
課題
・それなりに時間がかかる ・ホワイトリスト必要そう ・個人情報は人名だけじゃない
いろいろと課題はあるけど、、
自動化はすばらしい!
ご清聴ありがとうございました