姜滟穩(wěn),江自昊
(蕪湖職業(yè)技術(shù)學(xué)院,安徽蕪湖 241000)
隨著信息科技的飛速發(fā)展,如何高效的分析處理數(shù)據(jù)同時(shí)利用分析結(jié)果提高程序性能對(duì)開發(fā)者來(lái)說(shuō)尤為重要,常規(guī)數(shù)據(jù)一般存儲(chǔ)在數(shù)據(jù)庫(kù)中,用戶通過(guò)計(jì)算機(jī)終端、web傳輸端口、URL等渠道對(duì)數(shù)據(jù)進(jìn)行調(diào)用和獲取,常規(guī)數(shù)據(jù)類型基本以結(jié)構(gòu)化數(shù)據(jù)為主體.在進(jìn)入人工智能時(shí)代,在Python、R語(yǔ)言等基于數(shù)據(jù)分析程序設(shè)計(jì)語(yǔ)言的發(fā)展下,大數(shù)據(jù)分析和機(jī)器學(xué)習(xí)等先進(jìn)技術(shù)在各行各業(yè)開始生根發(fā)芽,數(shù)據(jù)處理從單一形態(tài)向多媒體、多視角、多結(jié)構(gòu)的多模態(tài)數(shù)據(jù)融合方向轉(zhuǎn)化,以圖像、視頻、語(yǔ)音、文本等類型的非結(jié)構(gòu)化數(shù)據(jù)逐漸成為用戶傳遞給計(jì)算機(jī)程序的主體數(shù)據(jù).針對(duì)這類非結(jié)構(gòu)化數(shù)據(jù)必須進(jìn)行數(shù)據(jù)清洗和數(shù)據(jù)分析,進(jìn)行結(jié)構(gòu)化數(shù)據(jù)標(biāo)記才能滿足傳統(tǒng)程序的算法需求.本文基于早期的研究成果和參與開發(fā)的程序系統(tǒng)為數(shù)據(jù)模型,針對(duì)目前程序運(yùn)營(yíng)中出現(xiàn)的問(wèn)題,通過(guò)機(jī)器學(xué)習(xí)中的相關(guān)算法設(shè)計(jì)一套針對(duì)非結(jié)構(gòu)數(shù)據(jù)處理的方法,通過(guò)此次設(shè)計(jì),解決程序系統(tǒng)對(duì)非結(jié)構(gòu)化數(shù)據(jù)處理不足的問(wèn)題,掌握分析原理,為技術(shù)研究、項(xiàng)目開發(fā)提供全新的思路.
公益活動(dòng)起源于歐洲工業(yè)革命時(shí)期,早期活動(dòng)形式較為單一,表現(xiàn)為人道主義救援和貧民救濟(jì)活動(dòng),發(fā)展到如今,國(guó)外已經(jīng)形成了較為完備的志愿服務(wù)體系和志愿服務(wù)激勵(lì)機(jī)制.與之相比,國(guó)內(nèi)的公益服務(wù)發(fā)展速度較為緩慢.近幾年在黨和國(guó)家的高度重視下,公益服務(wù)活動(dòng)開始進(jìn)入人們的視野中,雖然部分城市結(jié)合自身經(jīng)濟(jì)發(fā)展的特點(diǎn)推出了志愿服務(wù)激勵(lì)活動(dòng)等相關(guān)政策,但從總體發(fā)展來(lái)看,公益行業(yè)依然面臨缺乏宣傳平臺(tái)、公眾意識(shí)淡薄、公益活動(dòng)運(yùn)營(yíng)困難、公益活動(dòng)缺少獎(jiǎng)勵(lì)機(jī)制、救助項(xiàng)目覆蓋的群體較小等諸多問(wèn)題,其中最主要的問(wèn)題是管理和運(yùn)營(yíng)問(wèn)題.
圖1 公益聯(lián)盟系統(tǒng)核心示意圖Fig.1 Core schematic diagram of Public Welfare Alliance System
公益聯(lián)盟系統(tǒng)是為解決公益活動(dòng)推廣和運(yùn)營(yíng)等問(wèn)題而開發(fā)的程序系統(tǒng),通過(guò)搭建系統(tǒng)化數(shù)據(jù)化的緊密協(xié)作程序平臺(tái),明確政府、企業(yè)、志愿者、公共服務(wù)機(jī)構(gòu)、公益組織在公益活動(dòng)的角色和職責(zé).同時(shí)程序設(shè)計(jì)了基于公益權(quán)益積分池的核心算法,通過(guò)公益積分將聯(lián)盟系統(tǒng)可以提供的資源數(shù)字化,企業(yè)和用戶通過(guò)參與公益活動(dòng)獲得的積分,自己在積分池中兌換資源,同時(shí)也可以將自身可以提供的資源投入積分池,為其他需要的用戶提供積分兌換.系統(tǒng)通過(guò)積分流通保證公益資源和商業(yè)資源互相兌換形成一個(gè)健康良性的公益生態(tài)圈(如圖1所示).
(1)非結(jié)構(gòu)化數(shù)據(jù)利用率低
公益聯(lián)盟系統(tǒng)通過(guò)權(quán)益積分池算法很好地解決了公益活動(dòng)中的運(yùn)營(yíng)成本問(wèn)題,隨著越來(lái)越多的用戶參與公益活動(dòng),系統(tǒng)與用戶交互的數(shù)據(jù)量越來(lái)越多,在這些數(shù)據(jù)中,通過(guò)手機(jī)平臺(tái)產(chǎn)生的圖片、語(yǔ)音、文本等非結(jié)構(gòu)化數(shù)據(jù)的比例占整個(gè)數(shù)據(jù)量的85%,但系統(tǒng)本身采用的算法原理以線性回歸算法為主,無(wú)法直接分析處理非結(jié)構(gòu)化數(shù)據(jù),導(dǎo)致程序?qū)Ψ墙Y(jié)構(gòu)化數(shù)據(jù)類型的使用率不高.
(2)活動(dòng)事件缺少數(shù)據(jù)分析
公益活動(dòng)是一種復(fù)雜的社會(huì)活動(dòng),政府和公共服務(wù)機(jī)構(gòu)雖然是活動(dòng)的發(fā)起者和組織者,活動(dòng)的主體依然是居民和志愿者,個(gè)體的自我意識(shí)是活動(dòng)的主導(dǎo),公益聯(lián)盟系統(tǒng)需要對(duì)活動(dòng)的開展進(jìn)行預(yù)估評(píng)測(cè),在活動(dòng)結(jié)束以后更需要進(jìn)行用戶情感分析和活動(dòng)滿意度分析來(lái)對(duì)用戶的流失狀態(tài)進(jìn)行預(yù)測(cè),才能保證系統(tǒng)運(yùn)營(yíng)的穩(wěn)定.用戶通過(guò)手機(jī)產(chǎn)生的非結(jié)構(gòu)化數(shù)據(jù)產(chǎn)生于公益活動(dòng)開展的中期和后期,通過(guò)解析這些實(shí)時(shí)數(shù)據(jù)可以為系統(tǒng)的預(yù)估提供數(shù)據(jù)模型.
明確系統(tǒng)的功能需求,才能確定基礎(chǔ)數(shù)據(jù)的核心來(lái)源,系統(tǒng)數(shù)據(jù)主要包括公益活動(dòng)相關(guān)信息和數(shù)據(jù),比如近幾年城市公益活動(dòng)開展情況和政府頒布的相關(guān)政策,市民對(duì)公益事業(yè)的態(tài)度和公益活動(dòng)的參與情況,政府、公益組織、企業(yè)對(duì)公益活動(dòng)的經(jīng)費(fèi)投入,這些數(shù)據(jù)需要進(jìn)行結(jié)構(gòu)化和非結(jié)構(gòu)化的篩選和劃分,對(duì)二者之間的聯(lián)系進(jìn)行分析,并對(duì)各自在系統(tǒng)中的角色進(jìn)行清晰的界定,形成最重要的基礎(chǔ)數(shù)據(jù).
本文中系統(tǒng)采用DataSet預(yù)測(cè)技術(shù)預(yù)測(cè)數(shù)據(jù)集的數(shù)據(jù)類型、數(shù)據(jù)范圍、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)屬性等各項(xiàng)參數(shù),用于提取和構(gòu)建系統(tǒng)特征最重要的數(shù)據(jù)保障和網(wǎng)絡(luò)傳輸信息,確定系統(tǒng)整體數(shù)據(jù)規(guī)范.
在形成基礎(chǔ)數(shù)據(jù)之后,必須制定數(shù)據(jù)分類規(guī)則,因此需要分析公益聯(lián)盟系統(tǒng)的核心算法—公益權(quán)益積分池.公益權(quán)益積分池是公益聯(lián)盟的系統(tǒng)核心,也是維系整個(gè)系統(tǒng)框架良性循環(huán)和長(zhǎng)久運(yùn)營(yíng)的主體機(jī)制,系統(tǒng)通過(guò)核心算法將系統(tǒng)中政府、企業(yè)、志愿者、公共服務(wù)機(jī)構(gòu)、公益組織各方角色通過(guò)公益積分與積分池進(jìn)行串聯(lián),按照系統(tǒng)算法制定的規(guī)則進(jìn)行交流互通,因此本項(xiàng)目的數(shù)據(jù)標(biāo)注規(guī)則必須以公益聯(lián)盟框架中的核心算法為標(biāo)注標(biāo)準(zhǔn),標(biāo)注后的數(shù)據(jù)必須滿足系統(tǒng)的積分流通規(guī)則.
其中非結(jié)構(gòu)化數(shù)據(jù)中圖像、文本、音頻、視頻將依據(jù)項(xiàng)目中的數(shù)據(jù)標(biāo)注規(guī)則進(jìn)行采集[1],具體內(nèi)容包括:
圖像數(shù)據(jù)集:以公益活動(dòng)的拍照對(duì)象進(jìn)行采集,包括人臉數(shù)據(jù)、車牌數(shù)據(jù)和活動(dòng)中特征物體數(shù)據(jù)等.
文本數(shù)據(jù)集:以公益聯(lián)盟系統(tǒng)中各方角色為標(biāo)準(zhǔn)進(jìn)行采集,包括人名、地名、命令詞、常用引導(dǎo)詞等.
音頻采集:對(duì)公益活動(dòng)的現(xiàn)場(chǎng)的聲音數(shù)據(jù)進(jìn)行采集,主體為身份識(shí)別.
視頻采集:考慮分析成本,本系統(tǒng)不采集視頻數(shù)據(jù).
數(shù)據(jù)標(biāo)注分類從不同維度進(jìn)行,數(shù)據(jù)標(biāo)注分類依據(jù)表1中列舉的分類優(yōu)缺點(diǎn)進(jìn)行分類.
在完成基礎(chǔ)數(shù)據(jù)收集工作后,系統(tǒng)對(duì)所有收集到的數(shù)據(jù)進(jìn)行篩選,按照機(jī)器算法進(jìn)行數(shù)據(jù)的清理,對(duì)數(shù)據(jù)的完整性進(jìn)行分析,將重復(fù)的數(shù)據(jù)進(jìn)行刪除,保持?jǐn)?shù)據(jù)的一致性;其次檢查數(shù)據(jù)集的錯(cuò)誤數(shù)據(jù)和缺失數(shù)據(jù),降低數(shù)據(jù)的復(fù)雜噪點(diǎn);最后將數(shù)據(jù)統(tǒng)一成適合標(biāo)注且符合項(xiàng)目標(biāo)注規(guī)則的數(shù)據(jù)集.
如表1所示,系統(tǒng)對(duì)非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行清晰分類后,在添加標(biāo)記的過(guò)程中,必須分析標(biāo)注形式是結(jié)構(gòu)化、非結(jié)構(gòu)化還是半結(jié)構(gòu)化,考慮研發(fā)成本,本文主體采用結(jié)構(gòu)化標(biāo)記分類.
表1 數(shù)據(jù)標(biāo)注分類列表Tab.1 Classification List of data annotation
圖2 HDFS分布式文件系統(tǒng)結(jié)構(gòu)圖Fig.2 Structure diagram of HDFS distributed file system
在數(shù)據(jù)管理階段,通過(guò)不同應(yīng)用程序調(diào)用接口將異構(gòu)的數(shù)據(jù)導(dǎo)入分布式數(shù)據(jù)庫(kù)中,利用Hadoop Distributed File System分布式文件系統(tǒng)[2](如圖2所示)中的組件,可以將結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)并行管理和存儲(chǔ).運(yùn)用這種分布式云服務(wù)器存儲(chǔ)技術(shù),使大數(shù)據(jù)分析和計(jì)算的數(shù)據(jù)查詢和檢索功能能夠快速可靠的完成.
本文重點(diǎn)分析如何對(duì)圖像數(shù)據(jù)進(jìn)行數(shù)據(jù)挖掘,為提高數(shù)據(jù)挖掘的利用率,擬采用YOLOv5s目標(biāo)檢測(cè)算法[3],對(duì)實(shí)時(shí)上傳的圖像數(shù)據(jù)通過(guò)自適應(yīng)錨框計(jì)算與自適應(yīng)圖片縮放方法進(jìn)行歸一化處理(如圖3所示).在進(jìn)行錨框計(jì)算時(shí),對(duì)圖像數(shù)據(jù)分析并進(jìn)行特征提取,例如人臉、車牌、社團(tuán)旗幟、企業(yè)標(biāo)志等,其中人臉識(shí)別作為個(gè)體數(shù)量集進(jìn)行統(tǒng)計(jì).數(shù)據(jù)挖掘采用Mosaic數(shù)據(jù)增強(qiáng)法則對(duì)4張照片進(jìn)行拼接,并根據(jù)圖片的拍攝時(shí)間建立測(cè)試集,提高圖像數(shù)據(jù)的使用效率,降低數(shù)據(jù)模型的性能需求.
圖3 Mosaic算法實(shí)驗(yàn)圖Fig.3 Mosaic algorithm experiment chart
圖4 非結(jié)構(gòu)化數(shù)據(jù)挖掘展示圖Fig.4 Unstructured data mining diagram
如圖4所示,通過(guò)Mosaic算法對(duì)圖像數(shù)據(jù)進(jìn)行深度挖掘,將非結(jié)構(gòu)化的數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)化,轉(zhuǎn)化后的帶有結(jié)構(gòu)化標(biāo)記的非結(jié)構(gòu)化數(shù)據(jù)就可以運(yùn)用二分類算法進(jìn)行數(shù)據(jù)分類,并添加到系統(tǒng)的常規(guī)數(shù)據(jù)表中,大大提高數(shù)據(jù)的利用率.若需要拓展系統(tǒng)的核心功能,例如進(jìn)行用戶流失預(yù)警預(yù)測(cè),則需要進(jìn)一步搭建數(shù)據(jù)模型,建立訓(xùn)練集和測(cè)試集.
本文利用Python語(yǔ)言對(duì)數(shù)據(jù)集進(jìn)行分類,代碼如圖5所示:
圖5 數(shù)據(jù)集分類代碼Fig.5 Classification code of data set
圖5中的代碼將數(shù)據(jù)集分成訓(xùn)練集和測(cè)試集兩個(gè)部分,x,y分別對(duì)應(yīng)特征變量(特征分類)和目標(biāo)變量(采集數(shù)量),test_size的數(shù)值表示測(cè)試集所占的百分比.系統(tǒng)可以依據(jù)采集時(shí)間適度調(diào)整測(cè)試集的比例范圍.
本文采用GBDT算法[4],依據(jù)表2的數(shù)據(jù)格式對(duì)用戶是否流失進(jìn)行數(shù)據(jù)分析測(cè)試,“圖像最近采集時(shí)間”和“圖像權(quán)重”兩列是通過(guò)非結(jié)構(gòu)化數(shù)據(jù)挖掘后產(chǎn)生的新數(shù)據(jù)列.
表2 用戶流失預(yù)警數(shù)據(jù)示例表Tab.2 Example of user loss warning data
表格中包含1500組測(cè)試數(shù)據(jù),“是否流失”列中1代表流失,0代表未流失,在原本的用戶流失預(yù)警數(shù)據(jù)示例表中不包含“圖像最近采集時(shí)間”和“圖像權(quán)重”兩列,系統(tǒng)通過(guò)分類決策樹算法對(duì)用戶流失進(jìn)行了預(yù)估,但0和1的結(jié)果并不能幫助系統(tǒng)進(jìn)行精準(zhǔn)的預(yù)測(cè),在添加新挖掘的數(shù)據(jù)列之后,系統(tǒng)可以采用更先進(jìn)的人工智能算法對(duì)數(shù)據(jù)表進(jìn)行測(cè)試.
GBDT算法通過(guò)迭代模型強(qiáng)化決策樹的殘差值獲取更精細(xì)的數(shù)據(jù),迭代模型公式[5]如下:
fm(x)=fm-1(x)+Tm(x)
(1)
公式(1)中fm-1(x)是第m-1次的迭代模型,Tm(x)是本次待搭建的決策樹,同時(shí)也是上一個(gè)擬合模型殘差值的決策樹,fm(x)是經(jīng)過(guò)本次迭代計(jì)算后,生成的新數(shù)據(jù)模型.通過(guò)“圖像最近采集時(shí)間”列中不同的日期數(shù)據(jù),就可以選擇不同的初始切分點(diǎn)構(gòu)建第一個(gè)初始決策樹,通過(guò)反復(fù)迭代獲取均方誤差MSE,當(dāng)MSE的值達(dá)到指定要求或者迭代次數(shù)達(dá)到指定條件就停止迭代,形成最終模型,本文擬MSE為0.075作為停止迭代標(biāo)準(zhǔn),“圖像權(quán)重”列作為圖像識(shí)別獲取用戶參與度數(shù)據(jù),將放入到最終結(jié)果中作為測(cè)試模型的評(píng)估標(biāo)準(zhǔn)之一.
從表3可以看出,拓展后的數(shù)據(jù)示例表采用GBDT算法可以獲取更準(zhǔn)確的預(yù)測(cè)數(shù)據(jù).
與分類決策樹產(chǎn)生的“0”“1”數(shù)值相比,GBDT算法獲得的測(cè)試數(shù)據(jù)精度更高,“圖像權(quán)重”列可以作為數(shù)據(jù)模型的命中率參考值[6],對(duì)測(cè)試結(jié)果進(jìn)行評(píng)估,當(dāng)不流失概率和命中率都低于30%,系統(tǒng)可以判定用戶具有流失的風(fēng)險(xiǎn),考慮到不同的圖像采集時(shí)間作為迭代模型不同的初始切分點(diǎn),30%的數(shù)值可以適當(dāng)?shù)奶岣呋蛘呓档?,?yōu)化模型評(píng)估結(jié)果.
通過(guò)人工智能算法對(duì)非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行處理可以強(qiáng)化拓展進(jìn)行測(cè)試的數(shù)據(jù)集合,方便計(jì)算機(jī)系統(tǒng)使用更先進(jìn)的算法對(duì)數(shù)據(jù)進(jìn)行預(yù)測(cè),程序系統(tǒng)可以依據(jù)自身的成本和決策樹算法,在少量增加支出的條件下,利用數(shù)據(jù)挖掘得到的結(jié)構(gòu)化數(shù)據(jù),加強(qiáng)系統(tǒng)數(shù)據(jù)的功能擴(kuò)展,增強(qiáng)系統(tǒng)的數(shù)據(jù)使用率.
綿陽(yáng)師范學(xué)院學(xué)報(bào)2023年2期