大數(shù)據(jù)挖掘?qū)д撆c案例課件-第9章 案例分析_第1頁
大數(shù)據(jù)挖掘?qū)д撆c案例課件-第9章 案例分析_第2頁
大數(shù)據(jù)挖掘?qū)д撆c案例課件-第9章 案例分析_第3頁
大數(shù)據(jù)挖掘?qū)д撆c案例課件-第9章 案例分析_第4頁
大數(shù)據(jù)挖掘?qū)д撆c案例課件-第9章 案例分析_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第1章緒論第2章數(shù)據(jù)分析與可視化技術(shù)第3章認(rèn)識數(shù)據(jù)第4章數(shù)據(jù)預(yù)處理第5章分類概念與方法第6章關(guān)聯(lián)分析概念與方法第7章聚類分析概念與方法第8章大數(shù)據(jù)挖掘關(guān)鍵技術(shù)第9章案例分析第9章案例分析大數(shù)據(jù)挖掘?qū)д撆c案例學(xué)習(xí)目標(biāo)/Target通過購物籃分析實(shí)例,掌握通過機(jī)票航班延誤預(yù)測實(shí)例、購物籃分析實(shí)例、航空公司客戶價值分析實(shí)例的學(xué)習(xí),掌握數(shù)據(jù)挖掘標(biāo)準(zhǔn)過程模型的流程,掌握分析問題的角度和方法,掌握數(shù)據(jù)預(yù)處理方法,掌握分類模型、關(guān)聯(lián)分析模型、聚類模型的訓(xùn)練和評估方法,領(lǐng)會具體問題具體分析的重要性。目錄/Contents010203機(jī)票航班延誤預(yù)測零售行業(yè)購物籃分析航空公司客戶價值分析機(jī)票航班延誤預(yù)測9.19.1.1應(yīng)用背景與目標(biāo)航空業(yè)持續(xù)遭受航班延誤帶來的經(jīng)濟(jì)損失,根據(jù)美國運(yùn)輸統(tǒng)計(jì)局(BTS)的數(shù)據(jù)顯示,2018年美國航班延誤20%以上,這些航班延誤對美國造成了相當(dāng)于每年407億美元的經(jīng)濟(jì)影響。歐美及ICAO/CANSO等地區(qū)/國際組織認(rèn)定航班實(shí)際起飛時間晚于計(jì)劃起飛時間15分鐘以上為延誤航班。航班延誤在很多情況下由不可抗力所致(如惡劣天氣),航班的延誤還會出現(xiàn)連鎖反映,影響航班的后續(xù)運(yùn)行,所以針對航班延誤不僅要從源頭上減少延誤的可能,更需要實(shí)施航班延誤預(yù)測,實(shí)現(xiàn)在發(fā)生大面積延誤前,完成對航班未來延誤情況的有效評估。對航班延誤情況進(jìn)行預(yù)測和分析,對于旅客、航空公司、機(jī)場和機(jī)票預(yù)定平臺都具有十分重要的意義,而且能夠提前收到航班延誤通知,進(jìn)而合理計(jì)劃自己的行程對于旅客而言也很重要。9.1.2數(shù)據(jù)探索與理解

importpandasaspd

frompandas_profilingimportProfileReport

importglob

importos

defgetdata():

fordirname,_,filenamesinos.walk('.\input'):

forfilenameinfilenames:

print(os.path.join(dirname,filename))圖9.1數(shù)據(jù)集中的文件從/網(wǎng)站下載historical-flight-and-weather-data數(shù)據(jù)集,包含了2019年5月至2019年12月的歷史航班延誤數(shù)據(jù)和美國氣象數(shù)據(jù),數(shù)據(jù)集中每個月的數(shù)據(jù)為一個文件,共有8個文件。定義ExploratoryAnalysis.py文件,加載數(shù)據(jù),并對數(shù)據(jù)進(jìn)行探索和理解。9.1.2數(shù)據(jù)探索與理解

df=pd.concat([pd.read_csv(f)forfinglob.glob(".\input\*.csv")])

print(df.head())print(df.shape)圖9.2數(shù)據(jù)集示例在getdata()方法中使用glob讀取8個文件,因文件中的數(shù)據(jù)格式全部相同,每個文件中都有35列,使用concat將文件合并為一個DataFrame,作為原始樣本,共有5512903個樣本,每個樣本有35個特征。9.1.2數(shù)據(jù)探索與理解

profile=ProfileReport(df)

profile.to_file('.\output\Report.html’)returndf圖9.3數(shù)據(jù)集概述數(shù)據(jù)集中共有36個特征,比原始數(shù)據(jù)集中的35特征多出的是索引index,共計(jì)5512903條記錄,數(shù)據(jù)集的缺失率較低,只有0.1%,且缺失數(shù)據(jù)在計(jì)劃起飛時間和計(jì)劃到達(dá)時間特征中,23個特征為數(shù)值類型,10個特征為類別,3個特征被定義為拒絕使用的特征,這3個特征分別是day、year和arrival_delay,其中day與索引index的相關(guān)性達(dá)到0.99839,而到達(dá)延誤arrival_delay與出發(fā)延誤departure_delay的相關(guān)性達(dá)到0.92068,所以day或index、arrival_delay或departure_delay兩組特征可以分別選擇其一來訓(xùn)練模型,出發(fā)年份year全部為2019年,沒有實(shí)際價值。9.1.2數(shù)據(jù)探索與理解(a)HourlyDryBulbTemperature_x圖(a)是對溫度HourlyDryBulbTemperature_x的分位數(shù)和描述性統(tǒng)計(jì),分位數(shù)統(tǒng)計(jì)中最大值為125、最小值為0,中位數(shù)為71,Q1值為35,Q3為值81,從分位數(shù)統(tǒng)計(jì)中可以看出特征值分布較均勻,也沒有異常值,從描述性統(tǒng)計(jì)中可以看出,特征HourlyDryBulbTemperature_x的標(biāo)準(zhǔn)差為17.332,變異系數(shù)為0.25472,中值為68.041,絕對中位差為13.09,偏度為負(fù)偏-0.6126,方差為300.28,特征HourlyDryBulbTemperature_x中有2088個缺失數(shù)據(jù),可以采用均值或中位數(shù)對其填充。(b)HourlyPrecipitation_x從圖(b)中可以看出降水量HourlyPrecipitation_x特征的數(shù)值中,90%以上為0,數(shù)據(jù)的分布區(qū)間較小,為0~3.86,對缺失數(shù)據(jù)的處理使用0填充,HourlyPrecipitation_y特征的分布與圖(b)中的描述類似。9.1.2數(shù)據(jù)探索與理解(c)delay_late_aircarft_arrival從圖(c)可以看出,前序航班到達(dá)延誤delay_late_aircarft_arrival中90%的數(shù)據(jù)為0,即前序航班沒有延誤,95%的數(shù)據(jù)都在0~33之間,較大的值可定義為異常數(shù)據(jù)。天氣延誤delay_weather、安全延誤delay_security、航空系統(tǒng)延誤delay_national_aviation_system特征的分布情況與前序航班到達(dá)延誤的分布情況類似。能見度HourlyVisibility_x和HourlyVisibility_y特征的中位數(shù)為10,接近10%的數(shù)據(jù)為10,兩個特征的值中大于10的數(shù)據(jù)占比很低,可能為異常值,需要刪除或替換。(d)departure_delay從圖(d)起飛延誤departure_delay特征的信息可以看出,該特征中沒有缺失值,且與arrival_delay到達(dá)延誤的相關(guān)性很高,兩個特征用于標(biāo)識航班延誤,在后期的分析中可統(tǒng)計(jì)不同航空公司不同時間段的延誤情況,從而對航班延誤有更深入的了解。9.1.2數(shù)據(jù)探索與理解

print("到達(dá)延誤占比:{0:.2f}".format((df.arrival_delay>0).sum()/df.shape[0]))

print("到達(dá)延誤15分鐘以上占比:{0:.2f}".format((df.arrival_delay>15).sum()/df.shape[0]))

print("到達(dá)延誤30分鐘以上占比:{0:.2f}".format((df.arrival_delay>30).sum()/df.shape[0]))

print("到達(dá)延誤60分鐘以上占比:{0:.2f}".format((df.arrival_delay>60).sum()/df.shape[0]))

print("起飛延誤占比:{0:.2f}".format((df.departure_delay>0).sum()/df.shape[0]))

print("起飛和到達(dá)延誤占比:{0:.2f}".format(((df.arrival_delay>0)&(df.departure_delay\>0)).sum()/df.shape[0]))運(yùn)行結(jié)果如下:圖9.6不同延誤時間占比9.1.2數(shù)據(jù)探索與理解

print(df.cancelled_code.value_counts())

print((df.cancelled_code!="N").sum()/df.shape[0])運(yùn)行結(jié)果如下:圖9.6取消航班分類統(tǒng)計(jì)按照cancelled_code特征統(tǒng)計(jì)取消航班的數(shù)量,取消航班的統(tǒng)計(jì)情況如下:9.1.3數(shù)據(jù)預(yù)處理

importpandasaspd

importnumpyasnp

fromExploratoryAnalysisimportgetdata

defdatapreprocessing():

df=getdata()

#篩選出模型訓(xùn)練需要的特征

columns=['month','day','scheduled_elapsed_time','delay_carrier','delay_weather’,\,'delay_national_aviation_system','delay_security’\,'delay_late_aircarft_arrival’,\'HourlyDryBulbTemperature_x','HourlyPrecipitation_x’,\'HourlyStationPressure_x','HourlyVisibility_x’,\'HourlyWindSpeed_x','HourlyPrecipitation_y’,\'HourlyDryBulbTemperature_y','HourlyStationPressure_y’,\'HourlyVisibility_y','HourlyWindSpeed_y','departure_delay’,\'cancelled_code’]

df=df[columns]定義DataPreprocessing.py文件,在其中定義數(shù)據(jù)預(yù)處理方法datapreprocessing()。利用前述數(shù)據(jù)探索和理解中的ExploratoryAnalysis.py文件中的方法getdata(),獲取數(shù)據(jù)集并存儲在df中,從df中篩選能夠影響航班起飛的特征,如機(jī)場執(zhí)勤的延誤情況,出發(fā)機(jī)場和到達(dá)機(jī)場的天氣情況后,形成樣本集。代碼如下:9.1.3數(shù)據(jù)預(yù)處理對數(shù)據(jù)集中特征的空值和異常值進(jìn)行處理,其中對取消的航班,將延誤時間設(shè)置為所有延誤時間的最大值,將提前起飛的航班按照無延誤處理,即延誤時間歸0,對存在異常值的特征,按照數(shù)據(jù)探索和理解中的分析得出的方法進(jìn)行替換。各個特征的特征值取值范圍大不相同,如風(fēng)速從0~20不等,溫度在20~31之間,對數(shù)據(jù)集中的特征進(jìn)行0-1標(biāo)準(zhǔn)化,標(biāo)準(zhǔn)化后可消除不同特征取值對模型的影響。代碼未列出。

#cancelled_code和departure_delay特征中無空值#首先將cancelled_code特征中非N的departure_delay替換為departure_delay的最大值df.loc[df.cancelled_code!='N','departure_delay']=df['departure_delay'].max()#departure_delay中的負(fù)數(shù)為提前起飛,將其替換為0df.loc[df.departure_delay<0,'departure_delay']=0#HourlyDryBulbTemperature,值在0~125之間,服從正太分布,使用均值填充df['HourlyDryBulbTemperature_x'].fillna(df['HourlyDryBulbTemperature_x'].mean(),inplace=True)df['HourlyDryBulbTemperature_y'].fillna(df['HourlyDryBulbTemperature_y'].mean(),inplace=True)#HourlyStationPressure,值在21-31之間,使用均值填充df['HourlyStationPressure_x'].fillna(df['HourlyStationPressure_x'].mean(),inplace=True)df['HourlyStationPressure_y'].fillna(df['HourlyStationPressure_y'].mean(),inplace=True)#HourlyWindSpeed使用均值填充df['HourlyWindSpeed_x'].fillna(df['HourlyWindSpeed_x'].mean(),inplace=True)df['HourlyWindSpeed_y'].fillna(df['HourlyWindSpeed_y'].mean(),inplace=True)#HourlyPrecipitation90%為0,區(qū)間0-3.86,用眾數(shù)填充缺失值,95%位置的數(shù)據(jù)為0.02df['HourlyPrecipitation_x'].fillna(df['HourlyVisibility_x'].mode()[0],inplace=True)df['HourlyPrecipitation_y'].fillna(df['HourlyVisibility_y'].mode()[0],inplace=True)9.1.4分類模型構(gòu)建與評估定義DrawGragh.py文件,在其中定義drawGragh()方法,用于繪制混淆矩陣和ROC_AUC曲線,使用圖形顯示模型的評估結(jié)果。模型的評估分為兩部分,分別是ROC_AUC曲線,計(jì)算準(zhǔn)確率、精度、召回率和F1度量。

fromsklearnimportmetricsimportmatplotlib.pyplotaspltdefdrawGragh(y_test,y_pred,y_pred_proba,modelname):#獲得混淆矩陣cm=metrics.confusion_matrix(y_test,y_pred)plt.figure(figsize=(60,8))plt.subplot(1,2,1)plt.matshow(cm,fignum=0)plt.colorbar()foriinrange(len(cm)):forjinrange(len(cm)):plt.annotate(cm[i,j],xy=(i,j),fontsize=10,color='w',horizontalalignment='center',\verticalalignment='center')plt.xlabel('Trueclass',fontsize=10)plt.ylabel('Predictedclass',fontsize=10)plt.subplot(1,2,2)fpr,tpr,thresholds=metrics.roc_curve(y_test,y_pred_proba)auc=metrics.auc(fpr,tpr)plt.plot(fpr,tpr,linewidth=1,label='ROC(AUC={:.2f}%)'.format(auc*100),color='red')plt.plot([0,1],[0,1],color='black',linestyle='--')plt.xlabel('FPR',fontsize=10)plt.ylabel('TPR',fontsize=10)plt.xlim(-0.05,1.05)plt.ylim(-0.05,1.05)plt.title(modelname)plt.legend(loc=4,fontsize=10)plt.show()9.1.4分類模型構(gòu)建與評估定義邏輯回歸模型LRModel.py文件,加載數(shù)據(jù)預(yù)處理方法datapreprocessing()獲取訓(xùn)練集,在“'__main__'”函數(shù)中將departure_delay大于15的樣本的“l(fā)abel”標(biāo)記為1,其他樣本的“l(fā)abel”標(biāo)記為0,樣本標(biāo)簽的統(tǒng)計(jì)結(jié)果如圖9.9所示,從圖中可以看出,數(shù)據(jù)集中延誤航班的樣本有1074844行。

fromDataPreprocessingimportdatapreprocessingfromsklearnimportmetricsfromsklearn.linear_modelimportLogisticRegressionfromsklearn.model_selectionimporttrain_test_splitfromDrawGraphimportdrawGraghfromsklearn.model_selectionimportGridSearchCVdefLRModel(data,target):x_train,x_test,y_train,y_test=train_test_split(data,target,test_size=0.3,random_state=10)lr=LogisticRegression(penalty='l1',C=1.0)lr.fit(x_train,y_train)y_pred=lr.predict(x_test)y_pred_proba=lr.predict_proba(x_test)[:,1]print('LogisticRegression的準(zhǔn)確率:{0:.3f}'.format(metrics.accuracy_score(y_test,y_pred)))print('LogisticRegression的精度:{0:.3f}'.format(metrics.precision_score(y_test,y_pred)))print('LogisticRegression的召回率:{0:.3f}'.format(metrics.recall_score(y_test,y_pred)))print('LogisticRegression的F1度量:{0:.3f}'.format(metrics.f1_score(y_test,y_pred)))drawGragh(y_test,y_pred,y_pred_proba,'LRROCCurve')if__name__=='__main__':datasets=datapreprocessing()datasets['label']=0datasets.loc[datasets.departure_delay>15,'label']=1data=datasets.iloc[:,2:-3]target=datasets['label']print(target.value_counts())print(data.columns)LRModel(data,target)9.1.4分類模型構(gòu)建與評估圖9.12決策樹模型ROC曲線

圖9.13決策樹模型評估值圖9.14神經(jīng)網(wǎng)絡(luò)模型ROC曲線

圖9.15神經(jīng)網(wǎng)絡(luò)模型評估值9.1.5模型的作用

通過對航班延誤數(shù)據(jù)集的探索和理解,分析得出出發(fā)機(jī)場和到達(dá)機(jī)場的天氣因素是影響航班延誤的最主要因素,理解數(shù)據(jù)的同時,對數(shù)據(jù)集中的異常和噪聲數(shù)據(jù)進(jìn)行清洗處理。使用邏輯回歸、CART決策樹和MLP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練航班延誤預(yù)測模型,相比其他模型,在不調(diào)節(jié)參數(shù)的情況下,邏輯回歸模型能夠更好地預(yù)測航班的延誤。

通過進(jìn)一步優(yōu)化模型,可以得到更具應(yīng)用價值的航班延誤預(yù)測模型,這無疑有助于盡早預(yù)測航班的延誤情況,加之潛在的未知模型和更加精準(zhǔn)的數(shù)據(jù)理解結(jié)合后探索新的預(yù)測算法,期待航班延誤預(yù)測有更大的突破,在真實(shí)的場景中為航班的延誤發(fā)揮更加有效的作用,提升機(jī)場、航空公司的決策水平和機(jī)票代理服務(wù)平臺的服務(wù)水平。零售行業(yè)購物籃分析9.2購物籃分析是零售企業(yè)的管理者進(jìn)行決策分析的有效工具。購物籃分析的主要目的是通過對交易數(shù)據(jù)進(jìn)行挖掘,找出隱藏的信息從而發(fā)現(xiàn)商品之間的一些有價值的聯(lián)系,為企業(yè)的促銷、擺架、物流運(yùn)輸?shù)冉?jīng)營策略提供技術(shù)支持。隨著大型數(shù)據(jù)庫的建立和不斷擴(kuò)充,很多分析人員已經(jīng)可以從數(shù)據(jù)庫中挖掘潛在的關(guān)聯(lián)規(guī)則,從而發(fā)現(xiàn)事物間的相互關(guān)系,進(jìn)而幫助商家進(jìn)行決策、設(shè)計(jì)和分析顧客的購買習(xí)慣。9.2.1應(yīng)用背景與目標(biāo)隨著市場規(guī)模的擴(kuò)大和交易數(shù)量的增多,越來越多的商家意識到購物籃分析的價值。比如,購物籃分析在超市的應(yīng)用已經(jīng)比較成熟,其技術(shù)在超市可有以下應(yīng)用:商品布局設(shè)計(jì)促銷活動規(guī)劃交叉銷售精準(zhǔn)營銷庫存管理9.2.1應(yīng)用背景與目標(biāo)基于以上背景,本案例在Groceries數(shù)據(jù)集上進(jìn)行關(guān)聯(lián)分析,Groceries數(shù)據(jù)集來自R語言開發(fā)環(huán)境中的arules程序包,數(shù)據(jù)集包含某雜貨店一個月的9835條交易數(shù)據(jù),用于使用Apriori、FP_Growth等算法進(jìn)行頻繁項(xiàng)集的挖掘和關(guān)聯(lián)分析。。通過分析某雜貨店一個月的9835條真實(shí)交易記錄,完成關(guān)聯(lián)規(guī)則挖掘,并對挖掘到的關(guān)聯(lián)規(guī)則進(jìn)行解釋和分析,為雜貨店的經(jīng)營提供建議,達(dá)到購物籃分析的目的。案例包含數(shù)據(jù)探索與理解、數(shù)據(jù)預(yù)處理、關(guān)聯(lián)規(guī)則挖掘與評估和規(guī)則解釋四部分。其中,關(guān)聯(lián)規(guī)則挖掘與評估部分使用Apriori算法篩選頻繁項(xiàng)集并產(chǎn)生關(guān)聯(lián)規(guī)則,然后結(jié)合相關(guān)評估指標(biāo)對所挖掘的關(guān)聯(lián)規(guī)則進(jìn)行評估。9.2.2數(shù)據(jù)探索與數(shù)據(jù)理解原始數(shù)據(jù)集以事務(wù)集的形式保存,共9835條記錄,包含事務(wù)索引和商品類目兩個變量。其中商品類目變量為一個集合,包含該次交易涉及到的不同商品類別,商品類別之間使用逗號隔開。初步統(tǒng)計(jì)分析可知:數(shù)據(jù)集共包含9835條購買記錄,涉及169件商品,所有商品共計(jì)交易43367次,購買商品最多的交易購買了32件商品,該類交易共發(fā)生1次;購買商品最少為1件,該類交易共發(fā)生2159次,平均每次交易涉及4.4件商品。此處按雜貨店每天營業(yè)12小時計(jì)算,數(shù)據(jù)集記錄的雜貨店當(dāng)月每小時完成27.3次交易,可見雜貨鋪規(guī)模不是很大。數(shù)據(jù)準(zhǔn)備9.2.2數(shù)據(jù)探索與數(shù)據(jù)理解在進(jìn)行關(guān)聯(lián)規(guī)則挖掘時,數(shù)據(jù)量的大小和每條交易記錄中商品量的多少對關(guān)聯(lián)規(guī)則挖掘過程影響較大,有必要對商品類目和交易事務(wù)包含的商品量進(jìn)行簡單的統(tǒng)計(jì)分析。為后續(xù)設(shè)置合理的支持度計(jì)數(shù)和置信度提供支持,描述統(tǒng)計(jì)部分可進(jìn)行(但不限于)以下工作:商品種類描述統(tǒng)計(jì)了解每個事務(wù)中包含的所有商品的類別,以及各商品在事務(wù)中的分布情況。單次交易商品數(shù)量描述統(tǒng)計(jì)了解單次交易中商品數(shù)量分布。描述統(tǒng)計(jì)9.2.3數(shù)據(jù)預(yù)處理原始數(shù)據(jù)集較為規(guī)整,此處數(shù)據(jù)預(yù)處理過程的工作主要集中在數(shù)據(jù)集的清洗和轉(zhuǎn)換等。Groceries數(shù)據(jù)集不包含數(shù)值型數(shù)據(jù)。數(shù)據(jù)清洗的主要工作為確認(rèn)每次交易中所包含的商品類別是否有重復(fù)、是否有錯誤的名稱以及是否有空事務(wù)等,并對存在的問題進(jìn)行恰當(dāng)?shù)奶幚怼?shù)據(jù)轉(zhuǎn)換工作主要包括關(guān)聯(lián)規(guī)則挖掘過程中的數(shù)據(jù)格式的轉(zhuǎn)換,統(tǒng)計(jì)計(jì)算過程和數(shù)據(jù)可視化過程的數(shù)據(jù)的準(zhǔn)備等。得益于Groceries數(shù)據(jù)集干凈規(guī)整,本案例這部分工作內(nèi)容較少。9.2.3數(shù)據(jù)預(yù)處理特別地,本案例的雜貨店數(shù)據(jù)集中商品的類別較多,實(shí)際應(yīng)用中還可以對商品進(jìn)行概念分層,然后對數(shù)據(jù)進(jìn)行數(shù)據(jù)泛化,即把較低層次的概念用較高層次的概念替換來匯總數(shù)據(jù)。例如,數(shù)據(jù)集中的蔬菜類別包含“othervegetables”“rootvegetables”“frozenvegetables”“pickledvegetables”“pickledvegetables”“packagedfruit/vegetables”“specialtyvegetables”,通過數(shù)據(jù)泛化可以把這7種商品統(tǒng)一歸為蔬菜類,以商品大類代替具體商品,可以減少商品類別,提高事務(wù)集中商品的支持度計(jì)數(shù),為挖掘出更好的規(guī)則提供有利條件。此處將這部分內(nèi)容留給讀者自主探索。9.2.4關(guān)聯(lián)規(guī)則挖掘與評估此處選用Apriori算法進(jìn)行關(guān)聯(lián)規(guī)則挖掘,包含頻繁項(xiàng)集的生成和分析、規(guī)則的生成和分析兩部分。關(guān)聯(lián)規(guī)則挖掘和分析過程中,使用了支持度、置信度和提升度對規(guī)則進(jìn)行評估;使用了氣泡圖和散點(diǎn)圖對規(guī)則進(jìn)行可視化展示;最后對規(guī)則進(jìn)行了解釋。9.2.4關(guān)聯(lián)規(guī)則挖掘與評估數(shù)據(jù)集中包含的9835個事務(wù)為一個雜貨店1個月的所有交易記錄。基于Apriori算法,頻繁項(xiàng)集的生成過程如下:需要指出的是,最小支持度閾值的確定需要經(jīng)過評估和反復(fù)計(jì)算,這對頻繁項(xiàng)集的關(guān)聯(lián)規(guī)則的生成影響較大,甚至后續(xù)規(guī)則生成部分還會對最小支持度閾值的設(shè)定進(jìn)行再次討論和重新調(diào)整。頻繁項(xiàng)集的生成和分析生成候選1-項(xiàng)集確定最小支持度閾值篩選出頻繁1-項(xiàng)集生成候選2-項(xiàng)集篩選出頻繁2-項(xiàng)集生成候選N-項(xiàng)集篩選出頻繁N-項(xiàng)集結(jié)束9.2.4關(guān)聯(lián)規(guī)則挖掘與評估關(guān)聯(lián)規(guī)則的挖掘過程和結(jié)果也會受到支持度閾值和置信度閾值的影響。如果設(shè)置一個比較高的支持度閾值,可能會丟掉那些支持度低,但置信度較高的規(guī)則;相反,則會出現(xiàn)較多冗余的、無意義的規(guī)則。因此,一般實(shí)驗(yàn)策略是:先設(shè)置較低的支持度和置信度閾值,然后逐步提高,根據(jù)獲得的規(guī)則數(shù)量,再通過提升度的值進(jìn)行有效性驗(yàn)證,過濾出有意義的規(guī)則。其中提升度表示購買一個商品的同時,對購買另一個商品的提升程度。提升度值越大,表示商品之間的互相影響程度越強(qiáng)。規(guī)則的生成和分析9.2.4關(guān)聯(lián)規(guī)則挖掘與評估基于以上論述,此處需要進(jìn)行多次實(shí)驗(yàn),以確定合適的支持度和置信度閾值。在設(shè)定能接受的最小支持度時,結(jié)合第一步對雜貨店運(yùn)營狀況和單個商品交易次數(shù)的分析,此處假設(shè):若某種商品一天被交易至少兩次,則可以認(rèn)為其交易較頻繁,發(fā)現(xiàn)的關(guān)聯(lián)規(guī)則或許是感興趣的模式。由于數(shù)據(jù)集的時間跨度為一個月,因此當(dāng)某商品至少被交易60次時便認(rèn)為它是頻繁被交易的商品。所以設(shè)定支持度閾值為0.006(60/9835≈0.006);同時,為過濾顧客隨機(jī)需求引起的偽關(guān)聯(lián),假定最小置信度為0.2,然后進(jìn)行頻繁項(xiàng)集的生成和關(guān)聯(lián)規(guī)則的挖掘,并逐漸調(diào)整參數(shù),直到找到所有的規(guī)則。規(guī)則的生成和分析9.2.4關(guān)聯(lián)規(guī)則挖掘與評估經(jīng)過多次試驗(yàn),選擇最小支持度為0.008、最小置信度為0.3進(jìn)行關(guān)聯(lián)規(guī)則挖掘和結(jié)果分析。在所選支持度閾值和置信度閾值的組合條件下,共得到205條符合條件的關(guān)聯(lián)規(guī)則。此處首先利用氣泡圖對所有205條關(guān)聯(lián)規(guī)則進(jìn)行展示,如右圖所示。圖中橫坐標(biāo)表示關(guān)聯(lián)規(guī)則的支持度,縱坐標(biāo)表示關(guān)聯(lián)規(guī)則的置信度,氣泡大小表示關(guān)聯(lián)規(guī)則的提升度。規(guī)則的生成和分析9.2.4關(guān)聯(lián)規(guī)則挖掘與評估進(jìn)一步對比置信度、支持度和提升度之間的關(guān)系,繪制散點(diǎn)圖矩陣,如右圖所示??梢娭С侄扰c置信度之間存在一定的相關(guān)關(guān)系,提升度與支持度和置信度之間亦有相關(guān)性,而且隨著支持度和置信度的增長,提升度數(shù)值在逐漸減小。規(guī)則的生成和分析9.2.4關(guān)聯(lián)規(guī)則挖掘與評估

規(guī)則的生成和分析9.2.5規(guī)則解釋

9.2.5規(guī)則解釋需要強(qiáng)調(diào)的是,在關(guān)聯(lián)規(guī)則挖掘中,較大的提升度值十分重要。當(dāng)lift值>1時,說明對應(yīng)的兩類商品被同時購買比只有一類商品被購買更為常見。較大提升度值表明一個規(guī)則很可能是有價值的,并反映了商品之間的真實(shí)聯(lián)系。按照規(guī)則的實(shí)用性、適用性等指標(biāo),通常將關(guān)聯(lián)規(guī)則劃分為3大類。(1)可以直接應(yīng)用在業(yè)務(wù)上的規(guī)則(ActionableRules)。(2)很清晰,但是作用不大的規(guī)則(TrivialRulse)。(3)需要額外的研究來判定是否是有用的規(guī)則(InexplicableRules)。本案例所挖掘的關(guān)聯(lián)規(guī)則大多屬于前兩類,更多更有效的關(guān)聯(lián)規(guī)則有待讀者改進(jìn)數(shù)據(jù)集中的商品類別后進(jìn)行挖掘研究。面向購物籃分析的關(guān)聯(lián)規(guī)則挖掘是交互式的。應(yīng)用實(shí)踐中需要結(jié)合業(yè)務(wù)運(yùn)營情況不斷對挖掘過程進(jìn)行檢查、優(yōu)化,才能不斷發(fā)現(xiàn)新的、有意義的關(guān)聯(lián)規(guī)則,進(jìn)而為商業(yè)運(yùn)營提供幫助。航空公司客戶價值分析9.3除航班延誤外,航空公司還經(jīng)常面臨著旅游客戶流失、競爭力下降和資源未充分利用等經(jīng)營危機(jī)和市場競爭。面對激烈的市場競爭,各個航空公司會推出更優(yōu)惠的營銷方案來吸引更多的客戶。為制定有效的營銷策略,在公司運(yùn)營中注重客戶關(guān)系管理,重視客戶價值,引入客戶價值分析機(jī)制是必要的。航空公司可以通過建立客戶價值評估模型,對客戶分群并分析不同客戶群的客戶價值,來制定相應(yīng)的營銷策略。9.3.1應(yīng)用背景與目標(biāo)案例以航空公司客戶價值分析為例,通過分析航空公司客戶數(shù)據(jù)信息,建立客戶分群模型對客戶進(jìn)行細(xì)分,然后對不同客戶群進(jìn)行客戶價值評估,并以此為依據(jù)制定相應(yīng)的個性化營銷方案,以達(dá)到鞏固客戶關(guān)系,提升企業(yè)競爭力,充分利用企業(yè)資源的目的。航空公司客戶價值分析的目標(biāo)如下。(1)基于客戶數(shù)據(jù)進(jìn)行客戶分群。(2)分析不同客戶群的客戶價值。(3)對不同客戶群制定對應(yīng)的營銷策略。案例使用k-means聚類算法進(jìn)行客戶分群。聚類算法屬于無監(jiān)督學(xué)習(xí)算法,k-means聚類算法是常用的聚類算法之一。k-means算法的輸入數(shù)據(jù)是沒有標(biāo)簽或目標(biāo)值的樣本,算法對輸入的數(shù)據(jù)樣本進(jìn)行相應(yīng)的距離計(jì)算,根據(jù)計(jì)算結(jié)果將樣本數(shù)據(jù)進(jìn)行分組,分組原則是誤差平方和達(dá)到最小。得到分組結(jié)果后對每個組設(shè)定相應(yīng)的類別標(biāo)簽,完成數(shù)據(jù)分群。9.3.1應(yīng)用背景與目標(biāo)本案例的具體步驟如下。(1)進(jìn)行數(shù)據(jù)抽取,以航空公司的客戶飛行記錄數(shù)據(jù)為數(shù)據(jù)源進(jìn)行數(shù)據(jù)整合,形成歷史數(shù)據(jù)集和增量數(shù)據(jù)集。(2)對歷史數(shù)據(jù)集和增量數(shù)據(jù)集進(jìn)行數(shù)據(jù)探索分析與預(yù)處理,了解數(shù)據(jù)集的基本信息,構(gòu)建聚類模型的輸入數(shù)據(jù)。(3)基于輸入數(shù)據(jù)構(gòu)建k-means模型,完成客戶分群,進(jìn)行模型固化。(4)基于客戶群的特征進(jìn)行客戶價值分析并制定相應(yīng)的營銷策略,并確定不同客戶群的營銷策略。(5)確定增量數(shù)據(jù)集的更新策略,定期將固化的聚類模型和客戶價值分析結(jié)論應(yīng)用于新客戶?;诖?,本案例討論的內(nèi)容包含數(shù)據(jù)探索與理解、數(shù)據(jù)預(yù)處理、聚類模型構(gòu)建與評估和模型解釋與應(yīng)用4部分。9.3.2數(shù)據(jù)探索與理解案例使用某航空公司積累的會員檔案信息和航班記錄數(shù)據(jù),數(shù)據(jù)包含62988條記錄,共44個屬性。數(shù)據(jù)集選取寬度為2年的時間段作為分析觀測窗口,以2014-03-31為觀測窗口的結(jié)束時間,抽取了觀測窗口內(nèi)有乘機(jī)記錄的會員的檔案信息和航班記錄數(shù)據(jù)進(jìn)行整合,得到歷史數(shù)據(jù)集。需要說明的是,對于新增的會員檔案信息和會員航班記錄數(shù)據(jù),航空公司需要以新的時間點(diǎn)作為觀測窗口的結(jié)束時間,采用與生成歷史數(shù)據(jù)集相同的方式進(jìn)行數(shù)據(jù)抽取和整合,形成增量數(shù)據(jù)集。簡單分析可知,歷史數(shù)據(jù)集不是原始記錄數(shù)據(jù)集的簡單抽取,而是經(jīng)過了數(shù)據(jù)的整合和匯總計(jì)算。歷史數(shù)據(jù)集中每一條記錄表示一個會員的會員檔案信息和觀測窗口內(nèi)的乘機(jī)行為信息。數(shù)據(jù)準(zhǔn)備9.3.2數(shù)據(jù)探索與理解歷史數(shù)據(jù)集中共62988條會員信息,對所有會員檔案信息和所有會員的航班記錄進(jìn)行探索分析,有助于后續(xù)的客戶分群和客戶價值分析。同時,數(shù)據(jù)集中共包含44個屬性,訓(xùn)練模型時使用全部44個屬性是沒有必要的。因此,有必要對數(shù)據(jù)集進(jìn)行探索分析。數(shù)據(jù)集中44個屬性按照屬性含義可分為記錄會員檔案信息的屬性和記錄觀測窗口內(nèi)會員乘機(jī)行為信息的屬性兩類,數(shù)據(jù)探索以此為依據(jù)進(jìn)行。即分別進(jìn)行會員檔案信息描述統(tǒng)計(jì)和會員航班信息描述統(tǒng)計(jì),了解航空公司會員特征畫像和價值分布。數(shù)據(jù)探索9.3.3數(shù)據(jù)預(yù)處理在進(jìn)行數(shù)據(jù)預(yù)處理之前,有必要確定模型的輸入數(shù)據(jù)。案例使用k-means算法完成客戶分群。案例目標(biāo)包括客戶分群、客戶價值分析和個性化營銷方案制定,以幫助航空公司充分挖掘客戶價值,提升企業(yè)資源的利用效率。此處考慮以RFM模型為基礎(chǔ)進(jìn)行特征構(gòu)建,以所構(gòu)建的結(jié)果特征產(chǎn)生k-means模型的輸入數(shù)據(jù)。RFM模型是客戶價值管理中應(yīng)用最廣泛的模型。該模型通過一個客戶的最近一次消費(fèi)間隔(Recency)、消費(fèi)頻率(Frequency)以及消費(fèi)金額(Monetary)3項(xiàng)指標(biāo)描述客戶的價值狀況,進(jìn)而進(jìn)行客戶細(xì)分,識別高價值客戶。9.3.3數(shù)據(jù)預(yù)處理結(jié)合歷史數(shù)據(jù)集各屬性含義和航空公司的運(yùn)營特點(diǎn),RFM模型中的最近一次消費(fèi)間隔指標(biāo)可以使用數(shù)據(jù)集中的LAST_TO_END屬性(記為R)直接表示,消費(fèi)頻率指標(biāo)可以使用數(shù)據(jù)集中的FIGHT_COUNT屬性(記為F)直接表示。消費(fèi)金額指標(biāo)則需要結(jié)合航空服務(wù)業(yè)務(wù)進(jìn)行分析。由于航空票價受到運(yùn)輸距離、航位等級、節(jié)假日等多種因素影響,會員客戶同樣消費(fèi)金額的飛行記錄對航空公司的價值不同,此處選擇會員在觀測窗口內(nèi)的累計(jì)飛行里程SEG_KM_SUM屬性(記為M)和會員在觀測窗口內(nèi)的折扣系數(shù)的平均值avg_discount屬性(記為C)代替消費(fèi)金額指標(biāo)。這樣,上述4個指標(biāo)分別從RFM模型的三個角度來反應(yīng)客戶價值。此外,會員客戶的入會時間長短在一定程度上也體現(xiàn)了會員的客戶價值,所以增加入會時長指標(biāo)(記為L)。至此,k-means聚類模型的輸入數(shù)據(jù)包含最近一次乘機(jī)時間間隔R、觀測窗口內(nèi)的乘機(jī)次數(shù)F、觀測窗口內(nèi)的飛行里程M、觀測窗口內(nèi)的平均折扣系數(shù)C和會員的入會時間長度L五個特征。9.3.3數(shù)據(jù)預(yù)處理案例使用的歷史數(shù)據(jù)集為合并計(jì)算之后的數(shù)據(jù)集,數(shù)據(jù)格式較為規(guī)范,數(shù)據(jù)預(yù)處理的主要工作包含屬性規(guī)約、特征構(gòu)造和數(shù)據(jù)變換。原始數(shù)據(jù)中的屬性多達(dá)44個,此處基于上文結(jié)論,保留與確定的5個指標(biāo)相關(guān)的6個屬性,分別為FFP_DATE、LOAD_TIME、FLIGHT_COUNT、avg_discount、SEG_KM_SUM、LAST_TO_END。此處保留會員號屬性MEMBER_NO,以對每個會員進(jìn)行區(qū)分。剩余的屬性與模型計(jì)算關(guān)系不大,采取刪除方式完成屬性歸約。需要注意的是,屬性歸約的目的是減少模型輸入,并盡可能使模型輸入符合具體業(yè)務(wù)以增加模型的可解釋性,因此刪除屬性是有意義和作用的。完成數(shù)據(jù)歸約后,數(shù)據(jù)集包含62988條記錄,7個屬性,每條數(shù)據(jù)表示一個會員的會員號和會員相關(guān)信息。屬性規(guī)約9.3.3數(shù)據(jù)預(yù)處理數(shù)據(jù)變換是將數(shù)據(jù)轉(zhuǎn)換成適當(dāng)?shù)母袷?,以適應(yīng)數(shù)據(jù)挖掘算法的需要。原始數(shù)據(jù)集中沒有直接給出全部五個指標(biāo)的值,需要通過原始數(shù)據(jù)來計(jì)算,以構(gòu)造需要的屬性。五個指標(biāo)的構(gòu)造方法如下:(1)最近一次乘機(jī)時間間隔R,計(jì)算方式為:R=LAST_TO_END其中,LAST_TO_END為數(shù)據(jù)集中的現(xiàn)有屬性,R的單位為天,R值越大表示會員最后一次乘機(jī)時間離當(dāng)前觀測窗口越遠(yuǎn)。(2)觀測窗口內(nèi)的乘機(jī)次數(shù)F,計(jì)算方式為:F=FLIGHT_COUNT其中,F(xiàn)LIGHT_COUNT為數(shù)據(jù)集中的現(xiàn)有屬性,F(xiàn)的單位為次,F(xiàn)值越大表示觀測窗口內(nèi)會員的乘機(jī)次數(shù)越多。屬性構(gòu)造9.3.3數(shù)據(jù)預(yù)處理(3)觀測窗口內(nèi)的累計(jì)飛行里程M,計(jì)算方式為:M=SEG_KM_SUM其中,SEG_KM_SUM為數(shù)據(jù)集中的現(xiàn)有屬性,M的單位為公里,M值越大表示會員累計(jì)飛行里程越長。(4)觀測窗口內(nèi)的平均折扣率C,計(jì)算方式為:C=avg_discount其中,avg_discount為數(shù)據(jù)集中的現(xiàn)有屬性,C表示折扣率,沒有實(shí)際單位,C值越大表示會員艙位對應(yīng)的折扣系數(shù)越大。(5)客戶關(guān)系長度L,計(jì)算方式為:L=LOAD_DATE-FFP_DATE其中,LOAD_DATE為觀測窗口的結(jié)束時間,F(xiàn)FT_DATE為會員入會時間,L的單位為天,L值越大表示會員入會時間越長,客戶關(guān)系長度越長。屬性構(gòu)造9.3.3數(shù)據(jù)預(yù)處理數(shù)據(jù)集中不同屬性的值域差異很大,為了防止具有較大值域的屬性與具有較小值域的屬性相比,權(quán)重過大現(xiàn)象的發(fā)生,使用z-score方法(或其他方法,此處可進(jìn)行更進(jìn)一步的分析探索)將5個屬性進(jìn)行數(shù)據(jù)標(biāo)準(zhǔn)化處理。標(biāo)準(zhǔn)化后的每個屬性均值為0,標(biāo)準(zhǔn)差為1,且成為無量綱指標(biāo)。至此,數(shù)據(jù)集已經(jīng)符合模型的基本要求,接下來可以進(jìn)入模型的構(gòu)建和評估階段建模和計(jì)算。屬性變換9.3.4聚類模型構(gòu)建與評估案例基于Python完成,使用sklearn包中的聚類模塊完成模型構(gòu)建。進(jìn)行k-means模型構(gòu)建時,需要首先確定簇的個數(shù)k(即最終劃分的客戶群數(shù)量),此處使用2個常用的聚類結(jié)果評估指標(biāo)“樣本與最近簇質(zhì)心的距離總和inertia”以及“輪廓系數(shù)silhouette”進(jìn)行結(jié)果評估,并結(jié)合客戶價值評估時對客戶群的基本要求,以確定最優(yōu)的簇個數(shù)。其中,inertia值反映聚類結(jié)果的精細(xì)程度,inertia值越小表示簇內(nèi)樣本相異性越小,聚類效果越好。但是,樣本與最近簇質(zhì)心的距離總和inertia值只考慮聚類結(jié)果中類簇內(nèi)部的樣本間的相異性(即簇內(nèi)距離),沒有考察聚類結(jié)果中類簇之間的相異性(即簇間距離),因此,手肘圖觀察inertia值隨類簇?cái)?shù)k的變化情況,同時考察類簇?cái)?shù)k變化時inertia值的變化幅度和變化趨勢。此處取不同的k值進(jìn)行多次實(shí)驗(yàn),手肘圖如下圖所示,其中inertia值為每次實(shí)驗(yàn)的值對應(yīng)的inertia值的均值。9.3.4聚類模型構(gòu)建與評估由圖可知,k∈[2,10]時,樣本與最近簇質(zhì)心的距離總和inertia隨k值增加而減少,其中k=4和k=6時都出現(xiàn)了較為明顯的inertia值下降趨勢的拐點(diǎn)(即手肘圖的“手肘”對應(yīng)的k值)。k=4時inertia值的變化更明顯,而顯然k=6時聚類結(jié)果的inertia值小,各類簇內(nèi)部樣本的距離更近。9.3.4聚類模型構(gòu)建與評估輪廓系數(shù)silhouette反映聚類結(jié)果中簇間距離的大小,silhouette值越趨近于1,表示簇間樣本相異性越大,聚類結(jié)果越好。根據(jù)不同k值的silhouette制作的折線圖也被稱為輪廓系數(shù)圖,反映聚類結(jié)果的silhouette值隨k值的變化情況。輪廓系數(shù)silhouette考察聚類結(jié)果中簇間距離,是本與最近簇質(zhì)心的距離總和inertia的補(bǔ)充,同時考慮兩個指標(biāo),即可得到最優(yōu)的聚類類簇?cái)?shù)目k。同時,由于最終制定的營銷策略對應(yīng)于不同價值的客戶群體,聚類模型計(jì)算出的客戶群不宜過多。此處同樣取不同的k值進(jìn)行多次實(shí)驗(yàn),輪廓系數(shù)圖如下圖所示,其中silhouette值為每次實(shí)驗(yàn)的k值對應(yīng)的silhouette值的均值。9.3.4聚類模型構(gòu)建與評估由圖可知,k∈[2,10]時輪廓系數(shù)silhouette取k=2時最優(yōu),而根據(jù)圖9.1.2的結(jié)果,k=2時inertia值最大,因此此處取除k=2之外輪廓系數(shù)silhouette最大值對應(yīng)的k值,即k=6。同時,考慮到k=4和k=6時輪廓系數(shù)差異較小,且手肘中k=4也是inertia值的拐點(diǎn)之一,因此此處分別對k=4和k=6進(jìn)行實(shí)驗(yàn),即通過k-means聚類算法分別將會員劃分為4個和6個客戶群,考察兩個k值的聚類結(jié)果并分別進(jìn)行客戶分群。9.3.4聚類模型構(gòu)建與評估需要說明的是,k-means聚類算法為非監(jiān)督學(xué)習(xí)算法,確定聚類的簇?cái)?shù)量后,在數(shù)據(jù)集中隨機(jī)選取k個樣本作為聚類的初始質(zhì)心并開始迭代計(jì)算。不同的初始質(zhì)心常常會得到不同的聚類結(jié)果,因此模型的每次運(yùn)行結(jié)果都會有差異。總體而言,本案例多次實(shí)驗(yàn)的差異處于可接受范圍內(nèi)。k分別取4和6,多次重復(fù)運(yùn)行k-means聚類算法。再次說明,由于聚類算法為無監(jiān)督學(xué)習(xí)算法,每次聚類后類簇均發(fā)生變化,實(shí)驗(yàn)過程中,按每次聚類結(jié)果質(zhì)心的距離進(jìn)行匹配,將實(shí)驗(yàn)結(jié)果中最接近的簇視為一類,多次實(shí)驗(yàn)后取質(zhì)心的均值,每個簇的質(zhì)心點(diǎn)的均值及其包含的會員數(shù)量均值如下表所示,結(jié)果保留四位小數(shù),會員數(shù)量展示為整數(shù)。然后分別分析將會員劃分為4類和6類時各客戶群的特征,然后確定最終的分群策略和對應(yīng)的營銷策略。9.3.4聚類模型構(gòu)建與評估9.3.4聚類模型構(gòu)建與評估9.3.5模型解釋與應(yīng)用將會員劃分為4個群體時,分別考察各群體五個特征值的均值,如右圖所示。圖中客戶群1、客戶群2、客戶群3和客戶群4分別對應(yīng)4個簇的信息表中的簇編號“1”“2”“3”和“4”。圖中每行表示一個客戶群,每列表示一個指標(biāo)的平均值,需要注意的是,圖中指標(biāo)的平均值是真實(shí)的指標(biāo)數(shù)據(jù)標(biāo)準(zhǔn)化之后的數(shù)值的平均值。9.3.5模型解釋與應(yīng)用將會員劃分為6個群體時,結(jié)果如右圖所示。圖中客戶群1、客戶群2、客戶群3、客戶群4、客戶群5和客戶群6分別對應(yīng)6個簇的信息表中的簇“1”、“2”、“3”、“4”、“5”和“6”。圖中每行表示一個客戶群,每列表示一個指標(biāo)的平均值,需要注意的是,圖

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論