本發(fā)明涉及一種移動互聯(lián)網(wǎng)領(lǐng)域,具體的說是一種基于社交圖片SIFT特征的上下文信息預(yù)測方法。
背景技術(shù):
在飛速發(fā)展的移動互聯(lián)網(wǎng)時代,圖像簡明形象的時代特性,使其成為人們表達情感的重要載體。用戶的上下文信息在移動互聯(lián)網(wǎng)應(yīng)用中扮演著重要角色,它反映了用戶的各種基本信息。在移動互聯(lián)網(wǎng)時代,圖像與用戶上下文信息關(guān)系密切,能夠在一定程度上反映發(fā)圖用戶的基本特征。用戶上下文信息預(yù)測就是通過分析用戶上傳到移動互聯(lián)網(wǎng)上的圖片來預(yù)測用戶的性別、發(fā)圖習(xí)慣、影響力、活躍度以及使用終端等上下文信息。
目前根據(jù)圖像特征進行預(yù)測的技術(shù)多是從全局特征出發(fā),通過灰度矩陣、顏色矩陣等得到數(shù)字特征來進行預(yù)測。如果是對圖像的整體進行研究,而不太關(guān)注圖片隱含的背景信息,使用全局特征比較合適。但是如果要預(yù)測用戶的上下文信息,需要辨識圖片的前景和背景,使用全局特征得到的預(yù)測準確率不高,因此提取圖片的局部特征更為合適。而且之前的技術(shù)研究的圖像多是人工分類過或標記過的,但是大數(shù)據(jù)背景下社交網(wǎng)絡(luò)上的圖片更多是沒有被標記的。因此本發(fā)明主要通過對用戶上傳到移動互聯(lián)網(wǎng)的未處理的社交圖片的局部特征進行研究,提取圖片的SIFT特征,對提取的特征進行聚類,采用的聚類算法是K-Means++算法;然后對用戶的上下文信息進行分類預(yù)測,采取的分類方法是GBDT(Gradient Boosting Decision Tree)算法和SVM(Support Vector Machine)算法。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于克服上述不足,提供一種基于社交圖片SIFT特征的上下文信息預(yù)測方法,通過分析用戶上傳到移動互聯(lián)網(wǎng)上的圖片,預(yù)測用戶的性別、發(fā)圖習(xí)慣、影響力、活躍度以及使用終端等上下文信息。
本發(fā)明的目的是這樣實現(xiàn)的:基于社交圖片SIFT特征的上下文信息預(yù)測方法,
從OSNs(Online Social Networks)和移動互聯(lián)網(wǎng)獲取用戶在移動互聯(lián)網(wǎng)上傳的圖片數(shù)據(jù),記錄每張圖片的相關(guān)信息;
對獲取到的圖片進行預(yù)處理,然后提取圖片的局部特征SIFT特征:分別檢測、精確定位每張圖片的尺度空間極值點、確定關(guān)鍵點的位置和尺度,指定關(guān)鍵點方向參數(shù),生成圖片SIFT特征向量由于不同用戶發(fā)表的圖片一般具有不同的局部特征,同一類型的用戶發(fā)表的圖片具有相似的局部特征,故本發(fā)明以此為依據(jù)來預(yù)測用戶的上下文信息;
構(gòu)建SIFT特征向量池,并對SIFT特征池中的特征向量進行聚類,得到相似特征的聚類中心,通過特征原型和聚類中心,計算得到用戶級別的特征向量;
學(xué)習(xí)用戶級別特征向量建立訓(xùn)練數(shù)據(jù),采用SVM和GBDT模型實現(xiàn)對用戶的上下文信息的分類預(yù)測,本發(fā)明將用戶的性別(男/女)、發(fā)圖習(xí)慣(高峰期/平常期)、影響力(高/低)、活躍度(活躍/不活躍)、使用終端(手機/電腦)等作為二分類問題處理。
本發(fā)明的優(yōu)點在于:
本發(fā)明研究的圖片是未標記的,符合當前大數(shù)據(jù)下信息量大、雜的特征,有助于在海量數(shù)據(jù)中提取有效實用的信息;
本發(fā)明提取的是圖片的局部特征,降低了圖片攜帶的信息,減少了計算量。預(yù)測準確度較高;
通過特征原型和聚類中心(分類原型),計算得到描述用戶的特征向量,生成數(shù)據(jù)集,使得預(yù)測速度和性能得到提升。
附圖說明
圖1為本發(fā)明的基于社交圖片SIFT特征的上下文信息預(yù)測方法的流程圖;
圖2為本發(fā)明的數(shù)據(jù)集預(yù)測用戶上下文信息的算法流程圖。
具體實施方式
下面結(jié)合附圖對本發(fā)明作進一步描述。
本發(fā)明為基于社交圖片SIFT特征的上下文信息預(yù)測方法,包括以下步驟:
步驟1、獲取用戶上下文信息和圖片特征數(shù)據(jù)集,;
步驟2、采用十字交叉驗證法將數(shù)據(jù)集分為訓(xùn)練集和測試集;
步驟3、將訓(xùn)練集訓(xùn)練SVM和GBDT分類模型,以供預(yù)測時使用,其中SVM采用RBF核函數(shù);
步驟4、用訓(xùn)練好的SVM模型和GBDT模型分別預(yù)測測試集的數(shù)據(jù),對于用SVM訓(xùn)練出的分類模型,使用SVM預(yù)測算法測試測試集,對于用GBDT訓(xùn)練出的分類模型,使用GBDT預(yù)測算法測試測試集,分類模型包括性別分類模型、活躍度分類模型、影響力分類模型和使用終端分類模型;
步驟5、對測試樣本的預(yù)測測試結(jié)果進行輸出,并比較得出最終預(yù)測結(jié)果。
其中,獲取用戶上下文信息和圖片特征數(shù)據(jù)集的方法包括以下步驟:
步驟101、獲取用戶上傳到移動互聯(lián)網(wǎng)上的圖片,獲取發(fā)圖用戶的基本信息,用戶基本信息包括用戶的ID、性別、活躍度、發(fā)圖習(xí)慣、影響力和使用終端類型;
步驟102、收集并記錄所述圖片的相關(guān)信息和圖片對應(yīng)的用戶上下文信息;
步驟103、圖片預(yù)處理,提取圖片的SIFT特征:將下載到的圖片進行預(yù)處理操作,構(gòu)建尺度空間,使用高斯核和高斯微分建立高斯金字塔,檢測尺度空間的極值點,精確定位極值點,確定關(guān)鍵點的位置、尺度和主方向,生成128維的SIFT特征向量;
步驟104、構(gòu)建SIFT特征池:對每張圖片的SIFT特征向量進行統(tǒng)計分析:總共有n個用戶,每個用戶發(fā)p張圖片,將提取的所有圖片的SIFT特征向量拼接構(gòu)成SIFT特征池P;
步驟105、聚類:對SIFT特征池中的特征向量采用K-Means++算法進行聚類,得到C個聚類中心,Ci對應(yīng)一個用戶分類原型;
步驟106、構(gòu)建特征向量,生成數(shù)據(jù)集:對于給定的一個用戶,fj表示從圖片中提取的第j個SIFT特征,若與fj最接近的分類原型是Ci,則用戶對應(yīng)的該分類原型增加1。由此計算得到描述用戶的特征向量,生成數(shù)據(jù)集。
最后應(yīng)說明的是:顯然,上述實施例僅僅是為清楚地說明本申請所作的舉例,而并非對實施方式的限定。對于所屬領(lǐng)域的普通技術(shù)人員來說,在上述說明的基礎(chǔ)上還可以做出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮舉。而由此所引申出的顯而易見的變化或變動仍處于本申請型的保護范圍之中。