臉部辨識和情感分析

Azure AI 服務
Azure Cosmos DB
Azure Cosmos DB
Azure HDInsight
Azure Synapse Analytics

本文提供在推文中檢視公開意見的解決方案。 目標是建立轉換管線,以輸出批註和趨勢主題的叢集。

Apache®、 Apache NiFiApache HadoopApache HiveApache Airflow 是美國和/或其他國家/地區的 Apache Software Foundation 注冊商標或商標。 使用這些標記不會隱含 Apache Software Foundation 的背書。

架構

管線的架構圖。元件包括用於擷取、資料轉換、儲存體、分析、AI 和資料呈現的服務。

下載此圖表的 PowerPoint 檔案

擷取管線

Twitter 擷取管線包含四個階段。

收集和擷取資料

下列元件會內嵌推文:

  • Hadoop 分散式檔案系統 (HDFS) (1)
  • 透過 Azure Data Factory (4) Azure Synapse Analytics
  • Azure Blob 儲存體 (4)
  • Azure Cosmos DB (4)

處理資料

在資料處理期間:

  • 包含推文資料的 JSON 檔案會轉換成 CSV 格式, (2) 。
  • Apache Hive 和 Azure Synapse Analytics 資料表會建立 (2) 。
  • 情感分析會在推文 (2) 上執行。
  • Azure 認知服務會處理影像,並識別 (2) 的人臉。

儲存資料

下列元件會儲存資料:

  • HDFS 和 Hive (3)
  • Azure Synapse Analytics (3)
  • Blob 儲存體 (3)
  • Azure Cosmos DB (7)

顯現資料

Power BI 儀表板會顯示來自下列來源的資料:

  • Hive (5)
  • Azure Synapse Analytics (6)
  • Azure Cosmos DB (8)

資料流程

顯示來自 Twitter、透過影像處理和情感分析,以及儲存空間之資料流程的架構圖表。

下載此圖表的 PowerPoint 檔案

解決方案的資料流程包含三個主要部分。

內嵌推文

具有 JSON 格式推文資料的檔案會轉換成 CSV 格式。 屬性會從 JSON 資料擷取,以作為 CSV 組合的變數使用。

處理影像

情感分析會在包含影像的推文上執行。 收集影像之後,臉部偵測程式會在影像上執行。 任何辨識的人臉都儲存在 HDInsight 中。

執行情感分析

自然語言工具組 (NLTK) 演算法會在內嵌的訊息上執行。 情感分析會在推文中的文字上執行。 結果會以 CSV 格式儲存在 Hive 資料表中,JSON 資料會儲存在 Azure Cosmos DB 中。

單元

此架構圖顯示解決方案內嵌、儲存體和處理層中的元件。

下載此圖表的 PowerPoint 檔案

  • Data Factory 提供各種來源和接收的批次轉換服務。 Data Factory 是巨量資料處理的重要元件,有助於簡化擷取-轉換載入 (ETL) 工作負載。 Data Factory 也會處理巨量資料整合的複雜性和規模挑戰。

  • NiFi 會將 軟體系統之間的資料流程自動化。 NiFi 提供安全性功能、可延伸架構,以及彈性的調整模型。 它會處理具有不同處理器類型之多個來源和多個接收。 NiFi 功能包括:

    • 執行串流轉換。
    • 在雲端中連線分離的系統。
    • 將資料移入和移出 Azure 儲存體和其他資料存放區。
    • 整合邊緣到雲端和混合式雲端應用程式與 Azure 服務。
    • 提供健全的資料證明功能。
  • HDInsight 是適用于內部部署環境的資料和分析的 Hadoop 平臺。 HDInsight 可以即時和批次安全地擷取、儲存和處理資料。 HDInsight 建置在 Hortonworks Data Platform (HDP) ,這是一種開放原始碼架構,可用於分散式儲存和處理來自多個來源的大型資料集。

  • Azure Synapse Analytics 是適用於資料倉儲和大型資料系統的分析服務。 它會集中雲端中的資料,以便輕鬆存取。

  • Azure Cosmos DB 是適用於新式應用程式開發的完全受控 NoSQL 資料庫。 藉由提供單位數毫秒回應時間和自動和立即延展性,Azure Cosmos DB 可保證任何規模的速度。 其 SLA 支援的可用性和企業級安全性可供應商務持續性。

  • 認知服務 是由提供 AI 功能的雲端式服務所組成。 REST API 和用戶端程式庫 SDK 可協助您將認知智慧建置到應用程式中,即使您沒有 AI 或資料科學技能也一樣。

  • Power BI 是 Microsoft Power Platform 的商務分析服務。 Power BI 提供互動式視覺效果和商業智慧功能。 其便於使用的介面可讓使用者建立自己的報表和儀表板。

替代方案

您可以替代大部分解決方案元件的替代專案。 例如:

  • 您可以使用 Cloudera 叢集,而不是 HDInsight 叢集。
  • 您可以使用 Azure Databricks,而不是 Data Factory。 Azure Databricks 可以轉換和儲存資料,但您也可以使用它作為協調器。 另一個替代方案是同時使用這兩項服務。 許多使用 Data Factory 的解決方案也會使用 Azure Databricks。
  • 您可以使用 Apache Airflow 作為執行 ETL 腳本的工作流程工具,而不是 Nifi。
  • 針對您的主要檔案存放庫,您可以使用 Elasticsearch 取代 Azure Cosmos DB。
  • 針對儀表板服務,您可以使用 Kibana 而非 Power BI。

實例詳細資料

商標對公司而言很重要,因為公司的價值取決於該公司的市場影像。 隨著貴公司進行預測性、資料導向的決策,而不是回應式決策,您需要即時監視和瞭解發生的情況。 若要獲得競爭優勢,您必須使用社交媒體分析來識別及瞭解公開意見。 除了識別推文中的情感之外,您也可以選擇辨識臉部和影像。

此解決方案會測量推文中的公開意見。 轉換管線會輸出批註和趨勢主題的叢集。 管線藉由順暢地整合 Apache NiFi 和 Azure HDInsight 等開放原始碼解決方案與 Azure 情感分析和臉部辨識服務來提供價值。 此解決方案適用于各種產業,監視社交網路不限於一個部門。

潛在使用案例

此解決方案適用于監視社交網路商標的任何區域,包括:

  • Marketing
  • 通訊
  • 政治
  • 媒體與娛樂
  • 房地產和設施
  • 食物服務 (旅遊和)
  • 時尚
  • Retail

考量

這些考慮會實作 Azure Well-Architected Framework 的要素,這是一組可用來改善工作負載品質的指引原則。 如需詳細資訊,請參閱 Microsoft Azure Well-Architected Framework

視您使用的處理工具和來源數目而定,您可能能夠簡化解決方案的轉換和視覺效果。 可能的話,請考慮使用具有一個接收的基本管線。 不要使用多個來源和多個儀表板,而是將該管線饋送至單一儀表板。

此範例會盡可能使用許多服務。 透過這種方法,您可以比較各種來源和資料類型的效能和體驗與 Power BI。

可靠性

可靠性可確保您的應用程式符合您對客戶的承諾。 如需詳細資訊,請參閱 可靠性要素概觀

在生產環境中,評估復原時間目標 (RTO) 和復原點目標 (RPO) 。 所有災害復原決策和案例都取決於這些評估。

在大部分情況下,您需要每個工具的高可用性服務。 若要進行有效的災害復原,請務必減少 RTO。 但是,如果您有高可用性,可以避免災害案例。 例如,您可能會在另一個區域中建立服務。

安全性

安全性可提供保證,以避免刻意攻擊和濫用您寶貴的資料和系統。 如需詳細資訊,請參閱安全性要素的概觀

使用身分識別型系統和原生 Azure 工具,以強式安全性狀態為目標。 針對外部元件,請使用 Kerberos 之類的外部驗證工具來確保健全且安全的工作負載。

成本最佳化

如需建立符合成本效益工作負載的資訊,請檢閱 成本優化要素概觀

卓越營運

卓越營運涵蓋部署應用程式的作業程式,並讓它在生產環境中執行。 如需詳細資訊,請參閱 營運卓越要素概觀

集中所有服務的監視記錄。 此解決方案使用 Azure 原生的外部工具和工具。 若要全面檢視所有系統,請整合所有工具的監視資料。

效能效率

效能效率可讓您的工作負載進行調整,以有效率的方式符合使用者對其放置的需求。 如需詳細資訊,請參閱效能效率要件概觀

因為解決方案使用多個來源,所以請考慮壓縮作為程式的一部分。 也請考慮您使用的檔案格式。 設定 Azure Cosmos DB 以達到延遲和一致性層級之間的取捨。 但在整個程式中監視及評估 Azure Cosmos DB 效能,以防止該元件成為瓶頸。 若要減少延遲,請考慮依位置分割資料,或將資料來源移至使用位置附近。

參與者

本文由 Microsoft 維護。 最初是由下列參與者所撰寫。

主要作者:

下一步