線上文本實體抽取能力,助力應用解析海量文本數據

来源:https://www.cnblogs.com/hmscore/archive/2022/06/23/16404147.html
-Advertisement-
Play Games

隨著信息化的發展,很多具有重要價值的知識隱藏分佈在海量數據中,影響了人們獲取知識的效率,如何處理繁雜的非結構化文本數據成為難題。 近日,HMS Core機器學習服務6.5.0版本新增線上文本實體抽取能力,該能力可以檢測出文本中是否存在比如日期、姓名、專有名詞等實體信息,並將此類實體抽取出來,即自動處 ...


隨著信息化的發展,很多具有重要價值的知識隱藏分佈在海量數據中,影響了人們獲取知識的效率,如何處理繁雜的非結構化文本數據成為難題。

近日,HMS Core機器學習服務6.5.0版本新增線上文本實體抽取能力,該能力可以檢測出文本中是否存在比如日期、姓名、專有名詞等實體信息,並將此類實體抽取出來,即自動處理非結構化自然語言文本數據的能力。例如,影視行業的應用中常常會出現大量文字的影評、資訊等內容,使用線上文本實體抽取能力即可快速提取結構信息,幫助搭建知識圖譜,便於用戶清晰理解。

此外,文本實體抽取能力更多應用於問答系統、信息索引、知識圖譜構建等領域。

問答系統

問答系統是信息檢索系統的一種高級形式,它能用準確、簡潔的自然語言回答用戶提出的問題。在問答系統實現過程中,則需要用到文本實體抽取能力識別問題和知識庫中的實體信息,再通過多種演算法模型匹配出精準回答。

信息索引

使用線上文本實體抽取能力,可命名特定實體信息作為索引和超鏈接。比如用戶在評論時提到的專有名詞,可以生成超鏈接,便於其他用戶檢索瞭解相關內容。

知識圖譜構建

知識圖譜是由實體、關係和屬性組成的一種數據結構,即具有有向圖結構的一個知識庫,文本實體抽取能力作為知識圖譜構建過程中的底層能力,有著極其重要的作用。比如構建音樂知識圖譜,首先需要大量的文本數據中提取出歌手、歌曲、作詞、影視等相關信息,然後再進行知識圖譜的搭建。

目前,華為機器學習服務線上文本實體抽取能力共支持人名、金錢、影視名、網頁鏈接在內的16個實體類別,可根據實際語義場景應用於不同類別的App中。

集成步驟

  1. 開發準備

詳細準備步驟可參考華為開發者聯盟官網

  1. 集成和配置apigateway鑒權

基於apigateway的鑒權機制:

"paths": {
"/entityExtract": { "post": { "operationId": "entityExtract",
"parameters": [{"in": "body",  "name": "req",  "required": true,
"schema": { "$ref": "#/definitions/NerEnterReq"  } },  {
"name": "X-Request-ID", "in": "header",  "required": true,
"type": "string"
}, {"name": "X-Package-Name",  "in": "header", "required": true,
"type": "string"  }, ……],
 "responses": {"200": {   "description": "response of 200",
"schema": { "$ref": "#/definitions/ResponseEntityNerBodyVo"}}}}}
  1. 創建線上文本實體構造器
// 使用自定義的參數配置創建語種檢測器。
 MLRemoteNerSetting setting = new MLRemoteNerSetting.Factory()
                .setSourceLangCode("zh")
                .create();
MLRemoteNer ner = MLNerFactory.getInstance().getRemoteNer(setting);
進行文本實體抽取。
  1. 線上獲取文本實體抽取

非同步方法示例代碼:

ner.asyncEntityExtract(input).addOnSuccessListener(new OnSuccessListener<RemoteNerResultItem[]>() {
            @Override
            public void onSuccess(RemoteNerResultItem[] remoteNerResults) {
                // 成功的處理邏輯。
                if(remoteNerResults != null){
                    // 有識別結果
                }else {
                    //  識別結果為空
                }
            }
        }).addOnFailureListener(new OnFailureListener() {
            @Override
            public void onFailure(Exception e) {
                // 識別失敗,獲取相關異常信息。
                try {
                    MLException mlException = (MLException) e;
                    // 獲取錯誤碼,開發者可以對錯誤碼進行處理,根據錯誤碼進行差異化的頁面提示。
                    int errorCode = mlException.getErrCode();
                    // 獲取報錯信息,開發者可以結合錯誤碼,快速定位問題。
                    String errorMessage = mlException.getMessage();
                } catch (Exception error) {
                    // 轉換錯誤處理。
                }
            }
        });

同步方法示例代碼:

try {
       RemoteNerResultItem[] remoteNerResults = ner.syncEntityExtract(input);
       // 識別成功邏輯
       if(remoteNerResults != null){
       // 有識別結果
       }else {
       //  識別結果為空
        }
   } catch (MLException mlException) {
       // 失敗的處理邏輯。
       // 獲取錯誤碼,開發者可以對錯誤碼進行處理,根據錯誤碼進行差異化的頁面提示。
       int errorCode = mlException.getErrCode();
       // 獲取報錯信息,開發者可以結合錯誤碼,快速定位問題。
       String errorMessage = mlException.getMessage();
   }
  1. 完成後,釋放資源
if (ner != null) {
    ner.stop();
}

瞭解更多詳情>>

訪問華為開發者聯盟官網
獲取開髮指導文檔
華為移動服務開源倉庫地址:GitHubGitee

關註我們,第一時間瞭解 HMS Core 最新技術資訊~


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.官方SDK(帶Freertos)無法編譯和下載解決方案: (1)無法編譯通過:(會報一下奇奇怪怪的錯誤) 32bit MCU官方freertos的SDK編譯不通過可能是基於不同的C語言版本編寫,需要修改配置如下: (2)無法下載:本人遇到的錯誤是這個 “No Algorithm found fo ...
  • 鏡像下載、功能變數名稱解析、時間同步請點擊 阿裡雲開源鏡像站 一、什麼是MQ? 消息隊列(Message Queue,簡稱MQ),從字面意思上看,本質是個隊列,FIFO先入先出,只不過隊列中存放的內容是message而已。 其主要用途:不同進程Process/線程Thread之間通信。 隊列是一種先進先出的 ...
  • 使用yum或dnf解決rpm包的依賴關係。 YUM:Yellowdog Update Modifier。是rpm的前端程式 作用:解決軟體包之間的依賴關係 yum工作原理: yum 伺服器存放rpm包和相關rpm包的元資料庫(一個叫做repodata的文件夾--存放包的列表、依賴關係等信息) yum ...
  • 問題導入 在之前項目的基礎功能實現中,後臺管理和移動端在進行數據訪問的時候,都是直接操作資料庫MySQL。此時的系統有且僅有一臺MySQL伺服器,則可能會出現如下問題 ①、讀和寫所有壓力都由一臺資料庫承擔,壓力大 ②、資料庫伺服器磁碟損壞導致數據丟失,單點故障 解決方案 很簡單,一臺伺服器撐不住,那 ...
  • 資料庫設計的設計內容包括:需求分析、概念結構設計、邏輯結構設計、物理結構設計、資料庫的實施和資料庫的運行和維護。 ...
  • 原文鏈接:走好數據中台最後一公裡,數據服務API是數據中台的標配 視頻回顧:點擊這裡 課件獲取:點擊這裡 一、數據服務API建設背景 在數字化轉型的時代背景下,新需求的大量增長、新技術的不斷迭代,“互聯網化、數字化”進程的不斷深入,越來越多的業務被遷移到互聯網上,產生大量的業務交互和對外服務需求,對 ...
  • E-R圖也稱實體-聯繫圖(Entity Relationship Diagram),它提供了表示實體類型、屬性和聯繫的方法,用來描述現實世界的概念模型。 ...
  • Flutter IOS 鍵盤焦點 關閉打開鍵盤 Android 的TextField 獲取焦點打開的鍵盤中有關閉鍵盤的箭頭 可以進行關閉鍵盤 IOS 則就不行,它的鍵盤沒有關閉鍵盤的按鈕 就很噁心!! IOS 的輸入框在你輸入完數據之後, 你就沒辦法關閉鍵盤。 雖然你可以滑動界面顯示被隱藏的按鈕,也 ...
一周排行
    -Advertisement-
    Play Games
  • 一:背景 準備開個系列來聊一下 PerfView 這款工具,熟悉我的朋友都知道我喜歡用 WinDbg,這東西雖然很牛,但也不是萬能的,也有一些場景他解決不了或者很難解決,這時候藉助一些其他的工具來輔助,是一個很不錯的主意。 很多朋友喜歡在項目中以記錄日誌的方式來監控項目的流轉情況,其實 CoreCL ...
  • 本來閑來無事,準備看看Dapper擴展的源碼學習學習其中的編程思想,同時整理一下自己代碼的單元測試,為以後的進一步改進打下基礎。 突然就發現問題了,源碼也不看了,開始改代碼,改了好久。 測試Dapper.LiteSql數據批量插入的時候,耗時20秒,感覺不正常,於是我測試了非Dapper版的Lite ...
  • 需求如下,在DEV框架項目中,需要在表格中增加一列顯示圖片,並且能編輯該列圖片,然後進行保存等操作,最終效果如下 這裡使用的是PictureEdit控制項來實現,打開DEV GridControl設計器,在ColumnEdit選擇PictureEdit: 綁定圖片代碼如下: DataTable dtO ...
  • 前兩天微軟偷偷更新了Visual Studio 2022 正式版版本 17.3 發佈,發佈摘要: MAUI 工作負荷 GA 生成 MAUI/Blazor CSS 熱重載支持 現在,你將能夠使用我們的新增功能在 Visual Studio 中使用每個更新試用一系列新功能。 選擇每個功能以瞭解有關特定功 ...
  • 航天和軍工領域的數字化轉型和建設正在積極推進,在與航天二院、航天三院、航天六院、航天九院、無線電廠、兵工廠等單位交流的過程中,用戶更聚焦試驗和生產過程中的痛點,迫切需要解決軟體平臺統一監測和控制設備及軟體與設備協同的問題。 ...
  • .NET 項目預設情況下 日誌是使用的 ILogger 介面,預設提供一下四種日誌記錄程式: 控制台 調試 EventSource EventLog 這四種記錄程式都是預設包含在 .NET 運行時庫中。關於這四種記錄程式的詳細介紹可以直接查看微軟的官方文檔 https://docs.microsof ...
  • 一:背景 上一篇我們聊到瞭如何去找 熱點函數,這一篇我們來看下當你的程式出現了 非托管記憶體泄漏 時如何去尋找可疑的代碼源頭,其實思路很簡單,就是在 HeapAlloc 或者 VirtualAlloc 時做 Hook 攔截,記錄它的調用棧以及分配的記憶體量, PerfView 會將這個 分配量 做成一個 ...
  • 背景 在 CI/CD 流程當中,測試是 CI 中很重要的部分。跟開發人員關係最大的就是單元測試,單元測試編寫完成之後,我們可以使用 IDE 或者 dot cover 等工具獲得單元測試對於業務代碼的覆蓋率。不過我們需要一個獨立的 CLI 工具,這樣我們才能夠在 Jenkins 的 CI 流程集成。 ...
  • 一、應用場景 大家在使用Mybatis進行開發的時候,經常會遇到一種情況:按照月份month將數據放在不同的表裡面,查詢數據的時候需要跟不同的月份month去查詢不同的表。 但是我們都知道,Mybatis是ORM持久層框架,即:實體關係映射,實體Object與資料庫表之間是存在一一對應的映射關係。比 ...
  • 我國目前並未出台專門針對網路爬蟲技術的法律規範,但在司法實踐中,相關判決已屢見不鮮,K 哥特設了“K哥爬蟲普法”專欄,本欄目通過對真實案例的分析,旨在提高廣大爬蟲工程師的法律意識,知曉如何合法合規利用爬蟲技術,警鐘長鳴,做一個守法、護法、有原則的技術人員。 案情介紹 深圳市快鴿互聯網科技有限公司 2 ...