デジタル庁は、Excelなどの表形式のデータがコンピューターやAIにとって読みやすい形かどうかを100点満点で採点するツール「Harunobu(はるのぶ)」を、ソースコードを公開するオープンソースソフトウェアとしてGitHubで提供している。古川俊治デジタル相が11月2日の記者会見で紹介し、行政機関の職員に限らず民間にも利用を呼びかけた。判定の基準は国の行政機関が3月に決めた機械可読性のルールで、セルの結合は10点の減点、1枚のシートに複数の表を載せると0点になる。

大臣「民間の方々にも使っていただける」

古川氏は会見で、表形式のデータについて「セルの結合や空白行など人間には読みやすいけれども、コンピューターにとっては扱いづらい形で作成されていることが少なくございません」と説明した。そのうえでHarunobuを「行政機関の職員に限らず、民間の方々にも使っていただけるツール」と位置づけ、AIの利活用を進めるためにも機械可読性が確保されたデータの整備が重要だと述べた。

会見の質疑では、記者が、仕様書や設計書をExcelで書く慣行がIT業界に広がっているとして、根本から見直す必要があるのではないかと尋ねた。古川氏は、現場でどう作られているかは承知していないと断ったうえで、機械可読にすればAIに渡してそのまま読ませることができる一方、人が書面で確認することも必要だとして、「両方の面で対応が必要ではないか」と答えた。

ツールを開発したのは、デジタル庁のファクト&データユニットである。同庁の公式noteによると、エンジニアによる完全内製で、政策ダッシュボードの開発で蓄積した行政のExcelデータの癖に関する知見を生かした。GitHubのリリース履歴では、最初の版v0.1.0が7月27日、最新のv0.2.3が10月27日に出ており、同庁は10月21日付のnoteで開発と公開を説明している。

名称は江戸時代の浮世絵師、鈴木春信に由来する。紙の上に複数の版を重ねて多色刷りの錦絵を作るように、Excelデータに複数のルールを重ねて機械可読なデータを作るという着想だと、noteは説明している。春信と同じ町内に平賀源内が住んでいたといわれることにも触れ、同庁が各府省庁に展開する生成AI環境「源内」を紹介した。源内の利用状況は、政府の生成AI「源内」、利用者の71.7%が満足 職員調査で週1.83時間短縮と推計で伝えている。

国のルールは30項目、3段階で整理

基準となる「行政データにおける機械可読性に関するルール」は、3月31日の各府省庁DX推進連絡会議とデジタル社会推進会議幹事会の合同会議で決定された。機械可読とは、コンピュータープログラムが自動的にデータを加工、編集できることを指す。ルールは、見やすさを工夫した表について、受け手への配慮と評価できる一方で機械可読性が損なわれ、データ利活用の支障になっていると指摘した。レベル1を満たす効果の一つには「神エクセル」からの脱却を挙げている。

整理は3段階である。レベル1は「閲覧・転記可能」で、最低限の機械処理ができる状態を指す。レベル2は「集計・分析可能」で、統計的な集計を前処理なしで実施できる状態、レベル3は「連携・自動化可能」で、異なるデータの結合や比較分析、プログラムによる自動処理ができる状態と定義した。デジタル庁が公開したコード版では、レベル1が15項目、レベル2が6項目、レベル3が9項目の計30項目となっている。

対象は、国の行政機関が作成する表形式のデータのうちオープンなデータである。レベル1は遵守すべき基本ルールと位置づけ、今後作成するものは少なくともレベル1を満たすよう順次取り組むとした。令和8年4月以降に作成するデータから、利用頻度の高いものを優先する。外部の事業者にデータ整備を委託する場合は、仕様書などでルールに適合した形での納品を求める。より厳しい別のルールが適用される基幹統計などは、従来のルールのもとで取り組みを続ける。

ルールは、利用者の側がデータの整形を担っている現状にも触れている。データ品質に責任を持つ提供者である各府省ではなく、利用者が作業負担を強いられ、利用者一人ひとりが同様の作業をするため社会全体でコストが発生しているとの指摘があると、注記で明記した。デジタル庁も、行政の公開データは他の行政機関、民間事業者、研究者など利用者が多く、整形の負担を減らす効果は社会全体に広く及ぶとしている。

違反1項目ごとの固定減点、重大な違反は強制0点

Harunobuの採点はレベルごとに出る。READMEは「レベル1で100点、レベル2で40点、レベル3で0点」という出力例を示している。点検するレベルは利用者が選び、軽量チェックはレベル1だけ、標準チェックはレベル2まで、詳細チェックはレベル3までを見る。既定は標準チェックである。

点数の出し方は単純だ。各レベルの100点から、違反したルールごとに決まった点数を引く。減点はルール単位なので、結合したセルが1か所でも100か所でも、レベル1の減点は10点のままとなる。一方、重大度が最も高い「FATAL」の項目に1つでも違反すると、そのレベルは他の項目にかかわらず強制的に0点となる。公開されている計算例では、レベル1で重大度「CRITICAL」の項目と「MINOR」の項目を1つずつ違反すると88点になる。

判定項目 レベル 違反時
1シートに複数の表を載せない 1 強制0点
データを分断しない 1 10点減点
1セルに1データとする 1 10点減点
セルを結合しない 1 10点減点
色や太字などの書式でデータの違いを表さない 1 10点減点
不要な行や列を非表示のまま残さない 1 10点減点
データ範囲の外にメモなどを残さない 1 5点減点
空白とゼロを区別する 1 2点減点
数値の列に文字列を含めない 2 強制0点
項目名などを省略しない 2 強制0点
選択肢の回答を標準化する 2 40点減点
数式を数値データに直す 2 30点減点
時間軸の表記を標準化する 3 10点減点
データを縦持ち形式にする 3 10点減点
Harunobuの主な判定項目と配点(全30項目のうち14項目を抜粋)出典: デジタル庁「ルール配点表」(GitHub)

結果の画面には、レベルごとの点数のほか、違反したルールと箇所、理由が一覧で出る。Excelであれば何行目・何列目のセルがどのルールに違反したかまで示され、JSONやCSVの形式で保存できる。読み込めるのはExcel(.xlsx、.xlsm)、CSV、TSVで、使い方はブラウザの画面、コマンドライン、Pythonからの呼び出しの3通りある。実行にはPython 3.10以上などの環境の用意が必要となる。

判定にAIを使わず、修正はプログラムを介する

Harunobuの判定は、既定ではAIを使わない。同じファイルには常に同じ結果を返す仕組みにした理由を、noteは数字で説明している。AIにルールを読ませて判定させると結果が毎回同じとは限らず、仮に100万ファイルを判定して1%の確率で誤判定が起きれば、1万ファイルの結果が誤っているうえ、どれが誤りなのか分からなくなるという。

手元のパソコンで動作し、AIの補助を使わない限り、読み込んだファイルの内容は外部のサーバーに送信されない。このため、デジタル庁は未公開の行政データも点検できるとしている。AIによる判定補助の機能もあるが、利用者が任意で有効にした場合に限られ、その場合は利用者が設定した外部のAIサービスへデータが送られる。同庁は、所属組織のセキュリティーの方針に従って判断するよう求めている。

ツールが行うのは採点までで、ファイルは書き換えない。修正の方法としてnoteが示したのは、採点結果とデータをAIに読ませ、データを直接書き換えさせるのではなく「データを整形するプログラム」を作らせる手順だ。プログラムであれば同じファイルに同じ処理を繰り返せるためで、整形後のデータはHarunobuにかけ直して検証する。同庁は、違反を多く盛り込んだダミーのExcelを生成AIで整形した例を公開している。外部のAIサービスでデータを扱う場合は、所属組織の利用ルールに従うよう注意書きを添えた。

配点は「公式見解ではない」、判定できない項目も

点数の扱いには留保が付く。READMEはHarunobuを「サンプル実装」と呼び、ルールごとの配点と判定の仕組みは独自に開発したもので「政府の公式見解を示すものではありません」と明記している。不具合の修正や機能改善の義務も負わないとしている。ツール部分はMITライセンス、ルールのファイルと文書は公共データ利用規約第1.0版で提供され、デジタル庁は独自に発展させた開発も妨げないとしている。

30項目のすべてを判定できるわけでもない。「回答のコード表が別添されているか」「特殊記号の定義を明記しているか」「データの定義や更新履歴が記載されているか」の3項目は、ファイル単体からの自動判定が難しいなどの理由で対象外とした。「年によってフォーマットが著しく異なっていないか」は、複数のファイルをまとめて点検するときにだけ評価する。いずれも1ファイルの点検では点数に影響しない。

ルールの解釈を単純化した項目もある。「データ本体と無関係な情報がないか」については、内容が本当に無関係かは判断せず、データの範囲外にある文字を検知する方式を採った。このため、表の直前に置いたタイトル行もレベル1の違反として報告される。デジタル庁の説明文書は、これを仕様どおりの動作としたうえで、行政データでは意図的な配置であることが多いと認めている。入れ子の表や複数行にまたがる項目名では、表の範囲の推定精度が下がるという。

対象となるデータの範囲にも限りがある。ルールが対象にするのは今後作成するデータで、すでに公開された膨大なデータに遡って機械可読性を確保するには大きなコストがかかり、人手では実行できないと、noteは述べている。そのうえで、採点だけなら大量のファイルにも実施でき、部署ごとの平均点を取って課題の多い部署を重点的に支援するといった使い方も挙げている。

整形の費用は提供者が負うべきだ

行政が公開する表を読みやすくする費用を、誰が負うのかという問題である。ルールが記すとおり、提供者が直さなければ、同じ表を使う利用者一人ひとりが同じ作業を繰り返す。1回で済む作業を利用者の数だけ行うことになるため、利用者には他の行政機関も含まれる。提供者の側で直す方向に転じた今回のルールは、公金と社会全体の負担を減らす点で妥当といえる。デジタル庁が内製し、誰でも使える形で公開した点も、各府省が別々に点検の仕組みを作る場合と比べて合理的だ。

一方、ルールの本文に、適合の期限や、適合の状況を公表する定めは見当たらない。「順次取り組む」だけでは、進み具合を外から確かめることができない。配点が公式見解でない以上、点数を各府省の順位付けに使うのは適切ではないが、同じ基準で同じ結果が出る道具はすでにある。データを使う事業者や研究者、費用を負担する納税者の立場から見れば、各府省は公開データの適合の状況を数字で示すべきではないか。