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
300
公開している Notion サイトから人名を抽出して、誤って個人情報を記載していないか検出できるようにしてみた
YUMEMI.grow 【自動化特集】の発表資料です。
https://yumemi.connpass.com/event/257184/
おかやまん
September 01, 2022
Tweet
Share
More Decks by おかやまん
See All by おかやまん
FlutterKaigi Day1「Dart のこれから」
blendthink
1
4.9k
Yumemi.apk #6 ~ゆめみのAndroidエンジニア 日頃の成果大発表会!~ Session 2
blendthink
1
530
株式会社ゆめみの Android の採用コーディング試験を公開しました
blendthink
0
61
Yumemi.apk #5 ~Kotlin夏祭り~ Session 2
blendthink
0
310
Developers Boost Session 6
blendthink
1
780
Other Decks in Programming
See All in Programming
ログラスを支える設計標準について / loglass-design-standards
urmot
10
2.1k
SpringBoot+MyBatisで例外が出たときどこを見るか
syukai
0
110
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
220
1인 개발자로 행복하게 살기 - GDG 송도 헬로월드 2024
benjaminkim
1
5.6k
try!Swift Tokyo 2024 参加報告 LT
akidon0000
1
190
Semantic search with Django and pgvector
pauloxnet
0
240
両面どころかインフラもTSでできるよ ~ 全方位TypeScriptによるプロダクト開発 ~
myfinder
9
3.2k
Hanami and htmx
bkuhlmann
0
190
コーンフレークから始める モデリング会話入門
ogurotakayuki
0
280
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
250
Prepare for Jakarta EE 11 - Performance and Developer Productivity
ivargrimstad
0
440
雑に思考を整理する技術と効能
konifar
55
25k
Featured
See All Featured
What's new in Ruby 2.0
geeforr
337
31k
StorybookのUI Testing Handbookを読んだ
zakiyama
11
4.6k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Being A Developer After 40
akosma
56
580k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
39
4.4k
Designing for humans not robots
tammielis
247
25k
Unsuck your backbone
ammeep
662
57k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
273
13k
In The Pink: A Labor of Love
frogandcode
138
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
19
1.9k
No one is an island. Learnings from fostering a developers community.
thoeni
14
2.1k
Statistics for Hackers
jakevdp
789
220k
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
課題
・それなりに時間がかかる ・ホワイトリスト必要そう ・個人情報は人名だけじゃない
いろいろと課題はあるけど、、
自動化はすばらしい!
ご清聴ありがとうございました