SlideShare ist ein Scribd-Unternehmen logo
1 von 75
可視化法学の紹介
あるいはcode(コード)≒
code(法令)について
芝尾幸一郎(ソフトウェアエンジニア)
自己紹介
芝尾幸一郎
• Aiming(ソーシャルゲーム会社)でデータ分析の仕事をして
いる。
• 教育のバックグラウンドはメディアアート
• ドワンゴで、ニコニコ動画for iphoneの開発をしていた。
• 趣味でデータ分析をしている。
• 趣味で動画サイトの分析やランキングサイトを作ってい
る
世界のYoutube
世界各国のYoutubeのランキングが一覧出来る
http://nico-ran.jp/youtube_ranking/oversea
• Youtubeとニコニコ動画の
ランキングを比較してみた。
• 視聴数分析
• 人気カテゴリ分析
• 人気タグ分析
• MineCraftは共通して人気
• ニコニコ学会発表
• https://www.slideshare.net/shi
bacow/youtube-12688640
データ分析基盤構築
• データ分析基盤構築の本を書
いた。
• どの様に集計ログフォーマッ
トを作ればよいか。
• データ分析基盤の技術策定の
勘所
• 作ったデータ分析基盤をどの
様に活用するか
今回の目的
• 可視化法学の紹介
• Codo = Codeの紹介
• 法律それ自体の技術化の話
可視化法学とは
可視化法学
• 概要
「可視化法学-法教育に役立てるためにICT
を活用して法律の構造を解析して可視化す
る個人のプロジェクト」
法律の参照構造を解釈
してその繋がりを可視
化
作り方
法令データ収集
• 総務省法令データベースから
データを取得。
• 今はzipがありますが、昔は
webからスクレイプしてまし
た。
全ての参照構造を抜き出
す。
• 救急救命士法の中に刑
法へのリンクが有る
刑法
救急救命士法
刑法 売春防止法
刑法
労働者派遣事業の適正な運営の確保及び派遣労
働者の保護等に関する法律
刑法
育児休業、介護休業等育児又は家族介護を行う
労働者の福祉に関する法律
刑法
特定機器に係る適合性評価手続の結果の外国と
の相互承認の実施に関する法律
グラフ理論に基づいて描画
胡一凡さんの考えたアルゴリズム
グラフ理論の基づいて描画
• 多くの法律から参照される法律のサイズは大きくした。
• eg刑法、刑事訴訟法
• 点の色は、その法律が、どの分野に属するか?
• 刑事、民事、教育、厚生、労働etc
• 色々な分野から参照される法律は鮮やか
描画の様子
色んな法律を見てみる
似たものは近くに配置される
人間が手動で配置しているのではなく、参照し
ている法が近くにあれば機械的に自然と集まる
憲法分野
• 憲法には、基本法が良くくっ
付く。
• 憲法に並んで、沖縄の復帰に
関する法案が大きなウェイト
を占めており、占領されて復
帰するのは一つ国作るみたい
な大変さがあるようだ。
26
教育法分野
• 学校教育法が超大きなウェイ
トを占めている。
• 地味に、放送大学学園法、私
立学校教職員共済法が多くの
リンクを得ている。
27
税制分野
• 所得税、法人税、関税法が大
きい。
• 租税特別措置法は多くの法か
ら参照され、実はあんまり特
別措置じゃなかった。
28
河川分野
• シンプル
• 河川法だけ覚えれば後はそれ
の派生でなんとかなるんじゃ
ないか?
• 法の修正もまだ容易だろう
• バグも入り込みにくい
29
社会保険分野
• 死ぬほど複雑で相互依存が激し
い。
• 社会保障は利害関係者が多くて
、なかなか難しいのだろう。
• 何か法改正や追加の度にバグる
だろう。
• リファクタリング( コードをシンプル
にするプログラミング用語)出来るとい
いな。
30
今後作りたい物
インタラクティブな
web版可視化法学
web版DEMO(作りかけ版)
http://shibaok.net:5555/
止まっていることもあります
34
法分野の時系列変化
法律がいつ出来ていつ
繋がったかを可視化
国別の比較
などをやりたい
宣伝
冊子を売ってます。
800円
夏コミ 新刊
C92(日)東イ13a
評論島です。
法律の専門家の助力を
求めます。
@lawvis をフォロー
ブログも有るよ。「可視化法学」で検索
モチベーション
法は複雑すぎる
• 市民は理解できない。
• 複雑になっていくばかりで、誰もリフ
ァクタリングしない。
エンジニアは複雑さが嫌い
• プログラムのコードは、複雑であるが、シンプルにする
努力を、日々続けている。
• プログラム言語の進化やシステムを利用することで、シ
ンプルにしている。
• アセンブラからスクリプト言語へ。
• 継続的テストとリファクタリング
code(法令)もcode(ソース
コード)もcodeである。
川上会長の著作権
• 著作権法をjavascriptで書き直
して複雑さを測定する。
• http://bizzine.jp/article/detail/63
7
コードを書く経営者ドワン
ゴ川上会長「プログラミン
グこそが基礎教養」
川上会長の著作権
これ、構造化するとわかるん
ですけど、実はこの中にコピ
ペされている部分がある。(会
場笑) JavaScriptの形式に直
してコンパイルしたら、複雑
度の合計が103になりました。
通常70以上はメンテ不可能と
いう先ほどの循環的複雑度か
らいえば、この法律は、いか
なる変更をしてもバグを生む
ということが判明したわけで
す。
論理憲法
https://twitter.com/bitlawjp
憲法をprologでリライト
code(法令)も(code)ソ
ースコードもcodeであ
る
コード品質向上の取り組み
• プロトタイプ作成
• インテグレーションテスト
• モジュール化
• 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で管理
ドイツ
http://archive.fo/9EDKO
github管理の利点
• 一世代の溶かし込みではなく、ver1から全ての世代の更新
履歴を追跡できる
• ブランチを作れるので、試案や対案も保存できる。
• ある時点のある政党が、対案を出してきたとしてそれ
もgithubに残るので、後世の研究者が研究できる。
• 法に対するオープンアクセスを促進できる
他のプログラミング手法を応用
すれば、法のコードクオリテイ
も上がる(上がれば良いな)。
法が何もしていないとは思いませんが、
他のジャンルで行われいることを組み入れてみたらどうだろう。
その他、法情報学の最
近の動向
法とデザイン
➤ アーキテクチャー
➤ コモンズ
➤ リーガルデザイン
➤ 分野論
➤ 音楽、二次創作、出版、ア
ート、写真、ゲーム、ファ
ッション、アーカイブ、ハ
ードウェア、不動産、金融
、家族、政治
アーキテクチャーと法
➤ 法とアーキテクチャー研究の
インターフェース
➤ アーキテクチャーの設計と自
由の再構築
➤ 個人化される環境
➤ 技術の道徳化と刑事法規制
➤ アーキテクチャーによる法の
私物化と権利の限界
➤ 貨幣空間の法とアーキテクチ
ャー
➤ 憲法のアーキテクチャー
CODEX
https://law.stanford.edu/codex-the-stanford-center-for-
legal-informatics/
冊子を売ってます。
800円
夏コミ 新刊
C92(日)東イ13a
評論島です。
法律の専門家の助力を
求めます。
@lawvis をフォロー
ブログも有るよ。「可視化法学」で検索
DOC2VECで
法令理解
DOC2VEC(曖昧な理解)
➤ Word2Vecをパラグラフへ応用したもの。
➤ Paragraph2Vecが元論文の名前
➤ Word2Vec
➤ 文章における各単語間の関連を元に、単語の重みを
付けたもの
➤ 詳しくはこちら
➤ https://deepage.net/machine_learning/2017/01/08/do
c2vec.html
法令の類似度を測るには
➤ 単語の抜き出し(形態素解析)
➤ 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を法令名ではなく、カテゴリ名に変更

Weitere ähnliche Inhalte

Was ist angesagt?

Io t,ai時代のソフトウェア
Io t,ai時代のソフトウェアIo t,ai時代のソフトウェア
Io t,ai時代のソフトウェアToshiaki Kurokawa
 
最近ソフトウェア開発が面白くない
最近ソフトウェア開発が面白くない最近ソフトウェア開発が面白くない
最近ソフトウェア開発が面白くないTatsuya Yagi
 
Jubatus Casual Talks #2 異常検知入門
Jubatus Casual Talks #2 異常検知入門Jubatus Casual Talks #2 異常検知入門
Jubatus Casual Talks #2 異常検知入門Shohei Hido
 
可視化法学(Linked Open Data Challenge 2016)授賞式プレゼン
可視化法学(Linked Open Data Challenge 2016)授賞式プレゼン可視化法学(Linked Open Data Challenge 2016)授賞式プレゼン
可視化法学(Linked Open Data Challenge 2016)授賞式プレゼン(shibao)芝尾 (kouichiro)幸一郎
 
ディープラーニングによる時系列データの異常検知
ディープラーニングによる時系列データの異常検知ディープラーニングによる時系列データの異常検知
ディープラーニングによる時系列データの異常検知Core Concept Technologies
 

Was ist angesagt? (7)

可視化法学ポスター超会議2016 チラシ
可視化法学ポスター超会議2016 チラシ可視化法学ポスター超会議2016 チラシ
可視化法学ポスター超会議2016 チラシ
 
Jubatus使ってみた
Jubatus使ってみたJubatus使ってみた
Jubatus使ってみた
 
Io t,ai時代のソフトウェア
Io t,ai時代のソフトウェアIo t,ai時代のソフトウェア
Io t,ai時代のソフトウェア
 
最近ソフトウェア開発が面白くない
最近ソフトウェア開発が面白くない最近ソフトウェア開発が面白くない
最近ソフトウェア開発が面白くない
 
Jubatus Casual Talks #2 異常検知入門
Jubatus Casual Talks #2 異常検知入門Jubatus Casual Talks #2 異常検知入門
Jubatus Casual Talks #2 異常検知入門
 
可視化法学(Linked Open Data Challenge 2016)授賞式プレゼン
可視化法学(Linked Open Data Challenge 2016)授賞式プレゼン可視化法学(Linked Open Data Challenge 2016)授賞式プレゼン
可視化法学(Linked Open Data Challenge 2016)授賞式プレゼン
 
ディープラーニングによる時系列データの異常検知
ディープラーニングによる時系列データの異常検知ディープラーニングによる時系列データの異常検知
ディープラーニングによる時系列データの異常検知
 

Ähnlich wie 可視化法学 smips登壇

tokyo_webmining_no51
tokyo_webmining_no51tokyo_webmining_no51
tokyo_webmining_no51Shu (shoe116)
 
Re dashで作るニコニコデータセット分析環境
Re dashで作るニコニコデータセット分析環境Re dashで作るニコニコデータセット分析環境
Re dashで作るニコニコデータセット分析環境(shibao)芝尾 (kouichiro)幸一郎
 
ニコニコ動画データセット分析環境作ってみたその後
ニコニコ動画データセット分析環境作ってみたその後ニコニコ動画データセット分析環境作ってみたその後
ニコニコ動画データセット分析環境作ってみたその後(shibao)芝尾 (kouichiro)幸一郎
 
ビルド職人頼みの自社製品リリースを、CI可能にした取り組み
ビルド職人頼みの自社製品リリースを、CI可能にした取り組みビルド職人頼みの自社製品リリースを、CI可能にした取り組み
ビルド職人頼みの自社製品リリースを、CI可能にした取り組みStudy Group by SciencePark Corp.
 
東方ゲームAIとその歴史
東方ゲームAIとその歴史東方ゲームAIとその歴史
東方ゲームAIとその歴史ide_an
 
世界におけるデジタルゲームの 人工知能の導入の現状について
世界におけるデジタルゲームの人工知能の導入の現状について世界におけるデジタルゲームの人工知能の導入の現状について
世界におけるデジタルゲームの 人工知能の導入の現状についてYouichiro Miyake
 
データドリブンな動画コンテンツ制作の裏側
データドリブンな動画コンテンツ制作の裏側データドリブンな動画コンテンツ制作の裏側
データドリブンな動画コンテンツ制作の裏側TatsuyaAkasaka
 
ニコニコアプリ開発
ニコニコアプリ開発ニコニコアプリ開発
ニコニコアプリ開発jz5 MATSUE
 
セキュリティオペレーション: みんなどんなのつかってるの? @ JANOG38 沖縄
セキュリティオペレーション: みんなどんなのつかってるの? @ JANOG38 沖縄セキュリティオペレーション: みんなどんなのつかってるの? @ JANOG38 沖縄
セキュリティオペレーション: みんなどんなのつかってるの? @ JANOG38 沖縄Yasunari Momoi
 
iQONを支えるクローラーの裏側
iQONを支えるクローラーの裏側iQONを支えるクローラーの裏側
iQONを支えるクローラーの裏側Takehiro Shiozaki
 
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk SessionPythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk SessionShinichi Nakagawa
 
ニコニコ動画タグネットワーク
ニコニコ動画タグネットワークニコニコ動画タグネットワーク
ニコニコ動画タグネットワークTeruki Shinohara
 
Unity 5.3 の In-App Purchase を試してみた
Unity 5.3 の In-App Purchase を試してみたUnity 5.3 の In-App Purchase を試してみた
Unity 5.3 の In-App Purchase を試してみたMori Tetsuya
 
データサイエンティスト養成読本の解説+書き忘れたこと
データサイエンティスト養成読本の解説+書き忘れたことデータサイエンティスト養成読本の解説+書き忘れたこと
データサイエンティスト養成読本の解説+書き忘れたことTokoroten Nakayama
 
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみた
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみたJupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみた
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみたSatoshi Yazawa
 
ニコニコ動画のコメント解析
ニコニコ動画のコメント解析ニコニコ動画のコメント解析
ニコニコ動画のコメント解析Keisuke Ogaki
 
セキュリティ&プログラミングキャンプに行こう!
セキュリティ&プログラミングキャンプに行こう!セキュリティ&プログラミングキャンプに行こう!
セキュリティ&プログラミングキャンプに行こう!Kenta USAMI
 

Ähnlich wie 可視化法学 smips登壇 (20)

tokyo_webmining_no51
tokyo_webmining_no51tokyo_webmining_no51
tokyo_webmining_no51
 
Re dashで作るニコニコデータセット分析環境
Re dashで作るニコニコデータセット分析環境Re dashで作るニコニコデータセット分析環境
Re dashで作るニコニコデータセット分析環境
 
ログ勉 Vol.1
ログ勉 Vol.1ログ勉 Vol.1
ログ勉 Vol.1
 
ニコニコ動画データセット分析環境作ってみたその後
ニコニコ動画データセット分析環境作ってみたその後ニコニコ動画データセット分析環境作ってみたその後
ニコニコ動画データセット分析環境作ってみたその後
 
ビルド職人頼みの自社製品リリースを、CI可能にした取り組み
ビルド職人頼みの自社製品リリースを、CI可能にした取り組みビルド職人頼みの自社製品リリースを、CI可能にした取り組み
ビルド職人頼みの自社製品リリースを、CI可能にした取り組み
 
東方ゲームAIとその歴史
東方ゲームAIとその歴史東方ゲームAIとその歴史
東方ゲームAIとその歴史
 
世界におけるデジタルゲームの 人工知能の導入の現状について
世界におけるデジタルゲームの人工知能の導入の現状について世界におけるデジタルゲームの人工知能の導入の現状について
世界におけるデジタルゲームの 人工知能の導入の現状について
 
20160601 devtools
20160601 devtools20160601 devtools
20160601 devtools
 
データドリブンな動画コンテンツ制作の裏側
データドリブンな動画コンテンツ制作の裏側データドリブンな動画コンテンツ制作の裏側
データドリブンな動画コンテンツ制作の裏側
 
ニコニコアプリ開発
ニコニコアプリ開発ニコニコアプリ開発
ニコニコアプリ開発
 
Bq sushi(BigQuery lessons learned)
Bq sushi(BigQuery lessons learned)Bq sushi(BigQuery lessons learned)
Bq sushi(BigQuery lessons learned)
 
セキュリティオペレーション: みんなどんなのつかってるの? @ JANOG38 沖縄
セキュリティオペレーション: みんなどんなのつかってるの? @ JANOG38 沖縄セキュリティオペレーション: みんなどんなのつかってるの? @ JANOG38 沖縄
セキュリティオペレーション: みんなどんなのつかってるの? @ JANOG38 沖縄
 
iQONを支えるクローラーの裏側
iQONを支えるクローラーの裏側iQONを支えるクローラーの裏側
iQONを支えるクローラーの裏側
 
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk SessionPythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
 
ニコニコ動画タグネットワーク
ニコニコ動画タグネットワークニコニコ動画タグネットワーク
ニコニコ動画タグネットワーク
 
Unity 5.3 の In-App Purchase を試してみた
Unity 5.3 の In-App Purchase を試してみたUnity 5.3 の In-App Purchase を試してみた
Unity 5.3 の In-App Purchase を試してみた
 
データサイエンティスト養成読本の解説+書き忘れたこと
データサイエンティスト養成読本の解説+書き忘れたことデータサイエンティスト養成読本の解説+書き忘れたこと
データサイエンティスト養成読本の解説+書き忘れたこと
 
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみた
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみたJupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみた
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみた
 
ニコニコ動画のコメント解析
ニコニコ動画のコメント解析ニコニコ動画のコメント解析
ニコニコ動画のコメント解析
 
セキュリティ&プログラミングキャンプに行こう!
セキュリティ&プログラミングキャンプに行こう!セキュリティ&プログラミングキャンプに行こう!
セキュリティ&プログラミングキャンプに行こう!
 

Mehr von (shibao)芝尾 (kouichiro)幸一郎

Mehr von (shibao)芝尾 (kouichiro)幸一郎 (11)

DXとはなにか?
DXとはなにか?DXとはなにか?
DXとはなにか?
 
可視化法学c91紹介リーフレット
可視化法学c91紹介リーフレット可視化法学c91紹介リーフレット
可視化法学c91紹介リーフレット
 
BigQueryで集計するシステムを作って分かったKPI集計ツール作成
BigQueryで集計するシステムを作って分かったKPI集計ツール作成BigQueryで集計するシステムを作って分かったKPI集計ツール作成
BigQueryで集計するシステムを作って分かったKPI集計ツール作成
 
AimingでGoogle Cloud Platformの利用について
AimingでGoogle Cloud Platformの利用についてAimingでGoogle Cloud Platformの利用について
AimingでGoogle Cloud Platformの利用について
 
ニコニコデータビューアー・改
ニコニコデータビューアー・改ニコニコデータビューアー・改
ニコニコデータビューアー・改
 
ニコニコデータセット 分析環境作ってみた-ニコニコデータデータ分析研究会
ニコニコデータセット 分析環境作ってみた-ニコニコデータデータ分析研究会ニコニコデータセット 分析環境作ってみた-ニコニコデータデータ分析研究会
ニコニコデータセット 分析環境作ってみた-ニコニコデータデータ分析研究会
 
世界のiPhoneアプリランキング比較してみた
世界のiPhoneアプリランキング比較してみた世界のiPhoneアプリランキング比較してみた
世界のiPhoneアプリランキング比較してみた
 
第一回ニコニコデータ分析研究会発表資料-世界のYoutube
第一回ニコニコデータ分析研究会発表資料-世界のYoutube第一回ニコニコデータ分析研究会発表資料-世界のYoutube
第一回ニコニコデータ分析研究会発表資料-世界のYoutube
 
ニコニコ学会β発表資料
ニコニコ学会β発表資料ニコニコ学会β発表資料
ニコニコ学会β発表資料
 
Seeing is Believing
Seeing is BelievingSeeing is Believing
Seeing is Believing
 
Introduction Pycon2010
Introduction Pycon2010Introduction Pycon2010
Introduction Pycon2010
 

可視化法学 smips登壇