可視化法学(found it project#9)
TRANSCRIPT
可視化法学の紹介ICT x 法律の話
芝尾幸一郎(ソフトウェアエンジニア)
自己紹介
芝尾幸一郎
• Aiming(ソーシャルゲーム会社)でデータ分析の仕事をしている。
• 教育のバックグラウンドはメディアアート
• ドワンゴで、ニコニコ動画for iphoneの開発をしていた。
• 趣味でデータ分析をしている。
• 趣味で動画サイトの分析やランキングサイトを作っている
データ分析基盤構築
• データ分析基盤構築の本を書いた。
• どの様に集計ログフォーマットを作ればよいか。
• データ分析基盤の技術策定の勘所
• 作ったデータ分析基盤をどの様に活用するか
今回の目的
•可視化法学の紹介(20分)
•モチベーションの紹介(5分)
•リーガルテックの試み(5分)
•エンジニアはどう関わるか(5分)
可視化法学とは
可視化法学• 概要
「可視化法学-法教育に役立てるためにICT
を活用して法律の構造を解析して可視化す
る個人のプロジェクト」
法律の参照構造を解釈してその繋がりを可視
化
作り方
法令データ収集
• 総務省法令データベースからデータを取得。
• 今はzipがありますが、昔はwebからスクレイプしてました。
全ての参照構造を抜き出す。
• 救急救命士法の中に刑法へのリンクが有る
刑法
救急救命士法
刑法 売春防止法
刑法労働者派遣事業の適正な運営の確保及び派遣労働者の保護等に関する法律
刑法育児休業、介護休業等育児又は家族介護を行う労働者の福祉に関する法律
刑法特定機器に係る適合性評価手続の結果の外国との相互承認の実施に関する法律
グラフ理論に基づいて描画胡一凡さんの考えたアルゴリズム
グラフ理論の基づいて描画
• 多くの法律から参照される法律のサイズは大きくした。
• eg刑法、刑事訴訟法
• 点の色は、その法律が、どの分野に属するか?
• 刑事、民事、教育、厚生、労働etc
• 色々な分野から参照される法律は鮮やか
描画の様子
色んな法律を見てみる
似たものは近くに配置される
人間が手動で配置しているのではなく、参照している法が近くにあれば機械的に自然と集まる
憲法分野• 憲法には、基本法が良くくっ付く。
• 憲法に並んで、沖縄の復帰に関する法案が大きなウェイトを占めており、占領されて復帰するのは一つ国作るみたいな大変さがあるようだ。
26
教育法分野• 学校教育法が超大きなウェイトを占めている。
• 地味に、放送大学学園法、私立学校教職員共済法が多くのリンクを得ている。
27
税制分野• 所得税、法人税、関税法が大きい。
• 租税特別措置法は多くの法から参照され、実はあんまり特別措置じゃなかった。
28
河川分野• シンプル
• 河川法だけ覚えれば後はそれの派生でなんとかなるんじゃないか?
• 法の修正もまだ容易だろう
• バグも入り込みにくい
29
社会保険分野• 死ぬほど複雑で相互依存が激しい。
• 社会保障は利害関係者が多くて、なかなか難しいのだろう。
• 何か法改正や追加の度にバグるだろう。
• リファクタリング( コードをシンプル
にするプログラミング用語)出来るといいな。
30
今後作りたい物
インタラクティブなweb版可視化法学
法分野の時系列変化
法律がいつ出来ていつ繋がったかを可視化
国別の比較
などをやりたい
その他の取り組み
法令要約(テスト版)
貸金業法
法令要約
• 機械学習(自然言語処理)
• トピックモデルを使って、法令を一枚の画像に要約できないか?
• その法令に特徴的な用語を抜き出す。
• ガウス過程に基づく連続空間トピックモデル
DOC2VECで法令理解
Doc2VECについて
• Word2Vecをパラグラフへ応用したもの。
• Paragraph2Vecが元論文の名前
• Word2Vec
• 文章における各単語間の関連を元に、単語の重みを付けたもの
• 詳しくはこちら
• https://deepage.net/machine_learning/2017/01/08/doc2vec.ht
ml
法令の類似度を測るには• 単語の抜き出し(形態素解析)
• MeCab
• % mecab
• すもももももももものうち
• すもも 名詞,一般,*,*,*,*,すもも,スモモ,スモモ
• も 助詞,係助詞,*,*,*,*,も,モ,モ
• もも 名詞,一般,*,*,*,*,もも,モモ,モモ
• も 助詞,係助詞,*,*,*,*,も,モ,モ
• もも 名詞,一般,*,*,*,*,もも,モモ,モモ
• の 助詞,連体化,*,*,*,*,の,ノ,ノ
• うち 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
• EOS
• Doc2Vec
• Gensim https://radimrehurek.com/gensim/models/doc2vec.html
webサイト作ってみた
• Doc2Vecを利用して法令の類似性を測るサイトを作った
• http://54.238.251.57:5000/ (現在停止中)
• 出来ること
• 法律用語の類似語を調べる(死刑の類似語等)
• ランダムに選んだカテゴリと近いカテゴリを列挙
• ランダムに選んだ法令と近い法令を列挙
作り方
• 法令を集める• 法令データをmecabを使って、名詞だけ抽出
• name=未成年者飲酒禁止法(大正十一年三月三十日法律第二十号) word=['未成年', '者', '飲酒', '禁止', '法', '大正', '
年', '三月', '日', '法律', '号', '最終', '改正', '平成', '年', '二月', '
日', '法律', '号', ‘条']
• gensim.doc2vecを利用して、単語間の繋がりを学習。
model = models.Doc2Vec(size=400, alpha=0.0015, sample=1e-4, min_count=10, workers=4)
model.build_vocab(sentences)
for x in range(30):
model.train(sentences)
学習パラメータの調整
• 名詞だけを含めるか?動詞や形容詞も含めるか?
• 多くの法律に共有する単語は無視するか?
• どの程度の頻度で出たらその法令を特徴づける単語だと認識するか?
パラメータを色々いじる
• law(名詞、形容詞、動詞)
• law2 min_count=1 最低1回以上出た単語を学習に使用
• law3 min_count=10
• law4 min_count=40
• law5 min_count=100
• law7 tagを法令名ではなく、カテゴリ名に変更
宣伝
冊子を売ってます。1号、2号、800円技術書典3 き27
10/22(日)アキバUDX
モチベーション
法は複雑すぎる
•市民は理解できない。
•複雑になっていくばかりで、誰もリファクタリングしない。
エンジニアは複雑さが嫌い
• プログラムのコードは、複雑であるが、シンプルにする努力を、日々続けている。
• プログラム言語の進化やシステムを利用することで、シンプルにしている。
• アセンブラからスクリプト言語へ。
• 継続的テストとリファクタリング
Code(法令)≒Code(プログラミング)
code(法令)もcode(ソースコード)もcodeである。
類似点
• 構造を持ち、他者(人、CPU)の理解可能な形で書かれている。
• 複雑な(社会、事象)を制御する為に用いられる。
• しばしばバグが有るw
エンジニアが普段使う道具で法令を見てみよ
う
川上会長の著作権
• 著作権法をjavascriptで書き直して複雑さを測定する。
• http://bizzine.jp/article/detail/63
7
コードを書く経営者ドワン
ゴ川上会長「プログラミン
グこそが基礎教養」
川上会長の著作権これ、構造化するとわかるん
ですけど、実はこの中にコピ
ペされている部分がある。(会
場笑) JavaScriptの形式に直
してコンパイルしたら、複雑
度の合計が103になりました。
通常70以上はメンテ不可能と
いう先ほどの循環的複雑度か
らいえば、この法律は、いか
なる変更をしてもバグを生む
ということが判明したわけで
す。
論理憲法https://twitter.com/bitlawjp
憲法をprologでリライト
コード品質向上の取り組み
• プロトタイプ作成
• インテグレーションテスト
• モジュール化
• DRY思想の徹底
• プログラム言語それ自体の進化
• プロファイリング
• コードレビュー(gitflow)
プロファイリング
• どのプログラムコードがどの位呼ばれているか?
• どのようなコールグラフで呼ばれているか?
MiniScheme 0.85 でコードリーディング4
ソースコード解析2
http://blog.livedoor.jp/fortymillion/tag/%E3%82%B3
%E3%83%BC%E3%83%AB%E3%82%B0%E3%8
3%A9%E3%83%95
このようなコールグラフを見ている時に、法律の参照を調べてみようと思った。
github管理の利点
• 一世代の溶かし込みではなく、ver1から全ての世代の更新履歴を追跡できる
• ブランチを作れるので、試案や対案も保存できる。
• ある時点のある政党が、対案を出してきたとしてそれもgithubに残るので、後世の研究者が研究できる。
• 法に対するオープンアクセスを促進できる
他のプログラミング手法を応用すれば、法のコードクオリテイも上がる(上がれば良いな)。
法が何もしていないとは思いませんが、他のジャンルで行われいることを組み入れてみたらどうだろう。
IT x 法律,リーガルテックの試み
法とデザイン
➤ アーキテクチャー
➤ コモンズ
➤ リーガルデザイン
➤ 分野論
➤ 音楽、二次創作、出版、アート、写真、ゲーム、ファッション、アーカイブ、ハードウェア、不動産、金融、家族、政治
アーキテクチャーと法
➤ 法とアーキテクチャー研究のインターフェース
➤ アーキテクチャーの設計と自由の再構築
➤ 個人化される環境
➤ 技術の道徳化と刑事法規制
➤ アーキテクチャーによる法の私物化と権利の限界
➤ 貨幣空間の法とアーキテクチャー
➤ 憲法のアーキテクチャー
CODEXhttps://law.stanford.edu/codex-the-stanford-center-for-
legal-informatics/
新旧改め文を10秒で
• 法制執務業務支援システム(e-laws)
• 法改正のための、新旧改め文を、人手ではなく、プログラミングで行なう。
• 作業時間は、30時間から10秒へ
• 人間が楽するために、機械に頑張らせる
• 働くママが終止符を打った霞が関の“伝統芸能”
ある人のツィート
大量の情報処理(人力)
• 法曹は大量の情報処理をしなければならない。
• ファイリング資料2冊、DVD
エンジニアは怠惰
• エンジニアは怠惰なのでこう考える
• この資料の内、重要な箇所はどこだろう?
• 過去の交通事故と比べて、この事故に特徴的なことはなんだろう。
• 法的事実をこの資料から自動生成出来ないか?
コードの活用
人力で行わず、機械で要約出来ないか?コンピュータを使って迅速化、楽に出来ないか?
怠惰であるために今日頑張る
足で稼ぐ
• とわいえ、足で稼ぐという、習慣も価値がある。
• 愚直に資料に向き合うことも本当は大事。
• エンジニアも謙虚にこれらの価値観に向き合う必要がある。
法のIT化、エンジニアの協力出来る場所
法クラスタでもAIは人気
AIがつなげる社会
AIネットワーク時代の法・政策
田 雅樹編著・林 秀弥編著・成原 慧編著
法クラスタでもAIは大人気
AI時代のサムライ業(上)代
替の危機 新事業に挑む
弁理士、商標サイトで起業/司
法書士、M&Aなど仲介も
法律カテゴリも、AI化の進展で
、機械に代替されちゃうかも・
・・。
AI以前に忘れ去られる事柄
デジタル化
構造データ化
AI化
デジタル化
• 判例は大半が紙・・。
• デジタル化していても・・、画像埋め込みとか。
構造データ化
• 判例データは、テキスト化されただけ。
• デジタル化はしているが、構造化されたデータにはなっていない。
• メタデータなどは特に無い。
AI以前に
• AIで職を奪われる以前に、IT化が進んでいない。
• 今でもFAXが大好きとか。
AIの隠れた要素
非専門家が想定するAIはピンクで囲った部分だけ。実際の業務ではそれ以外の部分が大事。
データの例外は見えない
• データ分析の専門家や、エンジニア以外で、例外や特殊処理に価値を見出す人は少ない。
• バッドデータハンドブックは、如何にデータ収集や前処理が大変かを説いた書籍
野球分析
• スポーツでのデータ分析は、野球が一番進んでいる。
• 理由は、整理され蓄積された良質なデータセットがあったから。
泥臭い仕事は、エンジニア
• データを整形する。
• ハズレデータを除外する。
• 再整形する。
• 泥臭い仕事はエンジニアの出番。
まとめ
• 可視化法学。ITで法律をわかりやすく
• プログラマーのツールや発想が他業種でも役立つ
• 法律 x IT(リーガルテック)の実例
• プログラマーはどう役に立つか。泥臭い部分が主戦場
最後にお願い
冊子を売ってます。1号、2号、800円技術書典3 き27
10/22(日)アキバUDX
法律の専門家の助力を求めます。
速いマシンを使わせてください。
@lawvis をフォローブログも有るよ。「可視化法学」で検索