DigiFarm:使用 Oracle Cloud 上的神經網路模型,將農作物最佳化

DigiFarm 在 Oracle Cloud Infrastructure (OCI) 上執行其雲端原生、精確的農業平台,協助農民和其他農業企業判斷內建的現場 acre 界限。

藉助在 Oracle Bare Metal GPU 上執行的深度神經網路模型,DigiFarm 擷取來自歐洲空間機構 (ESA) 的光學衛星影像,可提升解析度,然後提供大陸圖,目前 30 個國家生產商的某些 14,000 個生產商,大幅降低 92% 的內建欄位增量範圍。

客戶故事

深入瞭解 DigiFarm 對 Oracle Cloud 的歷程:

架構

使用 Amazon Web Services (AWS) 中的公用儲存桶從歐洲太空總署 (ESA) 擷取衛星映像檔之後,這些映像檔會導入 Oracle Cloud Infrastructure (OCI) 上的執行處理,然後放入 Oracle Cloud Infrastructure Object Storage 中。

DigiFarm 接著會訓練其深度神經網路模型,針對 7 個 Oracle 裸機伺服器上專用子網路中的映像檔進行分類和增強。

DigiFarm 結合 NVIDIA Tesla A100、V100 及 P100 GPU,可套用其推論模型,以協助分析增強的影像並判斷農民內建核心的精確界限。細分界限後,影像會儲存在區塊儲存中,然後轉換為地理參考地圖,並可供 DigiFarm 的用戶端使用。

DigiFarm 的客戶可以使用 Oracle API Gateway 存取其地理參照圖,該服務指示 Oracle Cloud Infrastructure Functions 從區塊儲存提取區隔的映像檔。

下列圖表說明架構。第一個圖像顯示機器學習訓練和推論工作流程,第二個圖像顯示從屬端服務工作流程。

  1. 使用 Docker 映像檔佈建欄位細分訓練執行處理 (裸機和區塊儲存體)。
  2. 欄位描述訓練執行處理使用網路位址轉譯 (NAT) 閘道從 ESA 或其他來源下載衛星影像資料,然後將資料儲存在區塊儲存中。
  3. 現場細分訓練執行處理會使用從共用資料庫系統擷取描述資料,在裸機上的 NVIDIA GPU 上執行的 Digifarm 神經網路演算法來增強映像檔。影像增強完成後,現場部門訓練實例即不再可用。
  4. 增強影像會儲存在物件儲存中。
  5. 欄位描述和深層解析引擎會從物件儲存擷取資料、套用向量化,以及建立地理參照的對應。

    digifarm-oci-ml-oracle.zip

  6. Digifarm 的客戶使用 OCI API Gateway 所公開的 API 來存取其地理參照地圖。
  7. 此 API 可讓從屬端存取在 Oracle Cloud Infrastructure Functions 平台上建立的使用者服務函式庫。
  8. 使用者服務功能可以從物件儲存提取最佳化的衛星影像,並存取欄位邊界多邊形和中繼資料。

    digifarm-oci-client-oracle.zip

架構具有下列元件:

  • 區域

    Oracle Cloud Infrastructure 區域是一個局部地理區域,其中包含一或多個資料中心 (稱為可用性網域)。區域獨立於其他區域,而且很大距離可加以區隔 (跨國家或甚至是大陸)。

  • 區間

    區間是 Oracle Cloud Infrastructure 租用戶內的跨區域邏輯分割區。使用區間在 Oracle Cloud 中組織您的資源、控制對資源的存取,以及設定使用配額。若要控制對指定區間中資源的存取,您可以定義原則,指定誰可以存取資源以及可執行的動作。

  • 身分識別與存取管理 (IAM)

    Oracle Cloud Infrastructure Identity and Access Management (IAM) 是 Oracle Cloud Infrastructure (OCI) 和 Oracle Cloud Applications 的存取控制層。IAM API 和使用者介面可讓您管理識別網域和識別網域內的資源。每個 OCI IAM 識別網域代表獨立身分識別與存取管理解決方案或其他使用者群體。

  • 可用性網域

    可用性網域是區域內的獨立獨立資料中心。每個可用性網域中的實體資源會與提供容錯能力的其他可用性網域中的資源隔離。可用性網域並不共用基礎設施,例如電源或冷卻系統,或內部可用性網域網路。因此,一個可用性網域發生故障並不會影響該區域中的其他可用性網域。

  • 容錯域

    容錯域是可用性網域內的一組硬體和基礎架構。每個可用性網域都具備三個具有獨立電源和硬體的容錯域。當您將資源分配給多個容錯域時,您的應用系統可以忍受容錯域中的實體伺服器失敗、系統維護和電源故障。

  • 虛擬雲端網路 (VCN) 和子網路

    VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可客製化的軟體定義網路。與傳統的資料中心網路一樣,VCN 會提供您完整的網路環境控制。VCN 建立 VCN 之後,便可以有多個非重疊的 CIDR 區塊。您可以將 VCN 區隔到子網路,成為區域或可用性網域的範圍。每個子網路都會包含連續的位址範圍,而不會與 VCN 中的其他子網路重疊。您可以在建立子網路後變更其大小。子網路可以是公用或專用子網路。

  • 安全清單

    對於每個子網路,您可以建立安全規則,指定必須進出子網路的來源、目的地和流量類型。

  • 動態路由閘道 (DRG)

    DRG 是一個虛擬路由器,可為 VCN 與區域外部網路之間的 VCN (例如另一個 Oracle Cloud Infrastructure 區域中的 VCN、企業內部部署網路或其他雲端提供者中的網路) 之間的專用網路流量提供路徑。

  • 網路位址轉譯 (NAT) 閘道

    NAT 閘道可讓 VCN 中的專用資源存取網際網路上的主機,無法將這些資源連線至內送網際網路連線。

  • 網際網路閘道

    網際網路閘道允許 VCN 中的公用子網路和公用網際網路之間的流量。

  • API 閘道

    Oracle API Gateway 可讓您發布具有可從網路內部存取之專用端點的 API,並視需要公開至公用網際網路。端點支援 API 驗證、要求和回應轉換、CORS、認證和授權,以及要求限制。

  • 防禦主機

    防禦主機是運算執行處理,可作為從雲端外部到拓樸的安全控制進入點。防禦主機通常會以分散式區域 (DMZ) 佈建。它可以讓您保護機密資源,做法是放在無法直接從雲端存取的專用網路中。拓樸含有單一已知的輸入點,您可以定期監督和稽核。因此,您可以避免曝光拓樸之較機密的元件,而不需要存取這些元件。

  • 虛擬機器

    Oracle Cloud Infrastructure Compute 服務可讓您在雲端佈建及管理運算主機。您可以使用資源配置啟動運算執行處理,使其符合 CPU、記憶體、網路頻寬及儲存的資源需求。建立運算執行處理之後,您可以安全地存取它、重新啟動該運算執行處理、連附及取消連附磁碟區,並在不再需要時終止該磁碟區。

    • 訓練執行處理:這些執行處理可用來開發並驗證應用程式模型,例如神經網路模擬。訓練節點是擷取 Oracle Cloud Infrastructure Object Storage 資料、根據使用的模型對資料執行作業,然後將資料儲存在連附的共用 Oracle Cloud Infrastructure Block Volumes 中。
    • 推論伺服器:這些執行處理會準備訓練節點處理的資料,並儲存在區塊磁碟區中供使用者應用程式使用。
    • 裸機:相較於執行運算密集工作負載的虛擬機器執行處理,裸機資源配置可減少 50% 的運算持續時間。
  • 函數

    Oracle Cloud Infrastructure Functions 是一個完全託管、多租用戶、可高度擴展、隨選、Functions-as-a-Service (FaaS) 平台。它由 Fn 專案開放原始碼引擎提供技術支援。函數可讓您部署程式碼,然後直接呼叫程式碼或觸發程式以回應事件。Oracle Functions 使用 Oracle Cloud Infrastructure Registry 中代管的 Docker 容器。

  • 資料庫系統

    資料庫系統可讓您透過 Oracle Cloud 中的授權包含價格,輕鬆建立、規模及保護 Oracle 資料庫。您也可以運用 Oracle Cloud Infrastructure,在您的資料中心和雲端資料庫一起管理 Oracle 資料庫。

  • 物件儲存

    物件儲存可讓您快速存取各種內容類型的結構化和非結構化資料,包括資料庫備份、分析資料,以及像是影像與影片之類的豐富內容。您可以安全地儲存,然後直接從網際網路或雲端平台內擷取資料。您不必遇到效能或服務可靠性降低的情況,就能以無縫接軌的方式調整儲存。針對需要快速、立即且經常存取的「熱」儲存,使用標準儲存。使用封存儲存作為長期存放、極少或少存取的「冷」儲存。

  • 區塊磁碟區

    有了區塊儲存磁碟區,您就可以建立、連附、連線與移動儲存磁碟區,以及變更磁碟區效能,以符合儲存、效能及應用程式需求。連附磁碟區並連線到執行處理之後,您便可以像使用一般硬碟一樣使用該磁碟區。您也可以將磁碟區中斷連線再連附到另一個執行處理,而不會遺失資料。

取得建置和部署的功能

想要顯示您在 Oracle Cloud Infrastructure 上建置的項目嗎?是否要與我們的全球雲端架構師社群來分享學員、最佳做法和參考架構?讓我們幫助您開始使用。

  1. 下載範本 (PPTX)

    將圖示拖放至範例線框中,可說明自己的參照架構。

  2. 觀看架構教學課程

    一步瞭解如何建立參考架構的指示。

  3. 提交您的圖表

    用您的圖表寄電子郵件給我們。我們的雲端架構師會審核您的圖表,並與您聯絡以討論您的架構。

致謝

  • 作者:Sasha Banks-Louie,Gabriel Grigorie,Mitesh Bhopale,Andriy Tsybulsky
  • 提供者:Robert Lies,Vladimir Taft