賈雅娟
(山西金融職業(yè)學(xué)院 山西省太原市 030008)
隨著移動(dòng)互聯(lián)網(wǎng)技術(shù)不斷發(fā)展,移動(dòng)手機(jī)促進(jìn)了電子商務(wù)發(fā)展,解決了電子商務(wù)依賴電腦問題,人們通過手機(jī)可實(shí)現(xiàn)網(wǎng)購。網(wǎng)購用戶不斷增加,電子商品數(shù)量成幾何增長,用戶很難中海量商品中獲取到想要產(chǎn)品。如何快速、準(zhǔn)確獲取用戶所需產(chǎn)品是目前電子商務(wù)研究難點(diǎn)。李文海[1]為解決大數(shù)據(jù)應(yīng)用背景下大型電子商務(wù)系統(tǒng)面臨信息過載問題,開發(fā)了基于Hadoop 電子商務(wù)推薦系統(tǒng),所設(shè)計(jì)的系統(tǒng)具有較高的伸縮性,能實(shí)現(xiàn)電子商品推廣。鄒坤[2]結(jié)合硬件設(shè)計(jì)了無線網(wǎng)絡(luò)的電子商務(wù)商品推薦管理系統(tǒng)。應(yīng)用結(jié)果表明所設(shè)計(jì)的電子商務(wù)推廣系統(tǒng)提高了商品成交量。
電子商務(wù)推廣系統(tǒng)采用硬件方式能提高推廣質(zhì)量,但適應(yīng)性以及投資成本較高,應(yīng)用場(chǎng)景受到限制。Hadoop 電子商務(wù)推薦系統(tǒng)功能強(qiáng)大,但維護(hù)成本高。針對(duì)上述問題,本文提出一種基于K-means 算法的電子商務(wù)推廣系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn),與現(xiàn)有的系統(tǒng)相比使用K-means 算法投資成本低,非常適合電子商務(wù)推廣。
所設(shè)計(jì)的電子商務(wù)推廣系統(tǒng)包含功能有商品管理、商品推薦管理、商品分類管理、客戶信息管理、購物車管理、資金管理以及系統(tǒng)管理。商品管理主要包括商品信息添加、商品信息修改、商品信息查看、商品信息刪除;商品推薦管理包括商品數(shù)據(jù)采集、商品數(shù)據(jù)清洗、商品數(shù)據(jù)挖掘、商品數(shù)據(jù)推薦;商品分類管理包含功能有商品分類信息添加、商品分類信息查看、商品分類信息刪除、商品分類信息修改;客戶信息管理包含功能有客戶信息添加、客戶信息修改、客戶信息查看、客戶信息刪除、客戶信息注冊(cè);購物車管理包含功能有:購物車添加、購物車查看、購物車修改、購物車結(jié)算;資金管理包含功能有:交易信息管理、充值管理、賬戶資金管理;系統(tǒng)管理包含功能有:用戶管理、權(quán)限管理、功能管理、數(shù)據(jù)管理。
系統(tǒng)采用C#編程語言進(jìn)行開發(fā),系統(tǒng)開發(fā)模式選擇為B/S。為提高系統(tǒng)開發(fā)效率采用三層架構(gòu),系統(tǒng)架構(gòu)圖見圖1 所示。應(yīng)用層主要有:商品展示、商品推廣、引擎管理、消費(fèi)者用戶行為管理。業(yè)務(wù)層主要包含商品管理、人員管理、資金管理、推廣管理。模型層主要是推廣算法以及數(shù)據(jù)集管理。數(shù)據(jù)層采用開源MySQL 數(shù)據(jù)庫進(jìn)行數(shù)據(jù)集存儲(chǔ),以及相應(yīng)的類數(shù)據(jù)集接口設(shè)計(jì)。
電子商務(wù)推廣系統(tǒng)首先從數(shù)據(jù)庫中獲取用戶信息、商品信息、用戶偏好信息。接著使用系統(tǒng)設(shè)計(jì)的K-means 算法進(jìn)行用戶行為挖掘,挖掘過程中需要進(jìn)行相應(yīng)的關(guān)聯(lián)規(guī)則、過濾規(guī)則分析,完成初始推薦。隨后進(jìn)行數(shù)據(jù)過濾、排序操作。最后將商品推廣給消費(fèi)者。如圖2 為推廣系統(tǒng)流程圖。
K-means 算法是一種聚類算法,從消費(fèi)者購買行為數(shù)據(jù)集中獲取數(shù)據(jù),并根據(jù)系統(tǒng)配置的K 個(gè)點(diǎn)作為初始質(zhì)點(diǎn),采用歐拉距離公式進(jìn)行樣本到質(zhì)心距離計(jì)算,構(gòu)建目標(biāo)函數(shù)求解誤差和。如果構(gòu)建目標(biāo)函數(shù)誤差達(dá)到設(shè)置要求算法終止,否者進(jìn)行新一輪計(jì)算。假設(shè)用戶行為初始數(shù)據(jù)集用符號(hào)表示,系統(tǒng)設(shè)置K 個(gè)簇類中心,用符號(hào)表示簇類中心數(shù)據(jù),其中每個(gè)簇類中心數(shù)據(jù)集可用表示(u1表示簇類中心點(diǎn)),使用歐拉公式進(jìn)行簇類中心距離計(jì)算方法為:
圖1:電子商務(wù)推廣系統(tǒng)架構(gòu)圖
圖2:推廣流程圖
圖3:基于遺傳算法的K-means 算法流程圖
表1:商品信息表
表2:用戶行為信息表
上述公式為單個(gè)簇類歐拉距離公式,所有簇類距離公式計(jì)算方法為:
公式(2)中主要通過判斷L(C)函數(shù)值是否達(dá)到最小值確定是否終止運(yùn)算。該公式屬于典型的最優(yōu)值求解問題,本文提出采用遺傳算法進(jìn)行求解。如圖3 為基于遺傳算法的K-means 算法流程圖。
所改進(jìn)的算法流程為:
(2)編碼規(guī)則使用二進(jìn)制編碼規(guī)則進(jìn)行編碼,包括聚類中心數(shù)量編碼。
(3)遺傳算法操作使用輪盤算法,交叉概率設(shè)置在0.5。
(4)變異操作中變異概率設(shè)置在0.0003。
采用MATLAB 軟件進(jìn)行算法仿真,數(shù)據(jù)源于電子商務(wù)系統(tǒng)用戶數(shù)據(jù)。系統(tǒng)硬件條件為CPU 為i5-10210U,最高主頻為2.11GHz,內(nèi)存大小為8G,操作系統(tǒng)為專業(yè)版windows10。仿真結(jié)果表明改進(jìn)K-means 算法運(yùn)行效率為30.56s,K-means 算法運(yùn)行效率61.23s;改進(jìn)K-means 算法挖掘準(zhǔn)確率為93.23%,K-means 算法挖掘準(zhǔn)確率為85.51%。結(jié)果表明改進(jìn)K-means 算法運(yùn)行效率提升2 倍,挖掘準(zhǔn)確率提高7.72%。
本文采用C#編程語言進(jìn)行電子商務(wù)推廣系統(tǒng)開發(fā)。為提高系統(tǒng)開發(fā)效率,采用UML 建模技術(shù)進(jìn)行系統(tǒng)功能設(shè)計(jì)。本文以商品信息管理、推廣管理為研究對(duì)象。商品信息管理中包含類有Commodity_manDALL、Commodity_manBLL、Commodity_man、Commodity_manMoble,分別用于商品數(shù)據(jù)管理、商品業(yè)務(wù)邏輯管理、商品界面管理、商品數(shù)據(jù)集管理;這些類包含的方法有:Commodity_man_insert()、Commodity_man_select()、Commodity_man_delete()、Commodity_man_update(),分別用于商品信息添加、商品信息查詢、商品信息刪除、商品信息更新。推廣管理中包含類有:extensionBLL、extensionDALL、extensionMoble、extension, 分 別用于推廣業(yè)務(wù)邏輯管理、推廣業(yè)務(wù)數(shù)據(jù)管理、推廣業(yè)務(wù)數(shù)據(jù)集管理、推廣業(yè)務(wù)界面管理,這些類中都包含方法有:extension_select()、extension_update()、extension_delete()、extension_insert(),分別用于推廣業(yè)務(wù)信息查詢、推廣業(yè)務(wù)信息修改、推廣業(yè)務(wù)信息刪除、推廣業(yè)務(wù)信息添加。
為降低系統(tǒng)開發(fā)成本,本文使用開源MySQL 數(shù)據(jù)庫進(jìn)行電子商務(wù)推廣系統(tǒng)數(shù)據(jù)存儲(chǔ)。電子商務(wù)推廣系統(tǒng)包含的數(shù)據(jù)表有:商品信息表、人員信息表、資金信息表、用戶行為信息表等,部分信息表詳細(xì)見表1,表2 所示。
所設(shè)計(jì)的電子商務(wù)推廣系統(tǒng)包含功能有商品管理、商品推薦管理、商品分類管理、客戶信息管理、購物車管理、資金管理以及系統(tǒng)管理。為提高系統(tǒng)開發(fā)效率采用三層架構(gòu)技術(shù)進(jìn)行系統(tǒng)設(shè)計(jì),采用UML 建模技術(shù)對(duì)商品信息、推廣業(yè)務(wù)進(jìn)行類設(shè)計(jì)。采用開源MySQL 數(shù)據(jù)庫進(jìn)行數(shù)據(jù)存儲(chǔ)。設(shè)計(jì)了基于遺傳算法的K-means 推廣算法。