專(zhuān)利名稱(chēng):基于多特征匹配的服務(wù)發(fā)現(xiàn)方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其是一種基于多特征匹配的服務(wù)發(fā)現(xiàn)方法及系統(tǒng)。
背景技術(shù):
互聯(lián)網(wǎng)的迅速發(fā)展使得現(xiàn)有網(wǎng)絡(luò)成為ー個(gè)巨大的異構(gòu)平臺(tái),大量的軟件服務(wù)部署于該異構(gòu)平臺(tái)上。用戶(hù)如何方便地使用這些服務(wù),服務(wù)之間如何進(jìn)行靈活的互操作成為學(xué)術(shù)界與エ業(yè)界共同關(guān)注的重要問(wèn)題,由此產(chǎn)生了面向服務(wù)的計(jì)算(Service-OrientedComputing,簡(jiǎn)稱(chēng)S0C)。目前,SOC環(huán)境正向兩個(gè)方向飛速發(fā)展,一方面,網(wǎng)絡(luò)訪(fǎng)問(wèn)方式由過(guò)去單一的固定互聯(lián)網(wǎng)與普通計(jì)算機(jī)結(jié)合的訪(fǎng)問(wèn)方式向著多種接入、多種終端設(shè)備參與的訪(fǎng)問(wèn)方式發(fā)展; 另ー方面,大型分布式應(yīng)用的規(guī)模和范圍不斷擴(kuò)大,跨越多個(gè)自治領(lǐng)域的服務(wù)需求激増;在實(shí)際的服務(wù)環(huán)境中,用戶(hù)需求不斷變化,服務(wù)提供者也不斷的改進(jìn)其服務(wù),網(wǎng)絡(luò)中隨時(shí)會(huì)出現(xiàn)新服務(wù),也隨時(shí)會(huì)有服務(wù)退出。在現(xiàn)有的Web服務(wù)解決方案中,語(yǔ)義服務(wù)發(fā)現(xiàn)方法主要基于直接推理,在服務(wù)請(qǐng)求與候選服務(wù)進(jìn)行服務(wù)匹配時(shí),往往涉及跨越不同本體領(lǐng)域的多個(gè)參數(shù)之間的語(yǔ)義關(guān)系判斷,而語(yǔ)義關(guān)系判斷涉及大量本體裝載、分類(lèi)和推理,因此時(shí)間效率十分低下。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于多特征匹配的服務(wù)發(fā)現(xiàn)方法及系統(tǒng),提高獲取服務(wù)的時(shí)間效率。本發(fā)明實(shí)施例提供一種基于多特征匹配的服務(wù)發(fā)現(xiàn)方法,包括根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合;根據(jù)所述請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度;根據(jù)所述相似度獲取所述查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。本發(fā)明實(shí)施例提供一種基于多特征匹配的服務(wù)發(fā)現(xiàn)系統(tǒng),該基于多特征匹配的服務(wù)發(fā)現(xiàn)系統(tǒng)能夠?qū)崿F(xiàn)上述技術(shù)方案的基于多特征匹配的服務(wù)發(fā)現(xiàn)方法,其中,該系統(tǒng)包括第一獲取模塊,用于根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合;計(jì)算模塊,用于根據(jù)所述請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度;第二獲取模塊,用于根據(jù)所述相似度獲取所述查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。本發(fā)明提供的基于多特征匹配的服務(wù)發(fā)現(xiàn)方法及系統(tǒng),根據(jù)請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度,并根據(jù)相似度獲取與查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表,由于在獲取服務(wù)時(shí)避免了對(duì)服務(wù)的語(yǔ)義進(jìn)行推理以及對(duì)服務(wù)的相似度進(jìn)行計(jì)算,從而提高服務(wù)與請(qǐng)求查詢(xún)消息的匹配效率,從而提高了獲取服務(wù)的時(shí)間效率。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I為本發(fā)明基于多特征匹配的服務(wù)發(fā)現(xiàn)方法一個(gè)實(shí)施例的流程示意圖;圖2為本發(fā)明基于多特征匹配的服務(wù)發(fā)現(xiàn)方法又一個(gè)實(shí)施例的流程示意圖;圖3為本發(fā)明基于多特征匹配的服務(wù)發(fā)現(xiàn)系統(tǒng)ー個(gè)實(shí)施例的結(jié)構(gòu)示意圖; 圖4為本發(fā)明基于多特征匹配的服務(wù)發(fā)現(xiàn)系統(tǒng)又ー個(gè)實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。圖I為本發(fā)明基于多特征匹配的服務(wù)發(fā)現(xiàn)方法一個(gè)實(shí)施例的流程示意圖,如圖I所示,本發(fā)明實(shí)施例包括如下步驟步驟101、根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合;步驟102、根據(jù)該請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與該查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度;步驟103、根據(jù)該相似度獲取該查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。本發(fā)明實(shí)施例提供的基于多特征匹配的服務(wù)發(fā)現(xiàn)方法,根據(jù)請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度,并根據(jù)相似度獲取與查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表,由于在獲取服務(wù)時(shí)避免了對(duì)服務(wù)的語(yǔ)義進(jìn)行推理以及對(duì)服務(wù)的相似度進(jìn)行計(jì)算,從而提高了服務(wù)與請(qǐng)求查詢(xún)消息的匹配效率,進(jìn)ー步提高了獲取服務(wù)的時(shí)間效率。圖2為本發(fā)明基于多特征匹配的服務(wù)發(fā)現(xiàn)方法又一個(gè)實(shí)施例的流程示意圖,如圖2所示,本發(fā)明實(shí)施例包括如下步驟步驟201、對(duì)查詢(xún)請(qǐng)求消息相對(duì)應(yīng)的發(fā)布文檔進(jìn)行語(yǔ)義信息抽取,得到該查詢(xún)請(qǐng)求消息所有本體的數(shù)目、該查詢(xún)請(qǐng)求消息的輸入?yún)?shù)與該查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系;步驟202、根據(jù)該所有本體的數(shù)目、該查詢(xún)請(qǐng)求消息的輸入?yún)?shù)、該查詢(xún)請(qǐng)求消息的輸出參數(shù)與該查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系獲取請(qǐng)求輸入功能性矩陣集合;
步驟203、根據(jù)該所有本體的數(shù)目、該查詢(xún)請(qǐng)求消息的輸出參數(shù)與該查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸出參數(shù)語(yǔ)義概念的關(guān)系獲取請(qǐng)求輸出功能性矩陣集合;步驟204、根據(jù)該查詢(xún)請(qǐng)求消息對(duì)保存在數(shù)據(jù)庫(kù)中的多個(gè)服務(wù)進(jìn)行過(guò)濾;步驟205、根據(jù)該多個(gè)服務(wù)的類(lèi)型信息、該多個(gè)服務(wù)的輸入輸出數(shù)量以及服務(wù)引用到的本體信息對(duì)服務(wù)進(jìn)行過(guò)濾,得到與該查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合;步驟206、根據(jù)服務(wù)功能性匹配方法計(jì)算該候選服務(wù)集合中的每ー個(gè)服務(wù)和所述查詢(xún)請(qǐng)求消息的功能相似度矩陣;步驟207、根據(jù)服務(wù)非功能性匹配方法計(jì)算該候選服務(wù)集合中的每ー個(gè)服務(wù)和該 查詢(xún)請(qǐng)求消息的非功能相似度矩陣;步驟208、根據(jù)該候選服務(wù)集合中的每ー個(gè)服務(wù)的文本特征向量和該查詢(xún)請(qǐng)求消息的文本特征向量獲取文本相似度矩陣;步驟209、根據(jù)該功能相似度矩陣、非功能相似度矩陣和文本相似度矩陣獲取該查詢(xún)請(qǐng)求消息與該候選服務(wù)中的每ー個(gè)服務(wù)的相似度;步驟210、根據(jù)該相似度獲取該查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。上述步驟201中,當(dāng)查詢(xún)請(qǐng)求消息R發(fā)布時(shí),請(qǐng)求語(yǔ)義信息預(yù)處理機(jī)制在查詢(xún)請(qǐng)求發(fā)布同時(shí)提取請(qǐng)求元數(shù)據(jù)信息及請(qǐng)求參數(shù)語(yǔ)義信息,對(duì)請(qǐng)求語(yǔ)義做一致性檢查,保存預(yù)處理結(jié)果;本發(fā)明實(shí)施例預(yù)設(shè)了用于服務(wù)請(qǐng)求的語(yǔ)義信息抽取模板(SRT)以及用于語(yǔ)義信息抽取的服務(wù)發(fā)布模板(SPT);其中,根據(jù)服務(wù)發(fā)布模板(SPT)中預(yù)設(shè)的服務(wù)語(yǔ)義元數(shù)據(jù)信息抽取查詢(xún)請(qǐng)求消息R中的語(yǔ)義信息,由于SRT是對(duì)查詢(xún)請(qǐng)求消息進(jìn)行語(yǔ)義信息抽取的基礎(chǔ),通過(guò)解析SRT,能夠獲得查詢(xún)請(qǐng)求消息中的語(yǔ)義信息,與現(xiàn)有技術(shù)中的服務(wù)功能性矩陣,由于查詢(xún)請(qǐng)求消息中的語(yǔ)義信息預(yù)處理階段不需要語(yǔ)義推理,因此使得后續(xù)的請(qǐng)求輸入功能性矩陣集合與輸出功能性矩陣集合生成過(guò)程相對(duì)簡(jiǎn)単。上述步驟202中,請(qǐng)求輸入功能性矩陣集合FRi具體可以為FRi = (FRi1,FRi2. ..FRik},其中,請(qǐng)求輸入功能性矩陣集合FRi由k個(gè)矩陣組成,k為查詢(xún)請(qǐng)求消息R所有引用本體的數(shù)目,矩陣FR、表示查詢(xún)請(qǐng)求消息R的輸入?yún)?shù)與查詢(xún)請(qǐng)求消息R引用的第j個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系;矩陣FR、的行數(shù)為R的輸入?yún)?shù)中個(gè)數(shù)m,矩陣FRij的列數(shù)為本體ontk的概念個(gè)數(shù)cnk ;具體地,可以按照公式
FRl^pq -C°nCePt/ 1郵% 1郵Cリ獲取到請(qǐng)求輸入功能性矩陣集合
Fri,其中,F(xiàn)Rij. Vm為查詢(xún)請(qǐng)求消息R輸入矩陣集合中第j個(gè)矩陣中位于第P行第q列的元
素的值;基于公式卿み=COnCePV岬,F(xiàn)Rij. Vpq代表R
輸入inp語(yǔ)義概念與本體ontj中的第q個(gè)概念Ontj. concept,的精確匹配程度,故請(qǐng)求輸入功能性矩陣中的元素只有I和0兩個(gè)值。上述步驟203中,查詢(xún)請(qǐng)求消息R的輸出功能性矩陣集合FRo具體可以為FRo=(FRo1, FRo2. FRo1J,其中,輸出功能性矩陣集合FRo由k個(gè)矩陣組成,k為查詢(xún)請(qǐng)求消息R所有引用本體的數(shù)目;矩陣FR%表示查詢(xún)請(qǐng)求消息R的輸出參數(shù)與查詢(xún)請(qǐng)求消息R引用的第j個(gè)本體中所有輸出參數(shù)語(yǔ)義概念的關(guān)系;矩陣FR%的行數(shù)為查詢(xún)請(qǐng)求消息R的輸入?yún)?shù)個(gè)數(shù)n,矩陣FRoj的列數(shù)為本體ontk的概念個(gè)數(shù)cnk ;具體地,可以按照公式飾, 廣。はバ蒙ギ丨郵'取到輸出功能性矩陣集合如,
其中,F(xiàn)Rc^. Vpq為查詢(xún)請(qǐng)求消息R的輸出矩陣集合中第j個(gè)矩陣中位于第P行第q列的元素的值;FR0j. vpq代表R輸出onp語(yǔ)義概念與本體Ontj中的第q個(gè)概念Ontj. concept,的精確匹配程度故請(qǐng)求輸出功能性矩陣中的元素只有I和0兩個(gè)值。
上述步驟205中,可以先基于服務(wù)類(lèi)別對(duì)候選服務(wù)集合進(jìn)行過(guò)濾;然后基于服務(wù)輸入輸出數(shù)目對(duì)候選服務(wù)集合進(jìn)行過(guò)濾,最后基于服務(wù)引用的本體對(duì)候選服務(wù)集合進(jìn)行過(guò)濾;具體地,服務(wù)類(lèi)別是對(duì)服務(wù)功能所屬領(lǐng)域的描述,是由服務(wù)提供者發(fā)布服務(wù)時(shí)是選擇性給出的,在基于服務(wù)類(lèi)別進(jìn)行過(guò)濾階段,如果服務(wù)請(qǐng)求者提供了服務(wù)類(lèi)別約束,則按照該類(lèi)別對(duì)候選服務(wù)集合中的每ー個(gè)包含服務(wù)類(lèi)別約束的服務(wù)進(jìn)行遍歷,當(dāng)存在服務(wù)類(lèi)別不被請(qǐng)求的服務(wù)類(lèi)別所包含時(shí),將該服務(wù)過(guò)濾掉;在基于服務(wù)輸入輸出數(shù)目對(duì)候選服務(wù)集合進(jìn)行過(guò)濾時(shí),引入前提假設(shè)服務(wù)輸出參數(shù)數(shù)目少于查詢(xún)請(qǐng)求消息要求的輸出參數(shù)數(shù)目時(shí),認(rèn)為服務(wù)不能提供查詢(xún)請(qǐng)求消息所需的完整信息,則導(dǎo)致服務(wù)與查詢(xún)請(qǐng)求消息無(wú)法匹配;當(dāng)服務(wù)輸入?yún)?shù)的數(shù)目大于查詢(xún)請(qǐng)求消息的輸入?yún)?shù)的數(shù)目時(shí),認(rèn)為查詢(xún)請(qǐng)求消息不能提供滿(mǎn)足服務(wù)所要求的全部輸入,則同樣導(dǎo)致服務(wù)與查詢(xún)請(qǐng)求消息無(wú)法匹配;基于上述描述,將候選服務(wù)集合中輸入?yún)?shù)的數(shù)目大于查詢(xún)請(qǐng)求消息的輸入?yún)?shù)的樹(shù)木的服務(wù)過(guò)濾掉;將數(shù)據(jù)庫(kù)中的輸出參數(shù)的樹(shù)木小于查詢(xún)請(qǐng)求消息的輸出參數(shù)的數(shù)目的服務(wù)過(guò)濾掉;此外,由于任ー領(lǐng)域本體,對(duì)本領(lǐng)域概念的描述是完備的,不同本體描述的領(lǐng)域也是不同的,因此若服務(wù)沒(méi)有引用請(qǐng)求中所引用的本體,則服務(wù)不可能提供與查詢(xún)請(qǐng)求消息要求的功能參數(shù)相同領(lǐng)域的功能參數(shù),則該服務(wù)與查詢(xún)請(qǐng)求消息之間也不可能存在任何相似關(guān)系,因此通過(guò)上述過(guò)程可以將服務(wù)候選集合中沒(méi)有引用所引用的本體的服務(wù)都過(guò)濾掉。上述步驟206中,服務(wù)功能性匹配方法具體為對(duì)于給定的服務(wù)輸入功能性矩陣集合Fi (S) = (Fi1, Fi2. .Fi1J以及請(qǐng)求輸入功能性矩陣集合FRi = (FRi1, FRi2.FRiJ,FRo= (FRo1, FRo2. . . FRok} Result = UResult1, iResult2.iResultk} = (Fi1^FRi1, Fi2、FRi2. Fi/*FRim. Fik-^FRi1J (I 彡 m 彡 k),其中,iResult 由 k 個(gè)矩陣組成,k 為服務(wù)S和查詢(xún)請(qǐng)求消息R輸入?yún)?shù)所有引用本體的數(shù)目中的最大值;上述k個(gè)本體構(gòu)成服務(wù)匹配階段的本體集合;對(duì)于任意本體ontj,若有服務(wù)S或查詢(xún)請(qǐng)求消息R的輸出參數(shù)沒(méi)用引用ontp則對(duì)應(yīng)的服務(wù)功能性矩陣集合或者請(qǐng)求功能性矩陣集合的第j個(gè)矩陣元素用全零替代;iResult中第m個(gè)元素為FinTkFRim,表示服務(wù)S的輸入功能性矩陣Fim與查詢(xún)請(qǐng)求消息R的輸入功能性矩陣FRim的乘積。上述步驟207中,服務(wù)非功能性匹配方法具體為接受服務(wù)服務(wù)候選集合中任意服務(wù)S與查詢(xún)請(qǐng)求消息R,計(jì)算并返回服務(wù)S與查詢(xún)請(qǐng)求消息R的非功能屬性匹配相似度;對(duì)于查詢(xún)請(qǐng)求消息R中定義的每ー個(gè)服務(wù)質(zhì)量(QoS)的屬性q0Sj,判斷其在服務(wù)S中是否也定義了相同的屬性qo\_,若有,則計(jì)算服務(wù)S中的該屬性的取值范圍與查詢(xún)請(qǐng)求消息R中該屬性取值范圍重疊部分占查詢(xún)請(qǐng)求消息R中該屬性取值范圍的比值,該比值為服務(wù)S與查詢(xún)請(qǐng)求消息R在qo\_屬性上的相似度;最后通過(guò)計(jì)算所有QoS屬性上相似度的平均值來(lái)計(jì)算服務(wù)S與查詢(xún)請(qǐng)求消息R的非功能匹配相似度。上述步驟208中,根據(jù)服務(wù)的文本特征向量V和請(qǐng)求的文本特征向量ゲ,通過(guò)公式ts = vXv’計(jì)算服務(wù)和請(qǐng)求的文本特征相似度ts ;上述步驟209中,對(duì)功能相似度矩陣、非功能相似度矩陣和文本相似度矩陣進(jìn)行融合,按照最后的相似度對(duì)服務(wù)進(jìn)行排序,根據(jù)功能相似度ms,非功能相似度qs和文本相似度ts查詢(xún)請(qǐng)求消息R和服務(wù)Ci的相似度S(r,Ci),具體地,如公式S(r,Ci)=aXms+(l-a) X qs+ts所示,其中,參數(shù)a(0 < a < I)是ー個(gè)用戶(hù)可調(diào)節(jié)的參數(shù),該參數(shù)a反映了用戶(hù)對(duì)功能和非功能性的偏好,優(yōu)選地,取參數(shù)a = 0. 7。本發(fā)明實(shí)施例提供的基于多特征匹配的服務(wù)發(fā)現(xiàn)方法,根據(jù)請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度,并根據(jù)相似度獲取與查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表,由于在獲取服務(wù)時(shí)避免了對(duì)服務(wù)的語(yǔ)義進(jìn)行推理以及對(duì)服務(wù)的相似度進(jìn)行計(jì)算,從而提高了服務(wù)與請(qǐng)求查詢(xún)消息的匹配效率,進(jìn)ー步提高了獲取服務(wù)的時(shí)間效率。
圖3為本發(fā)明基于多特征匹配的服務(wù)發(fā)現(xiàn)系統(tǒng)ー個(gè)實(shí)施例的結(jié)構(gòu)示意圖,如圖3所示,本發(fā)明實(shí)施例包括第一獲取模塊31、計(jì)算模塊32、第二獲取模塊33 ;其中,第一獲取模塊31根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合;計(jì)算模塊32根據(jù)所述請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度;第二獲取模塊33根據(jù)所述相似度獲取所述查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。本發(fā)明實(shí)施例提供的基于多特征匹配的服務(wù)發(fā)現(xiàn)系統(tǒng),通過(guò)計(jì)算模塊32根據(jù)請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度,第二獲取模塊33根據(jù)相似度獲取與查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表,由于在獲取服務(wù)時(shí)避免了對(duì)服務(wù)的語(yǔ)義進(jìn)行推理以及對(duì)服務(wù)的相似度進(jìn)行計(jì)算,從而提高了服務(wù)與請(qǐng)求查詢(xún)消息的匹配效率,進(jìn)ー步提高了獲取服務(wù)的時(shí)間效率。圖4為本發(fā)明基于多特征匹配的服務(wù)發(fā)現(xiàn)系統(tǒng)又ー個(gè)實(shí)施例的結(jié)構(gòu)示意圖,如圖4所示,本發(fā)明實(shí)施例包括第一獲取模塊41、計(jì)算模塊42、第二獲取模塊43 ;其中,第一獲取模塊41根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合;計(jì)算模塊42根據(jù)所述請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度;第二獲取模塊43根據(jù)所述相似度獲取所述查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。進(jìn)ー步地,第一獲取模塊41還可以包括抽取單元411、第一獲取單元412、第二獲取單元413 ;其中,抽取單元411對(duì)所述查詢(xún)請(qǐng)求消息相對(duì)應(yīng)的發(fā)布文檔進(jìn)行語(yǔ)義信息抽取,得到所述查詢(xún)請(qǐng)求消息所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸入?yún)?shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系;第一獲取單元412根據(jù)所述所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸入?yún)?shù)、所述查詢(xún)請(qǐng)求消息的輸出參數(shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系獲取請(qǐng)求輸入功能性矩陣集合;第ニ獲取單元413根據(jù)所述所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸出參數(shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸出參數(shù)語(yǔ)義概念的關(guān)系獲取請(qǐng)求輸出功能性矩陣集合。進(jìn)ー步地,計(jì)算模塊42還可以包括第一過(guò)濾單元421、第二過(guò)濾單元422、第一計(jì)算單元423 ;其中,第一過(guò)濾單元421根據(jù)所述查詢(xún)請(qǐng)求消息對(duì)保存在數(shù)據(jù)庫(kù)中的多個(gè)服務(wù)進(jìn)行過(guò)濾;第二過(guò)濾單元422根據(jù)所述多個(gè)服務(wù)的類(lèi)型信息、所述多個(gè)服務(wù)的輸入輸出數(shù)量以及服務(wù)引用到的本體信息對(duì)服務(wù)進(jìn)行過(guò)濾,得到與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合;第一計(jì)算單元423計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)與所述查詢(xún)請(qǐng)求消息的相似度。進(jìn)ー步地,第一計(jì)算單元423還可以包括第一計(jì)算子単元、第二計(jì)算子単元、第一獲取子単元、第二獲取子単元;其中,第一計(jì)算子単元根據(jù)服務(wù)功能性匹配方法計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)和所述查詢(xún)請(qǐng)求消息的功能相似度矩陣;第二計(jì)算子単元根據(jù)服務(wù)非功能性匹配方法計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)和所述查詢(xún)請(qǐng)求消息的非功能相似度矩陣;第一獲取子単元根據(jù)所述候選服務(wù)集合中的每ー個(gè)服務(wù)的文本特征向量和所述查詢(xún)請(qǐng)求消息的文本特征向量獲取文本相似度矩陣;第二獲取子単元根據(jù)所述功能相似度矩陣、非功能相似度矩陣和文本相似度矩陣獲取所述查詢(xún)請(qǐng)求消息與所述候選服務(wù)中的每ー個(gè)服務(wù)的相似度。進(jìn)ー步地,第二獲取子単元還可以包括乘法子単元和計(jì)算子単元;其中,乘法子単元,用于根據(jù)功能相似度矩陣和非功能相似度矩陣進(jìn)行矩陣乘積,生成輸入匹配結(jié)果矩陣;計(jì)算子單元,用于計(jì)算所述匹配結(jié)果矩陣中所有非零元素的數(shù)目,該所述所有非零元素的數(shù)目與所有輸入?yún)?shù)和輸出參數(shù)的個(gè)數(shù)的比值作為所述服務(wù)與所述查詢(xún)請(qǐng)求消息匹配的相似度。本發(fā)明實(shí)施例提供的基于多特征匹配的服務(wù)發(fā)現(xiàn)方法,通過(guò)計(jì)算模塊42根據(jù)請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度,第二獲取模塊43根據(jù)相似度獲取與查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表,由于在獲取服務(wù)時(shí)避免了對(duì)服務(wù)的語(yǔ)義進(jìn)行推理以及對(duì)服務(wù)的相似度進(jìn)行計(jì)算,從而提高了服務(wù)與請(qǐng)求查詢(xún)消息的匹配效率,進(jìn)ー步提高了獲取服務(wù)的時(shí)間效率。所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng)、設(shè)備、模塊和単元的具體工作過(guò)程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程,在此不再贅述。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)于ー計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括R0M、RAM、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。 最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。
權(quán)利要求
1.一種基于多特征匹配的服務(wù)發(fā)現(xiàn)方法,其特征在于,包括 根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合; 根據(jù)所述請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度; 根據(jù)所述相似度獲取所述查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合包括 對(duì)查詢(xún)請(qǐng)求消息相對(duì)應(yīng)的發(fā)布文檔進(jìn)行語(yǔ)義信息抽取,得到所述查詢(xún)請(qǐng)求消息所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸入?yún)?shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系; 根據(jù)所述所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸入?yún)?shù)、所述查詢(xún)請(qǐng)求消息的輸出參數(shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系獲取請(qǐng)求輸入功能性矩陣集合; 根據(jù)所述所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸出參數(shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸出參數(shù)語(yǔ)義概念的關(guān)系獲取請(qǐng)求輸出功能性矩陣集合。
3.根據(jù)權(quán)利要求I或2所述的方法,其特征在于,所述根據(jù)所述請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度包括 根據(jù)所述查詢(xún)請(qǐng)求消息對(duì)保存在數(shù)據(jù)庫(kù)中的多個(gè)服務(wù)進(jìn)行過(guò)濾; 根據(jù)所述多個(gè)服務(wù)的類(lèi)型信息、所述多個(gè)服務(wù)的輸入輸出數(shù)量以及服務(wù)引用到的本體信息對(duì)服務(wù)進(jìn)行過(guò)濾,得到與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合; 計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)與所述查詢(xún)請(qǐng)求消息的相似度。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)與所述查詢(xún)請(qǐng)求消息的相似度包括 根據(jù)服務(wù)功能性匹配方法計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)和所述查詢(xún)請(qǐng)求消息的功能相似度矩陣; 根據(jù)服務(wù)非功能性匹配方法計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)和所述查詢(xún)請(qǐng)求消息的非功能相似度矩陣; 根據(jù)所述候選服務(wù)集合中的每ー個(gè)服務(wù)的文本特征向量和所述查詢(xún)請(qǐng)求消息的文本特征向量獲取文本相似度矩陣; 根據(jù)所述功能相似度矩陣、非功能相似度矩陣和文本相似度矩陣獲取所述查詢(xún)請(qǐng)求消息與所述候選服務(wù)中的每ー個(gè)服務(wù)的相似度。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述功能相似度矩陣、非功能相似度矩陣和文本相似度矩陣獲取所述查詢(xún)請(qǐng)求消息與所述候選服務(wù)中的每ー個(gè)服務(wù)的相似度包括 根據(jù)功能相似度矩陣和非功能相似度矩陣進(jìn)行矩陣乘積,生成輸入匹配結(jié)果矩陣;計(jì)算所述匹配結(jié)果矩陣中所有非零元素的數(shù)目,該所述所有非零元素的數(shù)目與所有輸入?yún)?shù)和輸出參數(shù)的個(gè)數(shù)的比值作為所述服務(wù)與所述查詢(xún)請(qǐng)求消息匹配的相似度。
6.一種能夠?qū)崿F(xiàn)權(quán)利要求I 5任一所述方法的基于多特征匹配的服務(wù)發(fā)現(xiàn)系統(tǒng),其特征在于,包括 第一獲取模塊,用于根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合; 計(jì)算模塊,用于根據(jù)所述請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每ー個(gè)服務(wù)之間的相似度; 第二獲取模塊,用于根據(jù)所述相似度獲取所述查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述第一獲取模塊包括 抽取單元,用于對(duì)所述查詢(xún)請(qǐng)求消息相對(duì)應(yīng)的發(fā)布文檔進(jìn)行語(yǔ)義信息抽取,得到所述查詢(xún)請(qǐng)求消息所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸入?yún)?shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系; 第一獲取單元,用于根據(jù)所述所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸入?yún)?shù)、所述查詢(xún)請(qǐng)求消息的輸出參數(shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸入?yún)?shù)語(yǔ)義概念的關(guān)系獲取請(qǐng)求輸入功能性矩陣集合; 第二獲取單元,用于根據(jù)所述所有本體的數(shù)目、所述查詢(xún)請(qǐng)求消息的輸出參數(shù)與所述查詢(xún)請(qǐng)求消息引用的多個(gè)本體中所有輸出參數(shù)語(yǔ)義概念的關(guān)系獲取請(qǐng)求輸出功能性矩陣集合。
8.根據(jù)權(quán)利要求6或7所述的系統(tǒng),其特征在于,所述計(jì)算模塊包括 第一過(guò)濾單元,用于根據(jù)所述查詢(xún)請(qǐng)求消息對(duì)保存在數(shù)據(jù)庫(kù)中的多個(gè)服務(wù)進(jìn)行過(guò)濾;第二過(guò)濾單元,用于根據(jù)所述多個(gè)服務(wù)的類(lèi)型信息、所述多個(gè)服務(wù)的輸入輸出數(shù)量以及服務(wù)引用到的本體信息對(duì)服務(wù)進(jìn)行過(guò)濾,得到與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合; 第一計(jì)算單元,用于計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)與所述查詢(xún)請(qǐng)求消息的相似度。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述第一計(jì)算單元包括 第一計(jì)算子単元,用于根據(jù)服務(wù)功能性匹配方法計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)和所述查詢(xún)請(qǐng)求消息的功能相似度矩陣; 第二計(jì)算子単元,用于根據(jù)服務(wù)非功能性匹配方法計(jì)算所述候選服務(wù)集合中的每ー個(gè)服務(wù)和所述查詢(xún)請(qǐng)求消息的非功能相似度矩陣; 第一獲取子単元,用于根據(jù)所述候選服務(wù)集合中的每ー個(gè)服務(wù)的文本特征向量和所述查詢(xún)請(qǐng)求消息的文本特征向量獲取文本相似度矩陣; 第二獲取子単元,用于根據(jù)所述功能相似度矩陣、非功能相似度矩陣和文本相似度矩陣獲取所述查詢(xún)請(qǐng)求消息與所述候選服務(wù)中的每ー個(gè)服務(wù)的相似度。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述第二獲取子単元包括 乘法子単元,用于根據(jù)功能相似度矩陣和非功能相似度矩陣進(jìn)行矩陣乘積,生成輸入匹配結(jié)果矩陣; 計(jì)算子単元,用于計(jì)算所述匹配結(jié)果矩陣中所有非零元素的數(shù)目,該所述所有非零元素的數(shù)目與所有輸入?yún)?shù)和輸出參數(shù)的個(gè)數(shù)的比值作為所述服務(wù)與所述查詢(xún)請(qǐng)求消息匹配的相似度。
全文摘要
本發(fā)明涉及一種基于多特征匹配的服務(wù)發(fā)現(xiàn)方法及系統(tǒng),其中方法包括根據(jù)查詢(xún)請(qǐng)求消息獲取請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合;根據(jù)所述請(qǐng)求輸入功能性矩陣集合和請(qǐng)求輸出功能性矩陣集合計(jì)算與所述查詢(xún)請(qǐng)求消息相關(guān)聯(lián)的候選服務(wù)集合中的每一個(gè)服務(wù)之間的相似度;根據(jù)所述相似度獲取所述查詢(xún)請(qǐng)求消息待查詢(xún)的服務(wù)列表。本發(fā)明實(shí)施例提供的基于多特征匹配的服務(wù)發(fā)現(xiàn)方法及系統(tǒng),由于在發(fā)現(xiàn)服務(wù)時(shí)避免了對(duì)服務(wù)的語(yǔ)義進(jìn)行推理以及對(duì)服務(wù)的相似度進(jìn)行計(jì)算,從而提高服務(wù)與請(qǐng)求查詢(xún)消息的匹配效率,從而提高了獲取服務(wù)的時(shí)間效率。
文檔編號(hào)H04L29/08GK102651755SQ20111004782
公開(kāi)日2012年8月29日 申請(qǐng)日期2011年2月28日 優(yōu)先權(quán)日2011年2月28日
發(fā)明者劉旭東, 李靜, 褚東杰, 趙永望, 馬殿富 申請(qǐng)人:北京航空航天大學(xué)