データガバナンス機能
国⽴情報学研究所
オープンサイエンス基盤研究センター
データガバナンス機能担当
横⼭重俊
2022年6⽉1⽇© 2022 National Institute of Informatics

11. データガバナンス機能とは2

データガバナンス機能の位置付け
研究データ管理品質を向上させるためにワークフロー、モニタリング、研究記録機能を提供

データガバナンス機能

3

RDC (Research Data Cloud) の必要性

DMP: Data Management Plan

4

研究データ
研究データの例

研究データの構成
datasetReadme etc.
datasetdatasetcode
metadata
data・・・

code
metadata

data

5

研究データ管理
研究計画

研究
公開
研究データ
取得

実験

研究データ
加⼯

研究データ
分析

研究データ
保存
Destination_dataset(tmp1)

研究記録

験

実の次

Destination_dataset(tmp2)

Source_dataset

Destination_dataset(tmp3)

保存6研究データ管理 と データガバナンスの関係
データガバナンス

︓ 研究データ管理品質を守る規律に従う⾏為
研究データ管理品質

研究データ管理︓

研究データの取得・加⼯・分析・保存・公開などの⾏為

仮説︓研究者や研究グループ⾃⾝が，データガバナンスを，⽇頃から⾏うことが，研究データ管理品質の向上に⼤きく寄与する．
（ガバナンスは監視ではない）

7

研究データ管理品質のばらつき
⾼いProject

研究データ管理品質
Project
Project
Project

低い8

施策の展開による研究データ管理品質向上
データガバナンス施策
研究データ管理ポリシー制定

⾼い研究データ管理プラン（DMP）提出の義務化 など

PULL

Project

研究データ管理品質
Project
Project
Project低い

9

データマネジメントプラン (DMP)
データマネージメントプラン(DMP)は，研究のために収集・作成する研究データの取扱いや整備・保存・公開についての計画を定めた⽂書である．
DMPの記述内容は提出先の助成機関によって異なるけれど，データ管理者，データの説明，データの種類，データ量，公開レベルなどが記述される．
研究データガバナンス

︓

研究データ管理品質を守る規律に従う⾏為

研究データ管理ポリシーなどを考慮して，各研究プロジェクト毎に作成

DMP
研究プロジェクトの研究データ管理で順守

研究データ管理 ︓（必要に応じて改版）

研究データの取得・加⼯・分析・保存・公開などの⾏為
10データガバナンス機能の役割
研究データガバナンス施策
研究データ管理ポリシー制定
研究データ管理ガイドライン

⾼い研究データ管理プラン（DMP）提出の義務化 など

Project

データガバナンス機能

Project

データガバナンス機能

nudge

nudge

データガバナンス機能

研究データ管理品質

データガバナンス機能

PULL

Project

nudge

nudge

Project低い

11

「ガバナンスする。」とはステート（＝メタデータ・データセット）の変化を検証し、検証プロセスを保存し、提供する、こと
datasetReadme etc.

datasetdatasetContact
Contributer
Project
Security
Privacy
Resource
Cost…

metadata

code
metadata

検証・・・

DMP

出⼒

code

検証

data

研究記録出⼒

検証

data

検証

検証

検証

検証

検証公開

⾮公開
Planning

Experiment

Collaboration

検証

Analysis

データ管理基盤

Writing

Curation

Publication

Preservation

データ公開基盤12

2. プロトタイプシステム

13

プロトタイプシステムの機能と特徴
機能

研究データ管理計画（DMP）に基づき研究に適した環境を準備し、データ管理品質の維持を⽀援① ⼊⼒されたDMPから最適なワークフローを⽣成② ワークフローを実⾏することで、実験の準備、実験の実施、結果の保存、およびその⼀連の⼿順を記録③ 実験で作成されたデータがDMPと整合するかを確認
特徴① 作成されたDMPからｍaDMPを⽣成し、研究や実験⼿順を最適な形で展開するワークフローを作成② ワークフローは、データ分析の分野で広く利⽤されているJupyter Notebook③ ワークフローにしたがって半⾃動的に実験結果を記録、その記録はGitによるバージョン管理を⾏うことが可能④ 実験に関するデータや⼿順、実験結果と記録⽂書がシステム的にパッケージ化

14プロトタイプシステムのアーキテクチャ (1/2)
ステート（＝メタデータ・データセット）の保存をgit, git-annexを使ったgin/dataladというオープンソースプロダクトで実装、検証プロセスをJupyter Notebookで実現
datasetReadme etc.

datasetdatasetdataladContact
Contributer
Project
Security
Privacy
Resource
Cost…

metadata

code
metadata

検証・・・

出⼒

code

git-annex

dataDMP

検証

研究記録出⼒

検証

data

検証

検証

検証

検証

検検証
Jupyter
証 Notebook

公開

⾮公開
Planning

Experiment

Collaboration

Analysis

データ管理基盤

Writing

Curation

Publication

Preservation

データ公開基盤15プロトタイプシステムのアーキテクチャ (2/2)
maDMPは「研究プロセスの設計書」
実⾏スクリプトと⼿順と説明⽂が⼊ったNotebook

breakdown
研究実施⼿順、研究実施状況確認⼿順、研究保存⼿順

breakdown （workflow, monitoring,研究記録）
実験群実施⼿順

UI generator

実⾏dataset

Distributed Storage

Readme etc.

datasetdataset実⾏結果が反映されるDataset

metadata

code
metadata

code
datadata16プロトタイプシステムの機能
データガバナンスを実施する実⾏可能な⼿順書(Notebook)をDMPから⽣成
DMP

実⾏スクリプトと⼿順と説明⽂が⼊ったNotebook

Workflow(Phase)

Research
Planning

Initialize
Start
Research Env. Research

1st Stage 2nd Stage finalize

write
paper

publishcuration

*

⼿順の整備
で品質向上
Workflow(Section)

Workflow(実験 level)
実⾏

実⾏

実⾏

実⾏

・・・
実⾏結果が反映される
Datasetdatasetdatasetdataset

継続監視で品質向上

dmp.json etc.

dataset
・・・

定期実⾏
監視⽤
Notebook

・・・

・・・

datasetdataset・・・codemetadata
code
metadata
data

Monitoring

data

公開

⾮公開
Planning

Experiment

Collaboration

Analysis

データ管理基盤

Writing

Curation

Publication

Preservation

データ公開基盤17

研究活動⽀援範囲
研究準備フェーズ

実験フェーズ

実験終了フェーズ

研究終了後

実験環境準備

実験実施

実験記録の保存

実験のパッケージング

ワークフローのセルを順に実⾏
・実験環境の情報⼊⼒
・実験環境接続・実験環境の⽣成

ワークフローのセルを順に実⾏
・実験リポジトリーを作成
・実験記録管理の準備

ワークフローのセルを順に実⾏
・実験記録の保存

ワークフローのセルを順に実⾏・論⽂等研究⽂書を保存

ワークフロー機能の実⾏準備
初期セットアップ

!
"
#
$%
&'(機能

データガバナンスログイン
・研究リポジトリー作成
・DMP作成⽇付/タイトル/研究情報
データサイズ/構造
スキーマ 等
・ワークフロー⽣成（maDMP⽣成）

ワークフロー⽣成時に最適化に必要な情報が埋め込まれています
順番に実⾏することで、システムがDMP情報を活⽤した最適化処理を⾏います

実
験
環
境
最適化情報
テンプレート

ワークフローのセルを順に実⾏・実験実施

ワークフローのセルを順に実⾏
・研究データ容量モニタリング
ワークフローのセルを順に実⾏
・データセット構成モニタリング
ワークフローのセルを順に実⾏・再現性モニタリング

18実験適⽤例
底⽣⽣物の検知／追跡

データ提供：海洋研究開発機構(JAMSTEC)

19

実験適⽤例の概要
海中を映した動画中に含まれる、底⽣⽣物を検知／追跡する。
・実験1 物体検出
動画の各フレームで⽣物を検知する検知器を作成・評価する。
・実験2 物体検出＋追跡動画のあるフレームで検出した⽣物が、次フレームでどこに移動したかを追跡するAIを作成し、追跡性能を評価する。
F

CG

B
実
験
１

A

DA

E

B

実
験
２
データ提供︓海洋研究開発機構(JAMSTEC)

20

実験１「detr(物体検出の学習と評価)」の説明
実験概要、⽬的

概要︓機械学習による物体検出の学習とその評価の出⼒。
⽬的︓良い物体検出モデルを作成する。

実験構成以下を構築

input_data
configs 設定ファイル（実験のパラメータ）
data
機械学習の教師データと評価⽤データ（実験の⼊⼒データ）
weight 機械学習の初期重み（実験の⼊⼒データ）
sourcetrain.py 学習⽤プログラム
eval.py 評価⽤プログラム

実験の実⾏
main.ipynbを実⾏（環境構築、学習⽤プログラム実⾏）
約10分後、以下のフォルダに結果が格納される。
output_data
hogehoge_20220309183628 モデルと学習曲線

評価値を取得して、以下を確認する・モデルと学習曲線（モデルの性能が良くなってるか（数値））

モデルと学習曲線のフォルダパスをconfigに適⽤して、eval.pyを実⾏し、推論結果の評価値と推論動画を得る。
そして、モデルの性能が良くなっているかを⽬視確認する。

実験リポジトリ│├─input_data│ ├─configs│ │hogehoge.yaml│ ││ ├─data│ │└─11175505│ │├─annotations│ ││instances_train.json│ ││instances_val.json
│ │
│
│ │
├─images│ ││frame_000000.png│ ││frame_000010.png
│ │
│
・・・
│ │
│
frame_001440.png
│ │
│
│ │
└─video_and_score_text│ ││ 11195506.mov│ │└─11195506│ │frame_000000.txt│ │frame_000001.txt│ │・・・│ │frame_001754.txt│ ││ └─weight│detr-r50-e632da11.pth│├─output_data│ ││ ├─hogehoge_20220309183628│ ││ hogehoge_valloss_min.pth
│ │
│
│ │
└─2022_0309_1836│ │[train.pyによる評価データ（学習曲線）]│ ││ └─inference│└─hogehoge_20220309183628│[eval.pyによる評価データ（推論の評価値と推論動画）]│└─source│ eval.py│ train.py│ main.ipynb├─detr└─Object-Detection-Metrics

実験２「DeepSORT」＋「ByteTrack」の説明
実験概要、⽬的

概要︓物体の検出＋追跡と、その評価の出⼒。
実験１の出⼒（検出量の重み）を使って⾏う。
⽬的︓良い追跡パラメータを⾒つけ、追跡する。

実験構成

以下を構築

input_data
config
設定ファイル（実験のパラメータ）
video
処理対象の動画と評価データ（実験の⼊⼒データ）
weight 検出⽤の重み（実験の⼊⼒データ）
sourceinference_detr+tracker.py 追跡⽤プログラム
main.ipynb
実⾏⽤プログラム実験の実⾏
main.ipynbを実⾏（環境構築、検出＋追跡⽤プログラム実⾏）
約１時間後、以下のフォルダに結果が格納される。
output_data
result.txt
計算ログ
result_metric.txt 評価値
video.mp4
検出枠＋追跡枠を動画に書き込んだもの

評価値を取得して、以下を確認する
・推論結果の評価値と推論動画（追跡の性能がよくなってるか）

実験リポジトリ│├─input_data│ ├─config│ │colors.txt│ │hogehoge.yaml│ │labels.txt│ ││ ├─video│ │ │ 11195506.mov│ │ └─11195506│ │frame_000000.txt│ │・・・│ ││ └─weight│ckpt.t7│hogehoge_valloss_min.pth（実験1の出⼒）│├─output_data│││

result.txt
result_metric.txt
video.mp4│└─source│ inference_detr+tracker.py│ main.ipynb├─detection└─tracking

①DMPの作成および、maDMPの⽣成

ワークフロー機能の実⾏準備

研究準備フェーズ

実験フェーズ

実験終了フェーズ

研究終了後

初期セットアップ
データガバナンスログイン
・研究リポジトリー作成
・DMP作成⽇付/タイトル/研究情報
データサイズ/構造
スキーマ 等
・ワークフロー⽣成（maDMP⽣成）

DMP⼊⼒画⾯

・各FA(AMED,JST,METI・・・)に対応したDMPの作成を、Jsonエディタにて作成可能
・各項⽬ごとに、 Jsonエディタから⼊⼒する

maDMP(Notebook 形式)

maDMP⽣成・研究者によって作成されたDMPの内容をもとに、ワークフローの最適化を⾏う
maDMPに変換

23

②⾼性能実験環境準備⽤のワークフロー

ワークフロー機能の実⾏準備

研究準備フェーズ

実験フェーズ

実験終了フェーズ

研究終了後

実験環境準備

ワークフローのセルを順に
実⾏
・実験環境の情報⼊⼒
・実験環境接続・実験環境の⽣成

・maDMPに記載された内容をもとに、⾼性能実験環境を準備する⽤のワークフロー（⼿順書）を提供。

・研究者は、NoteBookのセルを実⾏するのみで、⾼性能実験環境を準備できる。

24

③実験の実施 研究サンプル(底⽣⽣物の検知／追跡)

ワークフロー機能の実⾏準備

研究準備フェーズ

実験フェーズ

実験終了フェーズ

研究終了後

実験実施
ワークフローのセルを順に実⾏
・実験実施

・実験の開始⽅法について、⾃由な実⾏をサポート（再現性担保のため、⼀部制限あり）

25

③実験の実施 研究サンプル(底⽣⽣物の検知／追跡)

ワークフロー機能の実⾏準備

研究準備フェーズ

実験フェーズ

実験終了フェーズ

研究終了後

実験実施
ワークフローのセルを順に実⾏
・実験実施

イカ

アナゴ

※動画は開発中のものです

データ提供：海洋研究開発機構(JAMSTEC)
26

④実験の記録
ワークフロー機能の実⾏準備

研究準備フェーズ

実験フェーズ

実験終了フェーズ

研究終了後

実験記録の保存
ワークフローのセルを順に実⾏
・実験記録の保存

・実験の記録について、NoteBookのセルによる⼿順書を提供
セルの実⾏のみで、実験の記録をGitによるバージョン管理で⾏うことができるようにする

27

3. 今後の進め方

28

取り組み⽅針
1. 実研究プロジェクトからのフィードバックへ対応••

プロトタイプシステムの継続的更新
実研究プロジェクト候補（機械学習、ゲノム分析、数学など）

2. システム連携• RDC内の基盤・機能との連携• 他機関基盤との連携

3. 先読み• 分散ストレージ対応

4. 国内外へのプロモーション29

Thank you30