Upgrade to Pro — share decks privately, control downloads, hide ads and more …

学習院大学 #社会科学のための実践的データサイエンス 2020春: 7/11

学習院大学 #社会科学のための実践的データサイエンス 2020春: 7/11

学習院大学「社会科学のための実践的データサイエンス」2020春: 7/11
7.オープンなデータを使って万事を調べる
7.1.Linked Open Data とは
7.2.LODとSPARQL Endpointを使う
7.3.レポート2 のお知らせ

一橋大学大学院経済学研究科 原泰史
[email protected]

yasushihara

June 25, 2020
Tweet

More Decks by yasushihara

Other Decks in Education

Transcript

  1. 今日の内容 • 16:10-16:20 • プレ講義 [録画なし] • 16:20-16:40 • 7.1

    Linked Open Data とは [録画あり] • 16:40-16:45 • インターミッション[録画なし] • 16:45-17:05 • 7.2 LODとSPARQL Endpointを使う[録画] • 17:05-17:10 • インターミッション[録画なし] • 17:10-17:30 • 7.3 レポート2 のお知らせ [録画]
  2. ここまでのおさらい • 無償で利用できるデータ • 特許 • Google Patents/BigQuery Sandbox •

    IIP パテントデータベース • Lens.org (無償 API, Web) • 論文 • Microsoft Academics • J-global • Lens.org (無償 API, Web) • 企業 • (Yahoo! ファイナンス) • FOR STARTUP • 有償で利用できるデータ • 論文 • Web of Science • Scopus • Lens.org (有償API) • 特許 • Lens.org (有償API) • 企業 • 帝国データバンク • BvD • 日経NEEDS • 日経 FINANCIAL QUEST • INITIAL
  3. とにかくデータベースは高い • Web of Science • n年分のデータで数千万円 • 帝国データバンク •

    一件データを取りに行くたびに数万円 • データを円滑に解析するためには, データそのものだけではなくそれ を解析できる環境も必要不可欠 • オンプレミスの環境を社内/学内に構築したりとか, AWS か Windows Azure か Google Big Query の有償版をサブスクライブしたりとか • データを解析するにはとっても手間もお金もかかる(外注ならなおさ ら)
  4. 今日のテーマ; オープンデータ • オープンデータとは • “特定のデータが、一切の著作権、特許などの制御メカニズムの制限な しで、全ての人が望むように利用・再掲載できるような形で入手でき るべきであるというアイデア” • “オープンデータとは、自由に使えて再利用もでき、かつ誰でも再配布

    できるようなデータのことだ。従うべき決まりは、せいぜい「作者の クレジットを残す」あるいは「同じ条件で配布する」程度である“ https://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%BC%E3%83 %97%E3%83%B3%E3%83%87%E3%83%BC%E3%82%BF
  5. Level of Open Data ★ Available on the web (whatever

    format) but with an open licence, to be Open Data ★★ Available as machine-readable structured data (e.g. excel instead of image scan of a table) ★★★ as (2) plus non-proprietary format (e.g. CSV instead of excel) ★★★★ All the above plus, Use open standards from W3C (RDF and SPARQL) to identify things, so that people can point at your stuff ★★★★★ All the above, plus: Link your data to other people’s data to provide context https://www.w3.org/DesignIssues/LinkedData.html https://5stardata.info/ja/
  6. 統計データのRDF (Resource Description Framework) 化 • 統計表のデータ定義では、統計 表のセルごとにRDF化を行ない ます。 •

    統計表の各セルに対してIDを振 り、それを主語とします。 • 各セルに対して、次元、測度、 属性、観測値を、それぞれ述語、 目的語として定義します。 • 主語、述語、目的語の3つの要 素を「トリプル」といいますが、 ひとつの統計値(統計表のセ ル)は複数のトリプルによって 表されます。 http://data.e-stat.go.jp/lodw/outline/abstraction#1-1-1
  7. オープンデータの具体例 1. Linked Brazilian Amazon Rainforest 2. Data.gov 3. 統計LOD

    4. 行政事業レビューシートLOD 5. 漫画ゲームアニメデータベース 6. 国会図書館 Linked Open Data 7. gBizInfo (旧法人インフォ) 8. DBPedia
  8. オープンデータの具体例; LINKED BRAZILIAN AMAZON RAINFOREST • Linked Brazilian Amazon Rainforest

    Data is such a dataset that is openly available for anyone to use for non-commercial research. The data was produced as a joint effort by the Institute for Geoinformatics, University of Muenster, Germany and the National Institute for Space Research (INPE) in Brazil. • The data can be accessed in a Linked Data fashion via a SPARQL-endpoint, and via dereferenciable URIs. The data consists of 8250 cells—each of size of 25 km * 25 km—capturing the observations of deforestation in the Brazilian Amazon Rainforest and a number of related and relevant variables. This spatiotemporal deforestation data was created using a number of aggregation methods from different sources. The data covers the whole Brazilian Amazon Rainforest. http://linkedscience.org/data/linked-brazilian-amazon-rainforest/
  9. オープンデータの具体例2; data.gov • Popular Baby Names • “Popular Baby Names

    by Sex and Ethnic Group Data were collected through civil birth registration. Each record represents the ranking of a baby name in the order of frequency. Data can be used to represent the popularity of a name. Caution should be used when assessing the rank of a baby name if the frequency count is close to 10; the ranking may vary year to year.” • https://catalog.data.gov/dataset/ most-popular-baby-names-by- sex-and-mothers-ethnic-group- new-york-city-8c742
  10. オープンデータの具体例3; 統計LOD • 日本の政府系機関が収集した データがLOD として公開され ている • http://data.e-stat.go.jp/lodw/ •

    消費者物価指数や経済センサス などが収録 • SPARQL Endpoint; http://data.e- stat.go.jp/lod/sparql/
  11. 行政事業レビューシートLOD • 内閣官房によって公開されている行政事業レ ビューシート (https://www.gyoukaku.go.jp/review/revie w.html)の主要な項目をLOD化しました。 • 本データには、中央省庁が行っている年間約 5000の事業毎に「何が目的か」「事業の内 容」「予算額」「事業予算の支払い先」「ど

    んな成果があったか」などの項目が含まれて います。 • 本データを利用することで、行政事業が適切 に実施されているかのチェックができるだけ でなく、国の事業を受注したい企業などが事 業の特徴や競争相手を調べることでビジネス に活用することもできます。 多くの人々が政 治・行政のことを「自分ごと」として関心を 高めてくれることを期待しています。 以下の リポジトリでJSON形式でのデータ配布も行 なっています。 https://github.com/judgit/data http://idea.linkdata.org/idea/idea1s2869i?fbclid=IwAR3KBJe6i HBttcpyuCvnBdR9yKAFSNvINLE_DcJ0-JGaGSPtwpXhmzoh7vo
  12. メディア芸術データベースLOD • 公開年ごとにTVアニメ数を集計する PREFIX schema: <http://schema.org/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX

    rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX ma: <https://metadata.moe/ns/madb/ma#> SELECT ?y (COUNT(DISTINCT *) AS ?cnt) WHERE { ?s a ma:Collection ; ma:media "TVレギュラー" ; schema:startDate ?startDate . } GROUP BY (SUBSTR(?startDate, 1, 4) AS ?y) ORDER BY DESC(?y)
  13. メディア芸術データベースLOD • 公開年ごとにTVアニメ数を集計する PREFIX schema: <http://schema.org/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX

    rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX ma: <https://metadata.moe/ns/madb/ma#> SELECT ?y (COUNT(DISTINCT *) AS ?cnt) WHERE { ?s a ma:Collection ; ma:media "TVレギュラー" ; schema:startDate ?startDate . } GROUP BY (SUBSTR(?startDate, 1, 4) AS ?y) ORDER BY DESC(?y) 接頭辞 PREFIX を指定する たとえば, PREFIX ma: は文化庁 DBの叙述構造を取得する
  14. メディア芸術データベースLOD • 公開年ごとにTVアニメ数を集計する PREFIX schema: <http://schema.org/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX

    rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX ma: <https://metadata.moe/ns/madb/ma#> SELECT ?y (COUNT(DISTINCT *) AS ?cnt) WHERE { ?s a ma:Collection ; ma:media "TVレギュラー" ; schema:startDate ?startDate . } GROUP BY (SUBSTR(?startDate, 1, 4) AS ?y) ORDER BY DESC(?y) Select では, ?y と ?cnt を取得する Where 中では, ma:Collection の中で, ma:media で “TVレギュラー” に当て はまるデータを取得し, schema:startDate の情報 を ?startDate に渡すことを明記する
  15. メディア芸術データベースLOD • 公開年ごとにTVアニメ数を集計する PREFIX schema: <http://schema.org/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX

    rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX ma: <https://metadata.moe/ns/madb/ma#> SELECT ?y (COUNT(DISTINCT *) AS ?cnt) WHERE { ?s a ma:Collection ; ma:media "TVレギュラー" ; schema:startDate ?startDate . } GROUP BY (SUBSTR(?startDate, 1, 4) AS ?y) ORDER BY DESC(?y) ?startDate を substr 関数を使って, 年数だけにする、それを ?y と名づけ、 年ごとにグルーピングする ?y の値で並べ替える (order by)
  16. gBizInfo (旧法人インフォ) • https://info.gbiz.go.jp/ • (政府に関連する)企業の情報を 一元的に取得できる • Web インターフェースのみな

    らず, API も提供 • 取得できる主な情報 • 財務 • 特許 • 届け出・認定 • 補助金 • 調達 • 表彰 • 職場 • ローソンを出力した場合
  17. Dbpedia のデータモデル • リンクトデータの4原則 1. 事物の名前づけにURIを使う 2. HTTP URIを使うことでそれをWeb上で調べられるようにする 3.

    誰かがURIを引いたときには標準技術を使って有益な情報を提供する 4. 他のURIへのリンクを含むことで,人々がより多くの事物を発見でき るように支援する • “人や施設のような実世界の物や,色や単語,物の関係といっ た抽象的な概念についてもWeb上で扱えるようにする。”
  18. まとめ • 社会的な事象をオープンなデータセットとして取得して、解析 出来る時代はもうそこまできている!(ぺこぱ) • 今まで定性的な分析しか出来ないと思い込まれていた分野も、 だいたい定量的な分析が出来るようになってる (アニメとか ゲームとか) •

    記法としてはSQLとだいたいおんなじ。この講義の中ではSQL と同じく自分でデータの fetch をするところまでで留めていま すが、必要に応じて、データを自動的に取得してフロントエン ドにつなげるなども可能ではあります
  19. References • Linked Open Data(LOD)の基本的な使い方 • https://www.slideshare.net/KoujiKozaki/linked-open-datalod- 155413298 • SPARQL入門

    • http://www.aise.ics.saitama-u.ac.jp/~gotoh/IntroSPARQL.html • https://www.w3.org/TR/sparql11-query/#grammar
  20. 今日の実習 • Python + Jupyternotebook or Google Colaboratory で, DBPedia.org

    や文化庁DBやgbizInfoからデータを引っ張ってこよう • 利用するもの • Jupyter Notebook + Python3 • DBPedia.org の SPARQL Endpoint
  21. 今日の Notebook • Jupyter Notebook/Lab https://www.dropbox.com/ s/bplqjcqay7j06b3/Python %20%E3%81%A7%20SPAR QL%20Endpoint%20%2B%2 0DBpedia.org%20%E3%82

    %92%E4%BD%BF%E3%81 %A3%E3%81%A6%E3%81% BF%E3%82%8B.ipynb?dl=0 • Google Colaboratory https://colab.research.go ogle.com/drive/17gLr9cS zX9zSLQGHh3C- thgoC6RvdysG
  22. 2. DBpedia.org から, 経済学に関連するカ テゴリ情報を取得する • インポートした SPARQLWrapper をインスタンスにする •

    そのとき, どの Endpoint からデータを読み出すか設定する (今回は http://ja.dbpedia.org/sparql) • どういったデータを取り出すかクエリを指定する (特許データベース回参照) • 今回は, 経済学 に関するカテゴリの情報を一括取得する • Query() メソッドでデータを取得し, convert() で読みやすい形に変換する
  23. やってみよう • Dbpedia.org の場合 • Category: 以下の文字列を変えていろいろなデータを取得してみる。 たとえば、以下のカテゴリのデータを一気にfetch できる。 •

    日本の経営学者 • 日本の社会学者 • 日本のロックグループ • 日本のフォークグループ • 日本のヒップホップグループ • 文化庁DBやgBizInfoの場合 • 取得するデータの形式を変更してみる
  24. レポート1回目の引っかかりそうなポイ ント • COVID-19 で関連しそうな国別データを集める • World Bank; World Competitiveness

    Report http://reports.weforum.org/global-competitiveness-report- 2019/?doing_wp_cron=1570623935.4483180046081542968750 • OECD; OECD Statistics https://stats.oecd.org/ • コントロール変数や操作変数として何をつかう?
  25. レポート(2回目) • 概要 • テーマ; データを集めて分析して、卒論の足がかりをつくってみよう • 講義で取り上げたデータセット (BigQuery Sandbox/RESAS/Lens.org/いろい

    ろな SPARQL Endpoint) からデータを入手し, 四年生の卒論でやってみたい研 究の足がかりを作り, レポートにまとめる. • 条件; データセットを見つけてきて、分析をすること • 提出期間: 2020/07/09 16:20:00 (JST) • 提出方法:Slack のDMで
  26. レポートに記載して欲しいこと • Motivation (なぜそのデータセットに興味を持ったのか) • Research Question (データセットに基づき、どのような問いを 明らかにするのか) •

    Hypothesis (どのような仮説が挙げられるか) • Methods (どのようにデータを取得できるか) • Result (データを取得した結果、明らかにできたこと) • Conclusion (まとめ) • Research Limitation (今後やりたいこと)
  27. レポート(2回目)の進め方 1. まず, 何を分析するのか決める 2. 1. で分析と決めた対象群について, 以下の作業を行う 2-1. データセットが存在するか確認する

    2-2. どのようにすれば、データセットが入手出来るか確認する 2-3. 2. で定めた方法でデータを取得する 3. Excel and/or R and/or Python で解析を行う 4. Word and/or Google Docs and/or Notebook でレポートにま とめる
  28. 1. 何を分析するか決める • テーマ決め • 卒論でやりたいこと • 後期ゼミの課題のひとつ • なんとなく今知りたいこと

    など、今やってみたいことで、かつ「データがありそうなもの」を選択してく ださい。 • 事例 • パチンコホールが閉まっていない!とワイドショーがいっぱい話しているの で、とりあえず関連するデータを営業情報を掲載されている Web サイトか ら収集した (データ分析講義の第ゼロ回) • COVID-19に関連して、テレワークによる企業への影響を知りたい (IIR Working Paper x3)
  29. 2. データベースの選択とデータの抽出 • データベースの選択 • 企業データベース • 日経NEEDS, Entrepedia, 法人インフォ,

    RESAS etc… • 論文データベース • Lens.org, Google Scholar, Web of Science etc… • 特許データベース • Lens.org, Google Big Query, 特許庁データベース, IIP パテントデータベース etc… • Linked Open Data • 1. で定めた疑問について, 解析にあたり必要なデータを取得す ること. もちろん、これら以外のデータベースを利用しても構 わない
  30. Big Queryおすすめのデータセット(1) • Google Patents Research Data • “Google Patents

    Research Data contains the output of much of the data analysis work used in Google Patents (patents.google.com), including machine translations of titles and abstracts from Google Translate, embedding vectors, extracted top terms, similar documents, and forward references.”
  31. Big Queryおすすめのデータセット(2) • World Development Indicators – World Bank •

    “This dataset contains the most current and accurate global development data available including national, regional and global estimates. Data has been collected from the early 1960’s to present and is updated regularly depending on new data available on the indicators. This time series data offers indicators such as agriculture and food security, climate change, population growth, economic growth, education, energy, natural Resources and many more. • This public dataset is hosted in Google BigQuery and is included in BigQuery's 1TB/mo of free tier processing. This means that each user receives 1TB of free BigQuery processing every month, which can be used to run queries on this public dataset.”
  32. Big Queryおすすめのデータセット(3) • Chicago Taxi Trips • “This dataset includes

    taxi trips from 2013 to the present, reported to the City of Chicago in its role as a regulatory agency. To protect privacy but allow for aggregate analyses, the Taxi ID is consistent for any given taxi medallion number but does not show the number, Census Tracts are suppressed in some cases, and times are rounded to the nearest 15 minutes. Due to the data reporting process, not all trips are reported but the City believes that most are. For more information about this dataset and how it was created, see this post on the City of Chicago's blog.”
  33. Lens.org • 出来ること • 特許関連 • 特定企業/産業の特許数の変化についてデータを取得する • AI や機械学習に関する特許がどのくらい出ているか調査する

    • 論文関連 • 日本の私立/国立大学の論文生産数について比較する • ノーベル賞を受賞した科学者が書いた論文のうち, どれが重要が論文だったかを 特定し, その前方引用数を調査する
  34. 3. & 4. データの解析およびレポートの作成 • 2. で取得したデータに関して, 主に以下の分析を行い報告する こと •

    産業 (あるいは業界) 構造の特性の抽出 • 主な企業の売上高, 資本金および収益率など, 財務パラメータの比較分 析 • 特許や地域特性の分析 • 統計分析 (基本統計量の抽出, 散布図の作成, 回帰分析 etc…) • レポートの最後には、研究の発展性について明記するようにし てください。
  35. レポートの評価方法 • Excellent • データおよび適切な分析手法に基づき、独自の視点で十分に考察がなされている • Good • データおよび適切な分析手法に基づき、独自の視点で考察がなされている •

    Fair • データに対して分析が行われているが、一般的な範囲での考察にとどまる • Bad • 考察がなされていない,あるいはデータの解析が十分に行われていない • Failed • 断りなく他者の見解を引用している,その他不正行為に相当する
  36. 成績評価(1) • 平常レポート (40パーセント; 必須) • 講義計画に示したように、複数の回で学生にはレポートを課します。 レポートは Word/PowerPoint形式のメールあるいは, github

    経由で の提出が求められます(どの方法を採用するかは、初回の講義で決定し ます)。 • レポートには、(A.) 利用したデータセットとその内容, (B.) 分析の問 い, (C.) 分析手法, (D.) 分析結果 を明記する必要があります。ページ 数や文字数は問いませんが, これらの内容が含まれており, 講義中にア ナウンスする評価手法を満たす場合, 高い得点を得ることが出来ます。 • 平常点 (10パーセント) • 本講義は実習が多く含まれており, また取り扱うデータセットや内容も 多彩です。そのため、受講者同士が協力する必要があります。こうし た受講者の態度を評価するために、平常点を設けます。
  37. 成績評価(2) • 最終レポート (40パーセント; 必須) • 講義の最終回では最終レポートの報告会を行います。受講者は3名から4名か ら構成されるグループで、最終レポートの報告を行う必要があります(人数は 受講者の人数により変更される可能性があります)。最終レポートでは、プレ ゼンテーションの方法を学生は自由に選ぶことが出来ます。PowerPoint

    以 外にも、Prezi などのアクティブプレゼンテーションツールや、他のプレゼ ンテーション手法を用いることが出来ます(プレゼンテーションツールについ ては、必要であれば講義内で説明する機会を設けます)。最終レポートでは、 以下の点について評価を行います。 (A.) グループ内の役割分担 (B.) データセットのユニークさおよび、それが適切に処理されているか (C.) 分析手法のユニークさおよび、それが適切に解析されているか (D.) プレゼンテーションのユニークさ (E.) 質疑応答にうまくリプライすることが出来ているか • 最終レポートの360°グループ評価 (10パーセント) • 3. の最終レポートについて、グループの自己評価および他のグループからの 評価を行います。3. で挙げた評価ポイントに基づき、グループメンバーおよ び他のグループは評価を行います。
  38. 夏学期講義スケジュール • 8. 7/2 • テキスト分析 (Wordcloud, Word2vec, Topic Model,

    計量テキスト分 析)/SNS データの取得および分析 • これまで用いてきたデータセットについて、異なるアプローチから解析すること を目指します。具体的にはすでに定量化されているデータではなく、特許におけ る特許名、論文における論文名、企業データベースにおける企業の概要などのテ キストデータを解析する手法について学びます。具体的には, Wordcloud, Word2vec, Topic モデルなどについて解説します。 • また計量テキスト分析、特に共起ネットワーク, 分散分析などの手法について, KHcoder (http://khcoder.net) を用い解析を行います。関連して、Twitter など のソーシャル・ネットワークからAPI などの手法を用いてテキストデータを取得 し解析する方法について解説します。