亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種對象匹配方法及裝置與流程

文檔序號:11250893閱讀:537來源:國知局
一種對象匹配方法及裝置與流程
本申請涉及計算機(jī)
技術(shù)領(lǐng)域
,尤其涉及一種對象匹配方法及裝置。
背景技術(shù)
:現(xiàn)實世界中的實體在互聯(lián)網(wǎng)世界中的不同平臺可能會同時存在著多個索引(也可稱為對象)。例如:一家商家會在不同的外賣平臺都設(shè)有店鋪,因為不同平臺的數(shù)據(jù)管理規(guī)范、流程、展示格式的不同,這些店鋪的店鋪名、地址會有一定的差異。通過計算不同來源的各個店鋪之間的匹配關(guān)系,能夠確定這些店鋪是否屬于同一商家,從而便于外賣平臺上店鋪的管理。為了解決不同來源的對象的匹配問題,可以對多個對象中任意兩個對象進(jìn)行匹配度的計算,但是該匹配計算方案的難度在于:計算量太大,其時間和空間復(fù)雜度的基數(shù)都是o(n2),o表示空間復(fù)雜度。當(dāng)對象的數(shù)量級太大時,這種匹配計算方法在時間和空間上都是很難做到的。每一個對象都具備一些屬性,目前已知的對象匹配問題的解決方案主要通過以下步驟實現(xiàn):步驟1,建立各個對象與其屬性的索引關(guān)系。假設(shè)現(xiàn)有三個對象:甲、乙、丙,對象甲具備屬性a、b,對象乙具備屬性b、c,對象丙具備屬性a、b、c。各個對象與其屬性的索引關(guān)系如表1所示。表1對象屬性甲a、b乙b、c丙a、b、c步驟2,建立各個屬性與其對應(yīng)的對象的索引關(guān)系。即屬性a對應(yīng)對象甲、丙; 屬性b對應(yīng)對象甲、乙、丙;屬性c對應(yīng)對象乙、丙。各個屬性與其對應(yīng)的對象的索引關(guān)系如表2所示。表2屬性對象a甲、丙b甲、乙、丙c乙、丙步驟3,針對每一個屬性所對應(yīng)的所有對象,進(jìn)行兩兩匹配度的計算,從而得到任意兩個對象之間的匹配關(guān)系,可以較大程度地減少計算量。上述解決方案與前面介紹的匹配計算方案相比,雖然在很大程度上減少了計算量,但實際上還是會出現(xiàn)很大的數(shù)據(jù)冗余。例如:對象甲和對象丙同時在屬性a和屬性b中出現(xiàn),會導(dǎo)致重復(fù)的計算;或者,如果有一個通用的屬性(例如極端情況下每個對象都有一個相同的屬性),則導(dǎo)致計算量非常大,當(dāng)然,一般計算過程中會人為過濾掉這樣的屬性,但其過濾閾值是非常難以拿捏的。針對傳統(tǒng)對象匹配計算方法中復(fù)雜度過高的問題,目前尚未提出有效的解決方案。技術(shù)實現(xiàn)要素:本申請目的在于提供一種對象匹配方法及裝置,可以減小對象匹配的計算量,提高對象匹配的計算精度。本申請?zhí)峁┮环N對象匹配方法及裝置是這樣實現(xiàn)的:一種對象匹配方法,所述方法包括:獲取多個對象中各個對象的屬性;對所述多個對象及所述屬性進(jìn)行整合,建立對象與屬性的對應(yīng)關(guān)系;其中,每個屬性對應(yīng)至少一個對象;基于所述對應(yīng)關(guān)系確定所述多個對象中各個對象相互之間的相似度;根據(jù)所述相似度確定所述多個對象中各個對象相互之間的匹配關(guān)系。一種對象匹配裝置,所述裝置包括:屬性獲取單元,用于獲取多個對象中各個對象的屬性;關(guān)系建立單元,用于對所述多個對象及所述屬性進(jìn)行整合,建立對象與屬性的對應(yīng)關(guān)系;其中,每個屬性對應(yīng)至少一個對象;相似度確定單元,用于基于所述對應(yīng)關(guān)系確定所述多個對象中各個對象相互之間的相似度;匹配確定單元,用于根據(jù)所述相似度確定所述多個對象中各個對象相互之間的匹配關(guān)系。本申請?zhí)峁┑膶ο笃ヅ浞椒把b置,基于對象的屬性進(jìn)行對象之間相似度的計算,從而確定對象之間的匹配關(guān)系。具體實施過程中可以基于對象的屬性建立對象與屬性之間的對應(yīng)關(guān)系(即每個屬性與其所對應(yīng)的至少一個對象之間的關(guān)系),再基于圖計算模型計算對象之間的相似度,從而大大減少計算量,提高對象匹配的計算精度。附圖說明此處所說明的附圖用來提供對本申請的進(jìn)一步理解,構(gòu)成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構(gòu)成對本申請的限定。在附圖中:圖1是本申請所述對象匹配方法一種實施例的方法流程圖;圖2是本申請一實施例的對象與其屬性的對應(yīng)關(guān)系示意圖;圖3是本申請一實施例的屬性與其對應(yīng)的對象的對應(yīng)關(guān)系示意圖;圖4是本申請一實施例的bsp架構(gòu)示意圖;圖5是本申請一實施例的bsp程序垂直結(jié)構(gòu)示意圖;圖6是本申請一實施例的bsp程序水平結(jié)構(gòu)示意圖;圖7是本申請一實施例的屬性權(quán)重計算示意圖;圖8是本申請一實施例的消息匯總示意圖;圖9是本申請一實施例的各個對象的消息精簡示意圖;圖10是本申請一實施例的各個對象的消息精簡優(yōu)化示意圖;圖11是本申請所述對象匹配裝置一種實施例的結(jié)構(gòu)示意圖;圖12是本申請?zhí)峁┑乃鰧傩垣@取單元一種實施例的結(jié)構(gòu)示意圖;圖13是本申請?zhí)峁┑乃鱿嗨贫却_定單元一種實施例的結(jié)構(gòu)示意圖;圖14是本申請?zhí)峁┑乃鲞\算模塊一種實施例的結(jié)構(gòu)示意圖。具體實施方式為了使本
技術(shù)領(lǐng)域
的人員更好地理解本申請中的技術(shù)方案,下面將結(jié)合本申請實施例中的附圖,對本申請實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├?,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應(yīng)當(dāng)屬于本申請保護(hù)的范圍。下面結(jié)合附圖對本申請所述的對象匹配方法及裝置進(jìn)行詳細(xì)的說明。圖1是本申請所述對象匹配方法一種實施例的方法流程圖。雖然本申請?zhí)峁┝巳缦率鰧嵤├蚋綀D所示的方法操作步驟或裝置結(jié)構(gòu),但基于常規(guī)或者無需創(chuàng)造性的勞動在所述方法或裝置中可以包括更多或者更少的操作步驟或模塊結(jié)構(gòu)。在邏輯性上不存在必要因果關(guān)系的步驟或結(jié)構(gòu)中,這些步驟的執(zhí)行順序或裝置的模塊結(jié)構(gòu)不限于本申請實施例提供的執(zhí)行順序或模塊結(jié)構(gòu)。所述的方法或模塊結(jié)構(gòu)在實際中的裝置或終端產(chǎn)品執(zhí)行時,可以按照實施例或者附圖所示的方法或模塊結(jié)構(gòu)連接進(jìn)行順序執(zhí)行或者并行執(zhí)行(例如并行處理器或者多線程處理的環(huán)境)。在本申請中,對象主要是指現(xiàn)實世界中的實體在互聯(lián)網(wǎng)世界的不同地方所對應(yīng)存在的客體,本申請通過對不同對象之間匹配關(guān)系的計算,可以獲知互聯(lián)網(wǎng)世界中多個客體是否屬于現(xiàn)實世界中的同一個實體,并且能保證較小的計算量和較高的計算精度。本申請可以以外賣平臺上的外賣商家為例進(jìn)行對象匹配方案的具體說明,具體的如圖1所示,本申請?zhí)峁┑膶ο笃ヅ浞椒ǖ囊环N實施例可以包括:步驟s101,獲取多個對象中各個對象的屬性。本申請為了準(zhǔn)確獲取每個對象的屬性,可以采取以下實施方式:首先,提取多個對象中各個對象的特征信息;然后,將每個對象的特征信息作為屬性,和/或,將每個對象的特征信息分解為多個特征信息,將分解后的特征信息作為屬性。例如:在外賣商家的應(yīng)用場景中,每個外賣商家(對象)的特征信息主要包括:店鋪名、店鋪地址、店鋪電話、菜品名等。其中,店鋪電話和簡單菜品名等這些數(shù)字或文字的數(shù)目較少的特征信息可直接作為外賣商家的屬性,店鋪名、店鋪地址和復(fù)雜菜品名等這些數(shù)字或文字的數(shù)目較多的特征信息,需要分解為數(shù)字或文字的數(shù)目較少的特征信息。為 了避免關(guān)鍵屬性的遺漏,一般可采用二元語法bigram或者三元語法trigram進(jìn)行特征信息的分解,對于上述二元語法,具體地,是依次將一個詞組中的連續(xù)兩個字作為一個詞語,例如某個外賣商家有一個菜品名是“黃燜雞米飯”,基于二元語法將特征信息“黃燜雞米飯”分解為多個特征信息:“黃燜”、“燜雞”、“雞米”和“米飯”。同理,三元語法是依次將一個詞組中的連續(xù)三個字作為一個詞語,例如將特征信息“黃燜雞米飯”分解為多個特征信息:“黃燜雞”、“燜雞米”和“雞米飯”。通過上述分解方法,可以將數(shù)字或文字的數(shù)目較多的特征信息分解為多個特征信息,便于確定更為有效的屬性,提高計算精度。當(dāng)然本申請也可以采用其他分解方法,只要能夠?qū)⑻卣餍畔⒎纸鉃槎鄠€特征信息,并保證不遺漏特征信息即可,本申請對此不做限制。步驟s102,對多個對象及屬性進(jìn)行整合,建立對象與屬性的對應(yīng)關(guān)系;其中,每個屬性對應(yīng)至少一個對象。需要說明的是,在前述步驟s101中可以確定每個對象與其屬性的對應(yīng)關(guān)系,本步驟是將所有對象與其屬性進(jìn)行整合,建立每個屬性與其對應(yīng)對象的對應(yīng)關(guān)系,從而可以獲知哪幾個對象具有相同的屬性。假設(shè)現(xiàn)有三個對象:甲、乙、丙,對象與其屬性的對應(yīng)關(guān)系如圖2所示,對象甲具備屬性a、b,對象乙具備屬性b、c,對象丙具備屬性a、b、c。對這三個對象與其屬性進(jìn)行整合,就可以建立屬性與其對應(yīng)的對象的對應(yīng)關(guān)系,圖3是本申請一實施例的屬性與其對應(yīng)的對象的對應(yīng)關(guān)系示意圖,如圖3所示,屬性a對應(yīng)的對象有甲、丙,屬性b對應(yīng)的對象有甲、乙、丙,屬性c對應(yīng)的對象有乙、丙。根據(jù)圖3所示的對應(yīng)關(guān)系,可清晰明了的獲知每個對象的屬性,以及每個屬性所對應(yīng)的對象。步驟s103,基于上述對應(yīng)關(guān)系確定多個對象中各個對象相互之間的相似度。本申請為了降低計算量,引入了圖計算模型進(jìn)行各個對象相互之間相似度的計算,其中,圖計算模型至少包括以下之一:開源圖計算模型graphlab、分布式圖處理模型graphx、整體同步并行計算模型(bulksynchronousparallel,簡稱bsp)。下面分別介紹各個圖計算模型。graphlab是由cmu(卡內(nèi)基梅隆大學(xué))的select實驗室在2010年提出的一個基于圖像處理模型的開源圖計算框架,框架使用c++語言開發(fā)實現(xiàn)。該框架是面向機(jī)器學(xué)習(xí)的流處理并行計算框架,可以運行在多處理機(jī)的單機(jī)系統(tǒng)、集群或是亞馬遜的 ec2等多種環(huán)境下??蚣艿脑O(shè)計目標(biāo)是,可以高效執(zhí)行與機(jī)器學(xué)習(xí)相關(guān)的、具有稀疏的計算依賴特性的迭代性算法,并且保證計算過程中數(shù)據(jù)的高度一致性和高效的并行計算性能。graphx是spark中用于圖和圖并行計算的api(applicationprogramminginterface,應(yīng)用程序編程接口)。跟其他分布式圖計算框架相比,graphx最大的貢獻(xiàn)是,在spark之上提供一棧式數(shù)據(jù)解決方案,可以方便且高效地完成圖計算的一整套流水作業(yè)。bsp是英國計算機(jī)科學(xué)家viliant在上世紀(jì)80年代提出的一種并行計算模型,該模型基于一個master協(xié)調(diào),所有worker同步執(zhí)行,數(shù)據(jù)從輸入的隊列中讀取,下面對bsp架構(gòu)進(jìn)行簡單的介紹。圖4是本申請一實施例的bsp架構(gòu)示意圖,如圖4所示,bsp架構(gòu)包括client(客戶端)、master(主進(jìn)程)和worker(工作進(jìn)程),client的主要工作包括:1、將數(shù)據(jù)輸入worker,2、通知master開始工作,3、等待master完成工作,4、從worker提取處理結(jié)束的數(shù)據(jù)。master的主要工作包括:1、從client接收到“啟動”的消息,2、如下動作不斷迭代直至所有沒有active的worker:啟動所有active的節(jié)點進(jìn)行工作、等待所有worker完成工作、更新active的worker數(shù)量。worker的主要工作包括:1、將worker本身設(shè)置為active狀態(tài),2、如下動作不斷迭代直至該worker本身至inactive狀態(tài):等待master“啟動”的消息、從數(shù)據(jù)庫中讀取消息、在該worker中進(jìn)行消息處理等工作、發(fā)送消息、更新是否是active的狀態(tài)、通知master已經(jīng)完成該輪迭代的工作,3、當(dāng)有消息發(fā)送給該worker時,將該worker設(shè)置為active狀態(tài)。bsp程序設(shè)計準(zhǔn)則是bulk同步,其獨特之處在于超步(superstep)概念的引入。一個bsp程序同時具有水平和垂直兩個方面的結(jié)構(gòu)。圖5是本申請一實施例的bsp程序垂直結(jié)構(gòu)示意圖,如圖5所示,在垂直結(jié)構(gòu)上,一個bsp程序由一系列串行的超步(superstep)組成,這種垂直結(jié)構(gòu)類似于一個串行程序結(jié)構(gòu)。圖6是本申請一實施例的bsp程序水平結(jié)構(gòu)示意圖,如圖6所示,在水平結(jié)構(gòu)上,在一個超步中,所有的進(jìn)程并行執(zhí)行局部計算。一個超步可分為三個階段:1)本地計算階段,每個處理器只對存儲本地內(nèi)存中的數(shù)據(jù)進(jìn)行本地計算。2)全局通信階段,對任何非本地數(shù)據(jù)進(jìn)行操作。3)柵欄同步階段,等待所有通信行為的結(jié)束。本申請以bsp為例介紹各個對象相互之間相似度的計算過程。首先,將步驟s102中建立的對應(yīng)關(guān)系輸入圖計算模型(bsp)中,然后,基于圖計算模型執(zhí)行多個超步運算,得到多個對象中各個對象相互之間的相似度。上述多個超步運算主要包括以下步驟:步驟s103a,基于對應(yīng)關(guān)系確定每個屬性所對應(yīng)的對象。在圖計算模型中,各個對象和各個屬性均處于圖計算框架的各個節(jié)點處,各個節(jié)點之間可進(jìn)行消息交互。在確定每個屬性對應(yīng)的對象時,是通過每個對象向其屬性發(fā)送消息來實現(xiàn)的,其中,發(fā)送的消息中攜帶有對象自身的標(biāo)識符,從而使得每個屬性在接收到消息后,可以獲知其對應(yīng)的是哪個對象。步驟s103b,根據(jù)每個屬性所對應(yīng)的對象計算每個屬性的權(quán)重;其中,權(quán)重是每個屬性所對應(yīng)對象個數(shù)的倒數(shù)。圖7是本申請一實施例的屬性權(quán)重計算示意圖,如圖7所示,屬性a所對應(yīng)的對象有甲和丙,即屬性a對應(yīng)的對象個數(shù)為2,則屬性a的權(quán)重是0.5;屬性b所對應(yīng)的對象有甲、乙和丙,即屬性b對應(yīng)的對象個數(shù)為3,則屬性b的權(quán)重是近似為0.3333;屬性c所對應(yīng)的對象有乙和丙,即屬性c對應(yīng)的對象個數(shù)為2,則屬性c的權(quán)重是0.5。步驟s103c,根據(jù)每個屬性的權(quán)重及對應(yīng)關(guān)系,確定各個對象的屬性的權(quán)重與該屬性對應(yīng)的對象。該步驟是通過各個屬性向其所對應(yīng)的對象發(fā)送消息來實現(xiàn)的,圖8是本申請一實施例的消息匯總示意圖,如圖8所示,屬性a將其自身的消息(屬性a的權(quán)重0.5以及屬性a對應(yīng)的對象有甲、丙)發(fā)送至其所對應(yīng)的對象甲和丙;屬性b將其自身的消息(屬性b的權(quán)重0.3333以及屬性b對應(yīng)的對象有甲、乙、丙)發(fā)送至其所對應(yīng)的對象甲、乙和丙;屬性c將其自身的消息(屬性c的權(quán)重0.5以及屬性c對應(yīng)的對象有乙、丙)發(fā)送至其所對應(yīng)的對象乙和丙。基于此,對象甲匯總的消息包括:屬性a的權(quán)重0.5以及與屬性a對應(yīng)的對象甲、丙,屬性b的權(quán)重0.3333以及與屬性b對應(yīng)的對象甲、乙、丙;對象乙匯總的消息包括:屬性b的權(quán)重0.3333以及與屬性b對應(yīng)的對象甲、乙、丙,屬性c的權(quán)重0.5以及與屬性c對應(yīng)的對象乙、丙;對象丙匯總的消息包括:屬性a的權(quán)重0.5以及與屬性a對應(yīng)的對象甲、丙,屬 性b的權(quán)重0.3333以及與屬性b對應(yīng)的對象甲、乙、丙,屬性c的權(quán)重0.5以及與屬性c對應(yīng)的對象乙、丙。步驟s103d,根據(jù)各個對象的屬性的權(quán)重與該屬性對應(yīng)的對象,利用相似度公式確定各個對象與其他對象之間的相似度。在本申請中,任意兩個對象之間的相似度的計算,可以通過以下公式實現(xiàn):其中,ei表示對象i,ej表示對象j,a[i]是對象i的屬性的集合,a[j]是對象j的屬性的集合,wt表示對象i與對象j的共有屬性的權(quán)重,wk表示對象i的屬性的權(quán)重。也就是說,對象i與對象j之間的相似度計算中,被除數(shù)是兩個對象共有的一個或多個屬性的權(quán)重和,除數(shù)是對象i的屬性的權(quán)重和。其中,被除數(shù)的相關(guān)信息可以從圖8所示的消息匯總示意圖中得知,在對象甲的匯總消息中可以看出,對象甲與對象乙的共有屬性是屬性b,屬性b的權(quán)重是0.3333,對象甲與對象丙的共有屬性是屬性a和屬性b,屬性a的權(quán)重是0.5,屬性b的權(quán)重是0.3333?;谏鲜龉?,可以精確的計算出兩個對象之間的相似度,為后續(xù)根據(jù)相似度確定匹配關(guān)系提供較佳的參考依據(jù)。當(dāng)然,本申請也可以通過其他相似度計算公式來計算兩個對象之間的相似度,無論采用何種計算方法,只要能夠準(zhǔn)確獲得兩個對象之間的相似度即可。為了更加精簡計算量,本申請還提供了一種優(yōu)選實施方式,即在圖8所示的各個對象匯總的消息的基礎(chǔ)上,排除各個對象的屬性所對應(yīng)的對象中的各個對象自身,和/或,對多個對象進(jìn)行排序,在各個對象的屬性所對應(yīng)的對象中,排除順序比自身靠前的對象或者排除順序比自身靠后的對象。下面結(jié)合附圖介紹上述優(yōu)選實施方式的具體實現(xiàn)過程。圖9是本申請一實施例的各個對象的消息精簡示意圖,如圖9所示,將每個對象匯總的消息中排除對象自身。例如,在對象甲匯總的消息中,刪除掉對象甲;在對象乙匯總的消息中,刪除掉對象乙;在對象丙匯總的消息中,刪除掉對象丙。在后續(xù)的相似度計算過程中,由于無需計算各個對象與其自身之間的相似度,因此這些消息均是無用消息,將這些無用消息刪除掉,可以更利于消息的梳理,并節(jié)省內(nèi)存。進(jìn)一步地,將多個對象進(jìn)行排序,排序規(guī)則不限,只要將所有對象排出一個順序即可。例如可以根據(jù)對象的id值進(jìn)行排序,將每個對象匯總的消息中排除順序比自身靠前的對象或者排除順序比自身靠后的對象。圖10是本申請一實施例的各個對象的消息精簡優(yōu)化示意圖,如圖10所示,假設(shè)將對象甲、乙和丙排成甲>乙>丙的順序,將每個對象匯總的消息中排除順序比自身靠前的對象,即在對象甲匯總的消息中,沒有需要刪除的對象;在對象乙匯總的消息中,刪除掉對象甲;在對象丙匯總的消息中,刪除掉對象甲和對象乙。通過上述精簡操作,可以減少一半的重復(fù)計算量。在圖10中可以清晰明了的看出,對象甲與對象乙的共有屬性是屬性b,屬性b的權(quán)重是0.3333,對象甲與對象丙的共有屬性是屬性a和屬性b,屬性a的權(quán)重是0.5,屬性b的權(quán)重是0.3333。從而只保留了計算相似度所需要的必要消息,減少了內(nèi)存。步驟s104,根據(jù)相似度確定多個對象中各個對象相互之間的匹配關(guān)系。在本申請中,相似度與匹配關(guān)系正相關(guān),兩個對象之間相似度的數(shù)值越大,表示這兩個對象越相似。在實際應(yīng)用中,可以設(shè)置第一閾值和第二閾值,第一閾值大于第二閾值,具體的數(shù)值大小可以根據(jù)需求進(jìn)行設(shè)置。當(dāng)任意兩個對象之間的相似度高于第一閾值時,可以確定兩個對象之間的匹配關(guān)系為模糊相同,當(dāng)任意兩個對象之間的相似度低于第二閾值時,可以確定兩個對象之間的匹配關(guān)系為模糊不同?;诖?,可以確定外賣平臺上的任意兩個店鋪是否屬于同一個商家,便于外賣平臺的管理?;谂c上述對象匹配方法相同的發(fā)明構(gòu)思,本申請?zhí)峁┮环N對象匹配裝置,如下面實施例所述。由于該對象匹配裝置解決問題的原理與對象匹配方法相似,因此該對象匹配裝置的實施可以參見對象匹配方法的實施,重復(fù)之處不再贅述。圖11是本申請所述對象匹配裝置一種實施例的結(jié)構(gòu)示意圖,如圖11所示,所述裝置可以包括:屬性獲取單元10,可以用于獲取多個對象中各個對象的屬性。屬性獲取單元10是對象匹配裝置中獲取多個對象中各個對象的屬性的部分,可以是軟件、硬件或二者的結(jié)合,例如可以是完成對象屬性采集功能的輸入輸出接口、處理芯片等元器件。關(guān)系建立單元20,連接至屬性獲取單元10,可以用于對多個對象及屬性進(jìn)行整合,建立對象與屬性的對應(yīng)關(guān)系;其中,每個屬性對應(yīng)至少一個對象。關(guān)系建立單元20是對象匹配裝置中建立對象與屬性的對應(yīng)關(guān)系的部分,可以是軟件、硬件或二者 的結(jié)合,例如可以是完成對象及屬性整合功能的輸入輸出接口、處理芯片等元器件。相似度確定單元30,連接至關(guān)系建立單元20,可以用于基于對應(yīng)關(guān)系確定多個對象中各個對象相互之間的相似度。相似度確定單元30是對象匹配裝置中確定各個對象相互之間相似度的部分,可以是軟件、硬件或二者的結(jié)合,例如可以是完成相似度計算功能的輸入輸出接口、處理芯片等元器件。匹配確定單元40,連接至相似度確定單元30,可以用于根據(jù)相似度確定多個對象中各個對象相互之間的匹配關(guān)系。匹配確定單元40是對象匹配裝置中確定各個對象相互之間匹配關(guān)系的部分,可以是軟件、硬件或二者的結(jié)合,例如可以是完成結(jié)果導(dǎo)入導(dǎo)出功能的輸入輸出接口、處理芯片等元器件。本申請?zhí)峁┑膶ο笃ヅ溲b置,基于對象的屬性進(jìn)行對象之間相似度的計算,從而確定對象之間的匹配關(guān)系。具體實施過程中可以基于對象的屬性建立對象與屬性之間的對應(yīng)關(guān)系(即每個屬性與其所對應(yīng)的至少一個對象之間的關(guān)系),再基于圖計算模型計算對象之間的相似度,從而大大減少計算量,提高對象匹配的計算精度。圖12是本申請?zhí)峁┑乃鰧傩垣@取單元一種實施例的結(jié)構(gòu)示意圖,如圖12所示,為了準(zhǔn)確提取各個對象的屬性,屬性獲取單元10可以包括:提取模塊101,用于提取多個對象中各個對象的特征信息;屬性確定模塊102,用于將每個對象的特征信息作為屬性;和/或,將每個對象的特征信息分解為多個特征信息,將分解后的特征信息作為屬性。具體地址,一般可采用二元語法bigram或者三元語法trigram進(jìn)行特征信息的分解,從而確定更為有效的屬性,提高計算精度。當(dāng)然本申請也可以采用其他分解方法,只要能夠?qū)⑻卣餍畔⒎纸鉃槎鄠€特征信息,并保證不遺漏特征信息即可,本申請對此不做限制。圖13是本申請?zhí)峁┑乃鱿嗨贫却_定單元一種實施例的結(jié)構(gòu)示意圖,如圖13所示,相似度確定單元30可以包括:輸入模塊301,用于將對應(yīng)關(guān)系輸入圖計算模型;運算模塊302,用于基于圖計算模型執(zhí)行多個超步運算,得到多個對象中各個對象相互之間的相似度。圖計算模型至少可以包括以下之一:bsp、graphlab、graphx。圖14是本申請?zhí)峁┑乃鲞\算模塊一種實施例的結(jié)構(gòu)示意圖,如圖14所示,運算模塊302可以包括:第一運算子模塊312,用于基于對應(yīng)關(guān)系確定每個屬性所對應(yīng)的對象;第二運算子模塊322,用于根據(jù)每個屬性所對應(yīng)的對象計算每個屬性的權(quán)重;其 中,權(quán)重是每個屬性所對應(yīng)對象個數(shù)的倒數(shù);第三運算子模塊332,用于根據(jù)每個屬性的權(quán)重及對應(yīng)關(guān)系,確定各個對象的屬性的權(quán)重與該屬性對應(yīng)的對象;第四運算子模塊342,用于根據(jù)各個對象的屬性的權(quán)重與該屬性對應(yīng)的對象,利用相似度公式確定各個對象與其他對象之間的相似度。其中,相似度公式是:其中,ei表示對象i,ej表示對象j,a[i]是對象i的屬性的集合,a[j]是對象j的屬性的集合,wt表示對象i與對象j的共有屬性的權(quán)重,wk表示對象i的屬性的權(quán)重。基于上述公式,運算模塊302可以精確的計算出兩個對象之間的相似度,為后續(xù)匹配確定單元40根據(jù)相似度確定匹配關(guān)系提供較佳的參考依據(jù)。當(dāng)然,本申請也可以通過其他相似度計算公式來計算兩個對象之間的相似度,無論采用何種計算方法,只要能夠準(zhǔn)確獲得兩個對象之間的相似度即可。為了精簡計算量,運算模塊302還可以包括:簡化子模塊,用于在第三運算子模塊確定各個對象的屬性的權(quán)重與該屬性對應(yīng)的對象之后,排除各個對象的屬性所對應(yīng)的對象中的各個對象自身;和/或,對多個對象進(jìn)行排序,在各個對象的屬性所對應(yīng)的對象中,排除順序比自身靠前的對象;或者,排除順序比自身靠后的對象。從而減少了計算量,節(jié)省內(nèi)存。在本申請中,相似度與匹配關(guān)系正相關(guān),兩個對象之間相似度的數(shù)值越大,表示這兩個對象越相似。在實際應(yīng)用中,可以設(shè)置第一閾值和第二閾值,第一閾值大于第二閾值,具體的數(shù)值大小可以根據(jù)需求進(jìn)行設(shè)置。基于此,本申請?zhí)峁┝艘环N優(yōu)選實施方式,即上述匹配確定單元40可以包括:第一匹配模塊,用于當(dāng)多個對象中任意兩個對象之間的相似度高于第一閾值時,確定兩個對象之間的匹配關(guān)系為相同;第二匹配模塊,用于當(dāng)多個對象中任意兩個對象之間的相似度低于第二閾值時,確定兩個對象之間的匹配關(guān)系為不同?;诖?,可以確定外賣平臺上的任意兩個店鋪是否屬于同一個商家,便于外賣平臺的管理。本申請?zhí)峁┑膶ο笃ヅ浞椒把b置,基于圖計算模型的天然優(yōu)勢,很好地解決了傳統(tǒng)對象匹配計算方法中復(fù)雜度過高的問題,并且能自動根據(jù)屬性的通用程度調(diào)整其權(quán)重,計算出合理的相似度。從而大大減少計算量,提高對象匹配的計算精度。盡管本申請內(nèi)容中提到對象及屬性的整合、確定對象之間的相似度、圖計算模型的描述,但是,本申請并不局限于必須是完全標(biāo)準(zhǔn)或者所提及的方式的計算處理情況。本申請中各個實施例所涉及的上述描述僅是本申請中的一些實施例中的應(yīng)用,在某些標(biāo)準(zhǔn)、模型、方法的基礎(chǔ)上略加修改后的實施方式也可以實行上述本申請各實施例的方案。當(dāng)然,在符合本申請上述各實施例的中所述的計算方法步驟的其他無創(chuàng)造性的變形,仍然可以實現(xiàn)相同的申請,在此不再贅述。雖然本申請?zhí)峁┝巳鐚嵤├蛄鞒虉D所述的方法操作步驟,但基于常規(guī)或者無創(chuàng)造性的勞動可以包括更多或者更少的操作步驟。實施例中列舉的步驟順序僅僅為眾多步驟執(zhí)行順序中的一種方式,不代表唯一的執(zhí)行順序。在實際中的裝置或客戶端產(chǎn)品執(zhí)行時,可以按照實施例或者附圖所示的方法順序執(zhí)行或者并行執(zhí)行(例如并行處理器或者多線程處理的環(huán)境)。上述實施例闡明的裝置或模塊,具體可以由計算機(jī)芯片或?qū)嶓w實現(xiàn),或者由具有某種功能的產(chǎn)品來實現(xiàn)。為了描述的方便,描述以上裝置時以功能分為各種模塊分別描述。在實施本申請時可以把各模塊的功能在同一個或多個軟件和/或硬件中實現(xiàn)。當(dāng)然,也可以將實現(xiàn)某功能的模塊由多個子模塊或子單元組合實現(xiàn)。本申請中所述的方法、裝置或模塊可以以計算機(jī)可讀程序代碼方式實現(xiàn)控制器按任何適當(dāng)?shù)姆绞綄崿F(xiàn),例如,控制器可以采取例如微處理器或處理器以及存儲可由該(微)處理器執(zhí)行的計算機(jī)可讀程序代碼(例如軟件或固件)的計算機(jī)可讀介質(zhì)、邏輯門、開關(guān)、專用集成電路(applicationspecificintegratedcircuit,asic)、可編程邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmelat91sam、microchippic18f26k20以及siliconelabsc8051f320,存儲器控制器還可以被實現(xiàn)為存儲器的控制邏輯的一部分。本領(lǐng)域技術(shù)人員也知道,除了以純計算機(jī)可讀程序代碼方式實現(xiàn)控制器以外,完全可以通過將方法步驟進(jìn)行邏輯編程來使得控制器以邏輯門、開關(guān)、專用集成電路、可編程邏輯控制器和嵌入微控制器等的形式來實現(xiàn)相同功能。因此這種控制器可以被認(rèn)為是一種硬件部件,而對其內(nèi)部包括的用于實現(xiàn)各種功能的裝置也可以視為硬件部件內(nèi)的結(jié)構(gòu)?;蛘呱踔粒梢詫⒂糜趯崿F(xiàn)各種功能的裝置視為既可以是實現(xiàn)方法的軟件模塊又可以是硬件部件內(nèi)的結(jié)構(gòu)。本申請所述裝置中的部分模塊可以在由計算機(jī)執(zhí)行的計算機(jī)可執(zhí)行指令的一般 上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)、類等等。也可以在分布式計算環(huán)境中實踐本申請,在這些分布式計算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計算機(jī)存儲介質(zhì)中。通過以上的實施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請可借助軟件加必需的硬件的方式來實現(xiàn)?;谶@樣的理解,本申請的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,也可以通過數(shù)據(jù)遷移的實施過程中體現(xiàn)出來。該計算機(jī)軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如rom/ram、磁碟、光盤等,包括若干指令用以使得一臺計算機(jī)設(shè)備(可以是個人計算機(jī),移動終端,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請各個實施例或者實施例的某些部分所述的方法。本說明書中的各個實施例采用遞進(jìn)的方式描述,各個實施例之間相同或相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。本申請的全部或者部分可用于眾多通用或?qū)S玫挠嬎銠C(jī)系統(tǒng)環(huán)境或配置中。例如:個人計算機(jī)、服務(wù)器計算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、移動通信終端、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、可編程的電子設(shè)備、網(wǎng)絡(luò)pc、小型計算機(jī)、大型計算機(jī)、包括以上任何系統(tǒng)或設(shè)備的分布式計算環(huán)境等等。雖然通過實施例描繪了本申請,本領(lǐng)域普通技術(shù)人員知道,本申請有許多變形和變化而不脫離本申請的精神,希望所附的權(quán)利要求包括這些變形和變化而不脫離本申請的精神。當(dāng)前第1頁12
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1