TWI693563B - 基於模型進行預測的方法和裝置 - Google Patents
基於模型進行預測的方法和裝置 Download PDFInfo
- Publication number
- TWI693563B TWI693563B TW108134608A TW108134608A TWI693563B TW I693563 B TWI693563 B TW I693563B TW 108134608 A TW108134608 A TW 108134608A TW 108134608 A TW108134608 A TW 108134608A TW I693563 B TWI693563 B TW I693563B
- Authority
- TW
- Taiwan
- Prior art keywords
- model
- operating environment
- embedded
- machine learning
- table lookup
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
- G05B13/027—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/048—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本說明書實施例提供一種基於模型進行預測的方法和裝置,其中,所述方法包括:模型運行環境接收所述機器學習模型的輸入張量;模型運行環境向嵌入運行環境發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換;模型運行環境接收嵌入運行環境返回的查表結果,所述查表結果由所述嵌入運行環境根據所述輸入張量進行嵌入查詢和處理得到;模型運行環境將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測。
Description
本發明涉及機器學習技術領域,特別涉及一種基於模型進行預測的方法和裝置。
在人工智慧中,特徵工程是一個非常重要的環節。特徵工程是將機器學習模型的輸入資料轉換為特徵向量的過程,是機器學習中重要的起始步驟。而嵌入(embedding)是特徵工程中的一種資料轉換方法,機器學習的輸入資料可能是一個高維張量,可以通過嵌入層將高維張量映射到低維的連續空間,達到特徵提取的目的。通過將高維空間映射到嵌入這種低維空間,使得在大型輸入(典型的是高維度稀疏張量)上的機器學習變得更加容易。
但是,嵌入層的參數量通常非常大,在某些業務場景中,所有嵌入層參數的記憶體總量可以達到千億級別(比如100GB~1TB記憶體)。這種情況對即時線上模型的部署和預測構成很大的挑戰:單台機器不能提供足夠的共用記憶體去儲存整個模型,因此需要購買定制的機器提供服務,增加了設備購置、運行和維護的成本;並且,單台機器的容量被較大的嵌入層佔用,也使得模型運行不能充分發揮底層硬體資源的計算能力,造成資源浪費。
有鑑於此,本說明書一個或多個實施例提供一種基於模型進行預測的方法和裝置,以降低模型運行成本,且更好的發揮資源能力。
具體地,本說明書一個或多個實施例是通過如下技術方案實現的:
第一態樣,提供一種基於模型進行預測的方法,所述方法由機器學習模型系統執行,所述系統包括:機器學習模型、以及用於對機器學習模型的輸入張量進行轉換的嵌入模型;所述嵌入模型和機器學習模型分開部署,嵌入模型部署在嵌入運行環境,所述機器學習模型部署在模型運行環境中;所述方法包括:
所述模型運行環境接收所述機器學習模型的輸入張量;
所述模型運行環境向嵌入運行環境發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換;
所述模型運行環境接收嵌入運行環境返回的查表結果,所述查表結果由所述嵌入運行環境根據所述輸入張量進行嵌入查詢和處理得到;
所述模型運行環境將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測。
第二態樣,提供一種機器學習模型系統,所述系統包括:嵌入運行環境和模型運行環境,所述嵌入運行環境中部署嵌入模型,所述模型運行環境中部署機器學習模型;
所述模型運行環境,用於接收所述機器學習模型的輸入張量;並用於向嵌入運行環境發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換;還用於將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測;
所述嵌入運行環境,用於根據查表請求,對所述輸入張量進行嵌入查詢和處理得到查表結果,並將所述查表結果回饋給所述模型運行環境。
第三態樣,提供一種基於模型進行預測的設備,所述設備包括記憶體、處理器,以及儲存在記憶體上並可在處理器上運行的電腦指令,所述處理器執行指令時以實現嵌入運行環境和模型運行環境,所述嵌入運行環境用於運行嵌入模型,所述模型運行環境用於運行機器學習模型;所述處理器執行指令用於實現以下步驟:
所述模型運行環境接收所述機器學習模型的輸入張量;
所述模型運行環境向嵌入運行環境發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換;
所述模型運行環境接收嵌入運行環境返回的查表結果,所述查表結果由所述嵌入運行環境根據所述輸入張量進行嵌入查詢和處理得到;
所述模型運行環境將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測。
本說明書一個或多個實施例的基於模型進行預測的方法和裝置,由於將模型與嵌入進行了分離部署,當單台機器的記憶體不足夠時,可以使用分離的其他記憶體儲存模型或嵌入,從而降低了模型運行和維護成本;並且,這種分離部署結構,可以使得網路虛擬執行單元的計算資源充分的用於模型運行預測,充分發揮底層硬體資源的計算能力。
為了使本技術領域的人員更好地理解本說明書一個或多個實施例中的技術方案,下面將結合本說明書一個或多個實施例中的圖式,對本說明書一個或多個實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本說明書一部分實施例,而不是全部的實施例。基於本說明書一個或多個實施例,本領域普通技術人員在沒有作出進步性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。
嵌入(embedding)是特徵工程中常用的一種資料轉換方法,可以用於將大型稀疏向量映射到一個保留語義關係的低維空間。嵌入的實現是通過訓練嵌入模型,並通過該嵌入模型進行嵌入查詢,可以將機器學習模型的輸入張量(如,稀疏張量)作為索引查詢嵌入模型,從而將原始的高維張量映射到低維空間。
以輸入張量是one-hot encoding方法表示為例,One-hot encoding方法將每個類別表示成一個很長的向量,這個向量的維度是類型的總個數,其中絕大多數元素為0,只有一個維度的值為1,這個維度就代表了當前的類型。這種情況下,如果採用one-hot encoding,生成的特徵維度往往非常大。例如,在自然語言領域,one-hot encoding可以把每個詞表示為一個很長的向量。對於這樣的高維向量,人工智慧領域一種比較流行的方法就是將這些特徵連接到嵌入(embedding)層,從而映射到低維空間,達到特徵提取的目的。
由上述可以看到,嵌入與機器學習模型的關係是,嵌入可以用於對機器學習模型的輸入張量進行高維空間向低維空間的轉換操作,並將轉換後的結果再輸入進機器學習模型。通過嵌入的高維空間向低維空間的轉換,使得在大型輸入(典型的是高維度稀疏張量)上的機器學習變得更加容易。同時,為一個機器學習模型學習到的嵌入模型,也可以被其他機器學習模型複用;嵌入模型可以單獨訓練,也可以作為機器學習模型的一部分進行學習。例如,該嵌入模型可以是訓練得到的嵌入表。
本說明書至少一個實施例提供了一種機器學習模型系統,如圖1所示,該系統可以包括:嵌入運行環境11和模型運行環境12。其中,嵌入運行環境11中部署了嵌入模型,具體可以是部署有嵌入表。模型運行環境12中可以部署機器學習模型,例如可以部署深度神經網路模型。
其中,上述的嵌入運行環境11或者模型運行環境12可以是實體執行單元,或者也可以是虛擬執行單元。例如,實體執行單元可以是伺服器等實體設備,虛擬執行單元可以是虛擬化容器等。可以將嵌入模型部署在嵌入運行環境11,嵌入運行環境11還可以執行嵌入查找和處理等;可以將機器學習模型部署在模型運行環境12,以由模型運行環境12運行該模型進行預測。
圖1所示的機器學習模型系統是一種將嵌入和機器學習模型進行分離部署的系統,例如,上述的嵌入運行環境11和模型運行環境12可以是虛擬化容器,具體的,可以運行有容器實例,例如,可以使用docker作為容器。還可以採用VMware虛擬機器,Amazon Firecracker等作為虛擬執行單元。
在分離部署的系統架構中,輸入張量可以是輸入到模型運行環境12,再由模型運行環境12向嵌入運行環境11發送查表請求。嵌入運行環境11可以進行嵌入查找,例如,以輸入張量為索引查詢嵌入運行環境11中部署的嵌入表,將高維張量映射到低維空間,並將查表結果返回給模型運行環境12。模型運行環境12可以根據查表結果繼續運行模型。
為了實現模型運行環境12和嵌入運行環境11之間的通信互動,兩者之間可以進行網路互連,以實現上述的查表請求的發送,或者查表結果的回饋。例如,當嵌入運行環境11和模型運行環境12是虛擬化容器進行實體部署時,模型運行環境12以及其所需查表的嵌入運行環境11可以部署在同一個實體節點上,或者也可以部署在不同的實體節點上。當兩者位於同一實體節點時,模型運行環境12發送查表請求時可以是本地發送。當兩者位於不同的實體節點時,模型運行環境12發送查表請求可以是遠端發送。
圖2是本說明書至少一個實施例提供的基於模型進行預測的方法的流程,該方法基於圖1所示部署的機器學習模型系統,當機器學習模型系統按照圖1所示部署後,可以執行該基於模型進行預測的方法,將模型應用於預測。本例子以模型運行環境和嵌入運行環境是虛擬化容器為例進行說明,此時模型運行環境可以稱為網路虛擬執行單元,嵌入運行環境可以稱為嵌入虛擬執行單元。並且,在下面的描述中,嵌入模型以嵌入表為例進行說明。
如圖2所示,該方法可以包括:
在步驟200中,網路虛擬執行單元接收所述機器學習模型的輸入張量。
例如,機器學習模型的輸入張量可以被網路虛擬執行單元接收,該輸入張量可以是一個高維張量,需要進行低維轉換處理。
在步驟202中,網路虛擬執行單元向嵌入虛擬執行單元發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換。
例如,網路虛擬執行單元可以向嵌入虛擬執行單元發送查表請求,並將步驟200中接收到的輸入張量發送給嵌入虛擬執行單元,請求對該輸入張量進行低維轉換處理。
在步驟204中,嵌入虛擬執行單元根據所述輸入張量進行嵌入表查詢和處理,得到查表結果。
例如,假設輸入張量是v=(0,0,0,1,1)。
嵌入虛擬執行單元儲存的嵌入表(Embedding表)可以如下:
表1 Emb表
根據輸入張量v查找嵌入表Emb,可以得到兩個向量:
V1=(13,14,15,16);
V2=(17,18,19,20);
然後,嵌入虛擬執行單元可以再對上述兩個向量V1和V2進行求和或者平均等處理。例如,V1+V2,或者(V1+V2)/2。
嵌入虛擬執行單元執行上述的求和或者平均的處理後,將求和結果或者平均結果作為查找結果返回給網路虛擬執行單元。上述例子中,是以求和或平均為例進行處理,還可以執行其他處理;並且,由嵌入虛擬執行單元執行上述求和或平均等處理,再返回給網路虛擬執行單元,可以減少頻寬需求。
在步驟206中,嵌入虛擬執行單元將查表結果返回給網路虛擬執行單元。
在步驟208中,網路虛擬執行單元將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測。
例如,網路虛擬執行單元在接收到查表結果後,可以將該查表結果作為機器學習模型的輸入,並繼續運行機器學習模型完成基於模型進行預測。
本例子的基於模型進行預測的方法,由於將模型與嵌入進行了分離部署,當單台機器的記憶體不足夠時,可以使用分離的其他記憶體儲存模型或嵌入,從而降低了模型運行和維護成本;並且,這種分離部署結構,可以使得網路虛擬執行單元的計算資源充分的用於模型運行預測,充分發揮底層硬體資源的計算能力。
此外,機器學習模型系統中可以包括至少一個嵌入虛擬執行單元、以及至少一個所述網路虛擬執行單元。每個嵌入虛擬執行單元運行一個嵌入模型,每個網路虛擬執行單元運行一個機器學習模型。
請參見圖3,圖3以虛擬執行單元是容器為例,嵌入虛擬執行單元是嵌入容器,網路虛擬執行單元是網路容器,並且以網路容器中運行部署有深度神經網路為例,那麼網路容器可以稱為深度網路容器。
圖3所示的機器學習模型系統中包括多個深度網路容器和多個嵌入容器,例如,嵌入容器31、嵌入容器32等,還包括深度網路容器33、深度網路容器34和深度網路容器35等。其中,可以將同一個嵌入模型的多個拷貝部署在多個容器中,以可擴展性的支持大量併發的查詢存取,比如,嵌入容器32中部署的嵌入模型可以是嵌入容器31中部署的嵌入模型的拷貝。
嵌入容器和深度網路容器可以運行在同一台實體機器上,也可以廣義上分佈在集群的任何角落。不同的網路虛擬執行單元可以配置不同的硬體資源,該硬體資源可以適應所述網路虛擬執行單元上機器學習模型的運行需求。例如,所述硬體資源可以包括如下至少一項:中央處理器CPU,或者硬體加速器。其中的硬體加速器可以包括但不限於:圖形處理器GPU(Graphics Processing Unit),或者現場可編程閘陣列FPGA(Field-Programmable Gate Array),或者為專門目的而設計的積體電路ASIC(Application Specific Integrated Circuit)晶片。
可以根據深度神經網路的計算複雜度,業務延遲要求等各種約束分配計算資源,儘量充分利用底層硬體的計算能力。比如,在延遲要求苛刻的業務場景中,可以部署GPU,FPGA或者AI晶片等硬體加速器到深度神經網路容器中,以替代多個CPU核,在規定時間內完成相對比較複雜的深度網路模型推理。而對於計算複雜度較低的深度神經網路模型,單個CPU核或許就可以滿足要求。在這種情況下,對應的一個深度網路容器只需要配置一個CPU核就夠用了。
在圖3所示的系統中,嵌入模型被部署在一個具有足夠記憶體的嵌入容器中,可以通過本地或者遠端連接向其他需要嵌入表查詢的容器提供服務。例如,深度網路容器負責運行深度神經網路進行模型推理,例如,深度網路容器33向嵌入容器31發送查表請求是本地發送,深度網路容器33和嵌入容器31位於同一節點。深度網路容器收到使用者的輸入張量後(可能是密集的,也可能是稀疏的),向嵌入容器發出查表請求,將收到的查表結果輸入到深度神經網路中完成模型推理預測。
此外,本說明書至少一個實施例中的機器學習模型,包括但不限於:深度神經網路模型,例如Wide & Deep模型和DeepFM模型。其中,深度神經網路模型可以是在一個輸入層和一個輸出層之間添加至少一個隱藏層的機器學習神經網路。
上述實施例闡明的裝置或模組,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦,電腦的具體形式可以是個人電腦、膝上型電腦、蜂巢式電話、相機電話、智慧型電話、個人數位助理、媒體播放機、導航設備、電子郵件收發設備、遊戲控制台、平板電腦、可穿戴設備或者這些設備中的任意幾種設備的組合。
為了描述的方便,描述以上裝置時以功能分為各種模組分別描述。當然,在實施本說明書一個或多個實施例時可以把各模組的功能在同一個或多個軟體和/或硬體中實現。
上述圖中所示流程中的各個步驟,其執行順序不限制於流程圖中的順序。此外,各個步驟的描述,可以實現為軟體、硬體或者其結合的形式,例如,本領域技術人員可以將其實現為軟體代碼的形式,可以為能夠實現所述步驟對應的邏輯功能的電腦可執行指令。當其以軟體的方式實現時,所述的可執行指令可以儲存在記憶體中,並被設備中的處理器執行。
例如,對應於上述方法,本說明書一個或多個實施例同時提供一種基於模型進行預測設備,所述設備包括記憶體、處理器,以及儲存在記憶體上並可在處理器上運行的電腦指令,所述處理器執行指令時以實現嵌入運行環境和模型運行環境,所述嵌入運行環境用於運行嵌入,所述模型運行環境用於運行機器學習模型;所述處理器執行指令用於實現以下步驟:
所述模型運行環境接收所述機器學習模型的輸入張量;
所述模型運行環境向嵌入運行環境發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換;
所述模型運行環境接收嵌入運行環境返回的查表結果,所述查表結果由所述嵌入運行環境根據所述輸入張量進行嵌入查詢和處理得到;
所述模型運行環境將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測。
還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。
本領域技術人員應明白,本說明書一個或多個實施例可提供為方法、系統或電腦程式產品。因此,本說明書一個或多個實施例可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體態樣的實施例的形式。而且,本說明書一個或多個實施例可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
本說明書一個或多個實施例可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、組件、資料結構等等。也可以在分散式運算環境中實踐本說明書一個或多個實施例,在這些分散式運算環境中,由通過通信網路而被連接的遠端處理設備來執行任務。在分散式運算環境中,程式模組可以位於包括儲存設備在內的本地和遠端電腦儲存媒體中。
本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於資料處理設備實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
上述對本說明書特定實施例進行了描述。其它實施例在所附申請專利範圍的範圍內。在一些情況下,在申請專利範圍中記載的動作或步驟可以按照不同於實施例中的順序來執行並且仍然可以實現期望的結果。另外,在圖式中描繪的過程不一定要求示出的特定順序或者連續順序才能實現期望的結果。在某些實施方式中,多工處理和並行處理也是可以的或者可能是有利的。
以上所述僅為本說明書一個或多個實施例的較佳實施例而已,並不用以限制本說明書一個或多個實施例,凡在本說明書一個或多個實施例的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本說明書一個或多個實施例保護的範圍之內。
11:嵌入運行環境
12:模型運行環境
31:嵌入容器
32:嵌入容器
33:深度網路容器
34:深度網路容器
35:深度網路容器
200:步驟
202:步驟
204:步驟
206:步驟
208:步驟
為了更清楚地說明本說明書一個或多個實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的圖式作簡單地介紹,顯而易見地,下面描述中的圖式僅僅是本說明書一個或多個實施例中記載的一些實施例,對於本領域普通技術人員來講,在不付出進步性勞動性的前提下,還可以根據這些圖式獲得其他的圖式。
圖1為本說明書一個或多個實施例提供的一種機器學習模型系統;
圖2為本說明書一個或多個實施例提供的一種基於模型進行預測的方法;
圖3為本說明書一個或多個實施例提供的一種機器學習模型系統。
Claims (11)
- 一種基於模型進行預測的方法,所述方法由機器學習模型系統執行,所述系統包括:機器學習模型、以及用於對機器學習模型的輸入張量進行轉換的嵌入模型;所述嵌入模型和機器學習模型分開部署,所述嵌入模型部署在嵌入運行環境,所述機器學習模型部署在模型運行環境中; 所述方法包括: 所述模型運行環境接收所述機器學習模型的輸入張量; 所述模型運行環境向嵌入運行環境發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換; 所述模型運行環境接收嵌入運行環境返回的查表結果,所述查表結果由所述嵌入運行環境根據所述輸入張量進行嵌入查詢和處理得到; 所述模型運行環境將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測。
- 根據申請專利範圍第1項所述的方法, 所述嵌入運行環境是實體執行單元或者虛擬執行單元。
- 根據申請專利範圍第1項所述的方法,所述機器學習模型系統中包括:至少一個嵌入運行環境、以及至少一個所述模型運行環境;每個嵌入運行環境運行一個嵌入模型,每個模型運行環境運行一個機器學習模型; 所述模型運行環境向嵌入運行環境發送查表請求,包括: 所述模型運行環境向本地的嵌入運行環境發送查表請求,所述嵌入運行環境與模型運行環境位於同一個實體節點上; 或者,所述模型運行環境向遠端的嵌入運行環境發送查表請求,所述嵌入運行環境與模型運行環境位於不同的實體節點上。
- 根據申請專利範圍第3項所述的方法,不同的模型運行環境配置不同的硬體資源,所述硬體資源適應所述模型運行環境上機器學習模型的運行需求。
- 根據申請專利範圍第4項所述的方法,所述硬體資源包括如下至少一項: 中央處理器CPU,或者硬體加速器; 所述硬體加速器包括如下任一項:圖形處理器GPU,或者現場可編程閘陣列FPGA,或者為專門目的而設計的積體電路ASIC晶片。
- 根據申請專利範圍第1項所述的方法,所述機器學習模型,包括如下任一項: 深度神經網路模型,或者Wide & Deep模型,或者DeepFM模型。
- 一種機器學習模型系統,所述系統包括:嵌入運行環境和模型運行環境,所述嵌入運行環境中部署嵌入模型,所述模型運行環境中部署機器學習模型; 所述模型運行環境,用於接收所述機器學習模型的輸入張量;並用於向嵌入運行環境發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換;還用於將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測; 所述嵌入運行環境,用於根據查表請求,對所述輸入張量進行嵌入查詢和處理得到查表結果,並將所述查表結果回饋給所述模型運行環境。
- 根據申請專利範圍第7項所述的系統, 所述嵌入運行環境和模型運行環境,是實體執行單元或者虛擬執行單元。
- 根據申請專利範圍第7項所述的系統, 所述機器學習模型系統中包括:至少一個嵌入運行環境、以及至少一個所述模型運行環境;每個嵌入運行環境運行至少一個嵌入模型,每個模型運行環境運行至少一個機器學習模型。
- 根據申請專利範圍第7項所述的系統, 不同的模型運行環境配置不同的硬體資源,所述硬體資源適應所述模型運行環境上機器學習模型的運行需求。
- 一種基於模型進行預測的設備,所述設備包括記憶體、處理器,以及儲存在記憶體上並可在處理器上運行的電腦指令,所述處理器執行指令時以實現嵌入運行環境和模型運行環境,所述嵌入運行環境用於運行嵌入模型,所述模型運行環境用於運行機器學習模型;所述處理器執行指令用於實現以下步驟: 所述模型運行環境接收所述機器學習模型的輸入張量; 所述模型運行環境向嵌入運行環境發送查表請求,所述查表請求中攜帶所述輸入張量,以請求對所述輸入張量進行低維轉換; 所述模型運行環境接收嵌入運行環境返回的查表結果,所述查表結果由所述嵌入運行環境根據所述輸入張量進行嵌入查詢和處理得到; 所述模型運行環境將所述查表結果輸入機器學習模型,並運行所述機器學習模型完成基於模型進行預測。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811522364.0A CN110033091B (zh) | 2018-12-13 | 2018-12-13 | 一种基于模型进行预测的方法和装置 |
CN201811522364.0 | 2018-12-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI693563B true TWI693563B (zh) | 2020-05-11 |
TW202022719A TW202022719A (zh) | 2020-06-16 |
Family
ID=67235337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108134608A TWI693563B (zh) | 2018-12-13 | 2019-09-25 | 基於模型進行預測的方法和裝置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11803752B2 (zh) |
EP (1) | EP3816877B1 (zh) |
CN (1) | CN110033091B (zh) |
SG (1) | SG11202100954UA (zh) |
TW (1) | TWI693563B (zh) |
WO (1) | WO2020119268A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110033091B (zh) | 2018-12-13 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 一种基于模型进行预测的方法和装置 |
CN111158790B (zh) * | 2019-12-31 | 2021-04-13 | 清华大学 | 面向云端深度学习推理的fpga虚拟化方法 |
CN111178517B (zh) * | 2020-01-20 | 2023-12-05 | 上海依图网络科技有限公司 | 模型部署方法、系统、芯片、电子设备及介质 |
DE102020211250A1 (de) * | 2020-09-08 | 2022-03-10 | Zf Friedrichshafen Ag | Computerimplementiertes Verfahren, eingebettetes System und Computerprogramm zum Ausführen einer Regelungs- und/oder Steuerungsvorschrift |
US20220165291A1 (en) * | 2020-11-20 | 2022-05-26 | Samsung Electronics Co., Ltd. | Electronic apparatus, control method thereof and electronic system |
CN115630691A (zh) * | 2021-07-14 | 2023-01-20 | 华为技术有限公司 | 一种数据处理方法、系统及相关设备 |
CN114385713B (zh) * | 2022-01-13 | 2024-09-27 | 沈阳航空航天大学 | 基于聚类与深度神经网络的关系型数据的连续特征嵌入方法 |
TWI818501B (zh) * | 2022-04-07 | 2023-10-11 | 創鑫智慧股份有限公司 | 嵌入表產生方法與嵌入表濃縮方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170213126A1 (en) * | 2016-01-27 | 2017-07-27 | Bonsai AI, Inc. | Artificial intelligence engine configured to work with a pedagogical programming language to train one or more trained artificial intelligence models |
TW201833767A (zh) * | 2017-03-09 | 2018-09-16 | 美商谷歌有限責任公司 | 向量處理單元 |
TW201837737A (zh) * | 2017-03-07 | 2018-10-16 | 美商谷歌有限責任公司 | 使用一矩陣運算單元之深度串接 |
TW201841132A (zh) * | 2017-02-21 | 2018-11-16 | 美商谷歌有限責任公司 | 非純量資料之大資料集上減少及廣播操作之平行處理 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040236806A1 (en) * | 2002-06-24 | 2004-11-25 | Turner James D. | Method, apparatus and articles of manufacture for computing the sensitivity partial derivatives of linked mechanical systems |
US8837727B2 (en) * | 2011-11-08 | 2014-09-16 | Mitsubishi Electric Research Laboratories, Inc. | Method for privacy preserving hashing of signals with binary embeddings |
US9141916B1 (en) * | 2012-06-29 | 2015-09-22 | Google Inc. | Using embedding functions with a deep network |
US9147154B2 (en) * | 2013-03-13 | 2015-09-29 | Google Inc. | Classifying resources using a deep network |
US10339440B2 (en) * | 2015-02-19 | 2019-07-02 | Digital Reasoning Systems, Inc. | Systems and methods for neural language modeling |
US9984062B1 (en) * | 2015-07-10 | 2018-05-29 | Google Llc | Generating author vectors |
US10395118B2 (en) * | 2015-10-29 | 2019-08-27 | Baidu Usa Llc | Systems and methods for video paragraph captioning using hierarchical recurrent neural networks |
EP3394798A1 (en) * | 2016-03-18 | 2018-10-31 | Google LLC | Generating dependency parses of text segments using neural networks |
US10789544B2 (en) * | 2016-04-05 | 2020-09-29 | Google Llc | Batching inputs to a machine learning model |
EP3427193A1 (en) * | 2016-04-13 | 2019-01-16 | Google LLC | Wide and deep machine learning models |
CN106127297B (zh) * | 2016-06-02 | 2019-07-12 | 中国科学院自动化研究所 | 基于张量分解的深度卷积神经网络的加速与压缩方法 |
US9959498B1 (en) * | 2016-10-27 | 2018-05-01 | Google Llc | Neural network instruction set architecture |
US11640617B2 (en) * | 2017-03-21 | 2023-05-02 | Adobe Inc. | Metric forecasting employing a similarity determination in a digital medium environment |
CN107423817B (zh) * | 2017-04-17 | 2020-09-01 | 星环信息科技(上海)有限公司 | 一种深度学习实现的方法及设备 |
US11488008B2 (en) * | 2017-05-05 | 2022-11-01 | Intel Corporation | Hardware implemented point to point communication primitives for machine learning |
CN107330032B (zh) * | 2017-06-26 | 2020-08-21 | 北京理工大学 | 一种基于递归神经网络的隐式篇章关系分析方法 |
US10943171B2 (en) * | 2017-09-01 | 2021-03-09 | Facebook, Inc. | Sparse neural network training optimization |
CN107563442B (zh) * | 2017-09-02 | 2019-12-10 | 西安电子科技大学 | 基于稀疏低秩正则图张量化嵌入的高光谱图像分类方法 |
CN107944027B (zh) * | 2017-12-12 | 2020-03-31 | 苏州思必驰信息科技有限公司 | 创建语义键索引的方法及系统 |
CN108153853B (zh) * | 2017-12-22 | 2022-02-01 | 齐鲁工业大学 | 基于Wikipedia链接结构的中文概念向量生成方法和装置 |
CN108492273A (zh) * | 2018-03-28 | 2018-09-04 | 深圳市唯特视科技有限公司 | 一种基于自注意力模型的图像生成方法 |
CN110033091B (zh) * | 2018-12-13 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 一种基于模型进行预测的方法和装置 |
-
2018
- 2018-12-13 CN CN201811522364.0A patent/CN110033091B/zh active Active
-
2019
- 2019-09-25 TW TW108134608A patent/TWI693563B/zh active
- 2019-10-24 EP EP19895453.9A patent/EP3816877B1/en active Active
- 2019-10-24 WO PCT/CN2019/112895 patent/WO2020119268A1/zh unknown
- 2019-10-24 SG SG11202100954UA patent/SG11202100954UA/en unknown
-
2021
- 2021-02-02 US US17/165,509 patent/US11803752B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170213126A1 (en) * | 2016-01-27 | 2017-07-27 | Bonsai AI, Inc. | Artificial intelligence engine configured to work with a pedagogical programming language to train one or more trained artificial intelligence models |
TW201841132A (zh) * | 2017-02-21 | 2018-11-16 | 美商谷歌有限責任公司 | 非純量資料之大資料集上減少及廣播操作之平行處理 |
TW201837737A (zh) * | 2017-03-07 | 2018-10-16 | 美商谷歌有限責任公司 | 使用一矩陣運算單元之深度串接 |
TW201833767A (zh) * | 2017-03-09 | 2018-09-16 | 美商谷歌有限責任公司 | 向量處理單元 |
Also Published As
Publication number | Publication date |
---|---|
WO2020119268A1 (zh) | 2020-06-18 |
CN110033091B (zh) | 2020-09-01 |
SG11202100954UA (en) | 2021-02-25 |
US11803752B2 (en) | 2023-10-31 |
EP3816877B1 (en) | 2024-09-25 |
US20210158165A1 (en) | 2021-05-27 |
EP3816877A1 (en) | 2021-05-05 |
CN110033091A (zh) | 2019-07-19 |
TW202022719A (zh) | 2020-06-16 |
EP3816877A4 (en) | 2021-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI693563B (zh) | 基於模型進行預測的方法和裝置 | |
CN111670457B (zh) | 动态对象实例检测、分割和结构映射的优化 | |
WO2018171717A1 (zh) | 面向神经网络处理器的自动化设计方法和系统 | |
US20190378016A1 (en) | Distributed computing architecture for large model deep learning | |
CN111684490A (zh) | 动态对象实例检测、分割和结构映射的优化 | |
US11741375B2 (en) | Capturing the global structure of logical formulae with graph long short-term memory | |
Han et al. | Signal processing and networking for big data applications | |
Bengfort et al. | Data analytics with Hadoop: an introduction for data scientists | |
US11423307B2 (en) | Taxonomy construction via graph-based cross-domain knowledge transfer | |
KR102516231B1 (ko) | 네트워크 기반 미디어 처리(nbmp)에서의 미디어 처리 함수를 대한 구성 파라미터의 그래프 표현 및 설명 | |
US20220391781A1 (en) | Architecture-agnostic federated learning system | |
Ben Mahfoudh et al. | Learning-based coordination model for spontaneous self-composition of reliable services in a distributed system | |
KR102002732B1 (ko) | 앙상블 모델을 이용한 심층 신경망 기반 데이터 처리 방법 및 장치 | |
CN116932147A (zh) | 流式作业处理方法、装置、电子设备及介质 | |
Schreiber et al. | Shared memory parallelization of fully-adaptive simulations using a dynamic tree-split and-join approach | |
Cheng | Basic Infrastructure of the Metaverse | |
CN116402091A (zh) | 面向人工智能芯片的混合引擎智能计算方法和装置 | |
Plotnikova et al. | Gravitation search training algorithm for asynchronous distributed multilayer perceptron model | |
US20240185001A1 (en) | Dataset generation using large language models | |
Tiwari et al. | NCS based ultra low power optimized machine learning techniques for image classification | |
Sil et al. | PrimeQA: the prime repository for state-of-the-art multilingual question answering research and development | |
Yang et al. | Effective Task Scheduling and IP Mapping Algorithm for Heterogeneous NoC‐Based MPSoC | |
Saha et al. | A unified dialogue management strategy for multi-intent dialogue conversations in multiple languages | |
CN114138484A (zh) | 资源分配方法、装置以及介质 | |
Atahary et al. | Parallelized mining of domain knowledge on GPGPU and Xeon Phi clusters |