版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
機器學(xué)習(xí)實戰(zhàn)案例
——貸款違約行為預(yù)測復(fù)旦大學(xué)趙衛(wèi)東
業(yè)務(wù)背景分析互聯(lián)網(wǎng)金融在為金融機構(gòu)和用戶提供諸多便利的同時,也存在著信用風險和欺詐問題。自2013年年底以來,我國商業(yè)銀行的貸款率一直偏高。由于我國商業(yè)銀行個人信貸的部分業(yè)務(wù)不需要提供擔保和抵押,因此個人信貸業(yè)務(wù)面臨較大的信用風險。個人信貸的信用風險,是網(wǎng)絡(luò)個人信貸機構(gòu)和出借人面臨的重要風險。個人信貸背景下的信用風險的危害性日益凸顯,違約事件背后產(chǎn)生的道德風險也比較普遍。這不僅給信貸機構(gòu)造成損失,同時也可能導(dǎo)致借貸市場運行效率低下。因此,金融機構(gòu)急需通過必要的手段來提高信用風險控制的水平。數(shù)據(jù)概況信貸機構(gòu)出借資金給貸款人前,會對貸款人的基本信息和以前的信用狀況進行收集,以評估貸款人是否有貸款資格以及貸款額度的上限值,因此信貸機構(gòu)會積累貸款人的大量基本信息。本案例中將某貸款機構(gòu)脫敏后的歷史業(yè)務(wù)數(shù)據(jù)作為原始數(shù)據(jù),在海量的個人信用歷史和信息行為的數(shù)據(jù)基礎(chǔ),采用機器學(xué)習(xí)技術(shù)得出信用模式,能更加準確地預(yù)測個人未來的信用表現(xiàn),能夠提高操作的效率,降低授信成本,精確估計消費信貸的風險,為金融機構(gòu)進行風險預(yù)測提供重要的工具。數(shù)據(jù)表樣例(基礎(chǔ)信息表)關(guān)鍵屬性名字段含義備注REPORT_ID報告編號用于關(guān)聯(lián)其他數(shù)據(jù)表ID_CARD身份證包含居民常住戶口所在地LOAN_DATE放款時間AGENT客戶渠道IS_LOCAL是否本地戶籍取值分為本地戶籍、非本地戶籍WORK_PROVINCE工作省份EDU_LEVEL教育水平MARRY_STATUS是否有公積金SALARY收入HAS_FUND是否有公積金二值屬性。取值為1代表有公積金,取值為0代表無。Y目標變量值只在訓(xùn)練集中存在,y=1代表逾期客戶,y=0代表未逾期客戶步驟數(shù)據(jù)準備與預(yù)處理將初始表進行預(yù)處理將預(yù)處理后的表合并將合并后的表再做預(yù)處理四種模型分別在訓(xùn)練集和測試集上進行擬合:帶正則項的Logistic回歸模型、隨機森林、樸素貝葉斯、SVM計算每種數(shù)據(jù)集在每種模型得到的AUC值數(shù)據(jù)準備與預(yù)處理先對12個表格做預(yù)處理,處理后合并表格,再對合并后的表格進行預(yù)處理,可以得到用于建立模型的最終數(shù)據(jù)。在預(yù)處理階段,主要進行了以下幾個內(nèi)容:變量屬性識別與標注空值處理異常值處理維歸約獨熱編碼標準化變量屬性識別與標注
變量屬性分為定性屬性和定量屬性,而定性屬性分為標稱屬性(例如性別)和序數(shù)屬性(例如學(xué)歷),定量屬性分為區(qū)間屬性(例如日期)和比率屬性(例如年齡、工資)。對不同變量屬性的處理方法都不相同。首先通過代碼對每個表的變量進行自動化的變量屬性識別,并結(jié)合人工進行標注,得到每個變量的屬性類型。如“gender”一項可按身份證號標記男女為1和0,“MARRY_STATUS”根據(jù)其不同的婚姻狀態(tài)可以標記為0~5。#根據(jù)身份證號獲取性別(男1,女0)train['gender']=list(map(lambdax:1ifint(str(x)[-2])%2==1else0,train['ID_CARD']))#用字典對特征類別進行標注is_local_repalce_dict={'本地籍':"0","非本地籍":"1"}train["IS_LOCAL"]=train["IS_LOCAL"].map(is_local_repalce_dict)train['MARRY_STATUS'].value_counts()marry_status_dict={"已婚":"0","未婚":"1","離異":"2","離婚":"2","其他":"4","喪偶":"5"}train["MARRY_STATUS"]=train["MARRY_STATUS"].map(marry_status_dict)變量名屬性類型取值REPORT_ID/數(shù)字,例如8787ID_CARD標稱屬性數(shù)字,例如320382**********13LOAN_DATE區(qū)間屬性日期,例如2017/2/15AGENT標稱屬性文字,例如“app”“wechat”等IS_LOCAL標稱屬性(二值)文字,例如“本地戶籍”“非本地戶籍”WORK_PROVINCE標稱屬性(多值)數(shù)字,例如320000、230000等EDU_LEVEL序數(shù)屬性文字,例如“高中”“??啤薄氨究啤钡萂ARRY_STATUS標稱屬性(多值)文字,例如“未婚”“已婚”“離異”等SALARY比率屬性數(shù)字,例如2、3、4、5等HAS_FUND標稱屬性(二值)數(shù)字,例如0、1Y標稱屬性(二值)數(shù)字,例如0、1空值處理
對空值的統(tǒng)計如下表所示,可以發(fā)現(xiàn)空值較多的變量為WORK_PROVINCE、EDU_LEVEL、AGENT和SALARY。首先評判該屬性是否重要、其影響是否顯著。若該變量重要,則處理的方法有:使用其他信息的相關(guān)內(nèi)容進行填補(如身份證號前6位可代表出生地區(qū)),使用樣本均值或建立模型。若該變量不重要,則可直接使用.drop()方法將變量剔除。變量名空值數(shù)REPORT_ID0ID_CARD0LOAN_DATE0AGENT21048IS_LOCAL0WORK_PROVINCE2258EDU_LEVEL3058MARRY_STATUS0SALARY21136HAS_FUND0Y0#對于重要變量:地區(qū),選擇填補#地區(qū)歸并到省,取地區(qū)編碼前兩位,缺失值用身份證前兩位替代(出生地)province=list(map(lambdax,y:y[:2]ifnp.isnan(x)elsestr(x)[:2],train['WORK_PROVINCE'],train['ID_CARD']))train['WORK_PROVINCE']=province#對非重要變量AGENT,使用drop()方法剔除train_part=pd.get_dummies(train.loc[:,["AGENT","IS_LOCAL","WORK_PROVINCE","MARRY_STATUS"]],drop_first=True)train[train_part.columns]=train_partif'AGENT'intrain.columns:train.drop(['AGENT','IS_LOCAL','WORK_PROVINCE','MARRY_STATUS'],axis=1,inplace=True)異常值檢測
異常值處理主要針對連續(xù)變量,防止出現(xiàn)某些遠超分布范圍的值對整個分布造成影響。本案例只有一個連續(xù)變量(SALARY),變量屬性類型為比率屬性。選擇winsorize變換處理異常值,其思想是通過上下分位數(shù)對特征的分布進行約束,選擇99%和1%分位數(shù)作為閾值,當值超過99%分位數(shù)時,用99%分位數(shù)的值進行替換;當值低于1%分位數(shù)時,用1%分位數(shù)的值進行替換。代碼部分:#可能出現(xiàn)異常值的變量:###SALARYprint(train['SALARY'].describe())輸出值:維歸約
維歸約就是指數(shù)據(jù)特征維度數(shù)目減少或者壓縮,摒棄掉不重要的維度特征,盡量只用少數(shù)的關(guān)鍵特征來描述數(shù)據(jù)。人們總是希望看到的現(xiàn)象主要是由少數(shù)的關(guān)鍵特征造成的,找到這些關(guān)鍵特征也是數(shù)據(jù)分析的目的。如果數(shù)據(jù)經(jīng)過歸約處理得當,不影響數(shù)據(jù)重新構(gòu)造而不丟失任何信息,則該數(shù)據(jù)歸約是無損的。對變量WORK_PROVINCE進行空值處理后,發(fā)現(xiàn)該變量的值比較多,這將導(dǎo)致對該變量獨熱編碼時,產(chǎn)生大量的二元特征,且非常稀疏,因此將其進行維規(guī)約,將城市變量規(guī)約到省份變量中,最終得到近30個代表省份的虛擬變量。#對WORK_PROVINCE進行維規(guī)約處理if'AGENT'intrain.columns:train.drop(['AGENT','IS_LOCAL','WORK_PROVINCE','MARRY_STATUS'],axis=1,inplace=True)#注意其中省份為兩位數(shù)編碼,但是原數(shù)據(jù)讀進去的是浮點型,需要先轉(zhuǎn)成字符串train_part=pd.get_dummies(train.loc[:,["AGENT","IS_LOCAL","WORK_PROVINCE","MARRY_STATUS"]],drop_first=True)train[train_part.columns]=train_part獨熱編碼
獨熱編碼又稱為一位有效編碼,采用N為狀態(tài)寄存器對N個狀態(tài)進行編碼,每個狀態(tài)都有它的獨立寄存器位,并且在任意時候只對一位有效。例如“性別”這一屬性可選值為[”男”、“女],可以定義值為[01,10]。針對標稱變量IS_LOCAL、WORK_PROVINCE、MARRY_STATUS,進行獨熱編碼,生成該變量每一個類別對應(yīng)的虛擬變量,同時需要注意虛擬變量陷阱,剔除作為對照組的虛擬變量,以防止多重共線性。#2.給變量獨熱編碼(onehotencoding),產(chǎn)生dummy#注意其中省份為兩位數(shù)編碼,但是原數(shù)據(jù)讀進去的是浮點型,需要先轉(zhuǎn)成字符串train_part=pd.get_dummies(train.loc[:,["AGENT","IS_LOCAL","WORK_PROVINCE","MARRY_STATUS"]],drop_first=True)train[train_part.columns]=train_part標準化
數(shù)據(jù)的標準化是將數(shù)據(jù)按比例縮放,使之落入一個小的特定區(qū)間。在某些比較和評價的指標處理中經(jīng)常會用到,去除數(shù)據(jù)的單位限制,將其轉(zhuǎn)化為無量綱的純數(shù)值,便于不同單位或量級的指標能夠進行比較和加權(quán)。目前數(shù)據(jù)標準化方法有多種,歸結(jié)起來可以分為直線型方法(如極值法、標準差法)、折線型方法(如三折線法)、曲線型方法(如半正態(tài)性分布)。不同的標準化方法,對系統(tǒng)的評價結(jié)果會產(chǎn)生不同的影響。針對比率屬性變量SALARY、區(qū)間屬性變量LOAN_DATE、序數(shù)屬性變量EDU_LEVEL,為了防止計算距離時量綱不統(tǒng)一帶來的問題,對其進行標準化,即用該變量值減去均值后除以標準差。#連續(xù)指標標準化##需要標準化的變量:SALARY、LOAN_TIME、EDU_LEVELdefscalar(series):theMean=series.mean()theStd=series.std()returnseries.map(lambdax:(x-theMean)/theStd)train['SALARY']=scalar(train['SALARY'])train['LOAN_TIME']=scalar(train['LOAN_TIME'])train['EDU_LEVEL']=scalar(train['EDU_LEVEL'])df_train=train.copy()多表合并每張表預(yù)處理完畢后,通過report_id屬性將table_1至table_11合并成一張表train_all.csv。
importpandasaspdimportnumpyasnpdf_table_1_train=pd.read_csv('...\table_1_train.csv',index_col=0)df_table_2=pd.read_csv('...\table_2.csv',index_col=0)...df_table_11=pd.read_csv('...\table_11.csv',index_col=0)df_all=pd.merge(df_table_1_train,df_table_2,how='left',left_index=True,right_index=True)df_all=pd.merge(df_all,df_table_3,how='left',left_index=True,right_index=True)...df_all=pd.merge(df_all,df_table_11,how='left',left_index=True,right_index=True)df_all.shapedf_all.to_csv('...\train_all.csv')對合并后的表進行最終處理合并完畢后,pre_train.py將對合并的數(shù)據(jù)進行最終的預(yù)處理,包括去除空值、去除非重要信息。df_table_all=pd.read_csv("..\data_handled\test_all.csv",index_col=0)df_table_all=df_table_all.drop(['LOAN_DATE'],axis=1)df_table_all=df_table_all.dropna(axis=1,how='all')columns=df_table_all.columnsimr=Imputer(missing_values='NaN',strategy='mean',axis=0)df_table_all=pd.DataFrame(imr.fit_transform(df_table_all.values))df_table_all.columns=columnsdf_table_all.to_csv("..\data_handled\testafter.csv") 模型選擇與運行步驟為了選擇較優(yōu)的模型,下面使用多種能對貸款違約行為進行預(yù)測的分類算法進行比較。本案例中,分別使用了以下幾個模型:帶正則項的Logistic回歸模型樸素貝葉斯模型隨機森林模型SVM模型實現(xiàn)步驟如下:將數(shù)據(jù)拆分成訓(xùn)練集和測試集分別使用Python中Sklearn庫的四種模型進行評估,得到每種模型的ROC曲線計算每種模型的AUC值帶正項的Logistic模型Logistic回歸模型在兩分類問題中具有非常廣泛的應(yīng)用,它能將待分類樣本的類別分成兩類,是該模型的核心是通過Sigmoid函數(shù)將因變量的值轉(zhuǎn)換成概率。但該模型在分類的精準度上有一定欠缺,容易產(chǎn)生過擬合的現(xiàn)象。同時,Logistic回歸模型通常用來處理兩分類問題,不能很好地處理多分類的情況。而對貸款違約行為進行預(yù)測正是貸款是否逾期的兩分類問題,比較適合Logistic回歸模型處理。實驗發(fā)現(xiàn)Logistic回歸模型作用在非平衡數(shù)據(jù)上效果較差,AUC值要低于使用SMOTE+TOMEK處理后數(shù)據(jù)的AUC結(jié)果,因此需要選擇經(jīng)過平衡處理后再經(jīng)過特征選擇的訓(xùn)練集和測試集進行測試。使用帶正項的Logistic模型進行訓(xùn)練:model1=LogisticRegression(penalty='l1',C=1.0)model1.fit(X_train_st_tiny,y_train_st)y_pred=model1.predict_proba(X_test_st_tiny)樸素貝葉斯模型樸素貝葉斯模型假設(shè)每個特征對分類變量的影響是獨立的,這使得分類的聯(lián)合條件概率很容易計算。其在信用評估方面得到了廣泛的應(yīng)用。因為在信用評估中,多數(shù)變量的屬性為標稱變量,并且原始數(shù)據(jù)存在較多的空值,而樸素貝葉斯主要對標稱數(shù)據(jù)進行分析,對空值又不太敏感,因此,選擇該分類器對貸款違約行為進行預(yù)測。使用樸素貝葉斯模型進行訓(xùn)練:model1=GaussianNB()model1.fit(X_train_st_tiny,y_train_st)y_pred=model1.predict_proba(X_test_st_tiny)隨機森林模型隨機森林近年來廣泛應(yīng)用的領(lǐng)域是信用評估,信用評估中樣本量較大,原始數(shù)據(jù)存在較多的空值,并且數(shù)據(jù)中離散變量占多數(shù)。隨機森林模型可以很好地處理這樣的數(shù)據(jù),因此可以選用隨機森林算法對貸款違約行為的數(shù)據(jù)進行擬合預(yù)測。隨機森林模型雖然對空值不敏感,但在部分樣本的特征屬性為空值的情況下,仍可以維持分類的準確度。隨機森林模型既能夠通過隨機抽取的方式,抽取不同的特征變量進行分類,又能夠處理大批量、多維度的復(fù)雜數(shù)據(jù),模型的泛化能力強,不易造成過擬合問題,而且具有較高的分類準確度。隨機森林要求每個決策樹差異盡可能的大,從而在最大程度上減少模型的方差。隨機森林模型超參數(shù),比較復(fù)雜,不僅需要每一棵決策樹的參數(shù),還需要整個集成模型的參數(shù),經(jīng)檢驗發(fā)現(xiàn),隨機森林在非平衡數(shù)據(jù)上依舊有著很好的效果。使用隨機森林模型進行訓(xùn)練:rf=RandomForestClassifier(n_estimators=100,n_jobs=-1,criterion='gini')rf.fit(X_train_tiny,y_train)支持向量機模型支持向量機也適用于有監(jiān)督的兩分類問題。研究表明,SVM在分類過程中可以利用少量的樣本獲得很好的分類效果,因此在貸款違約預(yù)測方面有很好的適用性。SVM的最終決策函數(shù)只由少數(shù)的支持向量所確定,計算的復(fù)雜性取決于支持向量的數(shù)目,而不是樣本空間的維數(shù),這在某種意義上避免了“維數(shù)災(zāi)難”。少數(shù)支持向量決定了最終結(jié)果,這不但可以抓住關(guān)鍵樣本、“剔除”大量冗余樣本,而且注定了該方法不但算法簡單,而且具有較好的“穩(wěn)健”性。經(jīng)典的SVM算法只給出了兩分類的算法,而本案例主要也是處理兩分類問題,因此該算法的特點和所要分析的數(shù)據(jù)的特點較為符合。使用SVM進行訓(xùn)練:model=SVC(C=0.1,kernel='linear',probability=True)model.fit(X_train_st_tiny,y_train_st)y_pred=model.predict_proba(X_test_st_tiny)結(jié)果分析
假正率是通過求解混淆矩陣得到的,在求解混淆矩陣時,首先通過“Dist”指標求解出每個模型的最優(yōu)閾值,因為設(shè)置不同的預(yù)測閾值會影響假正率的求解結(jié)果,因此表3.7所示的假正率是基于最優(yōu)閾值的截斷值計算所得。按照各個模型的假正率從小到大的順序為樸素貝葉斯(0.012)、Logistic(0.021)、隨機森林(0.023)、SVM(0.037)。根據(jù)AUC值,本案例選擇預(yù)測模型的優(yōu)先順序為Logistic(0.8511)、SVM(0.8439)、隨機森林(0.8096)、樸素貝葉斯(0.7984),而根據(jù)假正率,本案例選擇預(yù)測模型的優(yōu)先順序為樸素貝葉斯(0.012)、Logistic回歸模型(0.021)、隨機森林(0.023)、SVM(0.037),二者存在矛盾。查看相關(guān)文獻可知,假正率是基于較佳的截斷值計算的,而AUC是基于所有可能的截斷值計算的,所以AUC更加穩(wěn)健。怎么理解“穩(wěn)健”這個詞呢?可以理解為計算假正率時所基于的較佳截斷值并不是總體分布中的較佳截斷值,正確率只是某個隨機樣本的一個屬性指標。而AUC不是關(guān)注某個隨機樣本截斷值的表現(xiàn)如何,而是綜合所有截斷值預(yù)測性能,所以假正率低,或者說準確率高,AUC不一定大,反之亦然。因此應(yīng)該根據(jù)AUC較大的原則選擇模型作為較佳模型。Logistic回歸模型適用于特征維度適中、離散變量少的大容量樣本,在特征變量選取適當?shù)那闆r下,能夠?qū)煞诸悊栴}有較為準確的評分效果,但不能很好地處理多分類的情況。本案例對貸款違約的預(yù)測是兩分類問題(逾期或不逾期),并且樣本容量大,起重要作用的特征數(shù)目為15個左右,特征數(shù)目較少,因此Logistic回歸模型可以很好地處理該問題。但本案例的樣本包含一些離散變量,因此Logistic回歸模型對最終的貸款預(yù)測結(jié)果AUC值只達到0.8511。SVM算法有兩個不足:一是SVM算法對大規(guī)模訓(xùn)練樣本難以實施,由于SVM是借助二次規(guī)劃來求解支持向量的,而求解二次規(guī)劃涉及m階矩陣的計算(m為樣本的個數(shù)),當m數(shù)目很大時,該矩陣的存儲和計算將耗費大量的機器內(nèi)存和運算時間;二是用SVM解決多分類問題存在困難,經(jīng)典的支持向量機局限于兩分類的問題。本案例對貸款違約的預(yù)測是兩分類問題(逾期或不逾期),這符合SVM算法的要求,但本案例提供的樣本容量大,存儲和計算耗費大量的機器內(nèi)存和運算時間。如果考慮運行效率問題,由于Logistic回歸模型、隨機森林算法、樸素貝葉斯均無法進行增量擬合,因此每當加入新樣本,需要重新擬合數(shù)據(jù),運行一次的效率格外重要。而SVM運行的速度低于其他模型,且SVM的AUC值達到0.8439,與Logistic回歸模型的AUC值0.8511比較接近,因此考慮運行效率問題,優(yōu)選Logistic。隨機森林算法通常適用于離散變量、連續(xù)變量混合的樣本,對于特征變量維度較高的樣本集具有良好的分類效果,對于數(shù)據(jù)特征屬性變量少、噪聲比例大的樣本,隨機森林算法易出現(xiàn)過擬合的情況,且對樣本容量和特征數(shù)目的要求較高。本案例分析的是離散變量、連續(xù)變量混合的大容量樣本,這比較符合隨機森林算法的要求,而且隨機森林算法已經(jīng)可以較好地解決多分類問題。但是本案例起重要作用的特征數(shù)目為15個左右,特征數(shù)目較少,這將導(dǎo)致隨機森林算法出現(xiàn)過擬合的情況,影響最終的預(yù)測結(jié)果。若提供更多的客戶分類級別,例如不違約、逾期和違約等,那么這里的貸款違約問題就變成了一個多分類問題,隨機森林算法相對于Logistic回歸模型算法可能會得到更好的預(yù)測結(jié)果。樸素貝葉斯的成功之處在于使得原本不獨立的變量近似認為是獨立的,大大減少了模型的參數(shù),從而在一定程度上避免了過擬合的現(xiàn)象。但這也是樸素貝葉斯模型的主要缺陷之一,假設(shè)屬性之間相互獨立,這個假設(shè)在實際應(yīng)用中往往是不成立的,在屬性個數(shù)比較多或者屬性之間相關(guān)性較大時,分類效果不好。樸素貝葉斯模型還有一個缺陷就是需要知道先驗概率,且先驗概率很多時候取決于假設(shè),假設(shè)的模型可以有很多種,因此在某些時候會由于假設(shè)的先驗?zāi)P痛嬖趩栴}導(dǎo)致預(yù)測效果不佳。本案例的變量并不是相互獨立的,例如教育和收入之間就存在著明顯的相關(guān)性。這會對預(yù)測的結(jié)果產(chǎn)生重大的影響,因為模型的前提假設(shè)就值得商榷,所以樸素貝葉斯模型在四個模型中的預(yù)測
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 咨詢費商務(wù)合同范例
- 土地種植租金合同范例
- 足療勞務(wù)合同范例
- 豬保價合同范例
- 德州房屋預(yù)售合同范例
- 磨床維修合同范例
- 汽車協(xié)議合同范例
- 租房換燈管改造合同范例
- 護欄樣品出售合同范例
- 分銷合同范例 天客
- 讀了蕭平實導(dǎo)師的《念佛三昧修學(xué)次第》才知道原來念佛門中有微妙法
- 周邊傳動濃縮刮泥機檢驗報告(ZBG型)(完整版)
- 紙箱理論抗壓強度、邊壓強度、耐破強度的計算
- 土地增值稅清算審核指南
- 死亡通知書模板
- 鷸蚌相爭課件
- PMC(計劃物控)面試經(jīng)典筆試試卷及答案
- 失業(yè)保險金申領(lǐng)表_11979
- 《質(zhì)量管理體系文件》風險和機遇評估分析表
- 食品安全約談通知書
- 舒爾特方格A4直接打印版
評論
0/150
提交評論