G20農業鏈結開放資料會議 Part 5 – 開放地理資料、區塊鏈、溯源

Open GeoData

Open GeoData這個場次有三個演講,分別如下:

  1. Raul Palma de Leon, Publication of Inspire-based agricultural Linked Data
  2. Karel Charvat, Integration of open land use, smart point of interest and open transport maps using RDF
  3. Rob Knapen, Obstacles in standards and spatial thinking for Linked Data in agriculture

前二個演講是同屬於一個歐盟Horizon 2020 巨量資料研究計畫DataBio,有16國48個單位加入,計畫期間為2017年到2020年,總經費規模達到1千6萬歐元,歐盟支援了1千3百萬歐元,是一個針於農業和其它對於生物經濟工業中原物料產品的巨量資料技術優勢的展示,並且佈署一個互操作性的平台在所有計畫成員的資料基礎設施之上,藉由這樣的技術架構這個計畫企圖提供巨量資料管理的解決辦法,包含不同巨量資料的儲存和查詢,以及使用鏈結資料為聯合層來整合來自不同來源之異質性資料。DataBio需要整合先前的歐盟FP7的研究計畫SDI4Apps和FOODIE之資料,如圖41所示。SDI4Apps主要在於建構的是以Open API為主的雲端架構來進行資料整合,並且依此雲端環境建立6個試驗性Apps 與INSPIRE、Copernicus 和 GEOSS 空間資料基礎設施整合。而FOODIE 主要是在建構一個開放和互操作性的雲端基礎平台以整合不同來源的農田生產相關資料,並包含地理空間向度,以及發佈為鏈結資料。

圖41: DataBio計畫由資料整合

在de Leon的演講中主要介紹如何利用FOODIE既有的語彙和標準,並與INSPIRE整合開發出鏈結資料的服務,如下所列。

而Charvat的演講中則進一步介紹如何在DataBio的計畫中整合交通資料(Open Transportation Map)和土地利用資料,其鏈結資料的服務也是從上述的服務中展示,但略有不同,如圖40中的服務是土地利用坵塊,就不是上述的農田分區,但技術上都是一樣的。

圖42: 雲端服務查詢結果的地圖視覺化 http://ng.hslayers.org/examples/olu_spoi/?hs_panel=info&hs_x=1607799.902082933&hs_y=6462976.717926565&hs_z=16&visible_layers=Base%20layer;Land%20use%20parcels

 

第三個演講是Rob Knapen,來自荷蘭Wageningen大學環境研究所,演講內容主要在基於他過去處理農業和地理資料的經驗中,去論述資料整合的問題和鏈結資料的障礙,檢討目前研究計畫事實上對於鏈結資料的使用仍然不夠深入。

圖43: Rob Knapen的演講

供應鏈和追溯(Supply chain and traceability)

這個場次包含了三個演講,前二個是關於區塊技術應用於農業資料上,而第三個即是我的報告,三個演講如下:

  1. Christopher Brewster, Blockchains and Linked Data for agrifood value chains
  2. Liisa Pesonen, Employing the principles of My Data and blockchain to build trust in farm data sharing
  3. Dongpo Deng, Construction and reuse of linked traceable agricultural product records

Brewster博士是來自於荷蘭應用科學研究所(Netherlands Organisation for Applied Scientific Research),他認為鏈結資料沒有用在價值鏈(如農田到消費者)的處理,Schema.org、GoodRelations和產品型態本體的語彙可以被期待用來增加價值鏈的處理,學術上企圖使用知識本體在價值鏈上的處理很少,過去的研究計畫也顯示出鏈結資料方法用在價值鏈上會有一些限制,但並沒有真的被進一步的討論。他認為價值鏈的核心問題在於產品履歷或溯源,但這個產品履歷系統是一個很緩慢的系統。從產品溯源的觀點,他進一步介紹條碼系統GS1,以建構資料鏈結系譜(linked pedigree),而這資料鏈結系譜再導以區塊鏈技術來處理,如圖44即是他演講中所提出來一個整合鏈結資料和區塊鏈的架構。

圖44:鏈結資料系譜和區塊鏈整合

 

Pesonen的演講陳述了很多區塊鏈和MyData的觀念,但缺乏實證,整個演講是一個概念架構研究的介紹。

圖45: MyData、MyFarmData和區塊鏈

 

 

G20農業鏈結開放資料會議 Part 4 – 農業科技分享平台

農業科技分享(Agricultural Technology Sharing, ATS)平台的目標是鼓勵G20成員國、有興趣的國家和國際組織改善農業技術資料的獲取,促進技術支援,分享發展永續農業發展技能的經驗,促進農業技術轉讓作為全球集體行動。

該平台還可以通過分享成員經驗,鼓勵和強調要優化農業技術創新體系的政策制定,更新現有機構和發展新機構,引入有關資訊安全和保護財產權的監管機制,建立資訊、資料共享和交換標準,加強決策者、研究人員、推廣機構、農業企業、農民組織、協會、非政府組織、私營商業部門、金融機構等各方利益相關者的合作,進行農業研究,教育、推廣和農業企業發展。ATS還可以通過發展中國家和已開發國家之間的合作,包括對於人力資源和能力發展。

圖40: 中國農業科學院副院長聶鳳英報告「農業科技分享平台」的進行

 

ATS旨於讓異質的資訊來源易於交叉搜索和整合,以便可以搜索所有資訊,以便所有利益關係者(例如,小農或企業家)都可以使用此類知識的的查詢進行搜索,以使成功地能讓農業實踐適應本地脈絡。ATS要扮演的一個在合作夥伴國家中的資訊目錄之角色,並透過合作和分享作為集體行動。通過這種方式,ATS將能夠在技術及其實際應用和影響方面獲得、分享、交流商業利益,同時也促進採用,適應和創新新技術的伙伴關係和合作。

ATS工作小組的主要原則是在20國框架下倡導和採取行動,通過G20成員,以及多樣化夥伴關係和共同努力,以加強農業技術創新和知識共享,持續地提高農業生產和實現糧食安全、生活和更好的環境。

工作小組是在中國主導但由G20 成員國中的首席農業科學家(MACS)來管控,以強化工作小組成為農業創新和知識共享的全球平台,並協調工作,避免重複和 最大化現有機會和資源。在中國農業科學院(CAAS)與GFAR、FAO、IFPRI及其全球網絡緊密合作,工作小組定期向G20的 MACS報告。

G20農業鏈結開放資料會議 Part 3 – 語彙、分類、索引典、地球觀測

John Fereira, AGROVOC-Three Ways

John Fereira在上午的場次講過康乃爾大學發展的VIVO,在這個場次的演講很簡短,而他想分享的是AGROVOC可以使用在三個功能中,分別為:

  1. 自動標籤(AutoTagging),少部份或沒有詮釋資料的時候使用;
  2. 自動建議(AutoSuggest),應用於在使用者介面當需要手動加入一些關鍵字時;
  3. 概念匹對(Concept Matching),當標記標籤於一個領域特定的儲存庫中的資源且該標籤要能匹對於一個語彙。

他並以介紹Agriknowledge網站,是一個農業文獻服務網站即是利用AGROVOC且應用上述三個功能,圖31即顯示關鍵字在Agriknowledge的使用,這些關鍵字都和AGROVOC有對映,且文獻本身也有相對映的AGROVOC,如圖32所示。

圖31: Agroknowledge的關鍵字功能
圖32: 應用AGROVOC的概念階層來瀏覽文獻

Valeria Pesce, Semantic challenges in sharing dataset metadata and creating federated catalogs: the example of the CIARD RING

Valeria Pesce 是全球農業研究論壇(GFAR)的資訊系統經理和計畫經理,且與GODAN的祕書共同合作,過去曾代表FAO和GFAR,現今則是加入歐盟計畫資料基礎計畫( agINFRA, Big Data Europe),並管理CIARD RING和AgriProfiles開放資料平台的在全球與區域間的協調工作。

圖33: CIARD RING平台

她的演講主要是在介紹CIARD RING (如圖 33)平台中對於農業資料集的管理,並強調語意在資料集管理上的好處及方式,圖34說明了描述資料集如何需要語意,除了使用DCAT、 DCAT-Stats、DateCube和VOID的語彙外,對於主題詞和資料型態都可以利用知識組識系統(Knowledge Organization System)來架構,使這些主題詞和資料型態的詞彙能夠清晰表達。「值」的標準化,如資料的主題涵蓋範圍和維度、格式、和協定的使用等,這些值在RDF也通常被視為是「資源」(resource),所以可被以URIs來辦別,但值通常是一個字串、概念的URI通常是專屬的設計,並非沒有一個共通的知識組織系統來指涉所有的事,她舉了幾個例子,如農業主題詮釋資料是AGROVOC或CABI thesaurus? 地理的詮釋資料是GeoNames或FAO GeoPolitic Ontology? 還有維度及文獻的語彙應該選那一個,如圖35 所示。然而,語彙所涉及的範圍和複雜度不一樣,是否合適於自己的資料需要評估,並非所有語彙都需要。

圖34: 描述資料集所使用的語彙以正規化語意

Pesce 也說明了選擇農業領域和跨領域語彙用於CIARD RING平台經驗,CIARD RING是一個農糧資料集和資料服務的聯合目錄平台,RING是指Routemap to Information Nodes and Gateways,為GFAR對於農業研究發展(Coherence Information for Agriculture Research for Development, CIARD)的計畫,RING的主要目錄可以提供資料和資料集,且都有詮釋資料,並使用RDF編碼。聯合目錄是透過獲取(Harvest)其它目錄平台的詮釋資料而來,目前有聯合的平台計有datahub, EU open data portal, Dataverse catalog, data.gov.uk, data,gov等,計有2740筆資料,4832項服務。RING平台的詮釋資料是以DCAT-AP、VOID和DataCube為主,並且會推出RING DCAT profile,她隨後介紹了RING平台中對於資料和資料集的詮釋資料編碼。

圖35: 語彙的選擇

 

其中介紹了如何利用SPARQL Queries控制LOD的映對,如圖36中的SPARQL query,可以取得所有畜牧的資料集是以AGROVOC的Livestock。

圖36: LOD的SPARQL查詢

 

在演講的結論中,她也再次強調最大的語意之挑戰在於資料或詮釋資料整合時缺乏使用共通語彙,而不是在格式、綱要(schema)或描述的方式不同,在許多情境中,資料缺乏好語意是因為不關注這部份,而不是工具的不足,RING的機器可讀層和SPARQL endpoint不是提供給終端使用者,他們期待的是更多開發者去建構加值的服務。

 

 

Sophie Aubin, Agrisemantics, vision for an infrastructure for semantic-based interoperability of agricultural data

Sophie Aubin沒有出席,是由Johannes Keizer代為演講。

Agrisemantics是一個農業資訊語意的研究社群,企圖邁向一個可以無縫使用和創造語意資源以支持農業和食物資料的互操作性。Agrismenatics的價值是一個自動化語意資源集合可反應出豐富的觀點和不同的領域資料,農業概念應建立出一個共通的概念網要,即Global Agriculture Concept Schema (GACS),有一組穩定的URIs可以重複使用和連結其它資源,增加鏈結由不同資源中製造資料操作性,分享經驗和共同的實務經驗,Agrisemantics是一個新開始的計畫,其整體架構如圖37所示。

圖37: Ageisemantics的架構

 

地球觀測與遙測(Earth observation and remote sensing)

這個場次的有5個演講,如下所示,都是歐盟國家的計劃,和資料或開放資料有關。

  1. Holger Lilienthal, The Research Center for Agricultural Remote Sensing (FLF) – a data source for agricultural information based on Sentinel satellite data
  2. Silke Migdall, ESA’s Food Security Thematic Exploitation Platform “Supporting sustainable food production from space”
  3. Bernd Hoffmann, Decision support for crop protection – Pest identification using UAV technology
  4. Sebastian Fritsch, Using open data and artificial intelligence to digitize global agriculture
  5. Uwe Voges, Linking and finding earth observation data on the Web

對於上述5個演講,就摘錄與開放鏈結資料的重點來記錄。

Lilienthal博士的演講中主要是介紹歐洲哨兵衛星系列的影像如何應用於農業資訊的擷取,而歐洲哨兵衛星是以開放資料的方式釋出,在即時資料方面,可以進行農作型態分類、農作輪作、草地監測、和土壤流失監控,動態資料方面,可以進行產量潛勢推估、植物參數(如生物量、葉面積指數、葉綠素含量)、和物候學(如成長天數),如圖38。

圖38: 歐洲哨兵衛星應用於農業上可生產出來的資料

Migdall所介紹如何以巨量資料平台來處理糧食安全的問題,並且說明平台中的許多資料是地理和航遙測資料如何應用於糧食安全問題的決策。同樣地,Hoffmann 所介紹的是德國的整合型的農業計畫,而著重的是如何應用UAV影像擷取出更多有助於農業決策的資訊。

Voges 博士的演講是在於介紹如何利用鏈結資料技術於地球觀測資料的查詢上,他提到雖然地球觀測資料是開放資料,但通常透過特定的接口(portal),或典藏於特定的平台,如果使用者對於這些接口和平台不熟悉的話,很難找到且取用這些資料。利用 OGC Catalogue Service標準來進行地球觀測資料之詮釋資料的處理,透過一般的搜尋引擎還是無法找到資料,他認為鏈結資料的方法是解決這個困境的途徑,應該有一層鏈結資料服務層架構在底層的空間資料基礎設施(SDI),如圖39所示。接著他介紹了如何利用OGC OpenSearch Geo and Time[3]標準和鏈結資料技術實現以鏈結資料技術為主的地球觀測資料平台。

圖39: 鏈結資料服務層介於搜尋引擎、開放資料平台和地球觀測資料庫之間

G20農業鏈結開放資料會議 Part 2 – 視覺化、導覽和搜尋

Jerzy Weres, Programming technologies supporting management of Linked Open Data in the domain of cereal grain drying and storage

Jerzy Weres教授是來自波蘭波茲納(Poznan)大學農業及生物技術學院資訊應用系。他認為農業資訊對於農夫或農業工程而言都是重要的基礎,這些資訊有助於做出更好的決策,而要讓決策支援的軟體能與時並進,就必須去使用未來的網路科技,這樣的科技己經可以被用來增加決策支援系統的功能性、可靠性、使用性、可維持性和效能,藉由語意網技術來整合多種不同資訊來源現在已經是未來系統發展的趨勢,語意網技術為基礎的系統的新見解是如何透過整合軟體而讓傳統平台開放和利用智慧型手機的開放近用。

在這個演講中,他分享了他是如何與學生在資訊和農業工程課程上合作開發,並且留下二個資訊系統,一是語意網為基礎的建議系統可以支援分析、設計和管理榖物乾燥、處理和儲存,以及另一個整合系統可支援推估和分析幾何、熱能和不同屬性的農糧及林產。

圖8: 語意網為基礎的建議系統 “Ziarbit” 支援分析和管理榖物處理、乾燥和儲存

榖物處理、乾燥和儲存之語意網為基礎的建議系統中是以UML勾勒出系統的結構和欲解決的問題,再以Visual Studio 2013、Windows Phone SDK 8、Xamarin、 .NET 4.5、 ASP .NET 4.5、 C++/CLI 和 C# 5.0 等程式語言為建構環境,圖8即是主系統 “Ziarbit” 的畫面,其中具有處理RDF和SPARQL的元件,如圖9即是RDF三元組的產生器,系統中使用知識本體來正規化資料,圖10即是描述乾燥機的知識本體圖形化。而他們也發輕量化的手機版本,如圖11所示。

圖9: RDF三元組的產生器
圖10: 乾燥機的知識本體的一部份
圖11: 語意網為基礎的建議系統的輕量化手機版開發

可支援推估和分析幾何、熱能和不同屬性的農糧及林產的整合系統是用來模擬熱能和生質能(如玉米核)的質量轉移過程,可以檢驗物質是非均質、非等向、和不規則的特性,以有限單元格網的3D座標來表現一產品的幾何、熱傳導、溼度傳送係數和可轉換的溼度轉換系數,這個整合系統包含了一個共通的圖形介面,而且整合推估、分析和視覺化農糧和林產之熱及水轉移過程的子系統,這個系統是根據標準的軟體工程方法所建立,並利用Visual Studio 2013和C# 5.0 程式語言為建構環境。這個整合系統名為BioProcessSoft,是一個有圖形化介面和資料庫的系統,並包含三個子系統,3D Mesh Node、BioVis和IPS,圖12是3D Mesh Node子系統的截圖畫面。

圖12: 3D Mesh Node子系統

 

John Fereira, Visualization of Linked Open Data – eye candy for VIVO

John Fereira是康乃爾大學資深程式設計師,是VIVO一開始發展就加入的成員。VIVO在2003 – 2005年間,最早的開始由康乃爾大學針對生命科學領域開發,是以關連式資料庫為主,2006 – 2008 年間,VIVO已經擴展到康乃爾大學的所有領域,並且轉換成以語意網為主,2009 – 2012 國家衛生研究院的支持,VIVO讓國家科學網路計畫可以建立,轉換VIVO成為一個多機構的開放源碼平台,2012 後,VIVO轉換成DuraSpace,成為開放社群發展為主的應用程式,VIVO 因此成為一個開放源碼、開放資料平台、且使用開放知識本體,圖13為VIVO的知識本體。

VIVO也是一個可以讓相關於研究活動的資料可看得到且可及的語意發佈平台,以語意網為基礎的研究者和研究之探索工具,除了可以對「人」進行描述,可以針對其它組織、研究經費,計畫、論文發表、活動、設備和研究資源等項目,進行關係的描述,例如有意義的連結人和活動,而這些關係是雙向的,可以瀏覽從一個點到另一個點的脈絡,以URI連結VIVO以外的人、地方、組織和事件。VIVO是一個跨領域的開放資料平台,開放地分享資料並使用鏈結資料,以連結學者、研究社群、學校,VIVO可以整合多種來源的資料,如系統記錄、職員活動報告、和外部資源(如,文獻資源Scopus、PubMed和NIH RePORTER),它也提供可以提供一個檢視和編輯介面,且可整合和過濾資訊至其它網址。

圖13: VIVO 的知識本體

康乃爾大學的[email protected]網站即是利用VIVO所製作,圖14即是[email protected]網站,而圖15展示了[email protected]架構及其與VIVO的關係,網站可以輕鬆地瀏覽各個學者的著作發表、獲得計畫和金額可在網站一覽無遺,可經由網站瀏覽學者的相關資訊,如發表的著作和獲得的計畫與金額,如圖16 和圖17所示而網站中也提供了四種資訊視覺化方法,文字雲、全球合作的地圖、計畫經費、和研究興趣,如圖18-21。

圖14: 利用VIVO所做的[email protected]網站

 

圖15: [email protected]架構及其與VIVO的關係
圖16: 對於單一學者的查詢及資料展示
圖17: 對於共同作者關連的視覺化

 

圖18: 文字雲

 

圖19: 全球合作的地圖
圖20: 研究經費和計畫的視覺化
圖21: 研究興趣關連視覺化

 

Daniel M. Herzig, Searching Linked Data Graphs with GraphScope

Herzig博士之前是德國卡爾斯魯爾科技研究院(Karlsruhe Institute of Technology, KIT)之應用資訊和正規描述方法研究所(Institute of Applied Informatics and Formal Description Methods, AIFB) 之成員,該研究所亦是歐洲語意網研究的重點研究機構,出產許多知名的語意網研究學者。Herzig博士於2014年共同創辦了SearchHaus,這家公司致力於利用圖管理(graph management)方式於巨量資料的關鍵字查詢,metaphacts則是另一家於2014年成立的公司,致力於知識圖管理的公司,2017年二家公司併整,Herzig博士成為這家公司的營運長,該公司目前約10人左右。

圖22: GraphScope的技術內容
圖23: GrophScope的系統架構

GraphScope 是二家公司整併後的新產品,是一智慧型資料近用引擎,可允許使用者以簡單的方式,如關鍵字,去取用結構化資料,特別是RDF 資料。 透過GraphScope對於關鍵字解析,可提供使用者更精確的查尋結果,如果是下SPARQL queries,使用者需要了解資料綱要(schema)和SPARQL的語法,才可以得到較為準確的結果,但在GraphScope並不需要,所有過於技術的細節使用者是看不到的,也不用了解,GraphScope可以把綱要和語彙內建默記起來以便處理資料,也就是辨認關鍵字,GraphScope也適於用了解資料模型的領域專家,即使不了解語意網和資訊技術,也可以簡單的查詢資料,圖22為GraphScope的技術內容。GraphScope可以部署於三元組資料庫的上層且提供網頁介面,圖23即顯示GraphScope的系統架構。

在農業資料方面,metaphacts幫丹麥農業部門處理資料,在農業資料部份包含農田和作物,在商業資料部份包含土地權屬、公司的住址及並活動的資料,資料的知識本體如圖24所示,利用GraphScope建立系統,如圖25所示。

圖24: 丹麥農業資料知識本體

 

圖25: 查詢誰種菠菜的結果

GraphScope最早應用的領域是在生命科學,圖26所顯示的是利用GraphScope架構的基因庫查詢系統,The Gene Expression Atlas ( http://www.ebi.ac.uk/rdf/services/atlas/ ) 由歐盟生物資訊研究所(The European Bioinformatics Institute, EMBL-EBI) 建構,其畫面為查詢REG1B的基因序列之結果。

圖26: The Gene Expression Atlas (http://www.ebi.ac.uk/rdf/services/atlas/) 

GraphScope在其網站上(https://www.metaphacts.com/graphscope)提供二個展示,一是利用Wikidata,另一個是研究著作的查尋系統ResearchSpace。在Wikidata的展示上登入頁面上,只需要輸入關鍵字,例如,輸入「Taiwan」,搜尋列會列出所有和Taiwan一字有關的實體(entities),如圖27,點選其一,可以找到所有和這個實體有語意關係的實體和概念,其介面提供視覺化介面,如圖28展示出所有和「Taiwan」有語意關係的實體。

圖27: 與「Taiwan」相關的實體
圖28: 與「Taiwan」有語意關係的實體

 

Daniel Martini, Linked Data architecture components – How to attach linked data services to legacy infrastructure?

Daniel Martini是籌辦單位之一德國農業科技與建立協會(KTBL)中資料庫和知識技術組的專家,他們團隊在2004年左右就開始進行AgroXML的建立與發展。在他的演講中一開始先說明了KTBL這個單位的背景,KTBL是一個有註冊的非營利協會,2/3是由德國農業部所資助,有來自於學術、業界的各領域專家約400位成員左右所組成,有70位左右的職員在Darmstadt工作,管理許多工作小組、組織專家工作坊、出席相關委員會、以及維持專家網絡。KTBL的任務是將研究成知識導入農業的實務中,並以專業來支援政策決策,評估新農業技術在經濟和生態在衝擊,以及提供計畫性資料(如,投資、產品處理過程…)到農夫。資訊技術的角色有三: 一為資料獲取,是由開放資料來源中獲得,二為資料處理,是由原始資料轉換為計畫資料,三為資訊提供,透過電子書、網頁和APPS,傳遞農業資訊給客戶。

KTBL並負有一個任務是在於傳遞人和機器都可讀格式的計畫性資料,這其實需要處理(1)人與機器都可讀的類別(classes),如購買價格、供給的消費量…等; (2)標準田野工作流程,如工作時間、在不同制度下機器的共通方式…等; (3)操作供給: 平均價格、內容…等; (4) 設施和建物: 畜舍、牛奶機器和它們的屬性…等,讓以上這些資料能夠被更多的人使用,而且能夠進一步地在軟體應用程式中處理,以便服務農夫。

圖29: 語意網工具評估

在KTBL中有許多資料準備提供分享,而他們想要遵循FAIR原則,而且使用標準規格,如RDF、HTTP、SPARQL,但這些資料早己經存在於既存的系統(基礎設施),他們想的是如何開發出來一個工具箱可以以最少工作來解開這些儲放在既存資料庫中的資料。

因此KTBL的第一步就是開始設計語彙,讓資料能讓「再使用(reuse)」,他們以rdfs:label提供人可謮的名稱,在人名、地址、電話部份,他們使用VCardFOAF語彙,在單位和維度方面,使用QUDT語彙,在地理資訊方面,使用GeoVocabGeoSPARQL,在價格和產品方面,他們使用Good Relations Ontology,有這些語彙他們也建立他們的知識本體。並且開始從既有竹點的資料庫中開始要轉換資料,但在這之前,面對這麼多的工具要怎麼使用成為一個問題,所以他們對於這些工具進行評估,最後決定用D2RQ由資料庫轉RDF資料、用Jena Fuseki來儲存RDF和支援SPARQL 查詢、用ELDA進行序列化和網頁版型, 圖29即是評估過工具和最後決定的評估過程。最後結論也再次強調利用開源工具去建立語意網服務是輕鬆寫意的事情。

圖30: KTBL的語意網服務的系統結構

G20農業鏈結開放資料會議 Part 1 – 會議背景和Keynote

會議背景

LOD in Agriculture Workshop 做為G20 農業首席科學家會議(MACS)之一,聚集農業科技上的科學共同討論農業資料之標準化、結構化、鏈結化、及應用上的問題,這個會議是由GODAN ( Global Open Data for Agriculture & Nutrition)、 德國農業部(BMEL)、和德國農業科技與建立協會(KTBL)等三個單位來共同舉辦。

值得一提的是,GODAN是一個5年的跨國合作計畫,規模為850萬美元,由美國政府、英國政府、荷蘭政府、開放資料研究所(Open Data Institute, ODI)、聯合國國際農糧組織(FAO)、歐盟支援的農業研究與創新全球論壇(The Global Forum on Agricultural Research and Innovation, GFAR)、農業和生物科學國際中心(Centre for Agriculture and Biosciences International, CABI)、國際農業研究諮議組織(Consultative Group on International Agricultural Research, CGIAR)、農業與農村合作技術中心(Technical Centre for Agricultural and Rural Cooperation, CTA)、 和食物與農業研究基金會(Foundation for Food and Agriculture Research, FFAR)等10個單位共同出資,目前全球共有579個公私立單位參與成為該計畫夥伴。

會議開場

會議開場是由德國農業科技與建立協會(KTBL)的 Daniel Martini 主持。首先,由德國農業部(BMEL)官員致詞,說明會議舉辦的背景,是由於德國今年於漢堡(Hamburg)舉辦G20會議,並因此在波茲坦(Potsdam)舉辦G20中首席農業科學家會議(MACS),而去年的G20會議在中國時,就強調資通訊科技在農業上的應用與發展,延續這個議題,有鑑於歐盟近5年來在鏈結資料上的發展,德國今年則嘗試以鏈結資料在農業上的討論為主來承續中國在去年開啟的議題。而他也說明,雖然這是G20的會議之一,但這個會議其實不侷限於G20的成員參與,而是著重於農業和食物科學議題討論,而開放資料的策略提供更多在農業議題脈絡中創新的機會,有助於解決當前全球共同面對的農業和食物問題。

接著是GODAN計畫祕書的Johannes Keizer博士致詞,他是前FAO官員,退休後持續在全球的農業和糧食議題上努力,尋求更多解決的方法。他認為開放資料是解決全球農業和糧食問題的重要策略,許多的經濟效益是可以由開放資料而來,

而開放資料的重要的內涵在於資料再利用,產生資料流動,資料不斷地流動,才有可能有經濟效益和價值,開放資料也透過資料分享、知識分享,讓整個系統更有效率、更加有力量,更加的堅固。資料要流動,就必須讓資料能夠被找的到,資料要再被利用,就必須讓資料的語彙共通。

如何透過開放資料建立更好的農業和糧食資料的利用,進而解決問題,是GODAN計畫在尋找的解決方案,全球各地許多科研單位和科學家加入。他也強調,在剛結束不久的科研資料聯盟(Research Data Alliance, RDA)第10次會議於加拿大蒙特婁(Montréal)舉辦,其中有許多議題都和鏈結資料有關,而鏈結資料的技術與方法在農業和糧食問題的研究發展方興未艾,本次的會議就是想更深入去探討農業上的鏈結資料。

最後,由Daniel Martini給了一些開場的結語,他強調這個會議嘗試找出鏈結資料如何在農業上有用,農業資訊如何能透過當代資通訊技術製造更多的經濟效益,而這些議題不單單是德國的問題,而是全球的議題。

Keynote

會議主辦方邀請Elsevier的Paul Groth博士,以 「The Roots: Linked Data and the Foundations of successful agriculture data」為題進行專題演講。Groth博士先自我揭露說,他的科學背景是電腦科學,著重於開放資料和鏈結資料,而非農業領域,但家鄉是荷蘭,是非常重視農業科技的國家,也算是和農業扯上邊。

他先以三個問題來揭開專題演講,這些問題也是整演講的脈絡。

  1. 鏈結開放資料如何能讓農業不同以往? (How can Linked Open Data make a difference in agriculture? 
)
  1. 什麼樣的技術門檻阻礙了這個發展? (What technical obstacles stand in the way?)
  1. 什麼樣的政策需要配合? (What policies are needed to achieve the potential?)

他首先強調資料在農業的重要性,以精準農業為例說明資料是農業的中心。如圖1所示。他進一步引用Wolfert等人(2017)的文章,藉由該文的農業資料供應鏈之回顧分析中,說明了農業資料的問題,包含了格式、異質的資料來源、資料清理和準備的自動化、語意的異質性等,而這些正是鏈結資料技術可以應用的地方。

圖1: 資料是精準農業的中心

而研究科學資料在很早以前就開始討論資料開始的議題,在國際科學理事會(ICSU)帶領下,國際科學與技術資料委員會(CODATA)及研究資料聯盟(RDA)的會議中不斷地探討科學資料開放的議題,也使得投入科學資料開放的研究者愈來愈多,Groth博士以他為共同作者的Scientific Data期刊文章「The FAIR Guiding Principles for scientific data management and stewardship」為例,引導了科學資料中倡議開放資料的FAIR 原則,即是Findable, Accessible, Interoperable, 和Reusable,其節細內容如圖2,而達到FAIR原則所導向是成功的資料,而達成成功資料的最佳途徑就是鏈結資料。

圖2: FAIR原則
(來源: Wilkinson et al., M.D. 2016, The FAIR Guiding Principles for scientific data management and stewardship, Scientific Data 3, 160018)

資料再使用(reuse)成為科學資料開放的重要議題之一,要被使用就要找得到資料,要讓科學家能把自己的研究資料開放,資料引用(Data Citation)的制度是一個不可缺或因素,近年來也逐漸形成風氣,許多大型的期刊論文出版商目前都有資料論文(Data paper)的制度,且有些已經進入SCI索引。但這些似乎還不夠,期刊論文的使用者是科學家,對於一些特定群體的行為和需求則不一定滿足,例如,年輕科學家、政策制定者、學生等,觀測資料的背景使用比前景使用有較好的文件說明,也常有人需要資料而從別人的期刊論文中之表格再把資料再製,也有人會在搜尋引擎上尋找,或是直接索取資料。事實上,Google 對於資料集做索引,資料集發佈於網頁時,利用schema.org的語彙於HTML中會有助於Google 對這樣的網頁做索引。

對整合和互操作性而言,Groth博士先以ISOBUS這樣硬體規格,來說明標準所建立的整合和互操作性的重要性,接著解釋農業資料中己經有一些不錯的標準語彙,如AGROVOC和Crop ontology,而AGROVOC是促進農業鏈結資料的重要基礎,GODAN計畫更是重要的推手。資料要跨領域的整合,需要語意和語言的對映,Groth博士以植物知識庫的整合為例,來說明植物資料庫的整合過程,在語言方面,他也以Wikidata為例,說明語彙多語言的整合。

FAIR原則並不只是在於人類趨動的活動,而也著重於機器趨動的活動,因此資料的開放後,要考量的使用者並非只有「人」,還有一個重要的使用者是「機器」,FAIR原則所要克服的是人和機器在網路中尋找和處理處料時個別都會面臨到的問題,要弭平這樣子的障礙,機器學習是一個解決途徑。Groth博士引用吳恩達(Andrew Ng) 博士在2016年史丹福灣區深度學習課程中的一句話。

If there’s a task that a normal person can do with less than one second of thinking, there’s a very good chance we can automate it with deep learning.

也就是說我們現今有太多片段的知識可以透過機器學習建立出知識庫,使得人和機器都可以在語意共通的環境使用資料。接著舉NVIDIA利用深度學習於影像辨識,並將圖片中內容的萃取,例如圖3中,經過機器學習可以萃取出人物、酒瓶、和桌子,而影像辨識也在導入深度學習後,準確度大幅度的改善,圖4說明了ImageNet Large Scale Visual Recognition Challenge 在2012年後利用機器學習後,錯誤大量的減少。

圖3: 以分類來源圖片中每一個像素而產生語意圖的案例 (圖片來源: https://devblogs.nvidia.com/parallelforall/author/czhang/)
圖4: 在 ImageNet Large Scale Visual Recognition Challenge中前5大錯誤的比率在2012年使用用深度神經網路後,錯誤大量減少 (圖片來源: https://devblogs.nvidia.com/parallelforall/author/czhang/)

深度學習的叢集運算可以讓更多的知識由資料中被萃取出來,Groth博士再以ImageNet為案例說明以資料為導向的深度學習將會改變模式的建立,他引用了李菲菲(Fi-fi Li)博士受訪的一段話,

The paradigm shift of the ImageNet thinking is that while a lot of people are paying attention to models, let’s pay attention to data. … Data will redefine how we think about models.

ImageNet企圖建立的知識庫有如WordNet對於知識架構的分類(如圖5),這將有助於機器在處理圖片中的知識。他再舉一個例子是如何從社群媒體的文字描述去了Emoji的意義,如圖6中所示,這些Emoji所群集的分類是由文字描述的自然語言處理,輔以SVM演算法的改良,所得到的結果。

圖5: ImageNet 的概念階層是來自於WordNet 圖片來源: https://qz.com/1034972/the-data-that-changed-the-direction-of-ai-research-and-possibly-the-world/
圖6: Emoji向量在二個維度群集
(下方是國旗、左上方是有關於家庭的符號、在高一點的左上方是星座的符號、最左邊是動物的,中間則是笑臉)
(圖片來源: Eisner, B. et al. (2016). Emoji2vec: learning emoji representations from their description. arXiv:1609.08359v1)

Groth博士接著論述鏈結資料和機器學習的關係,他認為機器可以熟練於學習由文字、語言、圖片和影片中回答問題,是仰賴於我們訓練機器可有效率地由網頁去讀取資訊的能力。先回過頭來看看機器當今如何讀取網頁的,最普遍的方式是搜尋引擎都會做的事,就是透過爬取和索引網頁資源,進一步地可能還有語意化的標籤(例如,使用schema.org),再者,更深層一點的,就語意網的脈絡,可能是尋找且遵循對於知識本體和資料分享和再使用的開放鏈結資料爬取,而在Open API的脈絡而言,機器讀取資料是利用程式可取用的API透過HTTP/S和其它協定來讀取資料,這些機器的讀取方式都需要讓我們去想如何支援標記語言(ML)導向的資料,如XML、JSON、RDF/OWL等。

Groth博士進一步地以FAIR Data的概念來說明資料供應的標準和語彙如何強化資料的品質,在多資料來源和多使用者的平台上更加顯得重要,他就以全球變遷資料庫「The Global Change Information System」來說明如何利用W3C PROV (Provenance Vocabulary) 來幫助平台的資料品質。

圖7: 美國全球變遷資料庫(http://www.globalchange.gov/)

最後,他再回到一開始提到的三個問題,總結而言,他認為要解決這三個問題就是建立成功的FAIR農業資料,而鏈結資料的技術即是建立出FAIR農業資料的關鍵。

接續 Part 2。

如何利用開放資料解決農業和糧食的問題

以下文字是取自於 ODI(Open Data Institute)在2015年發表的報告「How can we improve agriculture, food and nutrition with open data? 」,主要想分享報告中所整理的14個案例。

因為開放資料是任何人都可以近用、利用和分享的資料,這所形塑的解決問題之道,相對於不開放的資料是昂貴的、耗時的且不可能的。透過加快創新速度,開放資料促進了政府、商業、NGOs和個人的協同合作,得以有新的發現,以幫助永續地提供糧食於不斷增長的人口。這份報告區分出三個關鍵方向,其中開放資料在農業和糧食的挑戰中扮演解決問題的重要角色,這三個方向為:

  • 讓更有效、有影響的決策可以產生
  • 培植讓所有人都可以受惠的創新
  • 藉由透明化,趨使組織和部門的改變

讓更有效、有影響的決策可以產生

1. GroenMonitor: 以植被分佈圖防止害蟲爆發並保護農作物

田間生產量常因農作物受到害蟲侵襲而損害,在廣大的農田中,很難用人工方式偵測到老鼠或其它害蟲的入侵,GroenMonitor (GreenMonitor)是一個利用荷蘭的衛星影像所製成的植被圖來監控害蟲入侵的工具,其衛星影像是來自於歐洲太空總署 (European Space Agency, ESA)所釋出的開放資料,利用開放的衛星影像所製成植被圖,使得害蟲爆發的容易被辨識出來,在2014年,GroenMonitor 已經被用來辨識出12,000公頃受到鼠害的農地,這個工具現在還整合其它不同應用程式,包含植物物候學、作物辨識和產出、農業活動的辦識(如除草、犛田、和收割)、自然和水管理。

2. AWhere: 以氣象應用程式和簡訊預測幫助農夫

對於農夫而言,他們很難去取得影響他們耕作活動的基本資訊,如溫度高低、溼度和降雨,特別是在低度網路使用的地區,但很多資料提供者現在可以提供所需的氣象資料給個別農夫。AWhere 就是其中一個,透過他們全球資料庫和Weather Terrain,AWhere 結合從全球尺度到田間尺度的氣象觀測、預測模式、和歷史資料,幫助農夫做好的預測和規劃農業活動。

許多農夫,特別是發展中國家的,使用行動電話(而不是電腦)作為他們主要通訊的工具,因為這樣,迦納在地社群與AWhere一起合作,去發展一個APP在 Weather Terrain的Open API之上,以讓他們豐富的資料得以透過行動電話來使用,而這個使用方式是,氣象資料被轉換成簡訊服務,使用基本關鍵字(如,部份晴天的、部份多雲的、有風的)和照片,農夫可以低成本的方式使用氣象資料,讓他們可以決定關於耕作的事務。

3. Plantwise: 以最佳實務知識庫來增加農作用產量

約40%的全球作物產量損失是因為植物病蟲害,Plantwise幫助開發中國家的小農處理植物健康問題,它著重於增加糧食安全和改善鄉村生活以減少作物因病蟲害的損失,從 CABI(Centre for Agriculture and Biosciences International)的資料庫、研究論文和政府等資料,整合出全球和地方的開放近用的資料庫,使資料可以在線上平台取得和查詢,從全球各地的植物診所的疾病診斷報告,可以用來補充知識庫,並通知在處理蟲害的在地夥伴。

在二年發展下,Plantwise知識庫己經成為一個必要工具,以支持在33個國家的植物診所診斷,超過來自於198個國家的六十萬農夫造訪了這個知識庫,包含使用了超過九千筆的報表來取用關鍵的與作物蟲害相關的農業資料和最佳實作,去幫忙管理和預防作物在病蟲害的損失。Plantwise在2014年也獲頒ODI的對於社會影響的開放資料獎

4. CIAT Colombia: 以智慧氣候工具在旱災中省下3.6萬

這是一個最近利用公私資料的協作的案例,其成果幫助農夫得到預警,以避免旱災在哥倫比亞所造成的損失,在2007-2013年間,國際稻農組織(National Federation of Rice Growers; Fedearroz)、熱帶農業國際研究中心(Centro Internacional de Agricultura Tropical; CIAT)、和哥倫比亞農業部一同合作來處理旱災在稻米產量減少的議題,稻米是哥倫比亞重要的糧食之一  (詳見 Stuart, E, E. Samman, W. Avis and T. Berliner, 2015, The data revolution – Finding the missing millions, 37p)。

公私資料的使用,私部門資料取得是透過特別條款,CIAT 得以分析來自於每年稻米調查、採收記錄、田間試驗、和天氣資料的大資料集,且辨識出在稻米產量減少背後的複雜和區域特定之議題,根據分析,再去發展智慧氣候農業決策工具給哥倫比亞稻米種植者,而工具其實是開放給任何人的

無論是在農業部門,還是對於哥倫比亞的經濟的影響都是重大的,農業活動進行是根據 資料分析結果,幫助了農夫避免旱災造成的重大損失,省下估計360萬美元可能的經濟損失。這個智慧氣候的工具在2014年羸到聯合國巨量資料氣候挑戰頭銜

5. 加州水資源局: 以資料視覺化管理加州旱災

加州正經歷在過去記錄上最嚴重的旱災之一,缺水造成農業部門嚴重的威脅,農業的水利用是大約是整個州的80%左右,在2014年的農業部門的經濟直接損失預估有15億美元,在食物生產減少上有1萬7千工作喪失 (2014年加州旱災的經濟損失報告),為了確保安全和永續的水資源,加州水資源局宣布水供給計畫,這計畫減少了水分配到農地並減少了25%的用水。

開放資料被用來告訴州政府如何重新分配嚴峻的水資源,其方式是美國地質調查局(USGS)將乾早的情形視覺化,視覺化所使用的資料是由USDA研究機構群所收集,且開放近用的資料,這些資料涉及了農業永續、氣候變遷和自然資源保育在集水區尺度或景觀尺度之長期的自然、化學和生物資料,這使得研究人員和決策者得以監看水管理的狀況和計畫,根基於資料的模式,可以經常的更新、推估真實水量的水準、用水量和其它因子,並允許適時地預測和決策多少水量用於農業上。

美國農業部 (The US Department of Agriculture, USDA) 也研究了相關加州乾旱資料的開放,Catherine Woteki 博士希望這將是刺激公私部門在開放資料的使用,以幫助農夫在用水和作物選擇的決策支援。

培植讓所有人都可以受惠的創新

6. Climate Corporation: 以天氣模擬和智慧保險,省下作用和金錢

在過去,天氣預測模式中讓農夫很掙札,這些模式沒有把在地狀況納入考量,而導致沒效率的風險計算。Climate Corporation是一個開放資料商業公司,提供更為準確的保險和商業諮詢服務,以幫助農夫管理和調適氣候變遷。

透過分析大量來自於開放和其它來源的資料,對於特定作物產量進行模擬天氣事件和評估風險,因此他們得以提供專業的諮詢和準確的保險。

這公司使用開放資料是來自於美國國家海洋暨大氣總署(NOAA)美國國家氣象局的159個都卜勒雷達站、以及美國地質調查署(USGS)的地形圖和土壤分佈圖,Open Data Now的介紹

農夫使用詳細的天氣預測資以強化他們農耕行為和活動,如澆水、施肥、和播種,舉例來說,農夫可以使用這家公司所提供的溼度和降雨分佈圖,知道他們農田的特定區域是否過於溼潤而不能耕作。在一個工業水準上,開放資料加持的服務對這家公司的影響可以是很大的,在2013年,Climate Corporation的客戶使用他們產品耕作了超過一千萬英畝的農地

7. AgTrials: 以育種試驗的開放資料來改善作物品種

培育品種試驗是一個改善農作物品種的重要方法,在全球各地都有各式各樣的試驗在進行,這些試驗各著重於不同的主題,如耐旱、熱逆境和土壤管理,然而,這些資料幾乎都不能被其它研究人員所使用,而只是放在實驗室的硬碟中,甚至因為資料管理不好而造成資料逸失,形成不完整的資料集。

藉由農藝和植物育種試驗資料的整合和開放資料,由CGIAR在氣候變遷,農業和糧食安全研究計畫所負責的 Global Agricultural Trial Repository (AgTrials)  提供豐富的知識庫讓協同合作的計畫得以進行,去除掉非必要且有成本的重複工作。

科學家使用250個開放的AgTrials 資料集,以建立西非區域的農作物模式,這個模式被用在一個氣候變遷對於在地影響的計畫,並用來定義氣候變遷調適的育種計畫

8. FAO AGRIS portal: 把農業研究帶向大眾

AGRIS 是一個研究機構和資料節點的國際網絡,這個網絡讓農業研究資訊在全球可以取得,他們從在65個國家超過150個資料提供者中,收集且分享多樣的食物及農業出版品之書目資訊。

AGRIS 成為書目資料成為一個匯整平台,藉由超8百萬筆記錄的開放資料儲存庫,讓相關內容在線上有位址且可以組織這些內容,應用程式將在這個開放資料儲存中的記錄與連結網址與其它有品質的資料來源,例如世界銀行(World Bank)、自然期刊(Nature)、和中國種質資料庫(Chinese Germplasm Database)

AGRIS 平台已經有來自於204個國家超過750萬的人造訪,這些訪客從大學生到研究生都有,AGRIS 成為科學和技術資訊的最重要節點。

9.  CIARD RING: 讓農業食品(agri-food)資料更容易查找

儘管已經有很多相關於開放資料的資訊 (像資料集、平台、標準),相關資訊的檢索仍然是需要關注的重要議題,在這個脈胳下,CIARD R.I.N.G. 的資訊節點和閘道扮演了全球性農業研究發展(ARD)之註冊的網路資訊服務。

這個註冊服務允許資料提供者登記和分類他們的服務,在確保所有資料集都完成對於那種使用標準的詮釋資料(如語彙、範圍和標準)下,註冊的服務促進且利用了標準,而標準的使用促進資料的再使用(reuse)和被查尋,且允許更好自動化,現在約有1/3的農業食品資料集,即有超過1000個資料服務是具有特徵。

藉由透明化趨使組織和部門改變

10. Syngenta: 以開放且協作的平台來追蹤水、農藥、燃料的使用

在2013年,Syngenta宣布了他們的「好成長計畫 (Good Growth Plan)」,其中有6項承諾以改善農作物產量、保護土壤和生物多樣性,以及訓練小農和確保工作標準,並設定於2020年完成目標。這個行動著重於透過監測活動,如肥料和農藥利用及水和燃料的使用,讓農夫以永續的方法來增加農作物產量。

資料管理系統被建立於用來追蹤這些使用農地和公開農業資料的輸入輸出,由獨立的公司收集、驗証和分析

因應6項承諾的2014年的基準資料以機器可讀的格式(CSV)、CC-BY-NC-ND的條款釋出,透過這些行動,Syngenta和ODI合作,去建立一個開放且協同合作平台,以找出方法解決餵飽日漸增加人口的需求下減少資源使用,以及為生態多樣性而保護棲地。

11.FUNDAR: 在墨西哥找出不當使用的農場補助

在墨西哥,PROCAMPO 是一個最大的聯邦農場補助計畫,支援最貧窮農夫,自從2007年,他們開始關注真正極需要幫助的農夫,卻沒有拿到補助。

為了更了解這個情況,一個墨西哥的NGO組織,FUNDAR 研究分析中心徵求墨西哥農業部處理補助發放的相關資料,這個中心一開始拿到的資料是不完整且機器不可讀格式,在處理分析後,發現57%的受益者是分佈在最富有的10%之補助者,初步確認了他們所 害怕的事

這個重要的結果是來自於FUNDAR和其它NGO建立資料庫 (Subsidios al Campo en México)的貢獻,這個資料庫也不斷地發佈農場補助的資訊,以確保更透明化,以致於一系列的官員下台,且墨西哥政府也增加補助合格的限制。

12. 美國國家營養資料庫: 賦權消費者去聰明的選擇食物

消費者都會想知道他們買的食物之品質和內容物的資訊,雖然基本資訊已經標示在食品包裝上,但更詳細的食物營養資訊可以讓消費者依照個人需要做出更好的選擇,例如,遵從營養師指示。

美國農業部國家營養標準資料庫的(USDA National Nutrient Database for Standard Reference, SR25)是一個食物成份資料的主要來源,提供給公私部門,SR25包含約150食品公司中超過8,500食品品項的營養資料,例如維他命、礦物質、胺基酸、和脂肪酸,這些資料不限於商業應用(如,智慧型手機APP),這資料庫提供政府做了一個基本的服務 ChooseMyPlate.gov,由前美國第一夫人蜜雪兒歐巴馬和農業部祕書長湯姆·維爾薩克( Tom Vilsack)開始倡議,提供實務的資訊給個人、健康專業人員、營養教育者、和食品工業,以資源和工具幫助消費者做出飲食評估、擁有營養教育和其它友善的營養資訊,以建立更健康飲食

13. 歐盟食物警示: 幫助消費者了解他們吃的食物之風險

食物安全是另一個對消費者影響甚大的重要議題, 歐洲 RASFF (Rapid Alert System for Food and Feed) 平台 提供一個使用的資料庫,這資料庫收集的公開可得資訊是最近傳出的食品安全警示和通知,

消費者可近用資料於食品安全議題,例如出現在食品中過敏原,病原體,毒素或其他有害物質,以及分享預防資訊因為2011年福島核災,RASFF被用於監測來自於太平洋區域魚類和其它海洋產品中可能危害消費者的輻射殘留

How does RASFF work

14. LIVES: 標示餐廳檢查分數改善食品安全

開放資料也可以被用來幫助消費者去選擇那裡用餐,同時也促進改善食品安全的動機,LIVES (Local Inspector Value-Entry Specification) 是一個餐廳評分標準,目的在於標準化在不同管轄區的餐廳檢查分數,讓消費者了解不同城市和自家城鎮對食品安全的規格的不同。LIVES是在舊金山、Socrata, Code for America, 和Yelp在2013年所開始的計畫,它提供了餐廳檢查開放資料發佈的標準。因為市民得以更好的使用檢查結果,LIVES 事實上使食物容易清楚了解且可以選擇通過檢查的餐廳,當洛杉磯市開始要求餐廳要放衛生檢查等級在入口處,研究顯示減少了13%的因食源性疾病的住院治療

鏈結農產品產銷履歷資料(Linked Traceability Agricultural Product Data)

食品安全是現今社會的課題,歐美日等先進國家為確保食品安全,已先後實施食品「可追蹤系統」(Traceability System),而食品可追蹤系統應有二個方向,一為向上溯源(從下游往上由追查),二為向下追蹤(從上游往下游追查),二個方向的追蹤應都可追查食品在生產、處理、加工、流通、販賣等各階段的資訊。也就是說, 在食品生產、加工處理、流通販賣等各階段中,關於食品的進貨對象和銷售通路等記錄都予以妥善保管,並透過識別號碼的使用,使食品在各階段之產銷資訊能相互連結,進而建構出可以追溯或追蹤產銷資訊的體系,以在農產品而言,生產階段記錄農藥及化學肥料等栽培管理資訊,在加工階段,將原材料資訊等生產者或加工製造者所要傳達的資訊、將消費者需了解的資訊詳加記錄保管並發佈,以建立可供追溯或追蹤產銷相關訊息的體制 (胡忠一,2006)。台灣自2007年開始推動的農產品產銷履歷驗證制度,結合食品可追溯性(Traceability)和良好農業規範 (GAP)驗證制度,除了可追溯或追蹤產銷資訊,且具有採取嚴密驗證體系,以此建立飲食安全的基礎,並提升國產農產品的國際競爭力,創造農產品的附加價值(周念陵,2012),而可追溯性的建立,在食品安全事件發生時,可以讓主管機關、認驗證機構及相關業者,精確釐清危害來源, 並且快速回收問題食品,有效降低傷害(胡忠一,2006)。

農產品產銷履歷是一個關於農產品從這是一個從田間到零售、從生產者到消費者的記錄,包含產地、產品(作物)、生產者、通路商、栽種流程、加工流程、驗證等資訊,資料若能透過語意網技術加以精煉整理,資料本身可以展現許多知識,例如,作物之物候特性和栽種知識,據此知識,可以了解當令農產品,幫助消費者選擇,若農產品產銷履歷能與農情統計資料連結,一方面,生產者可以了解農產品的生產趨勢,商品流動狀態,因此可以訂定栽種策略,另一方面,政府則可進行作物宏觀的管理、制定作物栽種的調控策略,以免作物大量栽種,在市場崩盤,再進一步,若作物資料可與既有的生態資料庫連結,如植物資料庫,以建立長期生態農業的基礎環境。

然而,資料集與資料集之間的最基本的連結是透過主鍵(Primary Key),一般而言,就是一組不重複的唯一識別碼(ID),但以鏈結資料(Linked Data)而言,只要是資料集與資料集中有相同的實體(entity),就應該相互連結起來。相同實體在不同資料集間的連結是智慧化的開始,透過不斷地連結使得描述實體的內容愈來愈多,以作物名稱為例,作物名稱會被使用在產銷履歷中,但沒被區分出來,一旦區別出來,可與農產品批發市場交易行情中的作物名連結,而了解市場價格,這樣的過程就像是用同一作物名稱同時查詢二個資料庫再把資料整合,但同一作物有可能有不同名稱,同一名稱有可能不同作物,舉例而言,我們常吃的高麗菜,在農產品批發市場交易行情中是使用甘藍菜,鏈結資料即是把這二個作物名稱對映,機器處理資料時能透過這樣的連結而處理更多的資料,而這種連結若不斷持續的擴展,即可建立出知識圖(Knowledge graph)。

除了相同實體連結外,對於機器而言,實體的內涵,及其所代表的一種概念,都應該被清晰的解釋,在人的閱讀過程,可以將知識組合,但對於機器而言,這些實體若沒有清晰的定義,機器是沒辦法區辨出實體所代表的含意及其關係,以致於機器沒有提供進一步的有「智慧」的服務,因此,農業資料的鏈結建立,需要從實體的語意層級的定義開始,也就是建立與定義農業資料語彙,進一步地,建立農業知識本體(ontologies),並調查國際上已發展的農業詞彙,研究如何和這些詞彙映對,以擴展在地農業知識與全球的整合。

建立鏈結資料的目的在於提供一個更完善的資料基礎設施(data infrastructure),以便讓資料在不同知識領域的服務系統或資料庫中的流動,減少人為處理,並且疏理出更多知識脈絡,進而找出資料治理(data governance)的策略,因此農業鏈結資料的發展在資料基礎 設施的脈絡下,是可以增加不同知識領域或不同利益關係者的互操作性(Interoperability)和協同合作(collaboration),因而提昇公私部門協同合作的效率和生產力。

本研究利用農委會產銷履歷之開放資料,建立產銷履歷知識本體,及其三元組儲存庫,並利用該成果建立應用示範,本案朝向於如何利用語意化的產銷履歷資料提供智慧化的服務,讓使用者在瀏覽食譜過程中,有一智慧化元件利用語意化的產銷履歷資料自動地推薦產銷履歷農產品要去那裡買,或者可以去那家餐廳吃到使用產銷履歷農產品的料理。

資料與方法

為了說明如何建立利用語意化的產銷履歷資料的智慧化元件,以可以自動化推薦使用者產銷履歷農產品的服務,本節利用情境案例的方式說明該元件可以達成的服務,及建立該智慧化元件所面臨的問題和解決方法。

情境案例(use case)

小娟是一個家庭主婦,當她開始準備晚餐時,來到了iCook瀏覽蕃茄炒蛋的食譜,如圖1所示。在瀏覽食譜時,小娟可以透過一個瀏覽器上「外掛元件」的服務,找到該食譜網頁中食材所相對應的產銷履歷農產品,以及販賣產銷履歷農產品之賣場和餐廳,並利用簡單的邏輯和空間運算,可以找到在離小娟住家最近的商店,以便購買。在前往購買之前,小娟透過該元件的服務,了解該農產品的價格,估算做這道菜的成本。對於同一種農產品可能有很多的選擇,該元件後端系統整併了產銷履歷達人的資料,因此可以推薦小娟產銷履歷達人的農產品。因為食安問題,販賣產銷履歷農產品之賣場和餐廳是否為合格廠商亦是被關心的問題,衛福部食藥署之登錄的食品業者,該外掛元件後端系統將販賣產銷履歷農產品之賣場和餐廳與衛福部食藥署之登錄的食品業者先進行比對且連結,因此可以提供小華欲前往之賣場是否為衛福部食藥署已登錄的食品業者。

圖1: 在iCook中的蕃茄炒蛋食譜

問題與分析

情境案例中的「外掛元件」,可以利用JavaScript去建立Chrome瀏覽器擴增模組(extension),讓使用者在瀏覽食譜網站時,不需要跳出本來瀏覽的食譜網頁,而這個外掛元件基本上應該進行二件工作,一是讀取iCook食譜網頁中食材,二是以食材送出查詢以取得產銷履歷農產品,以及販賣該產銷履歷農產品之賣場與餐廳,並提供條件設定,可過濾不符合條件之結果。由這二件工作中,我們列出問題,並藉由分析問題中提出解決的方式。

(1) iCook食譜網頁中的食材如何清晰地被取得?

iCook網頁中使用schema.org的語彙,如圖2所示,蕃茄炒蛋中的食材,如牛蕃茄、蛋、青蔥、鹽、…等,都以schema:ingredients 這個語彙所釋詮,因此Chrome的外掛在設計上可以利用Schema.org的語彙,以避免在語意的模糊,而可以清晰地的取得食材。

圖2: iCook網頁中使用schema.org的語彙

(2) 產銷履歷農產品資料雖然已使用結構化的資料儲存方式(JSON),但資料中的實體,如作物名稱、銷售通路商、混雜在文字之中,如何被區分出來?

產品名稱中通常會夾雜作物名稱,如圖3中的產品名稱「檸檬-產銷履歷檸檬(產銷履歷檸檬)」夾雜著「檸檬」,再者,銷售通路中,也夾雜著商店名,如「惠康Wellcome超市(全台各分店), …」這一項中提到,頂好、愛買、家樂福、全聯、好市多等商店,但全在一個欄位,進一步地,「全台各分店」是指這商品在該商店的全台每一家分店都有買,就資料的語意而言,應該區分至每一家分店。

圖3: 產銷履歷農產品開放資料的JSON格式

(3) 產銷履歷農產品、產銷履歷農產品之賣場與餐廳、產銷履歷農產品達人、衛福部食藥署之食品業者登錄分屬不同資料集,資料結構亦不同,如何透過語意技術達到跨資料集的查詢?

產銷履歷農產品、產銷履歷農產品之賣場與餐廳、產銷履歷農產品達人、和衛福部食藥署之食品業者登錄之建立並不是同一個資料集,以關連式資料庫的基礎的傳統做法,是將所有資料透過主鍵的方式將資料串連,而語意網的做法,則朝向於聯合式SPARQL查詢,此查詢得以進行,是因為RDF資料集中,已經先將語意相同的事實相互連結,或以owl:sameAs語彙對映,因此SPARQL查詢過程中,以圖形(graph)為主的三元組資料(RDF),可以整合在一起,以提供完整的結果。

當然,產銷履歷農產品、產銷履歷農產品之賣場與餐廳、產銷履歷農產品達人、和衛福部食藥署之食品業者登錄等資料需要以三元組資料(RDF)方式編碼,且以知識本體為基礎,並分別建立SPARQL查詢端點(endpoint)。

(4) 產銷履歷農產品和產銷履歷農產品之賣場與餐廳中只有地號地址沒有XY座標,如何過濾結果?

產銷履歷農產品和產銷履歷農產品之賣場與餐廳之資料中只有地號或地址,為了進行空間查詢與運算,必需把地號和地址轉化為經緯度坐標。所幸內政部TGOS中有提供地址轉經緯度坐標的服務,且Google Maps亦提供地址轉經緯度坐標之服務。地籍地號方面,地政司也有地籍查詢便民系統,可查詢地籍之經緯度坐標,但無提供API查詢,本研究則是使用社群所建立的地籍地號轉座標的API 達成轉換,可透過這二個系統來取得空間座標。

技術與方法

農產品產銷履歷資料是開放資料,但產銷履歷農產品之賣場與餐廳、和產銷履歷農產品達人只公開在網頁上,但尚未以開放資料釋出,本示範案會設計網頁爬蟲,以自動化抓取這三個網頁中的內容。

取得資料後,需要清理資料,並利用自然語言處理,例如具名實體辦認(Name Entity Recognition),來區分出實體。藉由實體所表達概念與關係,建立知識本體,並利用W3C在語意網的規範,例如,OWL和RDF來編碼三元組資料,且儲存三元組於三元組資料庫(triple store),以及三元組資料服務端點(SPARQL endpoint) 。

而衛福部食藥署食品業者登錄已是開放資料,農產品產銷履歷之銷售通路商和餐廳有許多應是已登錄的食品業者,再者,這些銷售通路商也應該可以在經濟部商業司的公司登記資料中查詢的到,然而,這三者的商店或公司名稱常所指的是同一家公司,但名稱卻不一致,需要自然語言處理,找出相同的銷售商名稱和餐廳,待找出相同的實體後,利用owl:sameAs對映。

圖4: 具名實體辨識處理的示意圖

自然語言處理

具名實體辨識(Named Entity Recognition)是一種從一組文字中區分出具有意義之人事時地物名稱的自然語言處理方法,此方法將文字斷字的處理後,判斷單字會在句子之中出現的特定位置,根據文法結構,單字被分類至所屬的預設的分類,如人名、組織名、地方名、時間、數量、百分比、貨幣…等,圖3所示 。再者,為了對映二資料中相同的實體,如作物名稱,也需要字串相似度的比較 方法。

知識本體

本體論(Ontology)一詞是由亞里斯多德(Aristotle)在 Metaphysics IV, 1 中所提 出,為哲學之一個分支,是研究「 在」本身的問題,即一切現象事物的基本特質。哲 學家所探討的問題著重在於「 在是什麼?」、「 在的特徵是什麼?」和「 在所歸類 的共同特徵是什麼?」等一系列形而上學的問題。然而,本研究中的「知識本體」 (Ontologies)一詞,並非在哲學領域的討論,而是資訊工程中用來定義資料本身語意 (Semantics)的方法,Guarino(1998)為了區分哲學和資訊科學中的知識本體不同, 建議哲學領域所使用的知識本體為英文大寫單數的專有名詞 Ontology,而資訊科學所使 用的知識本體為英文小寫複數一般名詞 ontologies,也就是說,將知識本體(Ontologies) 視為資訊的一種。
而知識本體的的建立即是知識工程,是知識呈現的技術與方法,Noy and McGuinness(2001)認為建立知識本體應該定義

  1. 知識本體中的類別(Classes);
  2. 安排分類體系中的類別(Subclass–Superclass);
  3. 定義屬性(Slot)和描述這些屬性的允許值;
  4. 給實例(Instance)填入屬性的值。

就知識工程的方法,他們認為知識本體的建立應包含三個步驟:

  1. 定義領域和範圍;
  2. 考慮重覆利用性;
  3. 列舉本體中的詞;
  4. 定義類別和層級;
  5. 定義屬性;
  6. 重新定義屬性;
  7. 建立實例。

Gruber(1995)提出用框架和第一階邏輯(First Order Logic)來建立知識本體,並定義 5 種基本要素:類別(Classes)、關係(Relations)、功能(Functions)、正規的原則(Formal axioms)和實例(Instances)。而知識本體(Ontologies)根據表達方式有不同的正規化 (Formal)程度,如果表達成自然語言,知識本體可以是高度非正規的;如果表達在一個限制和結構的自然語言形態中,則是一個半非正式的; 如果表達在人工和正規定義的 語言,如 RDF 和 UML,是一個半正規知識本體,而如果一絲不苟地以正規的屬性的語意(Semantics)、定理(Theorems)和證據(Proofs)來定義知識本體中的詞,則是 一個完全正規的知識本體,如第一階邏輯(Uschold and Gruninger,1996; Gómez-Pérez et al.,2004)。隨著,語意網技術的發展,W3C已製定了知識本體的語言OWL(Web Ontology Language) ,其中使用描述性邏輯(Description Logic) 來定義語意,目前大多數知識本體的建立皆以 OWL 為主,只是在格式上採用較為簡單的Turtle或N3。而知識本體的建立工具則以Protégé 為最多人使用。

三元組儲存庫

原始資料透過知識本體,將資料轉化為RDF格式,若是原始資料為表格型態(spreadsheets)可以用Google Refine的 RDF擴充模組、XLWrap、RDF123、或NOR2O等工具,若資料是關連式資料庫,則可以D2RQ、 ODEMapster、或W3C RDB2RDF WG 所發展的R2RML等工具。而若是 XML格式,則可以使用GRDDL或ReDeFer。
資料轉為RDF後,必需由三位組資料庫(triple stores)來儲存, 將RDF資料處理後, 以便提供查詢與管理,因為RDF的查詢語言為SPARQL,因此提供於網路上提供 SPARQL來查詢和管理RDF的接口,又稱為SPARQL端點(endpoints),目前已經有許多開源的工具可以使用,如Jena、Virtuoso、Sesame、4Store、OWLIM、和BBN Parliament等,而為方便RDF資料在網頁上瀏覽,且可以直接透過網頁展示連結資料,目前也有數套前端連結資料服務的工具可以使用,如Pubby, TalisPlatform、Fuseki、和D2RQ等,值得注意的是Pubby和D2RQ是二個受歡迎的前端連結資料服務,但其資料處理與提供方式並不相同,D2RQ強調資料儲存於關連式資料庫中,透過turtle格式映對(mapping)編輯,D2RQ可以直接將關連式資料庫中之資料轉為RDF,並直接顯示於網頁上,而Pubby的後端則必需接上一個三位組資料庫來提供資料。

SPARQL查詢

SPARQL為RDF的查詢語言,其設計的概念很像關連式資料的查詢語言SQL。為展現圖型式資料集和鏈結資料的好處,本案使用聯合式(federated) SPARQL查詢來建立前端的示範平台,為說明聯合式SPARQL查詢,本案利用Andreas Schwarte (2011) 的投影片來解釋,如圖5所示。

圖5: Federated SPARQL Query示意圖

RDF是一個方向性的、標籤的圖型(graph)資料,向來表達在網路中的資訊,SPARQL可以用來表達跨不同資料來源的查詢,其中資料需要是RDF或以RDF做為中繼的媒介,聯合式的(Federated) SAPRQL Query 也是一個W3C所 倡議的標準 之一。圖6為聯合式的SPARQL查詢之範例,其查詢跨過二個資料集,或者說二個SPARQL Endpoints,欲查詢紐約時報報導美國總統的頭版文章,透過DBpedia,可以找到美國總統,如圖6 所示,這些被找到的美國總統,則可以對映到紐約時報中總統,紐約時報所用的語彙只是總統,並沒有說明是那一個總統,但因為利用sameAs指向了DBpedia,因此,機器知道在紐約時報找到的這個Barack Obama總統,是美國總統,如圖8所示,聯合式的(Federated) SAPRQL可以一直利用這種方式查找下去,並找到更多的總統,及其報導文章,如圖9所示。

圖6: 聯合式的SPARQL查詢的範例
圖7:先找出DBpedia中的美國總統
圖8:利用owl:sameAs對映所找的美國總統
圖9:對映出更多的美國總統

系統架構

根據問題分析和技術方法的討論,本案預計以聯合式SPARQL查詢方式建立Chrome擴增模組,以提供產銷履歷農產品的應用示範,其系統架構如圖10所示,除了第一期所建立之產銷履歷農產品之三元組資料及SPARQL查詢系統(endpoint),本案會另建立產銷履歷農產品之賣場與餐廳、產銷履歷農產品價格、衛福部食藥署之食品業者登錄、和經濟部商業司工商資料庫等五個資料集之三元組資料及及查詢系統(endpoint),其所有空間參照也都將利用內政部的服務系統轉化成經緯度座標,以便空間條件的查詢過濾。整體而言,系統的運作方式,如圖11所示。

圖10: 系統架構圖
圖11: 系統運作

資料擷取與清理

產銷履歷農產品賣場資料的處理

於農產品產銷履歷網頁上,可查尋到賣場的資料,如圖12所示,且開放資料平台亦釋出「產銷履歷供需資訊-找通路」,這資料集只有8筆資料。根據農產品產銷履歷網頁上的賣場資料,大約可以得到300多筆賣場資料,但這些資料並不完整,因此,本案是以農產品產銷履歷JSON資料中,在「StoreInfo」所提到的商店名稱,該欄資料中包含了大量連鎖商店,如圖3中,惠康Wellcome超市(全台分店),因此先透過網路爬蟲將所有連鎖商店之分店資料擷取,如名稱、地址,若一農產品產銷履歷產品是記載供貨到「惠康Wellcome超市」,則該農產品產銷履歷產品是對映到頂好的全台所有分店,而不是只是記載惠康Wellcome超市。而該欄中常只有農民名稱和連絡方式之銷售通路,這部份不納入整理,主要原因沒有住址無法定位,而在本案平台中展示。最後,將所有資料一一清理並整理成銷售通路資料庫,圖13所示。

圖12: 產銷履歷銷售通路

 

圖13: 產銷履歷銷售通路資料庫

產銷履歷農產品餐廳資料的處理

由產銷履歷農產品供貨資訊網站中,「那裡吃」可以取得使用產銷履歷農產品的餐廳的資料,餐廳的食材溯源又分為台灣農業跨領域發展協會和有心肉舖子所建之平台,如圖14和圖15所示,二者要呈現的資料都是餐廳有那些餐點使用了產銷履歷農產品,但網頁結構不同,因此需要設計二個爬蟲程式去捉取資料。最後,整理成使用產銷履歷農產品餐廳資料庫,如圖16所示。

圖14: 有心肉舖子所建立的有心溯源餐廳平台
圖15: 台灣農業跨領域發展協會所建立的溯源餐廳系統
圖16: 使用產銷履歷農產品餐廳資料庫

產銷履歷達人資料的處理

每年的產銷履歷手冊都會把獲獎的產銷履歷達人的採訪和資料整理刊出,如圖17,而這些再被產銷履歷農產品資訊網中一則一則分出來,提出PDF檔,如圖18所示。因產銷履歷達人筆數目前不多,本案是以人工方式逐一整理,成為資料庫,如圖19所示。

圖17: 獲獎的產銷履歷達人
圖18:產銷履歷農產品資訊網中的產銷履歷達人
圖19:產銷履歷達人資料庫

衛福部食藥署食品業者登錄之處理

通路商和餐廳整理好之後,利用自然語言處理,自動地去比對產銷履歷中的通路商名稱和衛福部食藥署食品業者登錄中公司的名稱,計算其字串的相似度,因名稱常有重複,再者再以地址輔助來判斷是否為同一商家。在地去比對產銷履歷中的通路商名稱對應到衛福部食藥署食品業者登錄的公司後,可取得統一編號,利用統 一編號可串連經濟部商業司公司登記。

三元組資料與應用系統

知識本體的建立

為清楚解釋農產品產銷履歷資料,知識本體的設計分為三個部份,產地之地理空間、農業概念、和產銷關係,如圖20所示。在產地之地理空間方面,是以「產地 (Place of Origin)」為基礎,每一個「農產品產銷履歷 (Traceable Agricultural Product)」都透過「產於(isProducedAt)」指涉一個「產地 (Place of Origin)」,其產地則是由一個「地址(vCard:Address)」或一塊「農地(Parcel)」來表示,地址表達是再利用vCard的語彙,則可以轉換成「點(geo:Point)」,重複利用OGC GeoSPARQL語彙來表達,農地是一個圖徵概念(geo:Feature),實際上是指涉到一個地號,而地號可以轉換成「點(geo:Point)」或「多邊形(geo:Polygon)」,同樣是使用OGC GeoSPARQL語彙來表達。無論是「點(geo:Point)」或「多邊形(geo:Polygon)」都是幾何的概念(geo:Geometry),也都有geo:WKTLiteral來記錄經緯度資料。

就農業概念而言,「農產品產銷履歷 (Traceable Agricultural Product)」是一個相等於AGROVOC語彙中的農產品(agrovoc:Agricultural Product),該農產品是產品的子類別,而每一個「農產品產銷履歷 (Traceable Agricultural Product)」中都可以區別出一種「作物(Crop)」,該作物概念也同等於AGROVOC語彙中的「作物(agrovoc:Crop)」,該作物是植物的子類別,也就是植物的一種,雖然農產品和作物都是簡單的概念,若沒有充份、有邏輯的解釋,機器是沒有解讀其語彙的語意,本研究所設的知識本體並不需要「重覆製造輪子」,利用農業專業領域中所製定的國際標準語彙,即可將概念充份解釋,讓機器解讀。

同樣的,在產銷關係方面,本研究所設計的知識本體則是利用Friend-Of-A-Friend語彙(簡稱foaf),每一個「農產品產銷履歷 (Traceable Agricultural Product)」都會有一個「驗證單位(Certification Agency)」、「通路商(Store)」、和「農產品經營業者(Producer)」,這三個概念都可歸納成foaf中的「組織(foaf:Organization)」,而每一個「農產品產銷履歷 (Traceable Agricultural Product)」也都有一個「生產者(Farmer)」,該生產者是foaf中的「人(foaf:Person)」。此外,每一個「農產品產銷履歷 (Traceable Agricultural Product)」也具有一個XML schema格式之整數值的追蹤碼、一個XML schema之日期格式的包裝日期、和一個XML schema日期格式之驗證有效日期。

圖20: 農產品產銷履歷知識本體

三元組資料的轉換與資料查詢端點的建立

本研究是透過D2RQ將農產品產銷履歷資料轉換為三元組資料(triplify),且發佈三元組資料。D2RQ Server是用來發佈關連式資料庫內容在語意網上的一個工具,語意網即是一個包含鏈結資料的全球資訊空間,為達到鏈結的資料,資料需要被模型化且表達成三元組的編碼,D2RQ Server使用客制化D2RQ映對語言(mapping language)來對應資料庫內容和三元組資料編碼,並且可以讓這些三元組資料被瀏覽和透過SPARQL語言查找,這二個方式都是語意網開放近用(access)的典範。

三位組儲存庫(triple stores)是來儲存、管理、查詢RDF資料集的平台,而RDF的查詢語言為SPARQL,因此提供於網路上提供SPARQL來查詢和管理RDF的接口,因此,利用三元組儲存庫來提供SPARQL服務的平台,又稱為SPARQL端點(endpoints),目前已經有許多開源軟體的工具可以使用,如Jena、Virtuoso、Sesame、4Store、OWLIM、和BBN Parliament等,而為方便RDF資料在網頁上瀏覽,且可以直接透過網頁展示鏈結資料,目前也有數套前端鏈結資料服務的工具可以使用,如Pubby、TalisPlatform、Fuseki、和D2RQ等,值得注意的是Pubby和D2RQ是二個受歡迎的前端鏈結資料服務,但其資料處理與提供方式並不相同,D2RQ強調資料儲存於關連式資料庫中,透過turtle格式映對(mapping)編輯,D2RQ可以直接將關連式資料庫中之資料轉為RDF,並直接顯示於網頁上,而Pubby的後端則必需接上一個三位組資料庫來提供資料,如圖 21所示。

圖21:D2RQ和Pubby之比較

D2RQ平台包含三大部份,分別是D2RQ 映對語言(D2RQ Mapping Language)、D2RQ 引擎(D2RQ Engine)、和D2RQ 伺服器(D2RQ Server),如圖22所示。映對語言是一種敘述性映對語言,用來描述知識本體和關聯式資料庫的資料模型之間的映對關係。D2RQ 引擎是Apache Jena 的外掛模組(plug-in),Jena API是接受SPARQL語言接口,而這個外掛模組即是用來重寫來自於Jena API的SPARQL語言查詢為SQL語言,使得查詢得以在關聯式資料庫中運作,另一方面,也將在關聯式資料所查詢的結果,轉成RDF資料,使得關聯式資料庫成為三元組儲存庫的使用,因此也可以透過這個外掛模組將關聯式資料庫中所有的資料,以RDF的格式倒出,或者再與其它JAVA的應用程式一起使用。D2RQ 伺服器則是一個HTTP的伺服器,提供鏈結資料的以HTML的方式瀏覽、查核RDF資料的正確性、和提供SPARQL的查詢。

圖22:D2RQ平台架構
圖23:產銷履歷農產品的D2RQ server

D2RQ Server是依靠映對檔將資料庫中的資料轉化成為三元組資料,進 一步地可將三元組資料顯示於網頁中,使資料可以容易用瀏覽器閱讀。為實現鏈結資料,本案將產銷履歷農產品、通路商、和餐廳三個資料集 ,分別建立SPARQL Endpoint,圖23即是產銷履歷農產品的D2RQ server,運作於 http://tap.linkedopendata.tw 上,包含作物(Crop)、生產者(Farmer)、產銷履歷達人(Expert)、 農產品經營業者(Producer)、產品名稱(Product Name)和產銷履歷農產品(Traceable Agriculture Product)等類別,除了瀏覽HTML和RDF資料的功能,D2RQ server亦提供SPARQL的查詢。

完整的映對檔在附錄中,此章節只解釋重點關鍵的宣告表達方式,圖24即顯示本研究所設計的映對檔中的一段,對於「產品名稱 (tap:ProductName)」和「產銷履歷農產品 (tap:TraceableAgriculturalProduct)」二個類別(class)映對定義。在「產品名稱 (tap:ProductName)」類別(class)的定義中,第一段中說明了產品名稱本身被化為唯一的URL(urlify),如「http://tap.linkedopendata.tw/page/ProductName/小白菜(履歷)是唯一的,第二段中宣告了資料庫中產品名稱欄位的值並用於產品名稱的標記(label)。

但還是有許多產銷履歷農產品名為為「小白菜-履歷小白菜」,因此第三段宣告了所有具有相同產品名稱的產銷履歷農產品都歸於同一產品名稱,為確保唯一性,利用產品名稱和產銷履歷農產品的追蹤碼產生雜湊值(hash)來做為產銷履歷農產品的URL,確保產銷履歷農產品的唯一性,然後,再宣告這些具有相同名稱的產銷履歷農產品為產品名稱的「成員」(tap:member),如圖25 所示。

# Class ProductName
map:ProductName a d2rq:ClassMap;
d2rq:dataStorage map:database;
d2rq:uriPattern "ProductName/@@agricultureProduct.ProductName|[email protected]@";
d2rq:class tap:ProductName;
#d2rq:condition "";
#d2rq:classDefinitionLabel "ProductName";
.
map:ProductName_label a d2rq:PropertyBridge;
d2rq:belongsToClassMap map:ProductName;
d2rq:property rdfs:label;
d2rq:pattern "@@[email protected]@";
.
map:ProductName_member_TraceableAgriculturalProduct a d2rq:PropertyBridge;
d2rq:belongsToClassMap map:ProductName;
d2rq:property tap:member;
d2rq:uriSqlExpression "CONCAT('http://linkedopendata.tw/tap/resource/TraceableAgriculturalProduct/', cast(MD5(CONCAT('Name:', agricultureProduct.ProductName, 'Tracecode:',agricultureProduct.Tracecode)) as char))";
.
#Class TraceableAgricultureProduct
map:TraceableAgricultureProduct a d2rq:ClassMap;
d2rq:dataStorage map:database;
d2rq:uriSqlExpression "CONCAT('http://linkedopendata.tw/tap/resource/TraceableAgricultureProduct/', cast(MD5(CONCAT('Name:', agricultureProduct.ProductName, 'Tracecode:',agricultureProduct.Tracecode)) as char))";
d2rq:class tap:TraceableAgricultureProduct;
.
map:TraceableAgricultureProduct_label a d2rq:PropertyBridge;
d2rq:belongsToClassMap map:TraceableAgricultureProduct;
d2rq:property rdfs:label;
d2rq:pattern "@@[email protected]@";
.
map:TraceableAgricultureProduct_tracecode a d2rq:PropertyBridge;
d2rq:belongsToClassMap map:TraceableAgricultureProduct;
d2rq:property tap:hasATracecode;
d2rq:column "agricultureProduct.Tracecode";

圖25: 映對檔中定義「產品名稱 (tap:ProductName)」和「產銷履歷農產品 (tap:TraceableAgriculturalProduct)」二個類別(class)的一部份

第四段是宣告「產銷履歷農產品 (tap:TraceableAgriculturalProduct)」類別的映對,第五段是宣告產銷履歷農產品之標記(label)是使用資料庫的的欄位,第六段是宣告「產銷履歷農產品 (tap:TraceableAgriculturalProduct)」類別的屬性(property),這段所描述的是產銷履歷農產品具有一個追蹤碼。產銷履歷農產品的其它屬性的宣告方式與追蹤碼宣告方式相似,完整的映對檔可以參考附錄。

圖26:產品名稱「小白菜(履歷)」所具有的「產銷履歷農產品」之成員(tap:member)
圖27: 產品名稱為小白菜(履歷)且追蹤碼為10601020580的產銷履歷農產品

圖27即顯示追蹤碼10511150594及名稱為小白菜(履歷)的產銷履歷農產品,其驗證單位、追蹤碼、農產品經營業者、通路商、產地、生產者姓名、包裝日期、驗證有效日期、詳細栽種流程、詳細履歷資料、詳細加工流程、和其他驗證資訊皆一一列出。與產銷履歷農產品和產品名稱同樣的處理方式,生產者也可以透過唯一辨別的URL和產銷履歷農產品相互指涉,如圖27中的生產者「蘇軍達」,透過蘇軍達的URL即可了解這個生產者產出多少產銷履歷農產品,如圖28所示。同樣地,由於所有的農產品履歷中的事物皆已URL化,因此選擊「保證責任雲林縣漢光果菜生產合作社」的URL可以知道該單位所產出的農產品履歷,如圖29所示。

圖28:生產者「蘇軍達」所產出的產銷履歷農產品
圖29:農產品經營業者「保證責任雲林縣漢光果菜生產合作社」所產出的產銷履歷農產品

D2RQ平台提供SPARQL查詢,圖30顯示出產銷履歷農產品產地之查詢結果。

圖30: 產銷履歷農產品產地之SPARQL查詢

除了產銷履歷農產品的SPARQL endpoint,本研究亦建立通路商和餐廳二個SPARQL endpoint,分別在store.linkedopendata.twrest.linkedopendata.tw。在通路商的部份,如圖31所示,除了名稱、住址和經緯度坐標之外,經過名稱相似度比對後,利用owl:samaAs,連結衛福部食品業者登錄資料集,取得統一發票號碼後,再連結經濟部商業司公司登記資料,此外,從產銷履歷農產品資料中整理通路商和作物的關係,因此可以跨Endpoint,以通路商連結產銷履歷農產品,反之亦然。在餐廳的部份,如圖32所示,除了基本的名稱、地址和經緯度坐標,有使用的作物名稱,也有使用產銷履歷農產品的餐點。

圖31: 通路商Endpoint中的「家福樂板橋店」
圖31: 餐廳Endpoint中的「京華煙雲」

Chrome瀏覽器擴增模組的設計

Chrome瀏覽器擴增模組的建立容易,但核心其實是包含在其中JavaScript所執行的任務。RDFLib 是一套專為鏈結資料所設計的套件,其功能包含讀寫RDF資料、 在用戶端進行以SPARQL 讀寫Linked Data、解析 RDFa、建立在地端的查詢API、和處理owl:sameAs的結點,利用RDFLib,我們開發Chrome瀏覽器擴增模組「LinkedFood」。

iCook愛料理網站使用schema.org的語彙來編輯食譜,有利於資料的詮釋,LinkedFood即針對schema.org的語彙來設計資料的讀取,當LinkedFood擴增模組安裝後,開啟iCook的食譜時,LinkedFood即會自動地讀取到食材,透過讀 取的食材,LinkedFood則分別向產銷履歷農產品、通路商和餐廳的SPARQL Endpoint送出查詢,而得到RDF的三元組資料。當在LinkedFood的介面操作時,按了食材,後,在地端可在整合的RDF三元組資料進行查詢,如圖32所示,在那裡買的分頁中,按上方的食材後,如蕃茄,在下方地圖會顯示有賣這個食材的商店,同樣的,如圖33所示,也可以顯示出有那個餐廳可以吃到產銷履歷農產品,利用twfood.cc網站中所整理的價格資訊、產量、以及綜合二種資訊所得到的推薦指數,可以提供使用者購買的參考,如圖34所示,而食材所涉及的每一項產銷履歷農產品,可以在LinkedFood中的最後一個分頁瀏覽,如圖35所示。

圖32: Chrome瀏覽器擴增模組「LinkedFood」的那裡買
圖33: Chrome瀏覽器擴增模組「LinkedFood」的那裡吃
圖35: Chrome瀏覽器擴增模組「LinkedFood」的產銷履歷瀏覽
圖34: Chrome瀏覽器擴增模組「LinkedFood」的推不推

整個Chrome擴充模組的操作可見Youtube影片。

參考文獻

  1. 周念陵(2012),健康美麗產銷履歷,行政院農業委員會。
  2. 胡忠一(2006),建立我國農產品產銷履歷紀錄制度,安全農業生產體系研討會專集,13~40頁