基于聚類(lèi)的大規(guī)模多標(biāo)簽分類(lèi)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實(shí)施例涉及數(shù)據(jù)分析技術(shù)領(lǐng)域,尤其涉及一種基于聚類(lèi)的大規(guī)模多標(biāo)簽分類(lèi)方法。
【背景技術(shù)】
[0002]SVM(Support Vector Machine)是目前使用最廣泛的分類(lèi)器之一。SVM可以解決的基本問(wèn)題是二分類(lèi)問(wèn)題。它的根本思想是通過(guò)凸優(yōu)化算法從訓(xùn)練數(shù)據(jù)中找到一個(gè)或者一組可以將兩類(lèi)數(shù)據(jù)分開(kāi)的超平面。從而在預(yù)測(cè)時(shí),就可以通過(guò)這組超平面來(lái)判斷預(yù)測(cè)數(shù)據(jù)屬于哪一類(lèi)。對(duì)于多標(biāo)簽分類(lèi)問(wèn)題,SVM需要針對(duì)每一個(gè)標(biāo)簽建立一個(gè)二分類(lèi)器用于判定當(dāng)前預(yù)測(cè)數(shù)據(jù)是否包含這個(gè)標(biāo)簽。
[0003]因此,如果數(shù)據(jù)中有N個(gè)標(biāo)簽,需要建立N個(gè)SVM 二分類(lèi)器。當(dāng)N很大時(shí)(目前的數(shù)據(jù)通常有10000甚至100000個(gè)標(biāo)簽),對(duì)于每一個(gè)標(biāo)簽訓(xùn)練一個(gè)二分類(lèi)器效率很低。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實(shí)施例提供一種基于聚類(lèi)的大規(guī)模多標(biāo)簽分類(lèi)方法,以克服現(xiàn)有技術(shù)中適用于規(guī)模較小的分類(lèi)問(wèn)題,不能解決大規(guī)模標(biāo)簽分類(lèi)的技術(shù)問(wèn)題。
[0005]本發(fā)明實(shí)施例的基于聚類(lèi)的大規(guī)模多標(biāo)簽分類(lèi)方法,包括:
[0006]建立分類(lèi)模型;
[0007]根據(jù)已知的訓(xùn)練數(shù)據(jù)的特征數(shù)據(jù)和標(biāo)簽,采用Kmeans算法對(duì)所述標(biāo)簽進(jìn)行聚類(lèi),并根據(jù)聚類(lèi)后標(biāo)簽訓(xùn)練所述分類(lèi)模型;
[0008]采用所述訓(xùn)練后的分類(lèi)模型預(yù)測(cè)數(shù)據(jù)包含的標(biāo)簽。
[0009]進(jìn)一步地,所述根據(jù)已知的訓(xùn)練數(shù)據(jù)的特征數(shù)據(jù)和標(biāo)簽,采用Kmeans算法對(duì)所述標(biāo)簽進(jìn)行聚類(lèi),并根據(jù)聚類(lèi)后標(biāo)簽訓(xùn)練所述分類(lèi)模型,包括:
[0010]根據(jù)訓(xùn)練數(shù)據(jù)的數(shù)據(jù)個(gè)數(shù)、特征數(shù)據(jù)以及標(biāo)簽得到特征矩陣和標(biāo)簽矩陣;
[0011]根據(jù)所述特征矩陣和標(biāo)簽矩陣計(jì)算所述訓(xùn)練數(shù)據(jù)的標(biāo)簽向量;
[0012]根據(jù)所述標(biāo)簽向量,采用Kmeans算法將所述標(biāo)簽聚類(lèi)為若干簇,并將所述標(biāo)簽對(duì)應(yīng)的訓(xùn)練數(shù)據(jù)分發(fā)到所述若干簇中;
[0013]分別根據(jù)分發(fā)后的訓(xùn)練數(shù)據(jù)采用梯度下降法訓(xùn)練子分類(lèi)器;
[0014]保存訓(xùn)練后的模型,所述模型包括若干個(gè)子分類(lèi)器和若干個(gè)中心點(diǎn)。
[0015]進(jìn)一步地,所述根據(jù)所述特征矩陣和標(biāo)簽矩陣計(jì)算所述訓(xùn)練數(shù)據(jù)的標(biāo)簽向量,包括:
[0016]計(jì)算所述標(biāo)簽矩陣中任一標(biāo)簽對(duì)應(yīng)的所有特征向量的平均值,得到所述訓(xùn)練數(shù)據(jù)的標(biāo)簽向量;
[0017]所述并將所述標(biāo)簽對(duì)應(yīng)的訓(xùn)練數(shù)據(jù)分發(fā)到所述若干簇中,包括:
[0018]計(jì)算所述訓(xùn)練數(shù)據(jù)的標(biāo)簽被所述若干簇覆蓋的個(gè)數(shù);
[0019]將所述訓(xùn)練數(shù)據(jù)分發(fā)給所述覆蓋個(gè)數(shù)最大的簇。
[0020]進(jìn)一步地,所述將所述訓(xùn)練數(shù)據(jù)分發(fā)給所述覆蓋個(gè)數(shù)最大的簇,包括:
[0021]若所述覆蓋個(gè)數(shù)最大的簇為至少兩個(gè),則將所述訓(xùn)練數(shù)據(jù)分發(fā)至中心點(diǎn)至所述訓(xùn)練數(shù)據(jù)之間的歐幾里得距離最小的簇;
[0022]將所述訓(xùn)練數(shù)據(jù)中與所述距離最小的簇不同的標(biāo)簽過(guò)濾掉。
[0023]進(jìn)一步地,所述采用所述訓(xùn)練后的模型預(yù)測(cè)數(shù)據(jù)包含的標(biāo)簽,包括:
[0024]將所述預(yù)測(cè)數(shù)據(jù)進(jìn)行預(yù)處理,得到特征矩陣;
[0025]計(jì)算所述特征向量與所述若干個(gè)中心點(diǎn)之間的歐幾里得距離;
[0026]將所述預(yù)測(cè)數(shù)據(jù)分發(fā)到所述歐幾里得距離中最小的簇;
[0027]根據(jù)所述距離最小簇對(duì)應(yīng)的子分類(lèi)器對(duì)所述預(yù)測(cè)數(shù)據(jù)進(jìn)行標(biāo)簽預(yù)測(cè)。
[0028]本發(fā)明實(shí)施例,建立分類(lèi)模型,并根據(jù)已知的訓(xùn)練數(shù)據(jù)的特征數(shù)據(jù)和標(biāo)簽采用Kmeans算法對(duì)標(biāo)簽進(jìn)行聚類(lèi),聚類(lèi)后的標(biāo)簽用于訓(xùn)練所述分類(lèi)模型,訓(xùn)練后的分類(lèi)模型用于預(yù)測(cè)數(shù)據(jù)包含的標(biāo)簽,解決了的現(xiàn)有技術(shù)中訓(xùn)練數(shù)據(jù)過(guò)程和預(yù)測(cè)標(biāo)簽過(guò)程慢的問(wèn)題,提高了工作效率。
【附圖說(shuō)明】
[0029]為了更清楚地說(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ù)這些附圖獲得其他的附圖。
[0030]圖1為本發(fā)明基于聚類(lèi)的大規(guī)模多標(biāo)簽分類(lèi)方法流程圖;
[0031]圖2為本發(fā)明基于聚類(lèi)的大規(guī)模多標(biāo)簽分類(lèi)方法訓(xùn)練流程圖。
【具體實(shí)施方式】
[0032]為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(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ù)的范圍。
[0033]圖1為本發(fā)明基于聚類(lèi)的大規(guī)模多標(biāo)簽分類(lèi)方法流程圖,如圖1所示,本實(shí)施例方法,包括:
[0034]步驟101、建立分類(lèi)模型;
[0035]步驟102、根據(jù)已知的訓(xùn)練數(shù)據(jù)的特征數(shù)據(jù)和標(biāo)簽,采用Kmeans算法對(duì)所述標(biāo)簽進(jìn)行聚類(lèi),并根據(jù)聚類(lèi)后的每簇標(biāo)簽訓(xùn)練所述分類(lèi)模型;
[0036]步驟103、采用所述訓(xùn)練后的分類(lèi)模型預(yù)測(cè)數(shù)據(jù)包含的標(biāo)簽。
[0037]進(jìn)一步地,所述根據(jù)已知的訓(xùn)練數(shù)據(jù)的特征數(shù)據(jù)和標(biāo)簽,采用Kmeans算法對(duì)所述標(biāo)簽進(jìn)行聚類(lèi),并對(duì)聚類(lèi)后標(biāo)簽訓(xùn)練所述分類(lèi)模型,包括:
[0038]根據(jù)訓(xùn)練數(shù)據(jù)的數(shù)據(jù)個(gè)數(shù)、特征數(shù)據(jù)以及標(biāo)簽得到特征矩陣和標(biāo)簽矩陣;
[0039]根據(jù)所述特征矩陣和標(biāo)簽矩陣計(jì)算所述訓(xùn)練數(shù)據(jù)的標(biāo)簽向量;
[0040]根據(jù)所述標(biāo)簽向量,采用Kmeans算法將所述標(biāo)簽聚類(lèi)為若干簇,并將所述標(biāo)簽對(duì)應(yīng)的訓(xùn)練數(shù)據(jù)分發(fā)到所述若干簇中;
[0041]分別根據(jù)分發(fā)后的訓(xùn)練數(shù)據(jù)采用梯度下降法訓(xùn)練子分類(lèi)器;
[0042]保存訓(xùn)練后的模型,所述模型包括若干個(gè)子分類(lèi)器和若干個(gè)中心點(diǎn)。
[0043]進(jìn)一步地,所述根據(jù)所述特征矩陣和標(biāo)簽矩陣計(jì)算所述訓(xùn)練數(shù)據(jù)的標(biāo)簽向量,包括:
[0044]計(jì)算所述標(biāo)簽矩陣中任一標(biāo)簽對(duì)應(yīng)的所有特征向量的平均值,得到所述訓(xùn)練數(shù)據(jù)的標(biāo)簽向量;
[0045]所述并將所述標(biāo)簽對(duì)應(yīng)的訓(xùn)練數(shù)據(jù)分發(fā)到所述若干簇中,包括:
[0046]計(jì)算所述訓(xùn)練數(shù)據(jù)的標(biāo)簽被所述若干簇覆蓋的個(gè)數(shù);
[0047]將所述訓(xùn)練數(shù)據(jù)分發(fā)給所述覆蓋個(gè)數(shù)最大的簇。
[0048]進(jìn)一步