• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    混合特征選擇和集成學(xué)習(xí)驅(qū)動(dòng)的代碼異味檢測

    2022-07-14 13:11:30艾成豪高建華黃子杰
    計(jì)算機(jī)工程 2022年7期
    關(guān)鍵詞:特征選擇異味度量

    艾成豪,高建華,黃子杰

    (1.上海師范大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)系,上海 200234;2.華東理工大學(xué) 計(jì)算機(jī)科學(xué)與工程系,上海 200237)

    0 概述

    為了評估軟件的可維護(hù)性,F(xiàn)OWLER等[1]引入代碼異味的概念,其表示開發(fā)人員在實(shí)現(xiàn)軟件系統(tǒng)的過程中使用的不良設(shè)計(jì)和代碼實(shí)現(xiàn)。代碼異味使軟件的易變性和易錯(cuò)性提高[2],且其擁有很長的生命周期[3]。若代碼異味未被及時(shí)消除,因它們所導(dǎo)致的工作量和維護(hù)成本將會(huì)成倍增加,消除代碼異味也會(huì)變得更加困難[4],及時(shí)檢測出源代碼中所含的代碼異味能夠有效避免此類問題的產(chǎn)生。

    目前,已經(jīng)有很多研究人員提出多種代碼異味檢測技術(shù)[5-7],它們中的大多數(shù)都是基于規(guī)則或啟發(fā)式方法,即應(yīng)用檢測規(guī)則從源代碼中計(jì)算相關(guān)度量值,并與統(tǒng)計(jì)所得的閾值進(jìn)行比較,以確定源代碼中是否含有代碼異味[8]。然而,這些技術(shù)均存在一定的局限性,如開發(fā)人員對代碼異味的理解不同,在對閾值的設(shè)定和度量的選擇過程中帶有主觀性[9],從而導(dǎo)致不同檢測技術(shù)對相同代碼異味的檢測結(jié)果存在差異[10]。機(jī)器學(xué)習(xí)技術(shù)被視為解決上述問題的一種有效方法,其能自動(dòng)地組合代碼度量,且無需指定任何閾值。目前大部分通用機(jī)器學(xué)習(xí)算法都能取得較高的檢測性能[11],但是它們?nèi)匀淮嬖诖倪M(jìn)的部分。

    在模型選擇方面,沒有一種單一模型能在所有代碼異味檢測中都取得良好的表現(xiàn)[12]。為此,集成學(xué)習(xí)方法被應(yīng)用于代碼異味檢測,但是,以往的研究都側(cè)重于使用同構(gòu)集成學(xué)習(xí),而對于異構(gòu)集成學(xué)習(xí)的研究較少。

    在類平衡方面,代碼異味的數(shù)據(jù)普遍存在不平衡的問題,受代碼異味影響的樣本偏少[13]。相關(guān)學(xué)者首先使用采樣技術(shù)平衡代碼異味正、負(fù)(即有異味與無異味)樣本比例,然后利用特征選擇方法得到最優(yōu)特征子集,將其送入機(jī)器學(xué)習(xí)方法中進(jìn)行檢測,最終取得較高的檢測性能[14-15]。然而,近期有相關(guān)研究指出,類平衡算法可能會(huì)降低模型性能,從類對于軟件系統(tǒng)重要性的角度出發(fā),也沒有任何的類需要“被平衡”[16]。

    在特征選擇方面,若使用大量特征進(jìn)行訓(xùn)練可能會(huì)造成“維度災(zāi)難”問題,從而增加模型訓(xùn)練時(shí)間并使其產(chǎn)生過擬合[17]。然而,代碼異味的特征度量可能存在高度共線問題[18],這意味著在原始數(shù)據(jù)集中存在的多數(shù)度量對代碼異味預(yù)測沒有任何幫助,而且會(huì)導(dǎo)致模型過擬合。文獻(xiàn)[19]結(jié)合多種特征選擇方法,首先使用Spearman 相關(guān)系數(shù)檢測特征對之間的相關(guān)性,選出相關(guān)性較高的特征對,然后刪除特征對中信息增益率較小的部分,分析結(jié)果表明,該方法的分類性能取得一定提升。

    本文針對上述模型和特征選擇中存在的問題,提出一種混合特征選擇和集成學(xué)習(xí)驅(qū)動(dòng)的代碼異味檢測方法。比較多種機(jī)器學(xué)習(xí)模型在不同代碼異味上的分類性能,以選擇適合被測異味的模型。設(shè)計(jì)一種混合特征選擇方法,用于去除對分類結(jié)果影響較小的無關(guān)特征。在此基礎(chǔ)上,構(gòu)建一種兩層結(jié)構(gòu)的Stacking 集成學(xué)習(xí)模型,通過集成單一模型的優(yōu)點(diǎn)來提升分類性能。

    1 相關(guān)技術(shù)

    1.1 代碼異味

    代碼異味最初的版本涵蓋了22 種異味,其為一種設(shè)計(jì)上的缺陷,會(huì)對軟件維護(hù)帶來一定的影響,通常利用重構(gòu)對代碼異味進(jìn)行干預(yù)。本文主要研究以下4 種在開發(fā)過程中較為常見的代碼異味:

    1)LM(LongMethod):類中方法具有過長的代碼行數(shù)[4]。

    2)LC(LazyClass):復(fù)雜性較低的類,包含簡單的方法[4]。

    3)CDSBP(ClassDataShouldBePrivate):類存在公開(Public)字段,因而違反了封裝中的可見性要求[20]。

    4)LPL(LongParameterList):類中方法存在過長的參數(shù)列表[20]。

    1.2 源代碼度量

    源代碼度量(即特征度量)是一組從不同角度對軟件系統(tǒng)進(jìn)行描述的值,其能使開發(fā)人員更好地了解他們正在編寫的代碼。源代碼度量標(biāo)準(zhǔn)主要分為產(chǎn)品度量和過程度量兩大類,產(chǎn)品度量包括代碼規(guī)模度量、復(fù)雜性度量等,過程度量包括代碼變更度量、開發(fā)人員度量等。源代碼度量是代碼異味檢測中的重要依據(jù),不同代碼異味對應(yīng)的源代碼度量不同,表1 所示為一些常見的代碼異味檢測規(guī)則。

    表1 代碼異味檢測規(guī)則Table 1 Code smell detection rules

    1.3 特征選擇

    從源代碼中提取的大量代碼度量可能是無關(guān)的,即特征與分類標(biāo)簽(是否為異味)之間的相關(guān)性較低。若存在大量無關(guān)的特征,會(huì)產(chǎn)生“維度災(zāi)難”問題,從而增加模型運(yùn)行時(shí)間并降低分類性能。特征選擇是解決此類問題最有效的方法之一。特征選擇主要分為過濾法(Filter)、包裝法(Wrapper)和嵌入法(Embedded)[25]3 種:過濾法選取所有特征中最具區(qū)別性、不依賴于任何分類算法的特征,其計(jì)算所有特征與分類標(biāo)簽之間的相關(guān)性,過濾掉相關(guān)性較低的特征,將保留的高相關(guān)性特征作為后續(xù)模型的輸入;包裝法依據(jù)分類算法的預(yù)測性能來評判所選特征子集的質(zhì)量,其預(yù)先制定好一種搜索策略,將搜索得到的特征子集送入分類器,預(yù)測結(jié)果越好,則該子集越有效;嵌入法結(jié)合了上述兩者的思想,即將特征選擇過程嵌入到分類算法中,從而篩選出最優(yōu)子集。

    本文采用一種混合特征選擇方法,該方法結(jié)合過濾法和嵌入法的優(yōu)點(diǎn),融合通過ReliefF、XGBoost特征重要性和Pearson 相關(guān)系數(shù)得到的特征權(quán)重值,以去除與分類標(biāo)簽無關(guān)的特征。

    1.3.1 ReliefF

    ReliefF 是對Relief 的擴(kuò)展,其能夠處理多分類數(shù)據(jù)。ReliefF 是一種過濾法,根據(jù)特征對近距離樣本的區(qū)分能力賦予特征不同的權(quán)重,權(quán)重越大,則分類能力越強(qiáng)。每次從樣本集中隨機(jī)選擇一個(gè)樣本S,尋找與它同類別的K個(gè)近鄰樣本,記為NH;從不同于樣本S的類別中各選出K個(gè)近鄰樣本,記為NM(C)。迭代更新所有特征的權(quán)重ω(x)[26],如式(1)所示:

    其中:m為迭代次數(shù);P(C)為第C類的概率;Class(S)為樣本S所屬的類別;NHj為與S同類別的第j個(gè)近鄰;NM(C)j為與S不同類別的第j個(gè)近鄰;diff(X,S,S')為特征X上樣本S和S'之間的距離。diff(X,S,S')的計(jì)算如式(2)所示:

    1.3.2 Pearson 相關(guān)系數(shù)

    Pearson 相關(guān)系數(shù)是一種過濾法,其能夠衡量2 個(gè)變量X和Y之間相關(guān)性的強(qiáng)弱,當(dāng)一個(gè)變量的變化能引起另一個(gè)變量改變時(shí),則稱它們之間具有相關(guān)性[27]。Pearson 相關(guān)系數(shù)的計(jì)算公式如式(3)所示:

    其中:σX、σY分別表示2 個(gè)變量的標(biāo)準(zhǔn)差;cov(X,Y)表示2個(gè)變量的協(xié)方 差;n為樣本數(shù)量;xˉ與yˉ分別為變量X和Y的均值。

    Pearson 相關(guān)系數(shù)輸出值ρ的取值范圍在?1~1之間:當(dāng)取值為負(fù)數(shù)時(shí),表示2 個(gè)變量呈負(fù)相關(guān);當(dāng)取值為0 時(shí),表示2 個(gè)變量之間獨(dú)立;當(dāng)取值為正數(shù)時(shí),表示2 個(gè)變量呈正相關(guān)。ρ的絕對值越接近1,則2 個(gè)變量的相關(guān)性越高,它們之間的聯(lián)系也越緊密。

    1.3.3 XGBoost 特征重要性

    XGBoost 由CHEN等[28]于2016 年提出,其為一種高效、可擴(kuò)展的機(jī)器學(xué)習(xí)模型。XGBoost 是基于梯度提升決策樹(GBDT)改進(jìn)的模型,通過Boosting方式組合多棵CART 決策樹,其主要思想是通過迭代添加新的分類器來擬合之前的殘差。XGBoost 對損失函數(shù)進(jìn)行二階泰勒展開來近似目標(biāo)函數(shù),并通過向目標(biāo)函數(shù)添加控制模型復(fù)雜度的正則項(xiàng)來獲取更好的泛化性,從而避免過擬合問題。此外,XGBoost 能充分發(fā)揮多核CPU 的優(yōu)勢進(jìn)行并行計(jì)算,大幅縮短了運(yùn)行時(shí)間。

    XGBoost 特征重要性(XGBI)是嵌入法中的一種,其通過XGBoost 在訓(xùn)練過程中得到每個(gè)特征的重要性,特征重要性值越高,則該特征在模型構(gòu)建與訓(xùn)練過程中的貢獻(xiàn)越大。XGBoost 利用貪心算法來確定樹的結(jié)構(gòu),即尋找最優(yōu)切分點(diǎn),其通過遍歷所有節(jié)點(diǎn)并計(jì)算分裂前后的差值得到增益,選擇增益最大的節(jié)點(diǎn)進(jìn)行分裂[29]。

    增益的計(jì)算公式如式(4)所示:

    1.4 集成學(xué)習(xí)

    集成學(xué)習(xí)利用特定的策略組合多個(gè)基分類器(即機(jī)器學(xué)習(xí)模型)來構(gòu)建相對穩(wěn)定和準(zhǔn)確的模型。與單個(gè)分類器相比,集成學(xué)習(xí)能取得更好的結(jié)果和更強(qiáng)的泛化能力。在通常情況下,集成學(xué)習(xí)遵循以下2個(gè)原則:

    1)基分類器的準(zhǔn)確率高于隨機(jī)猜測。

    2)基分類器之間具有多樣性[30]。

    集成學(xué)習(xí)主要分為Boosting、Bagging 和Stacking這3 種:Boosting 是串行關(guān)系,其按順序逐一構(gòu)造多個(gè)基分類器,并以迭代方式調(diào)整前一個(gè)分類器錯(cuò)誤分類的樣本權(quán)重,用于訓(xùn)練下一個(gè)分類器;Bagging對訓(xùn)練樣本采用Bootstrap 抽樣策略,并行地訓(xùn)練多個(gè)獨(dú)立的基分類器,并將它們的結(jié)果以多數(shù)投票或取平均的方法進(jìn)行結(jié)合。以上2 種集成學(xué)習(xí)是同質(zhì)集成,即只包含同種類型的基分類器。本文采用的Stacking 是一種異構(gòu)集成學(xué)習(xí)模型,該模型由WOLPERT[31]于1992 年提出,其通過結(jié)合多種不同類型的機(jī)器學(xué)習(xí)模型,使得模型的邊界變得更穩(wěn)定,避免單一模型預(yù)測性能不佳、魯棒性較差的問題。Stacking 集成學(xué)習(xí)模型通常被設(shè)計(jì)為兩層框架的結(jié)構(gòu),為此引入了基分類器和元分類器的概念。第一層由多個(gè)基分類器組成,為了防止過擬合,采用K 折交叉驗(yàn)證對其進(jìn)行訓(xùn)練,合并它們的預(yù)測結(jié)果形成新數(shù)據(jù)集后輸入第二層的元分類器中,從而得到最終的結(jié)果。Stacking 集成學(xué)習(xí)模型的構(gòu)建過程如圖1所示,第一層以5 折交叉驗(yàn)證為例,其實(shí)現(xiàn)過程如算法1 所示。

    圖1 Stacking 集成學(xué)習(xí)模型構(gòu)建過程Fig.1 Construction procedure of Stacking ensemble learning model

    算法1Stacking 集成學(xué)習(xí)模型算法

    2 本文代碼異味檢測方法

    針對使用大量特征進(jìn)行訓(xùn)練可能引起“維度災(zāi)難”以及單一模型泛化性能不佳的問題,本文提出一種混合特征選擇和集成學(xué)習(xí)驅(qū)動(dòng)的代碼異味檢測方法。該方法首先從開源項(xiàng)目中提取度量并與對應(yīng)的分類標(biāo)簽合并構(gòu)成代碼異味數(shù)據(jù)集,然后對數(shù)據(jù)歸一化后的數(shù)據(jù)集進(jìn)行混合特征選擇,最后將得到的特征子集送入后續(xù)的Stacking 集成學(xué)習(xí)模型進(jìn)行分類。本文方法流程如圖2 所示。

    圖2 本文代碼異味檢測方法流程Fig.2 The procedure of code smell detection method in this paper

    2.1 數(shù)據(jù)集

    本文考慮4 個(gè)大小不一且屬于不同領(lǐng)域的Java開源項(xiàng)目,分別為Rhino 1.6R6、ArgoUML0.26、Mylyn 3.1.1 和Eclipse 3.3.1,用以構(gòu)建代碼異味數(shù)據(jù)集。由于本文方法需要大量自變量,即面向?qū)ο蟮亩攘恐?,因此使用SourceMeter 和CKJM extended 這2 種常用的度量計(jì)算工具,共提取78 個(gè)度量,度量說明如表2、表3 所示。

    在所提取的度量中,存在一小部分相同的度量,本文按照文獻(xiàn)[32]中的做法將它們保留,保留的原因是所用的度量計(jì)算工具針對的對象不同,SourceMeter 是針對源文件,而CKJM extended 是對字節(jié)碼文件進(jìn)行計(jì)算,因此,兩者得到的度量值不同[33]。數(shù)據(jù)集中的異味標(biāo)簽均來自于文獻(xiàn)[20],最后,利用類名作為匹配鍵合并度量與異味標(biāo)簽,得到一個(gè)含有14 063 條樣本、78 個(gè)度量以及4 種代碼異味的數(shù)據(jù)集,數(shù)據(jù)集格式如圖3 所示。

    2.2 數(shù)據(jù)歸一化

    在模型構(gòu)建之前,通常需要將不同規(guī)格的數(shù)據(jù)轉(zhuǎn)換為統(tǒng)一規(guī)格,或?qū)⒉煌植嫉臄?shù)據(jù)轉(zhuǎn)換成所需的特定分布,即數(shù)據(jù)需要無量綱化。文獻(xiàn)[34]指出數(shù)據(jù)歸一化不僅能夠增強(qiáng)分類器的性能,而且可以加快求解速度,提高模型的求解質(zhì)量。Min-Max 歸一化是最常用的數(shù)據(jù)歸一化方法,其對原始數(shù)據(jù)進(jìn)行線性變換,轉(zhuǎn)換公式如式(5)所示:

    其中:Xmin和Xmax分別是第i個(gè)特征的最小值和最大值;X*的取值在[0,1]范圍內(nèi)。

    2.3 混合特征選擇

    使用原始的高維特征集不但會(huì)增加分類器的計(jì)算成本,還可能降低其識(shí)別性能,因此,需要使用特征選擇方法優(yōu)化特征數(shù)量。文獻(xiàn)[25]指出單一的特征選擇方法可能會(huì)在篩選特征的過程中忽略一些潛在信息,導(dǎo)致結(jié)果不穩(wěn)定。文獻(xiàn)[35]通過結(jié)合多種特征選擇方法來提高特征選擇的魯棒性。本文提出一種混合特征選擇方法,該方法結(jié)合ReliefF、XGBoost 特征重要性和Pearson 相關(guān)系數(shù)這3 種常見的特征選擇方法,計(jì)算出特征權(quán)重并進(jìn)行融合,然后去除權(quán)重值較低的無關(guān)特征。在對特征權(quán)重向量融合的過程中,需要確保不同方法所生成的權(quán)重具有可比性,因此,在此之前需對權(quán)重向量進(jìn)行Min-Max歸一化。本文混合特征選擇方法的輸入是歸一化后的數(shù)據(jù)集,輸出是特征子集,具體步驟如下:

    步驟1由ReliefF、XGBoost特征重要性和Pearson相關(guān)系數(shù)分別生成含有所有特征的權(quán)重向量。

    由ReliefF 得到的權(quán)重向量為:

    由XGBoost 特征重要性得到的權(quán)重向量為:

    由Pearson 相關(guān)系數(shù)得到的權(quán)重向量為:

    步驟2利用融合策略,將通過3 種特征選擇方法得到的權(quán)重向量進(jìn)行合并,融合策略為:

    步驟3將特征權(quán)重融合后的值按從高到低降序排列,刪除權(quán)重值較低的后20%的特征,這些特征與分類標(biāo)簽的相關(guān)性較弱。

    不同特征選擇方法的側(cè)重點(diǎn)不同,將它們結(jié)合可能會(huì)在特征空間中產(chǎn)生更好的表示以描述數(shù)據(jù),從而彌補(bǔ)單一特征選擇方法偏向某一方面的缺陷。本文方法能在一定程度上減少無關(guān)特征,避免有效特征信息損失,以達(dá)到降低計(jì)算成本并提高后續(xù)算法性能的目的。

    2.4 Stacking 集成學(xué)習(xí)模型構(gòu)建

    為了更好地檢測代碼異味,避免單一模型泛化性能不佳的問題,本文構(gòu)建一種兩層結(jié)構(gòu)的Stacking集成學(xué)習(xí)模型。該模型的第一層由異構(gòu)基分類器構(gòu)成,這些基分類器需要具有較高的準(zhǔn)確性以及多樣性,為此本文使用LGB(LightGBM)、XGB(XGBoost)和RF(Random Forest)這3 種理論較成熟的模型,它們之間具有一定差異,能通過使用不同的學(xué)習(xí)策略來從不同角度和空間學(xué)習(xí)特征,實(shí)現(xiàn)模型間的互補(bǔ),從而提升Stacking 集成學(xué)習(xí)模型的整體性能。

    第一層采用K 折交叉驗(yàn)證對基分類器進(jìn)行訓(xùn)練,即將數(shù)據(jù)隨機(jī)劃分成K 份,其中的K?1 份作為訓(xùn)練集,剩余的1 份作為測試集,重復(fù)K 次。由于代碼異味數(shù)據(jù)集大多呈不平衡狀態(tài),因此本文在此層的每一折中都應(yīng)用分層抽樣,以保證代碼異味的分布與原始訓(xùn)練集中的分布相同[23]。

    第二層元分類器的輸入不再是原始數(shù)據(jù)的特征,而是各基分類器的預(yù)測結(jié)果合并變換后的數(shù)據(jù)。文獻(xiàn)[36]指出基分類器使用復(fù)雜的非線性變換提取數(shù)據(jù)特征,容易過擬合,元分類器無需使用復(fù)雜的分類器,因此,本文使用與其相同的分類器LR(Logistic Regression),該分類器通常被用來處理二分類問題,其結(jié)構(gòu)簡單且可以通過正則化進(jìn)一步防止過擬合。

    本文所構(gòu)建的Stacking 集成學(xué)習(xí)模型流程如圖4 所示。

    圖4 Stacking 集成學(xué)習(xí)模型流程Fig.4 The procedure of Stacking ensemble learning model

    3 實(shí)驗(yàn)結(jié)果與分析

    本節(jié)在4 個(gè)項(xiàng)目上驗(yàn)證混合特征選擇和集成學(xué)習(xí)驅(qū)動(dòng)的代碼異味檢測方法的有效性,主要解決如下4 個(gè)問題:

    Q1:哪些機(jī)器學(xué)習(xí)模型能夠在本文所檢測的代碼異味中取得良好的表現(xiàn)?

    Q2:混合特征選擇方法是否有效?

    Q3:Stacking 集成學(xué)習(xí)模型能否提高代碼異味檢測的性能?

    Q4:與其他方法相比,本文所提方法是否具有優(yōu)勢?

    3.1 實(shí)驗(yàn)環(huán)境

    本文實(shí)驗(yàn)環(huán)境設(shè)置:操作系統(tǒng)為Windows 10,處理器為Intel?CoreTMi7-8550U @1.80 GHz,內(nèi)存為16 GB,實(shí)驗(yàn)工具為Jupyter Notebook,編程語言為Python。在實(shí)驗(yàn)過程中,采用10×5 折交叉驗(yàn)證的方式進(jìn)行驗(yàn)證,即取10 次5 折交叉驗(yàn)證的平均值,以確保結(jié)論的可靠性。

    3.2 評價(jià)指標(biāo)

    由于本文構(gòu)建的模型是用于檢測模塊中是否含有代碼異味,屬于二分類問題,因此模型性能的好壞可以通過混淆矩陣展現(xiàn),混淆矩陣如表4 所示。

    表4 混淆矩陣Table 4 Confusion matrix

    混淆矩陣中各元素的含義分別為:1)TTP(True Positive):正確識(shí)別為異味的異味樣本數(shù);2)TTN(True Negative):正確識(shí)別為無異味的無異味樣本數(shù);3)FFN(False Negative):錯(cuò)誤識(shí)別為無異味的異味樣本數(shù);4)FF(PFalse Positive):錯(cuò)誤識(shí)別為異味的無異味樣本數(shù)。

    由混淆矩陣衍生出多種評價(jià)指標(biāo),為了更直觀地評估本文方法的性能,考慮F-measure 和G-mean這2 種指標(biāo),F(xiàn)-measure 和G-mean 均含有精確率(Precision)和召回率(Recall)。

    Precision 表示預(yù)測為異味的樣本中真正為異味的樣本占比,如式(10)所示:

    Recall 表示正確預(yù)測為有異味的樣本占真實(shí)異味樣本的比例,如式(11)所示:

    F-measure 是一個(gè)綜合評價(jià)指標(biāo),因?yàn)镻recision和Recall 會(huì)出現(xiàn)相互矛盾的狀況,存在一定的局限性,難以單獨(dú)用于評價(jià)分類性能,因此,必須綜合考慮這兩者。F-measure 是Precision 和Recall 的加權(quán)調(diào)和平均值,其值越大,則模型性能較好。F-measure計(jì)算如式(12)所示:

    代碼異味數(shù)據(jù)集通常呈現(xiàn)類不平衡狀態(tài),G-mean 指標(biāo)能夠更直觀地評價(jià)類不平衡性能,其計(jì)算如式(13)所示:

    3.3 結(jié)果分析

    1)解決Q1 問題。

    表5 所示為XGB(XGBoost)、LGB(LightGBM)、隨機(jī)森林(RF)、決策樹(DT)、K 最近鄰(KNN)和樸素貝葉斯(NB)這6 種機(jī)器學(xué)習(xí)模型在不同代碼異味上的檢測性能,最優(yōu)結(jié)果加粗表示。從表5 可以看出,綜合性能排在前三的模型為XGB、LGB 和RF,它們都是基于樹的模型,與文獻(xiàn)[37]中的結(jié)論相符,即基于樹的模型在代碼異味檢測中都有著良好的表現(xiàn)。分析表中的數(shù)據(jù)可以發(fā)現(xiàn),在LC、CDSBP、LPL這3 種代碼異味上XGB 表現(xiàn)最好,而LGB 在LM 這一種異味上優(yōu)于其他模型,由此可得,并沒有一種模型適合檢測所有的代碼異味。因此,本文選擇XGB、LGB 和RF 作為后續(xù)Stacking 集成學(xué)習(xí)模型的基分類器,以避免單一模型泛化性能不佳的問題。

    表5 不同分類器的代碼異味檢測結(jié)果Table 5 Code smell detection results of different classifiers

    2)解決Q2 問題。

    表6 所示為特征選擇前后XGB、LGB 和RF 模型在不同代碼異味上的F-measure 對比結(jié)果。從表6可以看出,在多數(shù)情況下,特征選擇前后的F-measure 值相差不大,由此可得數(shù)據(jù)集中存在無關(guān)特征,去除這些無關(guān)特征并不會(huì)對結(jié)果造成影響。

    表6 特征選擇前后模型的F-measure 值對比Table 6 Comparison of F-measure values of models before and after feature selection

    圖5 所示為所選機(jī)器學(xué)習(xí)模型在4 種代碼異味數(shù)據(jù)集上進(jìn)行特征選擇前后的平均訓(xùn)練時(shí)間,即進(jìn)行一次5 折交叉驗(yàn)證的時(shí)間。從圖5 可以看出,XGB、LGB 與RF 在特征選擇后的平均訓(xùn)練時(shí)間相較特征選擇前都有所降低,其中,XGB 下降幅度最大,RF 其次,下降幅度最小的是LGB。以XGB 為例,在特征選擇前,其在4 種代碼異味數(shù)據(jù)集上的訓(xùn)練時(shí)間為31.23 s,而經(jīng)過特征選擇后,訓(xùn)練時(shí)間減少至26.18 s,時(shí)間縮短效率為16.17%。由此可見,特征選擇在確保F-measure 的同時(shí)能夠在一定程度上縮短模型的訓(xùn)練時(shí)間。

    圖5 特征選擇前后模型的平均訓(xùn)練時(shí)間對比Fig.5 Comparison of average training time of models before and after feature selection

    3)解決Q3 問題。

    從表7 可以看出,相較單一模型,Stacking 集成學(xué)習(xí)模型在特征選擇后的數(shù)據(jù)中都能夠取得良好的分類性能,在F-measure 和G-mean 評價(jià)指標(biāo)上均有一定提升。經(jīng)分析,Stacking 集成學(xué)習(xí)模型優(yōu)于單一模型的原因如下:Stacking 集成學(xué)習(xí)模型能夠結(jié)合多樣化的模型,這些模型能夠從不同角度來觀測數(shù)據(jù),從而充分發(fā)揮每一種模型的優(yōu)勢,同時(shí)屏除分類結(jié)果較差的部分,以糾正單一模型的預(yù)測偏差;從模型優(yōu)化的角度來看,單一模型在訓(xùn)練過程中可能會(huì)有陷入局部最優(yōu)的風(fēng)險(xiǎn),導(dǎo)致其泛化性能不佳,而集成多種模型可以減少此類風(fēng)險(xiǎn)發(fā)生的概率[38];Stacking集成學(xué)習(xí)模型通常為兩層結(jié)構(gòu),第二層結(jié)構(gòu)能糾正第一層結(jié)構(gòu)產(chǎn)生的誤差,從而提高模型的分類精度。

    表7 特征選擇后單一模型和Stacking 集成學(xué)習(xí)模型的性能比較Table 7 Performance comparison of single model and Stacking ensemble learning model after feature selection

    4)解決Q4 問題。

    將本文模型與文獻(xiàn)[39]模型、文獻(xiàn)[40]模型以及異構(gòu)集成學(xué)習(xí)中的Voting 模型進(jìn)行比較,這些對比模型均采用本文的數(shù)據(jù)集,以確保可比性。針對文獻(xiàn)[39]模型,使用自編碼器將原始數(shù)據(jù)降至與本文特征選擇后相同的維度,而對于文獻(xiàn)[40]模型以及Voting 模型,均使用本文特征選擇后的數(shù)據(jù),并將Voting 模型中的基分類器與本文中的Stacking 模型保持一致,即XGB、LGB 和RF。從表8 可以看出,文獻(xiàn)[39]模型和文獻(xiàn)[40]模型的性能指標(biāo)均低于本文模型,而Voting 模型僅在檢測LM 代碼異味時(shí)略優(yōu)于本文模型,由此可見,本文模型具有良好的魯棒性。

    表8 不同模型的性能比較Table 8 Performance comparison of different models

    4 結(jié)束語

    本文提出一種混合特征選擇和集成學(xué)習(xí)驅(qū)動(dòng)的代碼異味檢測方法,其融合由多種特征選擇方法得到的特征權(quán)重以去除無關(guān)特征,同時(shí)利用Stacking集成學(xué)習(xí)模型結(jié)合多種單一機(jī)器學(xué)習(xí)模型的優(yōu)勢來提升最終的分類性能。實(shí)驗(yàn)結(jié)果表明,使用混合特征選擇和集成學(xué)習(xí)方法能夠取得較好的代碼異味檢測結(jié)果,即本文所提檢測方法具有有效性。代碼異味通常都呈類不平衡狀態(tài),可能會(huì)對檢測結(jié)果產(chǎn)生一定影響從而降低模型的性能,可利用采樣技術(shù)來平衡代碼異味數(shù)據(jù)集,因此,下一步將求證該技術(shù)在代碼異味檢測中是否有效,并使用模型可解釋性方法探究采樣技術(shù)對代碼異味預(yù)測模型性能的影響。此外,本文僅使用了產(chǎn)品度量,加入過程度量后是否能提高分類精度也是今后的一個(gè)研究課題。

    猜你喜歡
    特征選擇異味度量
    有趣的度量
    模糊度量空間的強(qiáng)嵌入
    迷向表示分為6個(gè)不可約直和的旗流形上不變愛因斯坦度量
    基于4G技術(shù)的VOCs及異味檢測系統(tǒng)
    用這些告別異味吧!夏天就要清清爽爽過!
    PIC-408系列采用育種技術(shù)控制公豬異味
    Kmeans 應(yīng)用與特征選擇
    電子制作(2017年23期)2017-02-02 07:17:06
    地質(zhì)異常的奇異性度量與隱伏源致礦異常識(shí)別
    聯(lián)合互信息水下目標(biāo)特征選擇算法
    基于特征選擇和RRVPMCD的滾動(dòng)軸承故障診斷方法
    国产精品一区二区在线不卡| 国产伦一二天堂av在线观看| 精品国产乱码久久久久久男人| 午夜a级毛片| 亚洲国产看品久久| 黄色女人牲交| 国产欧美日韩精品亚洲av| 日本黄色日本黄色录像| 99精品久久久久人妻精品| 久久久国产一区二区| 午夜福利影视在线免费观看| 在线视频色国产色| 高清黄色对白视频在线免费看| 午夜老司机福利片| 日日夜夜操网爽| 999精品在线视频| 久久精品国产清高在天天线| 亚洲黑人精品在线| 亚洲成a人片在线一区二区| 黄色毛片三级朝国网站| 亚洲精品在线观看二区| 成在线人永久免费视频| 日本vs欧美在线观看视频| 一级毛片高清免费大全| 国产精品综合久久久久久久免费 | 亚洲熟女毛片儿| 日韩欧美一区视频在线观看| 18美女黄网站色大片免费观看| 精品久久蜜臀av无| 亚洲av五月六月丁香网| 亚洲激情在线av| 亚洲五月天丁香| 亚洲男人的天堂狠狠| www日本在线高清视频| 最好的美女福利视频网| 国产伦人伦偷精品视频| 国产精品久久电影中文字幕| 日韩中文字幕欧美一区二区| 久久中文看片网| 成在线人永久免费视频| 99久久99久久久精品蜜桃| 操美女的视频在线观看| 色尼玛亚洲综合影院| 精品久久久精品久久久| 亚洲精品一卡2卡三卡4卡5卡| 天天躁夜夜躁狠狠躁躁| 国产精品国产av在线观看| 国产一区二区激情短视频| 午夜亚洲福利在线播放| 免费人成视频x8x8入口观看| x7x7x7水蜜桃| 老司机福利观看| 欧美最黄视频在线播放免费 | 亚洲人成网站在线播放欧美日韩| 亚洲一区二区三区色噜噜 | 亚洲自拍偷在线| 国产一区在线观看成人免费| 国产91精品成人一区二区三区| 国产一区二区在线av高清观看| 日本免费a在线| 久久亚洲真实| 免费av中文字幕在线| av免费在线观看网站| 在线观看免费视频网站a站| 欧美在线一区亚洲| 在线播放国产精品三级| 少妇 在线观看| 国产av一区二区精品久久| 亚洲国产欧美一区二区综合| 国产精品一区二区在线不卡| 91字幕亚洲| 久久精品人人爽人人爽视色| 久久久久久亚洲精品国产蜜桃av| 成人永久免费在线观看视频| 激情视频va一区二区三区| 变态另类成人亚洲欧美熟女 | 日本免费a在线| 超色免费av| 国产色视频综合| 亚洲欧美精品综合久久99| √禁漫天堂资源中文www| 亚洲在线自拍视频| 国产成人精品久久二区二区免费| 美女国产高潮福利片在线看| 不卡一级毛片| 成人国产一区最新在线观看| 国产一区在线观看成人免费| 成人免费观看视频高清| 亚洲国产欧美一区二区综合| 亚洲成国产人片在线观看| 久久人人爽av亚洲精品天堂| 美国免费a级毛片| 欧美日韩瑟瑟在线播放| 国产成人欧美| 啦啦啦免费观看视频1| 亚洲成av片中文字幕在线观看| 老鸭窝网址在线观看| 国产成人一区二区三区免费视频网站| 亚洲五月天丁香| av福利片在线| 最新美女视频免费是黄的| 国产精品综合久久久久久久免费 | av网站在线播放免费| av网站在线播放免费| 精品国内亚洲2022精品成人| 一级黄色大片毛片| 啦啦啦免费观看视频1| 宅男免费午夜| 日本免费a在线| 国产欧美日韩一区二区精品| x7x7x7水蜜桃| 黑人欧美特级aaaaaa片| 免费一级毛片在线播放高清视频 | 看免费av毛片| 一本大道久久a久久精品| 精品一区二区三区视频在线观看免费 | 伦理电影免费视频| 久久婷婷成人综合色麻豆| 啦啦啦 在线观看视频| 日韩一卡2卡3卡4卡2021年| 无限看片的www在线观看| 美女午夜性视频免费| 久久天躁狠狠躁夜夜2o2o| 久久影院123| 99久久久亚洲精品蜜臀av| 99在线人妻在线中文字幕| 日本wwww免费看| 无限看片的www在线观看| 久久精品aⅴ一区二区三区四区| 高清毛片免费观看视频网站 | 精品人妻在线不人妻| 桃红色精品国产亚洲av| 韩国av一区二区三区四区| 久久国产精品男人的天堂亚洲| 啪啪无遮挡十八禁网站| 99精品在免费线老司机午夜| av中文乱码字幕在线| 啪啪无遮挡十八禁网站| 国产1区2区3区精品| 午夜影院日韩av| 免费搜索国产男女视频| 在线观看免费高清a一片| 日韩成人在线观看一区二区三区| a在线观看视频网站| 啦啦啦在线免费观看视频4| 午夜免费成人在线视频| 国产黄色免费在线视频| 91老司机精品| 国产xxxxx性猛交| 国产黄色免费在线视频| 精品久久久精品久久久| 亚洲av美国av| 十分钟在线观看高清视频www| 久久久久国产精品人妻aⅴ院| 亚洲精品一二三| 99香蕉大伊视频| 欧美最黄视频在线播放免费 | 又黄又粗又硬又大视频| 成人影院久久| 看片在线看免费视频| 又紧又爽又黄一区二区| 国产一卡二卡三卡精品| 嫁个100分男人电影在线观看| 丰满人妻熟妇乱又伦精品不卡| 国产精品99久久99久久久不卡| 无遮挡黄片免费观看| 亚洲av电影在线进入| 久久99一区二区三区| 丝袜人妻中文字幕| 欧美一级毛片孕妇| 黑人操中国人逼视频| 久久国产精品影院| 国产精品久久久av美女十八| 嫩草影院精品99| 99久久国产精品久久久| 国产1区2区3区精品| 99久久久亚洲精品蜜臀av| 亚洲av成人av| 男人的好看免费观看在线视频 | 美国免费a级毛片| 一区二区三区激情视频| 免费在线观看完整版高清| 亚洲五月婷婷丁香| 国产片内射在线| 不卡av一区二区三区| 久久人人97超碰香蕉20202| 中文字幕人妻丝袜一区二区| 国产亚洲精品久久久久5区| 国产熟女午夜一区二区三区| 成年女人毛片免费观看观看9| 脱女人内裤的视频| 香蕉久久夜色| 少妇粗大呻吟视频| 国产免费av片在线观看野外av| 美女高潮到喷水免费观看| 亚洲中文av在线| 黄片大片在线免费观看| av片东京热男人的天堂| 高清欧美精品videossex| 成人国产一区最新在线观看| 国产一区二区三区综合在线观看| 中文欧美无线码| 婷婷丁香在线五月| 9191精品国产免费久久| 日韩精品青青久久久久久| 久久人人精品亚洲av| 成年人免费黄色播放视频| 久99久视频精品免费| 久久人妻av系列| 欧美精品亚洲一区二区| 99国产极品粉嫩在线观看| 亚洲熟妇熟女久久| 国产精品偷伦视频观看了| 97超级碰碰碰精品色视频在线观看| 免费一级毛片在线播放高清视频 | 亚洲一区中文字幕在线| 超碰97精品在线观看| 在线观看一区二区三区| 可以免费在线观看a视频的电影网站| 亚洲第一欧美日韩一区二区三区| 色综合婷婷激情| 好男人电影高清在线观看| 免费av毛片视频| 丝袜人妻中文字幕| 亚洲avbb在线观看| 岛国在线观看网站| 神马国产精品三级电影在线观看 | 18禁美女被吸乳视频| 亚洲五月天丁香| 别揉我奶头~嗯~啊~动态视频| 日日爽夜夜爽网站| 好男人电影高清在线观看| 99国产综合亚洲精品| www国产在线视频色| av电影中文网址| 国产xxxxx性猛交| 亚洲精品国产精品久久久不卡| 国产精品久久久久久人妻精品电影| 法律面前人人平等表现在哪些方面| 国产精品1区2区在线观看.| 日本欧美视频一区| 90打野战视频偷拍视频| 欧美在线一区亚洲| 欧美中文综合在线视频| 精品少妇一区二区三区视频日本电影| 精品国产一区二区三区四区第35| 亚洲av熟女| 精品国产一区二区久久| 夜夜躁狠狠躁天天躁| 久久久久久免费高清国产稀缺| 亚洲精品国产精品久久久不卡| 久久久久九九精品影院| 50天的宝宝边吃奶边哭怎么回事| 18禁观看日本| 成在线人永久免费视频| 色综合欧美亚洲国产小说| 久久国产精品影院| 亚洲熟妇中文字幕五十中出 | 女人被躁到高潮嗷嗷叫费观| 国产免费现黄频在线看| 亚洲免费av在线视频| 曰老女人黄片| 美女高潮喷水抽搐中文字幕| 国产熟女午夜一区二区三区| 精品卡一卡二卡四卡免费| 国产精品久久久av美女十八| 亚洲一区二区三区欧美精品| 高潮久久久久久久久久久不卡| 好男人电影高清在线观看| 日韩欧美免费精品| 日韩欧美在线二视频| 国产99白浆流出| 一个人免费在线观看的高清视频| 性少妇av在线| 午夜免费鲁丝| 久久精品国产99精品国产亚洲性色 | 国产三级在线视频| 国产精品自产拍在线观看55亚洲| 午夜老司机福利片| 国产精品电影一区二区三区| 女人高潮潮喷娇喘18禁视频| 久久中文字幕一级| 美女扒开内裤让男人捅视频| 亚洲av片天天在线观看| 丰满迷人的少妇在线观看| 亚洲三区欧美一区| 国产欧美日韩精品亚洲av| 久久久久久亚洲精品国产蜜桃av| 一级黄色大片毛片| 99热只有精品国产| 嫁个100分男人电影在线观看| 久久影院123| 精品电影一区二区在线| 日韩欧美三级三区| 日韩有码中文字幕| 国产精品一区二区精品视频观看| 亚洲av日韩精品久久久久久密| 夫妻午夜视频| 久久精品91蜜桃| 视频区欧美日本亚洲| 日本撒尿小便嘘嘘汇集6| 欧美不卡视频在线免费观看 | www.999成人在线观看| 亚洲精华国产精华精| 丰满人妻熟妇乱又伦精品不卡| 97人妻天天添夜夜摸| 在线观看免费视频网站a站| 啪啪无遮挡十八禁网站| 级片在线观看| 午夜激情av网站| 乱人伦中国视频| 亚洲熟妇中文字幕五十中出 | 一本大道久久a久久精品| 国产主播在线观看一区二区| 一个人观看的视频www高清免费观看 | 亚洲午夜理论影院| 99久久人妻综合| 欧美激情高清一区二区三区| 丰满迷人的少妇在线观看| 亚洲精品国产区一区二| 色综合站精品国产| 久久这里只有精品19| 欧美乱色亚洲激情| 国产又色又爽无遮挡免费看| 午夜免费激情av| 丁香六月欧美| 黑人巨大精品欧美一区二区蜜桃| 亚洲欧美一区二区三区黑人| 欧美成人免费av一区二区三区| 亚洲五月色婷婷综合| 久久天堂一区二区三区四区| 18禁黄网站禁片午夜丰满| 一本大道久久a久久精品| 男女下面进入的视频免费午夜 | 最新美女视频免费是黄的| 亚洲精品中文字幕在线视频| 91av网站免费观看| 国产高清国产精品国产三级| 国产av一区二区精品久久| 可以免费在线观看a视频的电影网站| 婷婷精品国产亚洲av在线| 三级毛片av免费| 日韩免费av在线播放| 久9热在线精品视频| 亚洲熟女毛片儿| 一边摸一边抽搐一进一小说| 国产精品亚洲一级av第二区| 国产成人影院久久av| 一二三四在线观看免费中文在| 交换朋友夫妻互换小说| 久久精品亚洲熟妇少妇任你| 日日干狠狠操夜夜爽| 一本综合久久免费| 狠狠狠狠99中文字幕| 不卡av一区二区三区| 午夜亚洲福利在线播放| 一边摸一边抽搐一进一出视频| 久久人妻熟女aⅴ| 日韩国内少妇激情av| 国产亚洲精品久久久久5区| 亚洲一区二区三区不卡视频| 亚洲精品中文字幕一二三四区| 欧美乱色亚洲激情| 大型av网站在线播放| 亚洲va日本ⅴa欧美va伊人久久| 久久中文字幕人妻熟女| 日韩免费高清中文字幕av| 丝袜美腿诱惑在线| 女性被躁到高潮视频| 久久99一区二区三区| 亚洲国产精品合色在线| 午夜福利在线观看吧| 亚洲精品一卡2卡三卡4卡5卡| 亚洲五月天丁香| 亚洲专区国产一区二区| a在线观看视频网站| 中文亚洲av片在线观看爽| 嫁个100分男人电影在线观看| 亚洲三区欧美一区| 欧美人与性动交α欧美精品济南到| 成人av一区二区三区在线看| 久久这里只有精品19| 人人妻,人人澡人人爽秒播| 老司机午夜十八禁免费视频| 亚洲成人精品中文字幕电影 | 欧美日韩亚洲高清精品| x7x7x7水蜜桃| 国产精品久久久av美女十八| 国产精品久久电影中文字幕| 亚洲第一青青草原| 可以在线观看毛片的网站| 国产黄a三级三级三级人| 国产1区2区3区精品| 国产成人精品在线电影| 免费在线观看视频国产中文字幕亚洲| 久久久久久久久久久久大奶| 亚洲人成网站在线播放欧美日韩| 两性夫妻黄色片| 99久久久亚洲精品蜜臀av| 日本一区二区免费在线视频| 亚洲少妇的诱惑av| 一级片'在线观看视频| 一a级毛片在线观看| 色尼玛亚洲综合影院| 国产91精品成人一区二区三区| 亚洲情色 制服丝袜| 天堂√8在线中文| 国产激情欧美一区二区| 露出奶头的视频| 国产成+人综合+亚洲专区| 高清黄色对白视频在线免费看| 777久久人妻少妇嫩草av网站| 中国美女看黄片| 久久久久久免费高清国产稀缺| 欧美人与性动交α欧美精品济南到| 91字幕亚洲| 97超级碰碰碰精品色视频在线观看| 亚洲自拍偷在线| 国产亚洲欧美精品永久| 国产欧美日韩一区二区三| 91老司机精品| 淫秽高清视频在线观看| 99国产精品一区二区三区| 夜夜爽天天搞| 激情视频va一区二区三区| 中文字幕人妻熟女乱码| 村上凉子中文字幕在线| 国产精品 欧美亚洲| 国产欧美日韩一区二区三| 国产成人av激情在线播放| 啦啦啦 在线观看视频| 国产亚洲精品综合一区在线观看 | 久热爱精品视频在线9| 十八禁人妻一区二区| 每晚都被弄得嗷嗷叫到高潮| 国产成人欧美在线观看| 精品久久久久久,| 美女扒开内裤让男人捅视频| 亚洲男人天堂网一区| 丁香六月欧美| 亚洲欧美一区二区三区黑人| 久久香蕉精品热| 别揉我奶头~嗯~啊~动态视频| 亚洲伊人色综图| 狂野欧美激情性xxxx| 日韩欧美一区视频在线观看| 我的亚洲天堂| 国产一区二区三区在线臀色熟女 | 久久性视频一级片| 黑人巨大精品欧美一区二区蜜桃| 操出白浆在线播放| 老熟妇仑乱视频hdxx| 亚洲国产精品一区二区三区在线| 免费搜索国产男女视频| 亚洲中文日韩欧美视频| 欧美日本中文国产一区发布| 亚洲欧洲精品一区二区精品久久久| 国产成人系列免费观看| aaaaa片日本免费| 97碰自拍视频| 99riav亚洲国产免费| 国产精品98久久久久久宅男小说| 免费观看人在逋| 久久 成人 亚洲| 亚洲熟妇中文字幕五十中出 | 嫩草影视91久久| 国产精品成人在线| 变态另类成人亚洲欧美熟女 | 99久久国产精品久久久| 天堂俺去俺来也www色官网| av超薄肉色丝袜交足视频| 九色亚洲精品在线播放| 免费女性裸体啪啪无遮挡网站| 国产伦一二天堂av在线观看| 90打野战视频偷拍视频| 中文字幕最新亚洲高清| 亚洲国产看品久久| 精品久久蜜臀av无| 精品久久久久久,| 国产97色在线日韩免费| 午夜免费成人在线视频| 午夜精品久久久久久毛片777| 又紧又爽又黄一区二区| 丝袜人妻中文字幕| 中文亚洲av片在线观看爽| 国产黄色免费在线视频| 亚洲精品成人av观看孕妇| 夜夜爽天天搞| 黄色成人免费大全| 久久精品91无色码中文字幕| 搡老熟女国产l中国老女人| 久久久久久大精品| 精品久久久久久久久久免费视频 | 午夜老司机福利片| 精品一品国产午夜福利视频| 亚洲欧美精品综合久久99| 纯流量卡能插随身wifi吗| 亚洲人成电影免费在线| 亚洲全国av大片| 免费不卡黄色视频| 精品久久久久久,| 色综合欧美亚洲国产小说| 欧美黑人精品巨大| av网站在线播放免费| 久久亚洲精品不卡| aaaaa片日本免费| 亚洲精品一区av在线观看| 日韩有码中文字幕| 日本五十路高清| 久久草成人影院| 亚洲第一av免费看| www.精华液| 久久亚洲精品不卡| 国产精品一区二区在线不卡| 日韩欧美三级三区| 91老司机精品| 欧美日本中文国产一区发布| 国产精品野战在线观看 | 怎么达到女性高潮| 国产精品九九99| 久久精品国产综合久久久| 亚洲av第一区精品v没综合| 欧美精品亚洲一区二区| 久久精品91无色码中文字幕| 日本黄色视频三级网站网址| 午夜精品在线福利| 日本免费一区二区三区高清不卡 | 亚洲国产中文字幕在线视频| 一区二区日韩欧美中文字幕| 欧美大码av| 在线天堂中文资源库| 久久久久久久久中文| 一个人免费在线观看的高清视频| 午夜福利影视在线免费观看| а√天堂www在线а√下载| 欧美日韩瑟瑟在线播放| 日韩大码丰满熟妇| 超碰97精品在线观看| 中国美女看黄片| www日本在线高清视频| 电影成人av| 精品福利观看| 亚洲国产欧美一区二区综合| 99国产精品一区二区三区| 久久99一区二区三区| www日本在线高清视频| 国产成年人精品一区二区 | 精品国产一区二区三区四区第35| 一进一出抽搐动态| 亚洲中文字幕日韩| 国产黄色免费在线视频| 久热爱精品视频在线9| 亚洲五月婷婷丁香| 欧美亚洲日本最大视频资源| 波多野结衣一区麻豆| 三上悠亚av全集在线观看| 十分钟在线观看高清视频www| 欧美日本亚洲视频在线播放| 免费久久久久久久精品成人欧美视频| 另类亚洲欧美激情| 欧美久久黑人一区二区| 男女床上黄色一级片免费看| 精品第一国产精品| 国产午夜精品久久久久久| 美女福利国产在线| 丝袜美腿诱惑在线| 国产精品国产高清国产av| 国产精品久久久久久人妻精品电影| 老司机在亚洲福利影院| 亚洲人成电影观看| 999精品在线视频| 精品久久久久久电影网| 亚洲第一av免费看| 成年女人毛片免费观看观看9| 国产亚洲精品第一综合不卡| 无人区码免费观看不卡| 久久人人精品亚洲av| 欧美中文综合在线视频| 99精品欧美一区二区三区四区| 国产成人免费无遮挡视频| 欧美激情高清一区二区三区| 亚洲午夜精品一区,二区,三区| 国产黄色免费在线视频| 老汉色∧v一级毛片| x7x7x7水蜜桃| 巨乳人妻的诱惑在线观看| 欧美中文综合在线视频| 国产蜜桃级精品一区二区三区| 黑人欧美特级aaaaaa片| 十八禁网站免费在线| 色播在线永久视频| 黑丝袜美女国产一区| 亚洲va日本ⅴa欧美va伊人久久| 18禁美女被吸乳视频| 亚洲色图av天堂| 人成视频在线观看免费观看| 在线观看www视频免费| 精品久久久久久电影网| 村上凉子中文字幕在线| √禁漫天堂资源中文www| 精品国产美女av久久久久小说| 两个人看的免费小视频| 久久精品人人爽人人爽视色| 欧美国产精品va在线观看不卡| 一边摸一边抽搐一进一小说| 国产高清视频在线播放一区| 十分钟在线观看高清视频www| 日韩欧美一区视频在线观看| 国产激情欧美一区二区| 亚洲精品中文字幕一二三四区| 国产视频一区二区在线看| 国产精品秋霞免费鲁丝片| 国产主播在线观看一区二区| 99精品在免费线老司机午夜| 午夜亚洲福利在线播放|