政府開放資料品質檢驗機制
緣起
5/2 零時政府參與者 jimmyhuang, muyueh & tkirby 前往科技部參與開放資料座談,座談中提及五星開放資料與資料品質的問題,張善政部長談到請零時政府評估是否可能協助建立資料品質檢測的機制。
由於資料品質定義廣,從資料量、更新頻率、正確性、詳細度、精確度、修改記錄到大家常談論的格式等都屬於品質的一環,希望能夠透過社群討論出一個完整且有效的方式,來提升政府開放資料的整體素質。
- 5/2 會議記錄
- 會議前討論:政府開放資料政策 Review
討論
(先隨便列些綱目,請自己加)
政府開放資料應該要注意的地方
- 釋出格式應為開放格式
- 可建立常見/推薦格式列表,比方說 csv, json, shp, topojson, px, png, etc...
- 程式可讀性
- 提供恰當授權
- 若需收費,需有適當理由,否則依規費法,收零元即可
- 編碼應使用 utf-8,而且不應該再看到用圖片代替的文字了
- 各種實體應有獨一無二的 id 可指涉 (像是縣市代碼)
- 另外,即使是用名稱,也應用同個名稱指涉同個實體。臺北、台北這種分身問題應該要避免。
- 資料要有妥善的說明,例如資料來源,計算方式,誤差值,數字單位等等。
- 可降低資料誤用率
- 甚至資料建置的成本、人力等等都可以附帶?有需要嗎?
- 常用的資料類型要規範其形式。例如
- 電話: 規定使用 (02)2322-7787(市話)、 +886-2-2322-7787(國際) 、0912-312-312(其他)格式
- 排版文字: 使用 html 排版或是 white-space preserved 形式的排版?
- 提供統計數字時應同時提供原始資料備檢驗
- 歷史資料均應留存 (Youbike 歷史資料現無記錄)
- 試算表表格排版資訊移除後應該也要可讀 (不要使用合併儲存格)
- 相似的資料應該統一建立在一份資料集中。比方說,生物多樣性資料。
- 自動化,盡量以已建資料庫系統的資料為基礎,定時自動轉出資料,減少人工介入造成的錯誤與延遲
- 應該有一個統一的資料倉儲,在資料入倉前能夠設計一些自動檢查措施,提高資料的品質
- 即時性
- 從政府取得資料,到上傳至民間可取得管道上,時間應該不超過一天。
- 地震資訊、天氣資訊等應即時傳遞。
- 特殊狀況
- 大型特殊狀況,例如天災等,應即時建立API系統,讓民間網站可以快速建立。
如果有會更好的東西
- 使用 REST URL Pattern
- 示範性資料展示平台,例如
- 地理相關,如地標:依經緯度可在地圖上預覽
- GDP:可顯示線圖
- 城市 3D模型: WebGL 預覽
- API
- 例如,若有一天郵局開放地址中翻英的算法與資料,仍然可提供展示平台跟轉換 API。
- API 架構與規範也需要訂好。可參考 google api , google maps, cse, plus, youtube 等等 api 的機制其實是統合的。東一份西一份什麼的,最討厭了。
- API盡量遵循標準format, 例如HATEOAS, SWAGGER 另外並提供api 相關的document
- 可以的話也提供i18n API,方便開發i18n的相關應用
- 不同單位部會間應統一資料系統,例如
- 若牽涉數值表格,則都用 CSV
- 人口數統計一律建立各年齡層統計表
- 依此類推
- 若各單位釋出同質性資料,應由上級單位規範格式
- 有資料的前提下,資料單位越細越好,提供統計資料不如提供原始資料。例如
- 各鄉鎮人口資訊可做至村里甚至鄰
- 交通事故可提供經緯度
- 無資料但有經費的前提下,可將提升資料細緻度規劃至單位未來的施政計劃中
- 有類似 RSS 機制可以知道資料更新
- 資料錯誤回報平台
- 透過 id 指涉錯誤資料以利回報
- 資料修正進度查詢
- 程式可處理之勘誤表 (如 patch file or 資料建入版本管理系統)
除了上述兩項,可以用來評量的標準
- 各單位資料開放量
- 各單位資料開放進程
- 各單位根據民間回饋的資料修正率
- 開放資料五顆星達成率
- 資料開放格式是否滿足上級單位之要求
- 民間的評鑑
- 理論上夠好的資料應該很容易就可以轉換到相容的格式,例如 csv 轉成 xls 。這是否可列為指標之一?
- 結構化資料是否有採用相關國際標準(是否有相關標準、採用部分為何、不採用原因為何)
做法面上,讓資料變得更完善的機制該怎麼實作?
- 定期的資料黑客松
- 獎金鼓勵參與?或是利用更現代的方式例如成就系統之類的..
- 專門的評鑑機構
- 程式自動審查
- 開放資料同時提供 meta data,由程式檢查欄位是否齊全
- 編碼、表格的資料形態,
- 資料正確性 (比方說, 明明是縣市名稱,卻跑出鄉鎮名,或是名字打錯)
- 紙本資料全面電子化計劃
- 有鑒於政治獻金、建築執照等資訊都是紙本掃描,這類形態的資料是否可以專案處理?全國性的清查此類資料,建立資料轉換小組,利用網站透過群眾外包或是雇員將資料建檔。
- 讓一般民眾傳達意見的管道
- 除了駭客之外,建議有一個管道,讓一般民眾提一些意見。
廣義的開放資料
- 政府網站是否應該開放源碼?
- 是否可接受民眾 pull request?
- 若有的話,不涉及軍事機密之演算法是否可開放
- 科技部考不考慮利用、推廣並積極參與開源社群?
開放資料五顆星的原則應用於資料品質的議題
- TimBL的開放資料五顆星所著重的點在於資料的開放性,因此第一顆星的開放資料就要是以開放授權釋出,若這資料還是結構化資料(非圖片,機器難以處理的),那滿足二顆星,如果進一步是非專屬格式,如CSV,則滿足三顆星,若資料可以開放到,資料集中每一筆資料本身在網路中都有一個URI來指涉,就滿足了第四顆星的開放資料,一般做法就是以RDF的格式,因為有了URI,所以資料集中的資料可以透過語意相互連結,這就是五顆星等級開放資料,也就是常說的Linked Open Data。
- 政府資料要做到五顆星等級的資料在技術成本上很高,目前歐美各國也僅只有少數國家有,多數國家多是三顆星等級的資料,若有需求,再依照資料特性與系統服務的目的來轉換資料為RDF格式,並設計ontology(知識本體),扮演的角色很像資料庫的schema,促使資料能夠相互連結。
- 若單就這開放資料五顆星的等級,個人覺得無法解決,目前開放資料品質的問題。拾人牙慧,英國ODI為開放資料證書(Open Data Certificates),設計出幾個資料品質評估面向,或許是可以參考的:
- 法律需求(Legal Requirements):權利(Rights)、授權(Licensing)、隱私(Privacy)
- 技術資訊(Technical Requirements):資料所在地(Locations)、格式(Formats)、信任(Trust)
- 實用資訊(Practical Requirements):可檢索性(Findability)、 資料的準確性(Accuracy)、 品質(Quality)、保證(Guarantees)
- 社會資訊(Social Requirements):文件檔案(Documentation)、支持(Support)、服務(Service)
其他意見
小弟覺得目前大部分政府網站,其對象都是人。政府這邊還沒有建立專門針對程式應用,寫API管道的概念,是目前最大的問題。
- 我覺得 Schee 那邊針對城市所做的調查感覺蠻不錯的:http://tw-city.census.okfn.org/
意見匯整
下方開始將上方的討論總結
g0v 社群建議政府開放資料品質檢驗應注意之要點
導言
為促進民間創意發想,開放資料之原則應以負向表列為主 -- 除了表列出不應開放資料之外,所有的資料均應遵循適當原則公開給大眾使用。負向表列之建立則除非涉及法律或國安問題,應以儘量開放為原則。
開放之資料必須具備的條件 (必要條件)
所有的必要條件都應該達成。若未能達到所有必要條件,則不及格。
- 資料開放率需夠高
- 使用正確且開放的格式
- (開放) 資料使用之格式應普及,並不需使用收費軟體開啓。例如,不應使用 doc, xls 等格式。
- (開放) 使用的格式應有格式之說明,讓任何人都能夠自行撰寫讀取程式。
- (正確) 應提供各類型資料之建議格式列表。例如,表列或統計資料應使用 csv ,不應使用 pdf。
- 提供使用授權
- 一般情況下,資料不應限制使用範圍及用途
- 無論範圍受限與否,資料必須附帶其可用範圍的清楚說明
- 提供資料說明
- 應提供資料來源、計算公式、誤差範圍及其他與資料意涵之說明,避免資料遭誤用。
- 例如,人口普查之方式,死亡率之計算法等等,給定經緯度之誤差範圍等等。
對開放資料品質有幫助的條件 (充份條件)
若能達成充分條件,則為良好的開放資料。
- 提供版本資訊
- 明確記錄資料修訂的內容及時間。例如 2010 年台北縣更名為新北市,或村里改名、合併等資料。
- 資料更改之記錄應視為另一種開放資料,並遵循所有開放資料應有之規範。
- 提供歷史資料
- 針對不同時間點提供不同版本之資料,例如給定一個時間點,取得當時隻全國村里界圖。
- 過去曾釋出的資料在未來也應該能夠取得 (例如,YouBike 的資料並無留存,無法取得過往資料)
- 資料統一
- 政府應針對各類型的資料給與表現的標準。
- 例如,各部會間提到台北市時,「臺北市」「台北市」「台北」都有人用,不統一造成混亂。
- 又例如電話號碼 02-1234-56787、12345678、(02)12345678也都有人用,處理上有困難。
- 常見的資料統一方針如下,僅為舉例
- 統一使用 utf-8 編碼
- 統一使用 markdown 或 html 排版
- 統一使用代碼表示各鄉鎮,例如 ISO 3166-2:TW 中使用 TW-CYI 代表嘉義縣
- 避免使用全形空白
- 足夠的資料細緻度
- 例如,提供各鄉鎮而非各縣市的統計資料。
- 又例如,提供經緯度而非概略地址(例如,中正路口檳榔攤斜對面之類)
- 示範性資料展示平台
- 除了提供資料以外,也提供瀏覽之介面
- 例如提供 shp 檔之餘,也可先在線上地圖預覽 shp 之內容
- 統一的 API 介面
- 例如由 data.gov.tw 統一使用 REST 規範提供資料。比方說,2013年台北市大安區男性 25~30歲人口數據可由下列網址提供:
- http://data.gov.tw/moi/population/taipei/daan/2013/man/25-30/
- 也可為中文網址: http://data.gov.tw/內政/人口/台北市/大安區/2013/男性/25-30/
- 提供即時資料
開放資料品質的其他評分方式
- 資料開放規劃及進程
- 各單位是否建立單位內所有資料之列表,並評估不可釋出之資料後,提出資料開放之進程?
- 民間回饋處理之效率及完成率
主動提升開放資料品質之建議做法
- 定期資料黑客松
- 由政府單位列出可提供之資料列表,於黑客松時應民眾需求提供,藉以了解民間需求並獲取回饋以了解開放之資料品質
- 程式自動審查
- 建立基本規則例如格式驗證, 編碼分析、縣市鄉鎮名稱比對等等先做一遍評量,可節省大量人工
- 紙本資料全面電子化
社群針對開放資料品質檢驗所能提供之協助
由於零時政府並未組織化,民眾參與均為自發性、志願性,其產出並沒有強制力或約束力,因此除非找到個人願意提供協助,否則無法對政府單位提出實質上的承諾。然而目前有 g0v 專案計劃要建立開放資料整理平台( http://data.g0v.tw ),基於開放源碼的出發點,屆時可作為開放資料整理的示範網站,供政府參考。