Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
©2017 Nextremer Co., Ltd.
グラフ解析で社⻑の脳内さらす!
26th Oct.	2017
株式会社 Nextremer
両⾓和軌
皆
さ
ん
こ
ん
に
ち
は
©2017 Nextremer Co., Ltd.
⾃⼰紹介
両⾓ 和軌 (もろずみ かずき)
株式会社 Nextremer プログラマー /	採⽤・⼈事
※対話システムの研究開発をしている企業です
• やってること
• エンジニアのスカウト・...
©2017 Nextremer Co., Ltd.
Nextremer CEO	向井とは
「僕は全部オープンデータだから好きに使って!」と⾔ってくれます
お⾔葉に⽢えて脳内を晒してやりました
ヤバイBotになったり イケてるCEOみたいになった...
©2017 Nextremer Co., Ltd.
グラフ解析で社⻑の脳内さらす!
弊社社⻑の向井が Slack,	facebook に投稿したデータをグラフ解析
こ
う
な
っ
て
る
ん
だ
©2017 Nextremer Co., Ltd.
どうやって脳内を晒すか?
1.	単語の共起関係からグラフを作る
2.	PMI	を計算しエッジ(辺)の重みにする
3.	PageRankを計算しノード(点)の重みにする
4.	ノードをクラスタリ...
©2017 Nextremer Co., Ltd.
1.	単語の共起関係からグラフを作る
• 単語をノード、同じ⽂に出た単語間にエッジ
• ストップワード、特定の品詞を除く
• 単語の出現回数、単語ペアの共起回数を記録しておく
• 後のPMIの...
©2017 Nextremer Co., Ltd.
2.	PMI	を計算しエッジ(辺)の重みにする
• PMIを計算してエッジの重みにセット
• 1でカウントした単語の出現回数、共起回数を利⽤
©2017 Nextremer Co., Ltd.
2.	PMI	を計算しエッジ(辺)の重みにする
• PMIって??
• Pointwise	Mutual	Information	(⾃⼰相互情報量)
• ある2つのデータがどれくらい⼀緒に出現...
©2017 Nextremer Co., Ltd.
3.	PageRankを計算しノード(点)の重みにする
• PageRankを計算し、スコアをノードの重みにセット
• エッジの重みを考慮したPageRankを計算
©2017 Nextremer Co., Ltd.
4.	ノードをクラスタリングする
• Infomapでノードをクラスタリング
• エッジ媒介中⼼性,	貪欲アルゴリズム, スペクトラル,		スピングラス,	
ラベル伝播法 …など多数のクラスタ...
©2017 Nextremer Co., Ltd.
5.	可視化する
• Gephi を利⽤して可視化
• 全体を俯瞰して⾒れて、必要に応じて部分にフォーカスできる
• javascriptベースのものは巨⼤なグラフ全体を⾒るのは使いにくい
©2017 Nextremer Co., Ltd.
グラフ解析で社⻑の脳内さらす!
それらの⼿順を経てこの図が作られています
な
る
ほ
ど
©2017 Nextremer Co., Ltd.
Neo4jとの使い分け
• データ設計の検討にR,	Python	や Gephi などのツールを使う
• 全体を俯瞰していろいろなパターンを試したい
• システムに組み込むために neo4j	...
©2017 Nextremer Co., Ltd.
続きはWebで!
• 詳しくは「もろずblog	社⻑の脳内晒す」で検索!
• 今回話した内容についてのブログ記事です
©2017 Nextremer Co., Ltd.
最後に・・・!
Nextremerでは⼀緒に対話システムを開発して頂けるエンジニアを
探しています!
Facebookから両⾓へメッセージ or	Wantedly よりご連絡いただければ、
い...
©2017 Nextremer Co., Ltd.
これで本当におしまい
ありがとうございました!
Nextremer東京オフィス 開発⽤GPUマシン
謎に包まれた対話ロボット
AI-Samurai
待
っ
て
る
よ
©2017 Nextremer Co., Ltd.
補⾜.	GML	(Graph	Modeling	Language)
• グラフ構造をテキストで表すデータ形式
• ノード、エッジのプロパティが記述できる点がGood
©2017 Nextremer Co., Ltd.
補⾜.	Gephi
• グラフ可視化・解析ができるデスクトップアプリケーション
• Windows,	Mac,	Linux	に対応
• GMLファイルをロードできる
©2017 Nextremer Co., Ltd.
補⾜.	igraph
• R,	Python,	C	から利⽤できるグラフ解析のパッケージ
• GMLファイルをロードできる
• PageRank,	infomap 等の多くのアルゴリズムをサポ...
Upcoming SlideShare
Loading in …5
×

グラフ解析で社長の脳内さらす!

636 views

Published on

社長の発言をグラフ解析して何を考えているのかをさらします

Published in: Technology
  • Be the first to comment

  • Be the first to like this

グラフ解析で社長の脳内さらす!

  1. 1. ©2017 Nextremer Co., Ltd. グラフ解析で社⻑の脳内さらす! 26th Oct. 2017 株式会社 Nextremer 両⾓和軌 皆 さ ん こ ん に ち は
  2. 2. ©2017 Nextremer Co., Ltd. ⾃⼰紹介 両⾓ 和軌 (もろずみ かずき) 株式会社 Nextremer プログラマー / 採⽤・⼈事 ※対話システムの研究開発をしている企業です • やってること • エンジニアのスカウト・⾯接 • ⼈事制度の整備 • サーバーサイド開発 • ここ最近扱った技術 • Terraform, Ansible, Packer ← Infrastructure as Code! • Docker, kubernetes, Apache Mesos ← ポータビリティさいこう! • Python, Scala, javascript(ES6) ← 関数型うまく書けると気持ちいい! • Finagle, React.js ← マイクロサービスしたい!リアクティブしたい!
  3. 3. ©2017 Nextremer Co., Ltd. Nextremer CEO 向井とは 「僕は全部オープンデータだから好きに使って!」と⾔ってくれます お⾔葉に⽢えて脳内を晒してやりました ヤバイBotになったり イケてるCEOみたいになったりします
  4. 4. ©2017 Nextremer Co., Ltd. グラフ解析で社⻑の脳内さらす! 弊社社⻑の向井が Slack, facebook に投稿したデータをグラフ解析 こ う な っ て る ん だ
  5. 5. ©2017 Nextremer Co., Ltd. どうやって脳内を晒すか? 1. 単語の共起関係からグラフを作る 2. PMI を計算しエッジ(辺)の重みにする 3. PageRankを計算しノード(点)の重みにする 4. ノードをクラスタリングする 5. 可視化する
  6. 6. ©2017 Nextremer Co., Ltd. 1. 単語の共起関係からグラフを作る • 単語をノード、同じ⽂に出た単語間にエッジ • ストップワード、特定の品詞を除く • 単語の出現回数、単語ペアの共起回数を記録しておく • 後のPMIの計算で使うので
  7. 7. ©2017 Nextremer Co., Ltd. 2. PMI を計算しエッジ(辺)の重みにする • PMIを計算してエッジの重みにセット • 1でカウントした単語の出現回数、共起回数を利⽤
  8. 8. ©2017 Nextremer Co., Ltd. 2. PMI を計算しエッジ(辺)の重みにする • PMIって?? • Pointwise Mutual Information (⾃⼰相互情報量) • ある2つのデータがどれくらい⼀緒に出現しやすいかを表す尺度 • PMIが⼤きいほどその単語ペアは同じ⽂に出現しやすいということ • 計算式 𝑃𝑀𝐼 𝑥, 𝑦 = log+ 𝑃(𝑥, 𝑦) 𝑃 𝑥 𝑃(𝑦) = log+ 共起回数 / 総単語数 単語0の出現回数 / 単語1の出現回数
  9. 9. ©2017 Nextremer Co., Ltd. 3. PageRankを計算しノード(点)の重みにする • PageRankを計算し、スコアをノードの重みにセット • エッジの重みを考慮したPageRankを計算
  10. 10. ©2017 Nextremer Co., Ltd. 4. ノードをクラスタリングする • Infomapでノードをクラスタリング • エッジ媒介中⼼性, 貪欲アルゴリズム, スペクトラル, スピングラス, ラベル伝播法 …など多数のクラスタリングアルゴリズム • 構造に⼤きく左右されるので、どれがベストとは⼀概には⾔えない
  11. 11. ©2017 Nextremer Co., Ltd. 5. 可視化する • Gephi を利⽤して可視化 • 全体を俯瞰して⾒れて、必要に応じて部分にフォーカスできる • javascriptベースのものは巨⼤なグラフ全体を⾒るのは使いにくい
  12. 12. ©2017 Nextremer Co., Ltd. グラフ解析で社⻑の脳内さらす! それらの⼿順を経てこの図が作られています な る ほ ど
  13. 13. ©2017 Nextremer Co., Ltd. Neo4jとの使い分け • データ設計の検討にR, Python や Gephi などのツールを使う • 全体を俯瞰していろいろなパターンを試したい • システムに組み込むために neo4j を使う • Cypher のクエリは超強⼒ • ⼤量データの格納や分析 • Spark GraphX とかも使えるらしい
  14. 14. ©2017 Nextremer Co., Ltd. 続きはWebで! • 詳しくは「もろずblog 社⻑の脳内晒す」で検索! • 今回話した内容についてのブログ記事です
  15. 15. ©2017 Nextremer Co., Ltd. 最後に・・・! Nextremerでは⼀緒に対話システムを開発して頂けるエンジニアを 探しています! Facebookから両⾓へメッセージ or Wantedly よりご連絡いただければ、 いつでもNextremerオフィスの雰囲気をご案内させていただきます 両⾓のFacebookアカウント Nextremer Wantedly ページ
  16. 16. ©2017 Nextremer Co., Ltd. これで本当におしまい ありがとうございました! Nextremer東京オフィス 開発⽤GPUマシン 謎に包まれた対話ロボット AI-Samurai 待 っ て る よ
  17. 17. ©2017 Nextremer Co., Ltd. 補⾜. GML (Graph Modeling Language) • グラフ構造をテキストで表すデータ形式 • ノード、エッジのプロパティが記述できる点がGood
  18. 18. ©2017 Nextremer Co., Ltd. 補⾜. Gephi • グラフ可視化・解析ができるデスクトップアプリケーション • Windows, Mac, Linux に対応 • GMLファイルをロードできる
  19. 19. ©2017 Nextremer Co., Ltd. 補⾜. igraph • R, Python, C から利⽤できるグラフ解析のパッケージ • GMLファイルをロードできる • PageRank, infomap 等の多くのアルゴリズムをサポート

×