久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

PseKNC特征編碼實(shí)戰(zhàn):Python實(shí)現(xiàn)ac4C位點(diǎn)預(yù)測的完整pipeline

PseKNC特征編碼實(shí)戰(zhàn):Python實(shí)現(xiàn)ac4C位點(diǎn)預(yù)測的完整pipeline 簡介這是一套用于識(shí)別mRNA中ac4C位點(diǎn)的Python實(shí)現(xiàn)基于PseKNC特征對序列進(jìn)行編碼并訓(xùn)練深度學(xué)習(xí)模型。資源面向生物信息學(xué)或RNA修飾研究方向的學(xué)生與開發(fā)者適合需要復(fù)現(xiàn)ac4C預(yù)測流程、學(xué)習(xí)序列特征編碼方法的場景。數(shù)據(jù)源自《International Journal of Biological Macromolecules》論文包含訓(xùn)練集與測試集可直接開展模型訓(xùn)練與評估。包體共10個(gè)文件主要有7個(gè)Python腳本、2個(gè)txt數(shù)據(jù)集和1個(gè)Markdown說明文檔整體僅413KB。腳本涵蓋累積核苷酸頻率嵌入、K-mer序列嵌入、核苷酸化學(xué)屬性嵌入以及PseKNC編碼與模型訓(xùn)練等環(huán)節(jié)模塊劃分清晰txt文檔提供標(biāo)準(zhǔn)訓(xùn)練與測試數(shù)據(jù)README則說明項(xiàng)目結(jié)構(gòu)與使用方法。目前已有67人瀏覽學(xué)習(xí)適合想快速上手mRNA修飾位點(diǎn)識(shí)別、或希望參考PseKNC編碼實(shí)現(xiàn)細(xì)節(jié)的研究者。通過源碼與數(shù)據(jù)配合讀者可復(fù)現(xiàn)ac4C位點(diǎn)識(shí)別模型并進(jìn)一步調(diào)整特征或網(wǎng)絡(luò)結(jié)構(gòu)用于自己的RNA序列預(yù)測任務(wù)。1. 從“序列”到“數(shù)字向量”ac4C位點(diǎn)預(yù)測為什么非要過PseKNC這一關(guān)mRNA上的N4-乙酰胞苷ac4C修飾近年被反復(fù)證實(shí)與翻譯效率、RNA穩(wěn)定性相關(guān)但濕實(shí)驗(yàn)鑒定ac4C位點(diǎn)成本高、周期長于是“用Python把mRNA序列編碼成特征再丟給機(jī)器學(xué)習(xí)模型識(shí)別ac4C位點(diǎn)”成了生信和AI制藥交叉線的熱門套路。標(biāo)題里的PseKNC正是這個(gè)套路里最關(guān)鍵的“序列編碼”環(huán)節(jié)它把一條等長RNA片段轉(zhuǎn)成幾百維數(shù)值向量而源碼包里真正值錢的東西就是這份編碼器的實(shí)現(xiàn)和配套數(shù)據(jù)。這套方案適合兩類人一類是剛接觸RNA修飾預(yù)測、想快速跑通一個(gè)完整pipeline的Python用戶另一類是做特征工程的熟練工想對比PseKNC和k-mer編碼在修飾位點(diǎn)識(shí)別上的差異。如果你在糾結(jié)“從零寫PseKNC要多久”“負(fù)樣本怎么抽才不翻車”這篇就把編碼原理、參數(shù)設(shè)定和踩坑點(diǎn)一次說清。2. PseKNC特征為什么能用于RNA修飾預(yù)測從k-mer頻率到物化性質(zhì)項(xiàng)2.1 為什么不用one-hot和K-mer頻率三類編碼的差異RNA序列本質(zhì)是A、C、G、U四個(gè)字母組成的字符串但分類器不認(rèn)識(shí)字符串只認(rèn)數(shù)值向量。最簡單的編碼無非兩種one-hot把每個(gè)堿基鋪成4維稀疏向量例如A是[1,0,0,0]一條41nt窗口就變成41×4164維k-mer頻率則是統(tǒng)計(jì)長度為k的子串出現(xiàn)次數(shù)例如k2時(shí)4216維k5時(shí)4?1024維。one-hot幾乎沒有生物學(xué)含義它只告訴模型“這里有個(gè)A”完全丟棄了相鄰堿基的上下文。k-mer頻率雖然捕捉了局部順序但把每個(gè)二核苷酸、三核苷酸當(dāng)作獨(dú)立事件無法反映堿基之間的物理化學(xué)相互作用。ac4C修飾位點(diǎn)識(shí)別本質(zhì)上是在找“某個(gè)胞嘧啶位點(diǎn)周圍的環(huán)境是否有利于乙酰化酶復(fù)合物結(jié)合”這和環(huán)境里堿基的堆疊能、氫鍵等物化屬性強(qiáng)相關(guān)。PseKNCPseudo K-tuple Nucleotide Composition解決的核心問題就是既保留k-tuple的局部順序信息又把物化屬性以偽組分形式平滑地融進(jìn)特征向量同時(shí)保證維度可控、不隨序列長度爆炸。甲基化修飾預(yù)測里有個(gè)普遍經(jīng)驗(yàn)單純用k-mer頻率做特征模型AUC大約在0.85左右換成PseKNC后往往能到0.90以上。這不是玄學(xué)而是PseKNC把“堿基之間的生化親和力”塞進(jìn)了模型能看到的數(shù)值里。一個(gè)真實(shí)場景RNA修飾位點(diǎn)上下游的三核苷酸常常表現(xiàn)出特定的堆疊能分布k-mer頻率只能看到“CGG出現(xiàn)多少次”而PseKNC能看到“CGG這個(gè)三聯(lián)體的物化屬性和背景均值偏離多少”后者才是酶識(shí)別的關(guān)鍵。2.2 PseKNC的維度公式與六個(gè)關(guān)鍵參數(shù)PseKNC的特征向量由兩部分拼接而成前段所有k-length子串的頻率歸一化值維度是4^k后段λ階相關(guān)函數(shù)值每個(gè)物化屬性在每一階上產(chǎn)生一個(gè)值維度是m×λ其中m是選用的物化屬性個(gè)數(shù)λ是最大相關(guān)階數(shù)??偩S度 4^k m×λ。最常用的設(shè)置是k5、λ6若選用標(biāo)準(zhǔn)6種構(gòu)造性質(zhì)堆疊能、氫鍵、堿基堆積、堿基扭角、DNA彎曲剛度、氫鍵方向性維度就是10246×61060。6個(gè)物化屬性不是拍腦袋定的它們來自DNA/RNA構(gòu)象研究的經(jīng)典參數(shù)表每條k-tuple會(huì)按表中數(shù)值算出一個(gè)m維屬性向量比如三核苷酸CGG的堆疊能、扭角等。這些數(shù)值已經(jīng)內(nèi)置在源碼包的property.json里不需要自己手動(dòng)對著論文一篇篇抄。字符含義一覽參數(shù)常見取值作用調(diào)參方向k3~6子串長度決定前段維度數(shù)據(jù)集小時(shí)用4~5避免維度爆炸λ2~10相關(guān)階數(shù)決定后段維度默認(rèn)6序列短時(shí)適當(dāng)減小w0.1~0.5相關(guān)項(xiàng)權(quán)重控制物化性質(zhì)部分占比正文實(shí)驗(yàn)中0.5較穩(wěn)可網(wǎng)格搜索m6選用物化屬性個(gè)數(shù)固定6不要亂增序列長度31~61nt窗口長度以C位點(diǎn)為中心截取固定41nt最常見數(shù)據(jù)分割5~10折交叉驗(yàn)證折數(shù)折數(shù)少則方差大折數(shù)多則計(jì)算慢lambda的參數(shù)本質(zhì)上是“第i個(gè)k-tuple的屬性向量和第ij個(gè)k-tuple的屬性向量的離散度”j從1取到lambda。它刻畫的是序列中相距j個(gè)位置的子串是否具有相似的物化環(huán)境這是PseKNC比普通k-mer多出來的“空間相關(guān)性”信息。2.3 一個(gè)可運(yùn)行的PseKNC編碼器代碼與參數(shù)說明下面寫一個(gè)最小可用的PseKNC編碼器邏輯上只依賴numpy物化屬性表從property.json讀入。這個(gè)腳本在源碼包里就是pseknc_encode.py的骨架。import json import numpy as np NUC {A: 0, C: 1, G: 2, U: 3} # 實(shí)際使用中從property.json讀入這里只做示意 with open(property.json, r, encodingutf-8) as f: props json.load(f) def kmer_frequency(seq, k): 計(jì)算k-mer頻率歸一化向量, 維度4^k vec np.zeros(4 ** k, dtypenp.float64) for i in range(len(seq) - k 1): idx 0 for nt in seq[i:ik]: idx idx * 4 NUC[nt] vec[idx] 1.0 total len(seq) - k 1 return vec / total def pseknc(seq, k5, lam6, w0.5): 生成PseKNC特征向量 第一段: k-mer頻率 第二段: lambda階相關(guān)函數(shù), 每階輸出m個(gè)屬性值 freq_vec kmer_frequency(seq, k) m len(props[list(props.keys())[0]]) # 屬性個(gè)數(shù) lambda_vec np.zeros(lam * m, dtypenp.float64) n len(seq) # 每一階j: 計(jì)算相隔j的兩個(gè)k-tuple在全部屬性上的差異平方 for j in range(1, lam 1): if n - k - j 1 0: break diff_sum np.zeros(m, dtypenp.float64) for i in range(n - k - j 1): sub1 seq[i:ik] sub2 seq[ij:ijk] if N in sub1 or N in sub2: continue vec1 np.array(props[sub1], dtypenp.float64) vec2 np.array(props[sub2], dtypenp.float64) diff_sum (vec1 - vec2) ** 2 # 歸一化除以有效窗口數(shù) valid_cnt n - k - j 1 lambda_vec[(j-1)*m : j*m] diff_sum / valid_cnt # 拼接: 頻率部分權(quán)重為1, 相關(guān)部分乘w feature np.concatenate([freq_vec, w * lambda_vec]) return feature # 示例: 以C為中心的41nt窗口 seq ACGUCGGACUACGUAUCGACAUGCUAGCUAGCUAUCGGUAGC feat pseknc(seq, k5, lam6, w0.5) print(feat.shape) # (1060,)代碼邏輯其實(shí)不復(fù)雜。先算k-mer頻率得到前1024維再遍歷從1到lambda的每個(gè)階數(shù)j把所有相隔j的k-tuple對做逐屬性差平方累加最后除以有效對數(shù)做歸一化得到后36維。有個(gè)細(xì)節(jié)容易踩坑當(dāng)序列里有N未知堿基時(shí)直接算props[sub1]會(huì)KeyError崩潰所以循環(huán)里先跳過含N的子串但如果跳過太多valid_cnt太小數(shù)值會(huì)失真。正確的做法是先過濾掉含N比例高于5%的窗口否則后面的歸一化就是拿垃圾數(shù)據(jù)在算。lambda值不是越大越好對41nt窗口來說k5時(shí)最多只能算到41-5-135階但實(shí)際用超過6階后特征維度上升信息增益卻很小。w的默認(rèn)值0.5意味著物化部分占后段半權(quán)如果數(shù)據(jù)噪聲大把w調(diào)小到0.2往往能防止模型過度依賴這部分?jǐn)?shù)值。3. 把FASTA和位點(diǎn)表變成特征矩陣窗口抽取與PseKNC編碼的完整腳本3.1 正負(fù)樣本怎么取以C為中心定長窗口的構(gòu)造規(guī)則ac4C識(shí)別本質(zhì)是二分類給定基因組里某個(gè)C判斷它是不是ac4C修飾位點(diǎn)。正樣本來自已發(fā)表的ac4C測序數(shù)據(jù)如ac4C-seq標(biāo)注為修飾位點(diǎn)的C是“正”負(fù)樣本則取那些在同一條轉(zhuǎn)錄本上、沒有被實(shí)驗(yàn)檢測到修飾的C。構(gòu)造樣本時(shí)有一個(gè)潛規(guī)則窗口必須以C為中心取左右各20nt共41nt而不是隨便截一段序列。原因很直接——模型學(xué)的是“C位點(diǎn)周圍的環(huán)境”如果窗口里C不在中心模型會(huì)學(xué)出位置偏差部署時(shí)用任何C做預(yù)測結(jié)果就會(huì)亂套。負(fù)樣本的抽取如果沒有約束條件極度容易翻車。最簡單粗暴的做法是隨機(jī)取若干非修飾C做負(fù)樣本但這幾乎一定會(huì)引入冗余序列因?yàn)橥粭lmRNA上臨近位點(diǎn)序列高度相似負(fù)樣本可能和正樣本長得差不多。常見做法是按轉(zhuǎn)錄本分層先把位點(diǎn)按所在轉(zhuǎn)錄本分組正樣本一條轉(zhuǎn)錄本可能有幾個(gè)負(fù)樣本從同一條轉(zhuǎn)錄本的非ac4C C位點(diǎn)里抽控制比例在1:1到1:2之間。這樣的好處是模型必須學(xué)會(huì)區(qū)分修飾和非修飾環(huán)境而不是記“哪些轉(zhuǎn)錄本被標(biāo)注了”。另外注意對mRNA數(shù)據(jù)尤其重要轉(zhuǎn)錄本序列要去掉poly(A)尾再取窗口不然尾部一連串A會(huì)讓特征向量里k-mer頻率分布嚴(yán)重傾斜。源碼包里數(shù)據(jù)目錄通常有positive.fa和negative.fa兩個(gè)文件每個(gè)fasta的header會(huì)記錄轉(zhuǎn)錄本ID和位點(diǎn)坐標(biāo)這是后續(xù)做分層驗(yàn)證的關(guān)鍵元數(shù)據(jù)。3.2 窗口抽取與數(shù)據(jù)集生成完整代碼假設(shè)你手里有三個(gè)輸入?yún)⒖嫁D(zhuǎn)錄組序列transcriptome.fa正位點(diǎn)表positive_sites.txt至少包含轉(zhuǎn)錄本ID、位點(diǎn)坐標(biāo)負(fù)位點(diǎn)表negative_sites.txt。寫一個(gè)bash腳本或Python腳本把這些原始數(shù)據(jù)轉(zhuǎn)成等長窗口FASTA再調(diào)用上一節(jié)的pseknc函數(shù)生成特征矩陣。import pandas as pd from Bio import SeqIO # 讀轉(zhuǎn)錄本序列 seq_dict {} for record in SeqIO.parse(transcriptome.fa, fasta): seq_dict[record.id] str(record.seq).upper() def extract_window(seq, center_pos, half_win20): 在轉(zhuǎn)錄本序列中截取以center_pos為中心、長度為2*half_win1的窗口 start int(center_pos) - half_win end int(center_pos) half_win 1 if start 0 or end len(seq): return None # 越界丟棄 window seq[start:end] # 如果中心位置不是C則跳過數(shù)據(jù)清洗 if window[half_win] ! C: return None return window # 讀位點(diǎn)列表 positive_df pd.read_csv(positive_sites.txt, sep\t, names[transcript, position]) negative_df pd.read_csv(negative_sites.txt, sep\t, names[transcript, position]) positive_df[label] 1 negative_df[label] 0 all_sites pd.concat([positive_df, negative_df], ignore_indexTrue) # 生成等長窗口 windows [] labels [] for _, row in all_sites.iterrows(): tx_seq seq_dict.get(row[transcript]) if tx_seq is None: continue # 位點(diǎn)對應(yīng)的轉(zhuǎn)錄本缺失 win extract_window(tx_seq, row[position], half_win20) if win is not None and N not in win: windows.append(win) labels.append(row[label]) # 寫回FASTA, 后續(xù)編碼步驟直接使用 with open(ac4c_windows.fa, w) as f: for i, (win, lab) in enumerate(zip(windows, labels)): f.write(fseq_{i}|label_{lab}\n{win}\n) from sklearn.model_selection import train_test_split X_text, X_val_text, y_train, y_val train_test_split( windows, labels, test_size0.2, random_state42, stratifylabels) print(f訓(xùn)練集窗口數(shù): {len(X_text)}, 驗(yàn)證集窗口數(shù): {len(X_val_text)})這段代碼處理了三個(gè)核心問題。第一窗口越界時(shí)直接返回None并跳過避免把序列頭尾不完整的片段送進(jìn)編碼器第二中心位置強(qiáng)制檢查必須是C因?yàn)閍c4C位點(diǎn)不可能出現(xiàn)在非C上這是正樣本最底層的生物學(xué)約束第三用train_test_split后接stratify按標(biāo)簽分層保證正負(fù)樣本在訓(xùn)練集和驗(yàn)證集里比例一致。注意此時(shí)存的是窗口字符串列表還沒做PseKNC編碼先分開是因?yàn)榫幋a器在CPU上吃內(nèi)存分批編碼比一次性全量算可靠得多。實(shí)際項(xiàng)目中我一般會(huì)再輸出一份包含“轉(zhuǎn)錄本ID、位點(diǎn)坐標(biāo)、label、窗口序列”的樣本清單后面做leave-one-transcript-out驗(yàn)證時(shí)全靠這張表的轉(zhuǎn)錄本ID字段做分組過濾。跳過這一步等模型訓(xùn)練完再回頭想去重就晚了。3.3 編碼循環(huán)的邊界處理與數(shù)據(jù)規(guī)模估算有了窗口FASTA下一步就是把每個(gè)窗口過一遍2.3節(jié)的pseknc()拼成特征矩陣。這個(gè)環(huán)節(jié)很容易被低估時(shí)間成本1024維的k5編碼在普通筆記本上每個(gè)窗口大約要算0.5~1ms1萬個(gè)樣本也就是5~10秒看起來不慢。但如果lambda設(shè)到10、k設(shè)到6維度變成4?6×104156計(jì)算量會(huì)成倍增長尤其是相關(guān)項(xiàng)兩層循環(huán)是O(L×lambda×k)Python純循環(huán)能慢到分鐘級。所以實(shí)際操作里建議把窗口序列按批處理一次傳一個(gè)列表給pseknc_batch順便打印進(jìn)度def pseknc_batch(seq_list, k5, lam6, w0.5): 批量編碼并返回二維數(shù)組(樣本數(shù), 特征維度) features [] for i, seq in enumerate(seq_list): if (i 1) % 1000 0: print(f已編碼 {i1} 條) features.append(pseknc(seq, kk, lamlam, ww)) return np.vstack(features)另一個(gè)邊界坑是“序列長度不足”。轉(zhuǎn)錄本5和3末端附近的位點(diǎn)經(jīng)常湊不齊左右各20nt這時(shí)候兩個(gè)選擇如果數(shù)據(jù)集大直接丟棄如果數(shù)據(jù)集小舍不得丟就把缺失端補(bǔ)N但補(bǔ)N的段落會(huì)讓k-mer頻率出現(xiàn)多個(gè)0PseKNC相關(guān)項(xiàng)遇到N又會(huì)跳過造成這幾條樣本特征向量整體偏小。寧可用“半窗口”即一側(cè)只有15nt也不要去補(bǔ)N半窗口至少保留真實(shí)序列信息。數(shù)據(jù)規(guī)模上有個(gè)經(jīng)驗(yàn)值正樣本一般只有幾百到幾千條ac4C-seq公共數(shù)據(jù)量并不大負(fù)樣本按1:1或1:1.5抽取后總計(jì)超過2萬的場景很少。如果位點(diǎn)表里有幾十萬條待預(yù)測未標(biāo)注位點(diǎn)那是預(yù)測階段不是訓(xùn)練階段訓(xùn)練集控制在1萬到2萬規(guī)模足夠。4. 用隨機(jī)森林和SVM訓(xùn)練ac4C識(shí)別器分類指標(biāo)與參數(shù)設(shè)置4.1 先把baseline跑通隨機(jī)森林與SVM的參數(shù)表特征矩陣準(zhǔn)備好后模型選擇的第一原則是“先跑一個(gè)穩(wěn)健的baseline再談花活”。ac4C修飾位點(diǎn)樣本通常不到一萬在這個(gè)量級下隨機(jī)森林和線性核SVM往往比復(fù)雜深度學(xué)習(xí)模型更抗過擬合。標(biāo)題這套Python源碼里常見做法是提供兩個(gè)基準(zhǔn)模型隨機(jī)森林用于快速驗(yàn)證特征有效性SVMRBF核用于對比線性可分性。關(guān)鍵參數(shù)表模型關(guān)鍵超參數(shù)推薦初值調(diào)參理由RandomForestn_estimators300~500太少方差大太多訓(xùn)練慢500后增益飽和RandomForestmax_depthNone默認(rèn)特征1060維時(shí)深樹容易過擬合可限制15~30RandomForestclass_weightbalanced_subsample負(fù)樣本略多時(shí)緩解類別不均衡RandomForestmin_samples_leaf2~5提高泛化避免單樣本葉子SVM(RBF)C1~10越大越容易過擬合先試1SVM(RBF)gamma1/特征維數(shù)默認(rèn)auto即可或scale通用特征標(biāo)準(zhǔn)化StandardScalerSVM必須做RF可不做一個(gè)極易被忽視的點(diǎn)SVM對特征尺度極其敏感PseKNC的k-mer頻率部分是0到1之間的小數(shù)而相關(guān)部分乘了w0.5后量級接近但不同樣本間標(biāo)準(zhǔn)差可能相差很大。不對特征做標(biāo)準(zhǔn)化就上RBF核SVM結(jié)果往往比隨機(jī)森林差一大截這不是模型不行是輸入尺度沒對齊。隨機(jī)森林是樹模型所有特征一視同仁地參與切分標(biāo)準(zhǔn)化基本無影響所以也有人直接跳過標(biāo)準(zhǔn)化只跑RF。4.2 訓(xùn)練與交叉驗(yàn)證代碼一套完整流程把編碼后的特征矩陣保存為npz格式接下來的訓(xùn)練腳本可以直接讀入。下面這段代碼是訓(xùn)練的主流程包含標(biāo)準(zhǔn)化、交叉驗(yàn)證和關(guān)鍵指標(biāo)輸出import numpy as np from sklearn.model_selection import StratifiedKFold from sklearn.ensemble import RandomForestClassifier from sklearn.svm import SVC from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, matthews_corrcoef def load_features(npz_path): data np.load(npz_path) return data[X], data[y] X, y load_features(ac4c_features.npz) print(f特征矩陣: {X.shape}, 正樣本比例: {y.mean():.3f}) skf StratifiedKFold(n_splits5, shuffleTrue, random_state42) # 隨機(jī)森林baseline rf RandomForestClassifier( n_estimators500, max_depth20, min_samples_leaf3, class_weightbalanced_subsample, n_jobs-1, random_state42 ) # 記錄各折指標(biāo) for fold, (train_idx, val_idx) in enumerate(skf.split(X, y)): X_train, X_val X[train_idx], X[val_idx] y_train, y_val y[train_idx], y[val_idx] # 注意: 標(biāo)準(zhǔn)化時(shí)只用訓(xùn)練集的均值和方差, 防止數(shù)據(jù)泄漏 scaler StandardScaler() X_train_scaled scaler.fit_transform(X_train) X_val_scaled scaler.transform(X_val) rf.fit(X_train_scaled, y_train) pred rf.predict(X_val_scaled) acc accuracy_score(y_val, pred) mcc matthews_corrcoef(y_val, pred) sn recall_score(y_val, pred) # 敏感性/召回率 sp recall_score(y_val, pred, pos_label0) # 特異性 print(f折{fold1}: ACC{acc:.4f}, SN{sn:.4f}, SP{sp:.4f}, MCC{mcc:.4f}) # 全量數(shù)據(jù)上重新訓(xùn)練, 用于后續(xù)保存模型 rf.fit(X, y)邏輯說明都在注釋里了這里只強(qiáng)調(diào)三個(gè)原則。第一StandardScaler只能用訓(xùn)練集的mean和std去變換驗(yàn)證集如果對整個(gè)X先fit再切分驗(yàn)證集信息會(huì)滲入訓(xùn)練過程MCC虛高是必然結(jié)果。第二class_weightbalanced_subsample讓每棵樹的bootstrap采樣自動(dòng)按類別權(quán)重補(bǔ)償比手動(dòng)下采樣更方便也不會(huì)丟掉負(fù)樣本的多樣性。第三正樣本比例通過y.mean()先打印出來如果這個(gè)值高于0.5說明正樣本多于負(fù)樣本那你得回頭檢查是不是位點(diǎn)表抽錯(cuò)了而不是直接訓(xùn)練。RBF核SVM的代碼換一下模型部分就能復(fù)用但SVM在小數(shù)據(jù)集上訓(xùn)練速度尚可一萬樣本、1060維大約需要幾秒到幾十秒。如果換成LinearSVC會(huì)快很多但識(shí)別效果通常比RBF弱一點(diǎn)因?yàn)镻seKNC特征本身已經(jīng)是平滑向量RBF核能更細(xì)致地捕捉物化相關(guān)項(xiàng)的局部模式。4.3 讀懂分類報(bào)告SN、SP、MCC比ACC重要得多很多新手看到ACC0.93就高興得不得了但在這個(gè)任務(wù)里ACC是最沒意義的指標(biāo)。當(dāng)負(fù)樣本是正樣本1.5倍時(shí)模型只要把所有樣本預(yù)測為負(fù)仍能拿到60%的正確率所以必須盯著四個(gè)指標(biāo)看SN敏感性/召回率sensitivity正樣本里被正確預(yù)測的比例越高代表漏掉修飾位點(diǎn)越少SP特異性specificity負(fù)樣本里被正確預(yù)測的比例越高代表誤報(bào)越少M(fèi)CC馬修斯相關(guān)系數(shù)綜合考慮四類預(yù)測的一致性分?jǐn)?shù)取值范圍-1到10是純隨機(jī)0.7以上才算模型真的學(xué)到東西AUCROC曲線下面積不依賴閾值最穩(wěn)健的排序性指標(biāo)。真實(shí)推到臨床或者往生物驗(yàn)證方向推的場景里寧可SN稍低也要保SP因?yàn)楹罄m(xù)實(shí)驗(yàn)驗(yàn)證ac4C位點(diǎn)的成本極高誤報(bào)多了等于讓你在濕實(shí)驗(yàn)里白跑幾十個(gè)PCR。反過來做組學(xué)篩庫時(shí)要的是Recall優(yōu)先漏掉一個(gè)位點(diǎn)等于丟掉一個(gè)潛在靶標(biāo)。兩種需求靠調(diào)整決策閾值實(shí)現(xiàn)而不是重新訓(xùn)練模型。隨機(jī)森林的predict_proba輸出可以拿到每個(gè)樣本的概率再按業(yè)務(wù)目標(biāo)找一個(gè)自己想要的閾值。用scikit-learn計(jì)算AUC只多兩行from sklearn.metrics import roc_auc_score prob rf.predict_proba(X_val_scaled)[:, 1] auc roc_auc_score(y_val, prob)記下來這個(gè)AUC值它就是后續(xù)所有特征工程改進(jìn)的基準(zhǔn)線。如果換k、調(diào)lambda之后AUC沒有上升反而掉了說明你改的參數(shù)方向不對回退到原來的值就好這就是“后悔藥”的操作依據(jù)。5. ac4C位點(diǎn)識(shí)別中的5個(gè)常見翻車點(diǎn)與排查方法5.1 序列重疊導(dǎo)致的數(shù)據(jù)泄漏模型MCC虛高到0.9現(xiàn)象訓(xùn)練集MCC 0.85驗(yàn)證集MCC 0.62代碼看起來沒毛病但結(jié)果不對勁。細(xì)看發(fā)現(xiàn)同一轉(zhuǎn)錄本上的相鄰位點(diǎn)一部分進(jìn)了訓(xùn)練集一部分進(jìn)了驗(yàn)證集兩條窗口序列在PseKNC編碼后高度相似模型在驗(yàn)證集上等于見到了訓(xùn)練集樣本的“孿生兄弟”。原因負(fù)樣本抽樣和數(shù)據(jù)集劃分時(shí)沒有按轉(zhuǎn)錄本分組。同一條mRNA里兩個(gè)C位點(diǎn)相距不足100nt它們周圍的局部序列有大量重復(fù)區(qū)域特征向量的k-mer頻率部分幾乎一致。解決用GroupKFold或GroupShuffleSplit把“轉(zhuǎn)錄本ID”作為分組依據(jù)保證同一個(gè)轉(zhuǎn)錄本的所有窗口只出現(xiàn)在訓(xùn)練集或只出現(xiàn)在驗(yàn)證集絕不允許跨組。源碼包里應(yīng)該提供group_split.py腳本如果你拿到手的代碼沒有自己按groupby(transcript)去重再切分。5.2 負(fù)樣本“富U”導(dǎo)致模型學(xué)到堿基組成偏好現(xiàn)象SN0.9但SP0.55意味著模型瘋狂預(yù)測正類把很多負(fù)C也判成ac4C。檢查負(fù)樣本序列的U含量分布發(fā)現(xiàn)負(fù)樣本整體U含量顯著高于正樣本。原因負(fù)樣本隨機(jī)抽出時(shí)沒控制堿基組成湊巧這批負(fù)樣本序列里有大量U富集片段。ac4C修飾本身可能與某些U富集環(huán)境互斥模型直接學(xué)到了“U多就是負(fù)類”這條捷徑忽略了真正的結(jié)構(gòu)特征。解決按U含量分層抽樣負(fù)樣本。先把所有候選負(fù)位點(diǎn)按窗口內(nèi)U含量分桶比如每隔5%一個(gè)桶再從每個(gè)桶里等量抽取保證負(fù)樣本的堿基組成分布接近正樣本。一般做法是1:1抽樣后檢查兩組U含量均值差異超過3%就重新抽。5.3 PseKNC物化屬性表不一致復(fù)現(xiàn)別人結(jié)果對不上現(xiàn)象同一套序列你用源碼跑出1060維特征別人論文里說是1052維或多出兩個(gè)屬性項(xiàng)模型指標(biāo)和論文對不上。原因PseKNC的“六個(gè)物化屬性”在不同實(shí)現(xiàn)里存在版本差異有的實(shí)現(xiàn)加了“溶劑可及性”作為第7個(gè)屬性有的把λ從1開始而別的從0開始屬性值本身存在多個(gè)經(jīng)典來源DINAC、iLearnPlus默認(rèn)表數(shù)值小數(shù)點(diǎn)后幾位都不完全一樣。解決項(xiàng)目里必須鎖死一張屬性表文件property.json并在README里寫明屬性來源和維度公式。我一般會(huì)在訓(xùn)練腳本開頭打印一次特征維度拿題庫里的標(biāo)準(zhǔn)復(fù)現(xiàn)時(shí)先核對維度是否和論文一致。如果維度差太多先檢查k、lambda、m三個(gè)參數(shù)再檢查屬性表里每個(gè)key是二核苷酸還是三核苷酸。5.4 窗口中心C的位置值偏移預(yù)測階段全部錯(cuò)位現(xiàn)象訓(xùn)練時(shí)手寫的位點(diǎn)坐標(biāo)是從0開始計(jì)數(shù)的預(yù)測新數(shù)據(jù)時(shí)坐標(biāo)換成從1開始結(jié)果窗口偏移一位看著模型精度大降。原因Python和許多BED工具坐標(biāo)定義不一致。BED格式是0-based半開區(qū)間VCF/GTF格式是1-based全閉區(qū)間轉(zhuǎn)換時(shí)忘記減1整個(gè)窗口左右平移1個(gè)堿基關(guān)鍵C位點(diǎn)不再是窗口正中間。解決單獨(dú)寫一個(gè)坐標(biāo)歸一化函數(shù)每次讀位點(diǎn)表時(shí)統(tǒng)一轉(zhuǎn)成“0-based的內(nèi)部坐標(biāo)”并在窗口抽取函數(shù)里斷言半窗位置window[20]C。之前3.2節(jié)的代碼里這行斷言就是干這個(gè)事的寧可在這里拋異常提前終止也不帶病訓(xùn)練。5.5 高維特征直接送進(jìn)小樣本模型過擬合到“背誦數(shù)據(jù)集”現(xiàn)象正樣本只有800條特征維度1060維隨機(jī)森林訓(xùn)練集F1幾乎1.0驗(yàn)證集只有0.6出頭。原因樣本量比特征維度還小樹模型很容易找到能完美區(qū)分訓(xùn)練集的特征組合但這是噪聲記憶不是規(guī)則發(fā)現(xiàn)。解決優(yōu)先降kk5的1024維頻率對小數(shù)據(jù)集壓力很大改成k4256維同時(shí)lambda424維總維數(shù)降到280左右往往模型更穩(wěn)。如果還過擬合就把max_depth限制到15以內(nèi)、min_samples_leaf調(diào)大到10。更進(jìn)階的做法是在PseKNC后再接一層PCA或LDA降維到100維但會(huì)犧牲特征可解釋性。6. 讓模型結(jié)果更可信轉(zhuǎn)錄本級別驗(yàn)證與特征歸因分析6.1 用留一轉(zhuǎn)錄本交叉驗(yàn)證判斷模型是否真的學(xué)到了規(guī)則普通5折交叉驗(yàn)證的分?jǐn)?shù)只是第一道坎。對于ac4C這種修飾位點(diǎn)在轉(zhuǎn)錄本上分布極不均勻的任務(wù)真正的考驗(yàn)是“換一條沒見過的轉(zhuǎn)錄本模型還能不能識(shí)別”。留一轉(zhuǎn)錄本交叉驗(yàn)證Leave-one-transcript-out的做法循環(huán)里每次拿一條轉(zhuǎn)錄本的全部位點(diǎn)作為測試集其余轉(zhuǎn)錄本全部做訓(xùn)練集序列完全不重疊檢驗(yàn)的是跨轉(zhuǎn)錄本泛化能力。代碼實(shí)現(xiàn)上基于第3章的樣本清單做group循環(huán)from sklearn.model_selection import LeaveOneGroupOut from sklearn.ensemble import RandomForestClassifier # groups是每個(gè)樣本對應(yīng)的轉(zhuǎn)錄本ID數(shù)組, 和X行一一對應(yīng) groups np.array(sample_df[transcript].values) logo LeaveOneGroupOut() mcc_scores [] for train_idx, val_idx in logo.split(X, y, groups): rf.fit(X[train_idx], y[train_idx]) pred rf.predict(X[val_idx]) mcc_scores.append(matthews_corrcoef(y[val_idx], pred)) print(f平均MCC: {np.mean(mcc_scores):.4f}, 標(biāo)準(zhǔn)差: {np.std(mcc_scores):.4f})如果LeaveOneGroupOut的MCC比普通交叉驗(yàn)證低0.15以上說明模型在“背轉(zhuǎn)錄本”而不是在學(xué)修飾信號。這種情況補(bǔ)救措施依次是去掉正樣本和其他轉(zhuǎn)錄本序列相似度過高的冗余序列CD-HIT-EST聚類去冗余、增加負(fù)樣本多樣性、嘗試特征列篩選。6.2 特征歸因看PseKNC的哪部分特征在起作用只拿AUC說話始終是黑匣子要說服生物學(xué)背景的合作者得把特征重要性講清楚。隨機(jī)森林自帶feature_importances_屬性因?yàn)镻seKNC特征結(jié)構(gòu)規(guī)整可以按位置回切前1024維是k-mer頻率后36維是6屬性×6階的相關(guān)項(xiàng)。把重要性數(shù)組按段累加就能算出兩類特征對預(yù)測的貢獻(xiàn)比例。importances rf.feature_importances_ freq_part importances[:1024] lambda_part importances[1024:] print(fk-mer頻率特征貢獻(xiàn)占比: {freq_part.sum():.2f}) print(f物化相關(guān)項(xiàng)特征貢獻(xiàn)占比: {lambda_part.sum():.2f})如果物化相關(guān)項(xiàng)貢獻(xiàn)占比低于10%說明當(dāng)前數(shù)據(jù)集里PseKNC引以為傲的物化性質(zhì)并沒有幫上忙這時(shí)候不要慌先檢查w是不是設(shè)成0了再檢查屬性表里數(shù)值是不是全為0。更常見的情況是k5下頻率部分信息已經(jīng)足夠強(qiáng)相關(guān)項(xiàng)只是錦上添花。如果你想讓模型更輕量完全可以只用k-mer頻率跑一版對比然后把兩者差異寫進(jìn)論文的消融實(shí)驗(yàn)里。6.3 用SHAP找定位點(diǎn)關(guān)鍵序列上下文如果只是自己調(diào)參特征重要性夠了但如果要給文章補(bǔ)一張解釋性圖SHAP是更好的工具。SHAP能給出“每個(gè)樣本內(nèi)每個(gè)特征對預(yù)測的貢獻(xiàn)方向和大小”把它映射回堿基位置就能粗略看到ac4C位點(diǎn)上游哪些位置對決策影響最大。import shap explainer shap.TreeExplainer(rf) shap_values explainer.shap_values(X_val_scaled[:500]) # 把每個(gè)位置的最大SHAP值歸一到位置上, 繪制位置重要性曲線 shap.summary_plot(shap_values[1], X_val_scaled[:500], feature_namesfeat_names)實(shí)操上有兩點(diǎn)通用經(jīng)驗(yàn)。一是SHAP計(jì)算量大取500個(gè)樣本足夠看趨勢。二是PseKNC的維度不對應(yīng)單個(gè)堿基位置對應(yīng)的是某個(gè)k-mer子串或相關(guān)階數(shù)所以解釋時(shí)要反向映射找出SHAP值最高那一維的編碼索引反查這個(gè)索引對應(yīng)的k-mer序列比如第1024維前半段索引609反查出來可能是“CGU”。這一步做下來往往能發(fā)現(xiàn)ac4C位點(diǎn)富集的motif這個(gè)motif對后續(xù)做實(shí)驗(yàn)驗(yàn)證或者設(shè)計(jì)新的預(yù)測特征都有直接價(jià)值。整套流程跑完后我自己最深的感受是特征工程在修飾預(yù)測里永遠(yuǎn)是第一優(yōu)先級模型反而是配角。前期花兩個(gè)小時(shí)把PseKNC參數(shù)摸清、負(fù)樣本按組切分、標(biāo)準(zhǔn)化不泄漏比后期換十種花哨分類器都管用。希望這篇能幫你少走這些彎路一次跑通ac4C位點(diǎn)識(shí)別這條管線。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久久天美| 性生活久久久久久久久久| 中文字幕无码不卡啪啪| wuyechaopeng| 精品熟女一区=区三区| 亚洲乱码精品一区二区| 欧美青青草视频| 丁香六月婷婷综合| 色屁屁影院www国产| 神马久久免费电影观看| 日韩熟女精品无码专区一区二区| 少妇xx精品| 日本布卡一区二三区| 深田咏美亚洲精品福利社| 亚洲色婷婷综合久久久久中文| 91 手机在线播放 绯色| 国产一区二区在线电影| 狠狠色伊人亚洲综合网站色| 久久久78| 91碰碰| 久久国产99精品72福利| 影音先锋乱| 特级毛片特黄久久免费看| 青女偷拍网| 超碰亚洲欧美日韩无| 一个人免费HD91视频| 日本性交操一区二区不卡系列| 日韩欧美资源| 97色色国产视频| 九九视品黄色| 99这里有精品| 亚欧性爱ab| yw尤物av无码点击进入麻豆| 操逼网站网站| 青青草国产欧美非洲黑人| 九热超碰| 欧美青青草视频| 闷骚老熟女15P| 中国探花熟女| 黄色一级视| 日本操逼视频不卡直接放| 亚洲色交| 精品传媒在线一区| 91性网| 亚洲双插| 99999国产精品| 亚洲熟女一区二区| 久操免费视频| 啊啊啊啊啊啊啊啊在线观看| AAAA级日本片免费视频| 97人人夜夜精品视频| 水多多映视AV| 国产精品点击进入在线影院高清 | www.黄色在线| 精品九九国产无码| 欧美十八禁导航成人| 免费啪啪av| 99视频这有这里有精品| 欧美日韩91| 99色综合| 99日精品欧美国产| 91足交| 日本视频在线观看污污污| 国产操偷| 在线观看一卡二卡| 一区二区三区国产精产| 亚洲午夜蜜臀| 97综合在线| 清纯唯美综合亚洲| 大香蕉狠狠爱| 日本韩国国产精品一区| 亚洲精品啪视频| 日韩不卡av一二三| 国产精品对白内射| 青青三级视频| 亚洲人体视频在线观看| 国产尤物AV尤物在线观看不卡| 国产精品老师| 日韩精品一区二区三区色欲| 国产亚洲一黄| 大香蕉男人的天堂| 中文字幕 av v| 欧美劲爆第一页| 97在线观看| 亚洲黄片免费在线播放| 色婷五月| 无码久| 9 1果冻精品视频| 亚洲男人天堂网站| 成人午夜小视频手机在线看| 青青草日韩无码| 精品一区二区3区| 久久精品天美| 亚洲日韩欧美一区二区| 人人人干干人人干| 亚洲国产激情国产av| 欧美日韩夜夜| 97 国产精品| 国产成人91一区二区三区| 操逼天美3区| 欧美国产日韩高清在线| 日本东京热大香蕉a片| 桑老女人九区| 日韩人妻一二三区视频| 国产成人亚洲精品自产在线| 国产久久久久影院老熟女| 久久精品91| 久久精品国产精品一区| 九九热免费视频| 呦女网站| 乱性AV| 成人片在线播放| 神马午夜久久久| 熟女熟妇一区二区三区视频| www.av在线视频| 亚洲五月丁香花狠狠干一区二区三区 | 欧美三级一级| 啊啊啊免费| 欧美,日韩综合久久| 日韩丝袜人妻AV| 亚洲欧美日韩不卡人妻| 精品区国产区一区二区三区| 欧美国产操逼| 操逼网站视频漫画国产| 美女尤物人人操| 国产精品爱欲| caopeng97人妻| 欧美色图片| 五月丁香网站| 国产熟女一区二区| 五月婷婷色色| 亚洲97在线观看| 婷婷色在线| 人人操人人操人妻人| 色狠狠 - 百度| 亚州成人a∨| 欧美不卡五十路| 熟女日韩| 天天夜躁日日躁狠狠2002| 国产av白丝| 国产精品香蕉| 久久综合精品一区二区三区| 成人av毛片在线观看| 日韩啪啪视频| 久久区| 成年女人一区| 91人妻精华帖| 91挑色欧美| 久久久久亚洲?V片无码V| 日本一区二区三区欧美日韩中文字幕| 日本αv| 欧美72网页| 手机在线A片| 自拍第一页| 亚洲一区日韩| 久久久久97| AND人妻系列| 精品九九国产无码| 欧美人妻中出| 99色在线视频| 久久精品国产AV一区二区三区| 久久a久久| 极品销魂美女一区二区| 日日做夜狠狠爱欧美黑人| 久久久久九九九| 一卡二卡三卡| 国产成人主播| 私色综合网| 黄色工厂这里只有精品| 欧美色九九九| 久久久蜜桃一区二区三区| 97操| 97精品视频在线| 亚洲色五月| 91影库| 99热国产| 日本精品国产视频| 强奸乱伦Av网| 97超碰磁| 人妻色情天天操| 97超碰碰碰| 色操逼网| 青青免费在线视频一区 | 另类av综合久久| 激情专区综合| 多毛小伙内射老太婆| 好一吊区二区| 色性荡荡荡荡视频| 爱做久久久久久| 大肥女高潮bbwbbwhd视频| 久操av在线| 欧美性色综合网| 岛国片在线观看视频亚洲| 福利视频香蕉免费一区二区在线| 97视频播放| 亚洲成人妻日韩在线| 激情综合五月婷婷| 国产在线精品偷| 白丝被操91| 日日爱99| 立川理惠被中出无码| 国产天天噜一噜久久久| 嫩草影院永久在线制服丝袜| 丝袜无码a片| 成人综合色网| 又大又黄国产| 色综合一区二区三巨| 18禁中文字幕| 99re免费视频精品全部| 男人的天堂 在线一区| 久久线上视频免费看| 色网1| 麻豆天美传媒在线视频天堂| 男女91| 国产av高清版| 天美传媒国产原创中文字幕亚洲欧美另类| 国产成人自拍视频在线| 亚洲一区二区精品福利| AV污污污污| 久久久久人妻二区精品叶可怜| 亚洲国产丝袜熟女av| 女人久久久| 蜜臀久久99精品久久久久久无删减 | 国产熟女高潮一区二区三区| 久九9精品| 色婷婷一区二区三区久久午夜成人不| 欧美91网站| 亚洲自拍欧美国产首页网曝| 午夜综合在线| 天天操天天日青青草超碰av| 在线电影亚洲色图| 欧美肥臀在线| 2020中文字幕在线观看| 中文人妻av高清一区| 第四色奇米影视777| 人人贴人人摸| 亚洲午夜福利视频| 婷婷丁香六月天| 920日本午夜免费| 六六久久日韩不卡| 亚洲综合图文| 亚洲精品97中文字幕| 国产精品91一样| 日日夜夜国产综合| 九九人妻| 97超碰碰| 欧美日韩国产高清在线一二三区| 天美传媒一二三区永久网站| 欧美内射少妇| 久久亚洲天堂| 另类欧美色| 超碰国产精品无码| 一本一道人妻久久一区二区三区 | 欧美亚综合色图| 人妻少妇久久中文| AV女优男人的天堂| 一区二区三| 欧美呦呦性爱| 激情五月婷婷综合| 久久仑合| 1024午夜激情男人的天堂| 伊人国产AV| 日本媚薬中文字幕在线| 超碰精品日韩欧美国产| 国产精品一区二区 尿失禁| 亚洲色久| 天天操天天日天天干| 色天堂综合| 78精品| 黄色AAAAAAAAAAA大片| 色丁香久久| 性色中出| 日本幼女18+| 中文字幕中文字幕一区二区| 青青久操| 十八禁视频一区二区| 日韩啪啪啪啪啪| 久久久免费视频18| 不卡免费av在线播放| 97色色国产视频| 97视频免费播放| av天堂手机版追回| 国产av色网| av网页一区二区三区| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 内射白嫩美女| 天天看片青娱乐| 蜜乳av首页| 97天天在线| 亚洲色色探花| 亚洲大色鬼| 亚洲αv一区二区三区| 青青草吊丝| 热99这里有精品综合久久 | 日韩av不卡在线观看| 校园春色亚洲无码| 最新三级网址| 日韩中文字幕宗合在线| 999亚洲国产视频| 内射黑丝袜| 92午夜免费福利视频| 欧美影音在线| 九九综合久久| 天天日夜干| 日韩国语字幕| 天天做天天爱夜夜爽毛片试看| 黑人中出21连凳花野真衣| 国产在线综合网| 欧美综合色站| 日本 欧美 国产一区| 偷拍亚洲视频一区二区三区四区| 色播综合| 草草影院最新网址| 欧美综合中文| 91暧暧| 国产精品一区午夜福利| 久久熟女嫩草成人片免费| 国产久久久久久久久一区二区 | 日韩人妻无码专区| 成人精品在线免费视频| 久久精品日韩专区免费观看| 玖色AV| 国产乱伦性爱区| 91超碰在线观看| 婷色五月天| 大屁股人妻女教师撅着屁股| aV中文麻| 久久蜜色情在线视频xxx免费观看| 久操com| 91久久国产精品| 骚乳在线| 91chinese在线| 欧美91精品国产自产| 亚洲视频小说| 国产在线76页| 99热最新网址| 久久一级无码精品毛片6| 传媒在线观看一区二区三区| 夜夜久久| 97精品国产97久久久久久户外免费| ji熟女.com| 日韩97在线| 亭亭在线资源| 亚欧中文字幕在线视频| 中文字幕一区av| 人妻人人做人人澡人人爽欧美一区| 国产精品久久泡妞网站| 黑人粗大V S日韩女优视频| 亚洲情色第一页| 日韩亚洲Av人人夜夜澡人人爽| 97久久久| 九九九九9999| 九九九九一区| 龙兴卡官方查询| 中文字幕在线观看AV| 无码国产精品午夜不卡(| 一个人免费视频观看在线WWW | 色999;丁香五月| 黄色大片免费在线| 丁香婷婷五月| 蜜臀AV午夜精品久| 热久久无毒不卡| 亚洲少妇激情视频| 超碰97资源大奶| 亚洲黑丝在线| 国产精品麻豆成人AV艾秋| 成年人一级黄色毛片大全在线观看| 免费观看网黄| 熟女激情综合网| 亚洲资源站| 日韩欧视频| 99re在线视频这里只有精品| 日韩中文字幕宗合在线| 国产精品久久久999| 91成人国产综合久久精品蜜月| 日韩人妻资源网| 日本福利二区视频| 日本三级久| 国产11页| 18一区二区三区| 亚洲中文制服诱惑| 天天淫人人妻日日色| 91蜜臀熟女| 国产日本熟女顶级一区二区三区视频 | 国内精品伊人久久久久影院会| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 欧美少妇性乱| 久久少妇人妻| 99视频自拍区| 超碰色97| 岛国大片国产| 欧美黑人精品一区二区| 亚洲日本韩国在线| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 国产中文福利| 亚洲日本天堂| 日韩97超碰| 中文字幕三四五区| A级国产欧美激情在线| 欧美色www亚洲国产阿娇要播| 日本人妻丰满熟妇久久久久久| 亚洲国产一级黄色视频| 国产精品黄色三级av| 国产精品一级毛片不卡视| 日韩激情啪啪| 日韩性色b| 欧美成人亚洲精品| 久久久久久人| 热久久国产| 最新国产亚洲精品精品国产亚洲综合| 日本色色色| 久久精品一区二区三区不卡| 午夜欧美J进J出白浆流出久久久 | 女人与公拘交酡2020视频| 一区二区三区黄色片a| 日韩去日本高清在| 天天天肏屄欧美| 国模久久在线| 天天综合网日韩| 操操逼视频| 色综合久久久久| 欧美三级免费伊人| 99热线麻豆 | 97超级欧美| 亚洲丝袜二区在线| 国产精品久久天天干| 综合色图区| 丁香婷婷激情五月天无毒不卡| 九九九久| a一区二区三区乱码在线| 国产亚洲精品自在线亚洲情侣| 岛国AV一区二区电影| 香蕉大久久久| 色y情视频免费看| 日韩人妻资源在线看| 九九九九免费高| 97香蕉网| 欧美极品少妇交| 亚洲男人天堂视频| 国产三级资源在线观看| 美女超碰978| chaopen97久久| 成人影院永久免费观看网址| 一区二区三区精品黑丝白丝酒店对鸡| 久久久九| 国产精品蜜乳AV| 色噜噜人妻丝袜AV资源| 日本一区二区中文字幕久久| 婷婷九月| 青青草公开在线免费不卡视频| 高清成年美女黄网站免费大全| 日韩伦理久 久久 清纯| 97免费在线观看| 久久激情网| 欧美肥臀在线| 岛园激情| 色噜噜人妻av中文字幕| 久精品无码av一区二免费国产在线观看| 美女97超碰| 九九碰九九爱97超| 97视频网站在线观看| 91亚洲欧美激情| 91一起操| 欧美色九九| 国产福利第一视频| 99热精品在线观看| 综合色啪| 超碰97综合在线| 人妻人人操| 婷婷10月天青娱乐| 欧美男人一区| 国产精品久久久吖| 69人妻精品丰满熟女区| 国产精品点击进入在线影院| 国产偷人妻精品一区二区在线| 黄色电影在线播放综合网站 | 曰韩操B| 久久精品视| 最近2019中文字幕国语免费版| 亚洲天堂日本| 人人扣人人操| 在线亚洲欧美| 久久久不卡区一区二区三区久久久| 操操吧亚洲乱伦视频| 使劲用力艹少妇视频一区二区| 午夜激情成人在线观看| 97超色| 熟女乱伦二区| 操逼操2| 97伪v| 岛国成人av在线播放网址| www.91视频网| 最新av在线| 日本亚洲熟女视频| 国产v亚洲v日韩v欧美v片另类| 中文字幕片| 黄在线| 一区二区视频在看| 丰满少妇高潮无码| 97av在线视频| 97人人夜夜精品视频| 五月天亚洲网| 日韩97视频!在线| 草草网站影院白丝内射| 密臀在线一区尤物| 婷婷15月天青娱乐| 六月婷婷综合| 不卡一区二区日本视频| 91色狼| 欧洲精品一二三在线| 97AV爱| 超碰在线974| 97久久国产精品| 很很干很很操| 永久免费发布性爱网| 香蕉国产97| 欧美香蕉视xxx| 国产成人无码网站在线视频| 成人国产视频在线观看| 天天综合91入口| 老汉网| 亚州色交| 曰韩无码777| 久久久亚洲Av| 精品性爱| 亚洲国产97| 一级免费精品| 啊嗯嗯啊好大好爽| 五月天久久婷婷亚洲| 狠狠穞A片一區二區三區| 少妇无码av专区线| 日韩一级性爱无码| 欧亚日韩一区在线| 99热伊人| 午夜传煤十二区精品| 啊啊啊好舒服视频在线观看| 无码人妻丰满熟妇奶水区毛片| 久久99热这里只频精品6学生| 91社区拍啪人妻| 夜夜操美女| 91操熟女| 一级乱伦网站| 91网九色蝌蚪操熟女| 熟女人妻一区二区三区免费看 | 精品国产乱码久久久| 日韩精品大香蕉伊人在线| 97网址www| 97香焦色区| 夜夜草网站| 黄色片大香蕉| 天天日天天干天天整| 在线综合色| 久久成人国产| 92人人操人人| 亚洲激情在线| 一区二区 韩日AV| 长长久久88视频| 996热| 五月丁香色色网| 久久激情综合| 97WW精品| 欧美熟妇操操视频| 欧美色天堂网在线视频| 91路www| 日日碰视频网| 亚洲中文丝袜美腿诱惑字幕| 日日操夜夜操天天操免费观看麻豆| 日韩十八禁| 国产精品九九九| 亚洲欧美国产va在线播放频| 成在线人在线观看视频| 欧亚性爱视频免费看| 久久性视频| 色性综合| 亚洲91网站| av日韩中文字幕| 男同专区一区二区三区在线| 欧美黄页| 乱伦AVxx| 婷婷香蕉欧美在线一区二区三区| 好爽,再快点啊哈嗯嗯嗯嗯| 磁力99AV| 亚洲日本大香蕉1| 欧美激情专区| 欧美性爱第一区| 91精品国产麻豆国产自产在| 日韩欧美女优电影| 我中文字幕6区| 欧美97免费| 日韩av性爱在线播放| 无码av永久免费专区网站| 99热这里只有精品9| 天天日日日射| 草B在线| 精品国产三级av韩国在线| 乱伦Av网| 色噜噜国产在线| 久久久久久久久国产| 97在线免费视频观看| 国产第12页| 国产福利第一视频| 91成人国产综合久久精品蜜月| 欧美色图99| 亚洲AV秘无码一区..| 99碰碰| 美女AV一区二区| 99999亚洲| 国产精品婬乱一级毛片彝族| www四虎| 亚洲精品97久久中文字幕| 你懂的在线观看区国产| 久久精彩视频| 九九九九九九免费视频| 欧美人人曰人人操人人射射| 中文字幕高清20页视频| 人妻美腿丝袜日韩| 强奸乱伦AV一天堂网| 亚洲一区二区性爱电影| 天天做天天爱天天爽AV| 一起草视频在线| 成人午夜小视频手机在线看| 色五月第四色| 欧美精品成人一区二区在线观看| 久久久婷婷婷| 欧美体内射精| 能在线播放的国产三级| 熟妇女人妻呻吟久久AV| 色噜噜国产精品视频一区二区| 国产激情av女片自拍| 亚洲AV不卡在线观看尤物| 操国产高清| 超踫中文字幕| 国产美女自拍视频| 婷婷五月天色色| 美女十八禁| 欧美很很操视频| 久久精品综合| 搡老熟女老女人老熟妇免费视频| 9999久久久久| 看日韩操逼| 91AV国产精品| 中文字幕在线日亚州9| 久久精品女同亚洲女同13| 国产精品无套内谢| 男人的天堂久久狠| 国产剧情AV不卡在线观看| 一区二区视频你懂的| 亚洲AV无码翔田千里网站| 亚洲中文字幕日产无码久久| 无码人妻精品一区二区三区99不卡| 精品久久久av| 一区二区精品日韩欧美在线观看| 麻豆AV短剧| 人人操人人插人人摸人人干| 欧美色日| 亚洲欧洲综合视频在线| 日夜精品| 中文字日本乱码| 亚洲性爱电影| 午夜男女爽爽大片免费观看| 欧美性爱97超碰| 野狼福利社区| 97精品国产97久久久久久户外免费| 九九九九九精品视频| 欧美日韩成人在线| 亚洲超碰97| 96AV久久久| 国产精品嫩草影院午夜两性| 亚洲在高跟鞋自慰久久在色线| 亚洲图片激情综合另类| 九一综合网| 亚州操逼网| 黑人性欧美| 日韩精品 资源| 青娱乐淫乱1314| 极品后入免费视频| 亚洲黄网在哪免费看| 国产精选视频| 天堂资源欧美| 人人射人人操人人摸| 9丨久久九九九 | 中文字幕欧美精品亚洲日韩蜜臀| 99热精品在线| 新久久AV| 91色香| 青娱乐手机日韩在线视频| 午夜精品视频777| 欧美精品69性爱| 夜夜嗨老熟女AV一区二区三区| 91蜜桃婷婷狠狠久久综合9色| 天天看天天日| 超碰综合97在线| 国产人伦精品一区二区三区| 亚洲精品亚洲人成在线麻豆| 大香蕉一级黄色片久久| 亚洲自拍青操视频| 99热这里只有精| 黄网色一区二区三区四区精品| 加勒比伊人| 熟妇无码视频三区| 日韩av色图综合| 精品久热| 精品一区二区人妖| 国产精品久久aV| 蜜臀久久99精品久久久久久成人小说| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 欧美日韩婷婷中文| 天天摸,夜夜摸| 看黄片视频免费| 国产兽交视频在线播放| 亚洲同性aV综合| 夜夜青青无码影院| 99九九久久| 啊啊啊啊视频免费| 9 9精品一区二区三区| 久久国内| 综合 欧美 亚洲 日本| 91免费看一区二区三区| 欧美大的香蕉有线电视视频| 99精品丰满人妻无码| 久久精品老司| 亚洲男人的天堂V| 国产玖玖| 精品超碰中文在线| 久久久无码国精品无码三区三区| A片三级无码| 久操网线| 日韩乱伦影音先锋| 久久av一级av少妇av高潮| 国产综合日韩伦理| 国产传媒日韩| 国产日韩久久| 91丨九色丨东北熟女| 殴美在线AⅤ| 在线看片国产精品每日更新| 天天艹天天日| 国产精品毛片?v一区二区三区| 26uuu久久| 操国产逼| 1人人看人人摸人人操| 搡老女人911熟妇老熟女| 色欧洲| 看全色黄大色大片免费视频| 欧美狠狠干| 永久免费观看的毛片的网站| 看日韩黄片| 国产无码三级视频在线观看| 日本操逼aaaaa| 免费av在线播放二区| 翔田千里AⅤHD无码| 午夜福利无毒不卡| 中文字幕日韩人妻视频一区二区三区| 国产精品久久99日日| 激情视屏国产乱伦强奸| 国产精品视频白浆免费| 99久久久久| 亚洲性综合9| 国产夫妻一区二区| 亚洲大胆人体av| 啊啊啊啊在线播放| 91bbbbbb| 自拍偷拍草一草| 太久视频| www.夜夜操| 美女在线H91| 欧美大战久久久伊人| 91美女国产在线| 天天射夜夜骑| 強姦亂倫a| 熟女人妻一区二区三区| 日韩有码免费视频| 日韩9999| 久久久一区二区三区麻豆| 九七超碰| 亚洲色图日韩精品| 色婷婷丁香五月| 精品176精品2| 另类小说欧美激情校园春色| 欧美 精品国产制服第一页| 亚洲日韩美国人妻| av天天在线观看| 日本久久999| 五十路三区在线| 午夜120视频在线观看| 99欧美| 狠狠躁日日躁夜夜躁A| 另类欧美色| 国产成人一级av88| 校园春色之综合网| 中文字幕欧美日本乱码一线二线| 久操97| 亚洲欧美日韩精品久| 欧美日韩资源在线| 黄片无码在线制服| 久久一二三级一一一| 亚洲影视高清第一页| 18禁看网站一区| 亚洲成人在线播放| 欧美日韩另类字幕中文| 偷拍综合网| 91性高潮久久久久久久久| 国产精品网站免费| 夜色91| 国产大学生高潮在线播放| 啊啊啊在线观看免费视频| 91美女在线| 欧美性爱伊人| 欧美日韩青操| 可以免费看黄片的视频| 熟妇在线视频一区二区| 国内精品久9| 啪啪免费| 色娱乐色呦呦夜夜夜夜av| 91丨人妻丨国产丨丝袜| 九色PORNY9l原创自拍| 国产热av| 天天综合网日韩7799| 99re9这里只有精品| 日韩欧美加勒比| 高清无码网址| 99热一区二区三区四区| 精品性爱无码在线播放| 国产情色在线| 日韩人妻播放| 国产性爱欧美性爱在线| 2017人人操,人人摸| 亚洲日本男人天堂网| 国产精品扒开腿做爽爽爽视频| 99热综合| 久久久久国色αv免费观看| 亚洲国产欧美中日韩成人综合视频| 亚洲男人的天堂网| 国产熟女完整版中字| 超碰综合色| 国产毛片在线| 亚洲欲| 日韩性爱再线视频| 国产97在线播放| 婷婷丁香五月激情啪啪| 一本色道久久综合精品婷婷| 97色色网| 久久大黄片| 亚洲情色一区综合| 亚洲无码成人精品| 桃色人妻在线视频| 新版天堂中文资源8在线| 我爱操| 深爱五月婷婷| 福利视频合集| 欧美精品偷拍| 超碰成人最新最好看| 日韩欧美~中文字| 亚洲色图大香| 一级成人性爱| 天海翼久久| 国产中文字幕在线观看| 丁香九月激情啪| 天天综合中文字幕 91| 九久9热| 国产一进一出视频网站| 一摸二插三插| 亚洲av夫妻操穴网| 日韩中文字幕视频| 一本色道久久综合亚洲二区三区| www.色婷婷| 人妻一区二区三区视频 | 殴美在线AⅤ| 综合亚洲网| 欧美有码亚洲中文字幕一区二区三区四区| 亚洲乱色熟女一区| 亚洲图片欧美另类综合免费视频大大香| 激情九月婷婷| 亚欧高清| 久肏视频字幕| 狠插 制服 自拍| av天堂手机版追回| 亚洲av性爱电影| 中文字幕精品专区搜索结果91| 91大学精品激情戏| 中文字幕在线观看永久| 东京太热男人的天堂久久久| 精爱久久| 人妻少妇色综合| 国产精品嫩草久久久久| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 国产高清26uuu| 玖玖综合网| 熟妇国产免费一区| 久久熟女人| 熟女人妻一区二区三区| 四虎午夜影院| 一区二区影视| 91网站18+| 国产高清不卡视频| 天天综合色| 综合欧美激情网| 色吧5亚洲| 国产sv美女内射| 91操人| 天天综合香 ld视频| 99色婷婷| 最近2019中文字幕国语免费版| 欧美影院一区二区三区| 女人香蕉久久毛毛片精品| 美美91成人国产精品欧美精品久久久久久久| 婷婷亚洲天堂| 久色网| 日本精品高清一二区一本到| 成人AV超碰免费在线| 96久久久久| 中文字幕av片| 亚州高清av| 成人天天看站长推荐| 蜜臀久久99精品久久久久久久久| 99久久精品国产高潮| 国产精品国产自产高清AV| 黄色无码高清黄色无码网站| 人人澡人人干| 成人九九| 97在线免费公开视频| av72网| 久久婷婷亚洲欧| 亚洲天堂自拍| 99re9这里只有精品| 操狠狠| 久久黄黄| 亚洲一区深夜| 97超碰大| 色九九久九九| 亚洲干B| 欧美同性恋 的搜索结果 - 91n| 日日骚精品视频| 亚洲宗合网| 欧美中字不卡| 精品无码产区一区二| 好爽免费视频,| 九九九九免费视频| 果冻传媒一区二区三区| 亚州色图片在线色| 91精品少妇搡搡搡| 国产乱不卡| 99热在线只有精品| 男人的天堂久久| 97se亚洲综合自| 97在线免费看视频| 国产强奸乱伦第1页| 国语av狠狠色丁香婷婷综合激情| 亚洲国产成人精品女人久久久| 九七超碰| 操操逼视频| 久久毛卡| 久久久九九网站| 日日日日日| 日韩一999精品| 国内操逼视频二区| 欧美色图在线视频少妇| 亚州黄站| 综合另类| 搞中出久久| 中文久久爆乳| 天天影视综合网欧美精品| 歐美一級亂黃99在綫精品| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 丝袜美腿射精91| 青青草华人在线欧美在线| 91丰满| 亚洲啪啪视频免费| 秋霞蝌科网日本一区| www.久久| 午夜精品久久久久久久99热影院 | 国产综合永久精品日韩鬼片| www.久久久久| 欧美大香蕉97| 九九久久国产精品怡红院| 东京热双插| 久久美女国产| 激情丁香五月| 亚洲欧美setu| 欧美日韩久久精品爱爱| 日韩精品一区二区高清| 乱伦熟女区| 伊人成人情色综合| 视频在线97| 成全动漫视频观看免费下载| 影音先锋中文字幕日本好一区二区| 中文字幕一区av| 国产视频小说| 精品视频一区二区| 蜜桃av综合网发布| 亚洲第一页欧美| 欧美性色欧美| 欧美一级久久久久久久大片动画 | 中文字幕1区2区| 成人无码在线超碰网| 激情五月综合| 少妇色综合| 日本成熟少妇A∨网站| 人妻少妇av在线观看| 日han少妇无码| 91色插| 国产一区二区欧美日本| 亚洲av热热色| 97色色色| 91GD.COM| daxiangjiao你懂的| 成人免费视瓶| 亚洲夜色在线| 久久久无码精品人妻二区| 搞中出久久| 青娱乐国产剧情av一区| 日本网色| 久操影视| 乱伦a片视频| 歐美一級亂黃99在綫精品| 欧美宗合网| 国产大学生高潮在线播放| 亚洲涩涩| 国产一区二区三三视频| 日日夜夜骚| 成年无码动漫av片无尽在线| 婷婷五月天伊人| 99这里只有精品| 欧美日韩中文亚洲v在线综合| 91综合国产精品| 久久久久久久久久久免费精品| 99久久com免费视频′| 水滴偷拍| 99精品视频在线观看| 淫纸中9区| 欧美国产日韩高清在线| 肉丝中文无码高清| 亚洲av淫乱| 亚洲精品国产熟女久久久| 波多野结衣先锋影音| 超碰综合色| ..日韩av毛片精品久久久| 色 亚洲 91| 麻花豆传媒剧国产MV出差| 成人热久久精品| 日韩99精品视频综合区| 国产超碰在线一区| 亚洲黄色视频在线观看视频| 天天弄欧美| 午夜.DJ高清在线观看免费7| 久久精品视频28| 国产成年精品高清在线观看91| 亚洲天天影视综合网| 国产av强奸美女| 午夜综合在线| 国产97色在线| 亚洲人妻爽爽爽| 狠狠中文字幕| 成人免费性爱视视| 欧美色一二三| 狠狠色噜噜狠狠狠狠狠色综合久久| 国产第二页| 操逼网站地址| 色婷婷一区二区三区久久| 亚洲AV乱码专区国产噜噜亚洲 | 一本道综合色图| 性天堂| 美腿丝袜偷拍亚洲欧美| 国产精品干干干| 2017天天操天天日| 色香阁在线| 国产野战露脸在线播放| 黑人综合色| 精品国产乱码久久久久久影片| 男女性无套 免费九一| 青女在线| 久久曰曰| 国产福利视频精品视频| 97超色| 91原创在线观看| 国产高清精品一区二区三区毛片| 久久久内射良家| 中文字幕 人妻不满 在线视频| 肏逼视频日本| 91网站在线播放| 激激五月| 久久久亚洲欧美综合| 天天做天天爱| 激情视频一二三| 丁香五月综合| 中文字幕奈奈美被公侵犯| 欧美综合天堂| 啊啊啊不要啊啊受不了了视频在线 | 麻豆黄四叶草网站| 国产男女无套视频免费观看| 加勒比综合| 久久久久国产精品人妻aⅴ天堂| 蜜桃久久综合视频| 亚洲暴力强奸AV| 日本成人在线不卡一区二区三区 | 黄色操人| 色爱亚洲| 日欧亚洲二三区大片不卡| 9久久久久久| 动漫av中文| 男人天堂.AB| 五月丁香六月婷| 精品人妻一区| 操逼A∨| 欧美日韩久久精品爱爱| 亚欧美综合网。| 国产老熟女| 天天干,夜夜爽| 日韩丝袜二区| 色欲三区| 人人摸人人入| 东北女人高潮视频| 亚洲青青草| 日韩9999| 东京热一区二区三区四区五区六区| 91狠狠色丁香婷婷综合久久精品| 思思热国产在线视频| 亚洲 欧美 日韩 国产一区二区| 青青操在线视频| 2019亚洲男人天堂| 牛牛久久国产精品视频一二三| 天天欧美色| 五月综合视频| 日本片日本片祼观看网站在线看中文版网页在线看 | 一级片视频啪啪| 中文字幕在线免费观看| 玖玖资源视频一区二区三区| 欧美色图 人妻| 日韩精品9999| 久久精品老司| 美女97超碰| 男人的天堂.com| 久久久久久大| 亚洲春色激情小说| 日韩三级一区 | 成 人 影视 一区 二区 三区 四区| www久久久| 欧美一级色| 人妻少妇色综合| 婷婷综合视频| 久久乐| 射 色综合| 蜜色网色哟哟| 伊人色综合超碰| 丝袜喷水在线| 啊啊啊在线观看免费视频| 1区2区3区中文字幕日韩| 久久精品老司| 欧美在线啊啊啊| 人人澡人人弄| 综合一区二区影视| 蜜臀va69| 日韩精品啪啪啪| 黄骗免费网站| 夜草网站| 家庭乱伦国产| 无码日韩人妻av一| 亚洲aV性爱| 久久精品国产精品亚洲艾通辽熟妇 | 91在线视频观看国产| 无码高清专|