• <track id="oztn4"></track>
    <sup id="oztn4"><form id="oztn4"></form></sup>
    
    
    <mark id="oztn4"></mark>
  • <dfn id="oztn4"><samp id="oztn4"></samp></dfn>
      《地爆天星小姐》电影 ,麦子交换2免费观看2023年上映时间表 ,莫妮卡《爱我几何》,大牛影库战狼6欧式少女全部视频,三年大片国语版在线看,日本空姐电视剧,电影魔镜号中文字幕,和部长一起去出差旅是第几集
      全球「AI學術頂會」精華匯聚地
      您正在使用IE低版瀏覽器,為了您的雷峰網賬號安全和更好的產品體驗,強烈建議使用更快更安全的瀏覽器
      此為臨時鏈接,僅用于文章預覽,將在時失效
      人工智能 正文
      發私信給AI研習社
      發送

      0

      TOP5%Kaggler:如何在 Kaggle 首戰中進入前 10% | 干貨

      本文作者: AI研習社 2017-03-17 19:31
      導語:作者第一次參加Kaggle,在 2125 個參賽隊伍中排名第 98 位(~ 5%),本文為他根據自己第一次比賽的經驗總結,給新手們提供一些參考

      雷鋒網按:本文作者章凌豪,復旦大學計算機科學專業。有興趣的同學可以移步他的個人主頁:Linghao Zhang

      Introduction

      Kaggle 是目前最大的 Data Scientist 聚集地。很多公司會拿出自家的數據并提供獎金,在 Kaggle 上組織數據競賽。我最近完成了第一次比賽,在 2125 個參賽隊伍中排名第 98 位(~ 5%)。因為是第一次參賽,所以對這個成績我已經很滿意了。在 Kaggle 上一次比賽的結果除了排名以外,還會顯示的就是 Prize Winner,10% 或是 25% 這三檔。所以剛剛接觸 Kaggle 的人很多都會以 25% 或是 10% 為目標。在本文中,我試圖根據自己第一次比賽的經驗和從其他 Kaggler 那里學到的知識,為剛剛聽說 Kaggle 想要參賽的新手提供一些切實可行的沖刺 10% 的指導。

      本文的英文版見這里

      TOP5%Kaggler:如何在 Kaggle 首戰中進入前 10% | 干貨

      Kaggler 絕大多數都是用 Python 和 R 這兩門語言的。因為我主要使用 Python,所以本文提到的例子都會根據 Python 來。不過 R 的用戶應該也能不費力地了解到工具背后的思想。

      首先簡單介紹一些關于 Kaggle 比賽的知識:

      • 不同比賽有不同的任務,分類、回歸、推薦、排序等。比賽開始后訓練集和測試集就會開放下載。

      • 比賽通常持續 2 ~ 3 個月,每個隊伍每天可以提交的次數有限,通常為 5 次。

      • 比賽結束前一周是一個 Deadline,在這之后不能再組隊,也不能再新加入比賽。所以想要參加比賽請務必在這一 Deadline 之前有過至少一次有效的提交。

      • 一般情況下在提交后會立刻得到得分的反饋。不同比賽會采取不同的評分基準,可以在分數欄最上方看到使用的評分方法。

      • 反饋的分數是基于測試集的一部分計算的,剩下的另一部分會被用于計算最終的結果。所以最后排名會變動。

      • LB 指的就是在 Leaderboard 得到的分數,由上,有 Public LB 和 Private LB 之分。

      • 自己做的 Cross Validation 得到的分數一般稱為 CV 或是 Local CV。一般來說 CV 的結果比 LB 要可靠。

      • 新手可以從比賽的 Forum 和 Scripts 中找到許多有用的經驗和洞見。不要吝嗇提問,Kaggler 都很熱情。

      那么就開始吧!

      P.S. 本文假設讀者對 Machine Learning 的基本概念和常見模型已經有一定了解。 Enjoy Reading!

      General Approach

      在這一節中我會講述一次 Kaggle 比賽的大致流程。

      Data Exploration

      在這一步要做的基本就是 EDA (Exploratory Data Analysis),也就是對數據進行探索性的分析,從而為之后的處理和建模提供必要的結論。

      通常我們會用 pandas 來載入數據,并做一些簡單的可視化來理解數據。

      Visualization

      通常來說 matplotlib 和 seaborn 提供的繪圖功能就可以滿足需求了。

      比較常用的圖表有:

      • 查看目標變量的分布。當分布不平衡時,根據評分標準和具體模型的使用不同,可能會嚴重影響性能。

      • 對 Numerical Variable,可以用 Box Plot 來直觀地查看它的分布。

      • 對于坐標類數據,可以用 Scatter Plot 來查看它們的分布趨勢和是否有離群點的存在。

      • 對于分類問題,將數據根據 Label 的不同著不同的顏色繪制出來,這對 Feature 的構造很有幫助。

      • 繪制變量之間兩兩的分布和相關度圖表。

      這里有一個在著名的 Iris 數據集上做了一系列可視化的例子,非常有啟發性。

      Statistical Tests

      我們可以對數據進行一些統計上的測試來驗證一些假設的顯著性。雖然大部分情況下靠可視化就能得到比較明確的結論,但有一些定量結果總是更理想的。不過,在實際數據中經常會遇到非 i.i.d. 的分布。所以要注意測試類型的的選擇和對顯著性的解釋。

      在某些比賽中,由于數據分布比較奇葩或是噪聲過強,Public LB 的分數可能會跟Local CV 的結果相去甚遠??梢愿鶕恍┙y計測試的結果來粗略地建立一個閾值,用來衡量一次分數的提高究竟是實質的提高還是由于數據的隨機性導致的。

      Data Preprocessing

      大部分情況下,在構造 Feature 之前,我們需要對比賽提供的數據集進行一些處理。通常的步驟有:

      • 有時數據會分散在幾個不同的文件中,需要 Join 起來。

      • 處理 Missing Data。

      • 處理 Outlier。

      • 必要時轉換某些 Categorical Variable 的表示方式。

      • 有些 Float 變量可能是從未知的 Int 變量轉換得到的,這個過程中發生精度損失會在數據中產生不必要的 Noise,即兩個數值原本是相同的卻在小數點后某一位開始有不同。這對 Model 可能會產生很負面的影響,需要設法去除或者減弱 Noise。

      這一部分的處理策略多半依賴于在前一步中探索數據集所得到的結論以及創建的可視化圖表。在實踐中,我建議使用 iPython Notebook 進行對數據的操作,并熟練掌握常用的 pandas 函數。這樣做的好處是可以隨時得到結果的反饋和進行修改,也方便跟其他人進行交流(在 Data Science 中 Reproducible Results 是很重要的)。

      下面給兩個例子。

      Outlier

      TOP5%Kaggler:如何在 Kaggle 首戰中進入前 10% | 干貨

      這是經過 Scaling 的坐標數據??梢园l現右上角存在一些離群點,去除以后分布比較正常。

      Dummy Variables

      對于 Categorical Variable,常用的做法就是 One-hot encoding。即對這一變量創建一組新的偽變量,對應其所有可能的取值。這些變量中只有這條數據對應的取值為 1,其他都為 0。

      如下,將原本有 7 種可能取值的 Weekdays 變量轉換成 7 個 Dummy Variables。

      TOP5%Kaggler:如何在 Kaggle 首戰中進入前 10% | 干貨

      要注意,當變量可能取值的范圍很大(比如一共有成百上千類)時,這種簡單的方法就不太適用了。這時沒有有一個普適的方法,但我會在下一小節描述其中一種。

      Feature Engineering

      有人總結 Kaggle 比賽是 “Feature 為主,調參和 Ensemble 為輔”,我覺得很有道理。Feature Engineering 能做到什么程度,取決于對數據領域的了解程度。比如在數據包含大量文本的比賽中,常用的 NLP 特征就是必須的。怎么構造有用的 Feature,是一個不斷學習和提高的過程。

      一般來說,當一個變量從直覺上來說對所要完成的目標有幫助,就可以將其作為 Feature。至于它是否有效,最簡單的方式就是通過圖表來直觀感受。比如:

      TOP5%Kaggler:如何在 Kaggle 首戰中進入前 10% | 干貨

      Feature Selection

      總的來說,我們應該生成盡量多的 Feature,相信 Model 能夠挑出最有用的 Feature。但有時先做一遍 Feature Selection 也能帶來一些好處:

      Feature 越少,訓練越快。

      有些 Feature 之間可能存在線性關系,影響 Model 的性能。

      通過挑選出最重要的 Feature,可以將它們之間進行各種運算和操作的結果作為新的 Feature,可能帶來意外的提高。

      Feature Selection 最實用的方法也就是看 Random Forest 訓練完以后得到的Feature Importance 了。其他有一些更復雜的算法在理論上更加 Robust,但是缺乏實用高效的實現,比如這個。從原理上來講,增加 Random Forest 中樹的數量可以在一定程度上加強其對于 Noisy Data 的 Robustness。

      看 Feature Importance 對于某些數據經過脫敏處理的比賽尤其重要。這可以免得你浪費大把時間在琢磨一個不重要的變量的意義上。

      Feature Encoding

      這里用一個例子來說明在一些情況下 Raw Feature 可能需要經過一些轉換才能起到比較好的效果。

      假設有一個 Categorical Variable 一共有幾萬個取值可能,那么創建 Dummy Variables 的方法就不可行了。這時一個比較好的方法是根據 Feature Importance 或是這些取值本身在數據中的出現頻率,為最重要(比如說前 95% 的 Importance)那些取值(有很大可能只有幾個或是十幾個)創建 Dummy Variables,而所有其他取值都歸到一個“其他”類里面。

      Model Selection

      準備好 Feature 以后,就可以開始選用一些常見的模型進行訓練了。Kaggle 上最常用的模型基本都是基于樹的模型:

      • Gradient Boosting

      • Random Forest

      • Extra Randomized Trees

      以下模型往往在性能上稍遜一籌,但是很適合作為 Ensemble 的 Base Model。這一點之后再詳細解釋。(當然,在跟圖像有關的比賽中神經網絡的重要性還是不能小覷的。)

      • SVM

      • Linear Regression

      • Logistic Regression

      • Neural Networks

      以上這些模型基本都可以通過 sklearn 來使用。

      當然,這里不能不提一下 Xgboost。Gradient Boosting 本身優秀的性能加上Xgboost 高效的實現,使得它在 Kaggle 上廣為使用。幾乎每場比賽的獲獎者都會用 Xgboost 作為最終 Model 的重要組成部分。在實戰中,我們往往會以 Xgboost 為主來建立我們的模型并且驗證 Feature 的有效性。順帶一提,在 Windows 上安裝 Xgboost 很容易遇到問題,目前已知最簡單、成功率最高的方案可以參考我在這篇帖子中的描述。

      Model Training

      在訓練時,我們主要希望通過調整參數來得到一個性能不錯的模型。一個模型往往有很多參數,但其中比較重要的一般不會太多。比如對 sklearn 的 RandomForestClassifier 來說,比較重要的就是隨機森林中樹的數量 n_estimators 以及在訓練每棵樹時最多選擇的特征數量 max_features。所以我們需要對自己使用的模型有足夠的了解,知道每個參數對性能的影響是怎樣的。

      通常我們會通過一個叫做 Grid Search 的過程來確定一組最佳的參數。其實這個過程說白了就是根據給定的參數候選對所有的組合進行暴力搜索。

      1  param_grid = {'n_estimators': [300, 500], 'max_features': [10, 12, 14]}

      2  model = grid_search.GridSearchCV(estimator=rfr, param_grid=param_grid, n_jobs=1, cv=10, verbose=20, scoring=RMSE)

      3  model.fit(X_train, y_train)

      順帶一提,Random Forest 一般在 max_features 設為 Feature 數量的平方根附近得到最佳結果。

      這里要重點講一下 Xgboost 的調參。通常認為對它性能影響較大的參數有:

      • eta:每次迭代完成后更新權重時的步長。越小訓練越慢。

      • num_round:總共迭代的次數。

      • subsample:訓練每棵樹時用來訓練的數據占全部的比例。用于防止 Overfitting。

      • colsample_bytree:訓練每棵樹時用來訓練的特征的比例,類似 RandomForestClassifier 的 max_features。

      • max_depth:每棵樹的最大深度限制。與 Random Forest 不同,Gradient Boosting 如果不對深度加以限制,最終是會 Overfit 的。

      • early_stopping_rounds:用于控制在 Out Of Sample 的驗證集上連續多少個迭代的分數都沒有提高后就提前終止訓練。用于防止 Overfitting。

      一般的調參步驟是:

      1. 將訓練數據的一部分劃出來作為驗證集。

      2. 先將 eta 設得比較高(比如 0.1),num_round 設為 300 ~ 500。

      3. 用 Grid Search 對其他參數進行搜索

      4. 逐步將 eta 降低,找到最佳值。

      5. 以驗證集為 watchlist,用找到的最佳參數組合重新在訓練集上訓練。注意觀察算法的輸出,看每次迭代后在驗證集上分數的變化情況,從而得到最佳的early_stopping_rounds。

      1  X_dtrain, X_deval, y_dtrain, y_deval = cross_validation.train_test_split(X_train, y_train, random_state=1026, test_size=0.3)

      2  dtrain = xgb.DMatrix(X_dtrain, y_dtrain)

      3  deval = xgb.DMatrix(X_deval, y_deval)

      4  watchlist = [(deval, 'eval')]

      5  params = {

      6                 'booster': 'gbtree',

      7                 'objective': 'reg:linear',

      8                  'subsample': 0.8,

      9                  'colsample_bytree': 0.85,

      10                'eta': 0.05,

      11                 'max_depth': 7,

      12                'seed': 2016,

      13               'silent': 0,

      14               'eval_metric': 'rmse'

      15  }

      16  clf = xgb.train(params, dtrain, 500, watchlist, early_stopping_rounds=50)

      17  pred = clf.predict(xgb.DMatrix(df_test))

      最后要提一點,所有具有隨機性的 Model 一般都會有一個 seed 或是 random_state 參數用于控制隨機種子。得到一個好的 Model 后,在記錄參數時務必也記錄下這個值,從而能夠在之后重現 Model。

      Cross Validation

      Cross Validation 是非常重要的一個環節。它讓你知道你的 Model 有沒有 Overfit,是不是真的能夠 Generalize 到測試集上。在很多比賽中 Public LB 都會因為這樣那樣的原因而不可靠。當你改進了 Feature 或是 Model 得到了一個更高的 CV 結果,提交之后得到的 LB 結果卻變差了,一般認為這時應該相信 CV 的結果。當然,最理想的情況是多種不同的 CV 方法得到的結果和 LB 同時提高,但這樣的比賽并不是太多。

      在數據的分布比較隨機均衡的情況下,5-Fold CV 一般就足夠了。如果不放心,可以提到 10-Fold。但是 Fold 越多訓練也就會越慢,需要根據實際情況進行取舍。

      很多時候簡單的 CV 得到的分數會不大靠譜,Kaggle 上也有很多關于如何做 CV 的討論。比如這個。但總的來說,靠譜的 CV 方法是 Case By Case 的,需要在實際比賽中進行嘗試和學習,這里就不再(也不能)敘述了。

      Ensemble Generation

      Ensemble Learning 是指將多個不同的 Base Model 組合成一個 Ensemble Model 的方法。它可以同時降低最終模型的 Bias 和 Variance(證明可以參考這篇論文,我最近在研究類似的理論,可能之后會寫新文章詳述),從而在提高分數的同時又降低 Overfitting 的風險。在現在的 Kaggle 比賽中要不用 Ensemble 就拿到獎金幾乎是不可能的。

      常見的 Ensemble 方法有這么幾種:

      • Bagging:使用訓練數據的不同隨機子集來訓練每個 Base Model,最后進行每個 Base Model 權重相同的 Vote。也即 Random Forest 的原理。

      • Boosting:迭代地訓練 Base Model,每次根據上一個迭代中預測錯誤的情況修改訓練樣本的權重。也即 Gradient Boosting 的原理。比 Bagging 效果好,但更容易 Overfit。

      • Blending:用不相交的數據訓練不同的 Base Model,將它們的輸出取(加權)平均。實現簡單,但對訓練數據利用少了。

      • Stacking:接下來會詳細介紹。

      從理論上講,Ensemble 要成功,有兩個要素:

      • Base Model 之間的相關性要盡可能的小。這就是為什么非 Tree-based Model 往往表現不是最好但還是要將它們包括在 Ensemble 里面的原因。Ensemble 的 Diversity 越大,最終 Model 的 Bias 就越低。

      • Base Model 之間的性能表現不能差距太大。這其實是一個 Trade-off,在實際中很有可能表現相近的 Model 只有寥寥幾個而且它們之間相關性還不低。但是實踐告訴我們即使在這種情況下 Ensemble 還是能大幅提高成績。

      Stacking

      相比 Blending,Stacking 能更好地利用訓練數據。以 5-Fold Stacking 為例,它的基本原理如圖所示:

      TOP5%Kaggler:如何在 Kaggle 首戰中進入前 10% | 干貨

      整個過程很像 Cross Validation。首先將訓練數據分為 5 份,接下來一共 5 個迭代,每次迭代時,將 4 份數據作為 Training Set 對每個 Base Model 進行訓練,然后在剩下一份 Hold-out Set 上進行預測。同時也要將其在測試數據上的預測保存下來。這樣,每個 Base Model 在每次迭代時會對訓練數據的其中 1 份做出預測,對測試數據的全部做出預測。5 個迭代都完成以后我們就獲得了一個 #訓練數據行數 x #Base Model 數量 的矩陣,這個矩陣接下來就作為第二層的 Model 的訓練數據。當第二層的 Model 訓練完以后,將之前保存的 Base Model 對測試數據的預測(因為每個 Base Model 被訓練了 5 次,對測試數據的全體做了 5 次預測,所以對這 5 次求一個平均值,從而得到一個形狀與第二層訓練數據相同的矩陣)拿出來讓它進行預測,就得到最后的輸出。

      這里給出我的實現代碼:

      1  class Ensemble(object):

      2        def __init__(self, n_folds, stacker, base_models):

      3             self.n_folds = n_folds

      4             self.stacker = stacker

      5            self.base_models = base_models

      6      def fit_predict(self, X, y, T):

      7           X = np.array(X)

      8          y = np.array(y)

      9          T = np.array(T)

      10        folds = list(KFold(len(y), n_folds=self.n_folds, shuffle=True, random_state=2016))

      11       S_train = np.zeros((X.shape[0], len(self.base_models)))

      12       S_test = np.zeros((T.shape[0], len(self.base_models)))

      13       for i, clf in enumerate(self.base_models):

      14      S_test_i = np.zeros((T.shape[0], len(folds)))

      15      for j, (train_idx, test_idx) in enumerate(folds):

      16           X_train = X[train_idx]

      17           y_train = y[train_idx]

      18           X_holdout = X[test_idx]

      19          # y_holdout = y[test_idx]

      20         clf.fit(X_train, y_train)

      21         y_pred = clf.predict(X_holdout)[:]

      22         S_train[test_idx, i] = y_pred

      23         S_test_i[:, j] = clf.predict(T)[:]

      24         S_test[:, i] = S_test_i.mean(1)

      25     self.stacker.fit(S_train, y)

      26     y_pred = self.stacker.predict(S_test)[:]

      27    return y_pred

      獲獎選手往往會使用比這復雜得多的 Ensemble,會出現三層、四層甚至五層,不同的層數之間有各種交互,還有將經過不同的 Preprocessing 和不同的 Feature Engineering 的數據用 Ensemble 組合起來的做法。但對于新手來說,穩穩當當地實現一個正確的 5-Fold Stacking 已經足夠了。

      *Pipeline

      可以看出 Kaggle 比賽的 Workflow 還是比較復雜的。尤其是 Model Selection 和 Ensemble。理想情況下,我們需要搭建一個高自動化的 Pipeline,它可以做到:

      • 模塊化 Feature Transform,只需寫很少的代碼就能將新的 Feature 更新到訓練集中。

      • 自動化 Grid Search,只要預先設定好使用的 Model 和參數的候選,就能自動搜索并記錄最佳的 Model。

      • 自動化 Ensemble Generation,每個一段時間將現有最好的 K 個 Model 拿來做 Ensemble。

      對新手來說,第一點可能意義還不是太大,因為 Feature 的數量總是人腦管理的過來的;第三點問題也不大,因為往往就是在最后做幾次 Ensemble。但是第二點還是很有意義的,手工記錄每個 Model 的表現不僅浪費時間而且容易產生混亂。

      Crowdflower Search Results Relevance 的第一名獲得者 Chenglong Chen 將他在比賽中使用的 Pipeline 公開了,非常具有參考和借鑒意義。只不過看懂他的代碼并將其中的邏輯抽離出來搭建這樣一個框架,還是比較困難的一件事??赡茉趨⒓舆^幾次比賽以后專門抽時間出來做會比較好。

      Home Depot Search Relevance

      在這一節中我會具體分享我在 Home Depot Search Relevance 比賽中是怎么做的,以及比賽結束后從排名靠前的隊伍那邊學到的做法。

      首先簡單介紹這個比賽。Task 是判斷用戶搜索的關鍵詞和網站返回的結果之間的相關度有多高。相關度是由 3 個人類打分取平均得到的,每個人可能打 1 ~ 3 分,所以這是一個回歸問題。數據中包含用戶的搜索詞,返回的產品的標題和介紹,以及產品相關的一些屬性比如品牌、尺寸、顏色等。使用的評分基準是 RMSE。

      這個比賽非常像 Crowdflower Search Results Relevance 那場比賽。不過那邊用的評分基準是 Quadratic Weighted Kappa,把 1 誤判成 4 的懲罰會比把 1 判成 2 的懲罰大得多,所以在最后 Decode Prediction 的時候會更麻煩一點。除此以外那次比賽沒有提供產品的屬性。

      EDA

      由于加入比賽比較晚,當時已經有相當不錯的 EDA 了。尤其是這個。從中我得到的啟發有:

      • 同一個搜索詞/產品都出現了多次,數據分布顯然不 i.i.d.。

      • 文本之間的相似度很有用。

      • 產品中有相當大一部分缺失屬性,要考慮這會不會使得從屬性中得到的 Feature 反而難以利用。

      • 產品的 ID 對預測相關度很有幫助,但是考慮到訓練集和測試集之間的重疊度并不太高,利用它會不會導致 Overfitting?

      Preprocessing

      這次比賽中我的 Preprocessing 和 Feature Engineering 的具體做法都可以在這里看到。我只簡單總結一下和指出重要的點。

      1. 利用 Forum 上的 Typo Dictionary 修正搜索詞中的錯誤。

      2. 統計屬性的出現次數,將其中出現次數多又容易利用的記錄下來。

      3. 將訓練集和測試集合并,并與產品描述和屬性 Join 起來。這是考慮到后面有一系列操作,如果不合并的話就要重復寫兩次了。

      4. 對所有文本能做 Stemming 和 Tokenizing,同時手工做了一部分格式統一化(比如涉及到數字和單位的)和同義詞替換。

      Feature

      • *Attribute Features

      1. 是否包含某個特定的屬性(品牌、尺寸、顏色、重量、內用/外用、是否有能源之星認證等)

      2. 這個特定的屬性是否匹配

      • Meta Features

      1. 各個文本域的長度

      2. 是否包含屬性域

      3. 品牌(將所有的品牌做數值離散化)

      4. 產品 ID

      • 簡單匹配

      1. 搜索詞是否在產品標題、產品介紹或是產品屬性中出現

      2. 搜索詞在產品標題、產品介紹或是產品屬性中出現的數量和比例

      3. *搜索詞中的第 i 個詞是否在產品標題、產品介紹或是產品屬性中出現

      • 搜索詞和產品標題、產品介紹以及產品屬性之間的文本相似度

      1. BOW Cosine Similairty

      2. TF-IDF Cosine Similarity

      3. Jaccard Similarity

      4. *Edit Distance

      5. Word2Vec Distance(由于效果不好,最后沒有使用,但似乎是因為用的不對)

      • Latent Semantic Indexing:通過將 BOW/TF-IDF Vectorization 得到的矩陣進行 SVD 分解,我們可以得到不同搜索詞/產品組合的 Latent 標識。這個 Feature 使得 Model 能夠在一定程度上對不同的組合做出區別,從而解決某些產品缺失某些 Feature 的問題。

      值得一提的是,上面打了 * 的 Feature 都是我在最后一批加上去的。問題是,使用這批 Feature 訓練得到的 Model 反而比之前的要差,而且還差不少。我一開始是以為因為 Feature 的數量變多了所以一些參數需要重新調優,但在浪費了很多時間做 Grid Search 以后卻發現還是沒法超過之前的分數。這可能就是之前提到的 Feature 之間的相互作用導致的問題。當時我設想過一個看到過好幾次的解決方案,就是將使用不同版本 Feature 的 Model 通過 Ensemble 組合起來。但最終因為時間關系沒有實現。事實上排名靠前的隊伍分享的解法里面基本都提到了將不同的 Preprocessing 和 Feature Engineering 做 Ensemble 是獲勝的關鍵。

      Model

      我一開始用的是 RandomForestRegressor,后來在 Windows 上折騰Xgboost 成功了就開始用 XGBRegressor。XGB 的優勢非常明顯,同樣的數據它只需要不到一半的時間就能跑完,節約了很多時間。

      比賽中后期我基本上就是一邊臺式機上跑 Grid Search,一邊在筆記本上繼續研究 Feature。

      這次比賽數據分布很不獨立,所以期間多次遇到改進的 Feature 或是 Grid Search新得到的參數訓練出來的模型反而 LB 分數下降了。由于被很多前輩教導過要相信自己的 CV,我的決定是將 5-Fold 提到 10-Fold,然后以 CV 為標準繼續前進。

      Ensemble

      最終我的 Ensemble 的 Base Model 有以下四個:

      • RandomForestRegressor

      • ExtraTreesRegressor

      • GradientBoostingRegressor

      • XGBRegressor

      第二層的 Model 還是用的 XGB。

      因為 Base Model 之間的相關都都太高了(最低的一對也有 0.9),我原本還想引入使用 gblinear 的 XGBRegressor 以及 SVR,但前者的 RMSE 比其他幾個 Model 高了 0.02(這在 LB 上有幾百名的差距),而后者的訓練實在太慢了。最后還是只用了這四個。

      值得一提的是,在開始做 Stacking 以后,我的 CV 和 LB 成績的提高就是完全同步的了。

      在比賽最后兩天,因為身心疲憊加上想不到還能有什么顯著的改進,我做了一件事情:用 20 個不同的隨機種子來生成 Ensemble,最后取 Weighted Average。這個其實算是一種變相的 Bagging。其意義在于按我實現 Stacking 的方式,我在訓練 Base Model 時只用了 80% 的訓練數據,而訓練第二層的 Model 時用了 100% 的數據,這在一定程度上增大了 Overfitting 的風險。而每次更改隨機種子可以確保每次用的是不同的 80%,這樣在多次訓練取平均以后就相當于逼近了使用 100% 數據的效果。這給我帶來了大約 0.0004 的提高,也很難受說是真的有效還是隨機性了。

      比賽結束后我發現我最好的單個 Model 在 Private LB 上的得分是 0.46378,而最終 Stacking 的得分是 0.45849。這是 174 名和 98 名的差距。也就是說,我單靠 Feature 和調參進到了 前 10%,而 Stacking 使我進入了前 5%。

      Lessons Learned

      比賽結束后一些隊伍分享了他們的解法,從中我學到了一些我沒有做或是做的不夠好的地方:

      • 產品標題的組織方式是有 Pattern 的,比如一個產品是否帶有某附件一定會用With/Without XXX 的格式放在標題最后。

      • 使用外部數據,比如 WordNet,Reddit 評論數據集等來訓練同義詞和上位詞(在一定程度上替代 Word2Vec)詞典。

      • 基于字母而不是單詞的 NLP Feature。這一點我讓我十分費解,但請教以后發現非常有道理。舉例說,排名第三的隊伍在計算匹配度時,將搜索詞和內容中相匹配的單詞的長度也考慮進去了。這是因為他們發現越長的單詞約具體,所以越容易被用戶認為相關度高。此外他們還使用了逐字符的序列比較(difflib.SequenceMatcher),因為這個相似度能夠衡量視覺上的相似度。像這樣的 Feature 的確不是每個人都能想到的。

      • 標注單詞的詞性,找出中心詞,計算基于中心詞的各種匹配度和距離。這一點我想到了,但沒有時間嘗試。

      • 將產品標題/介紹中 TF-IDF 最高的一些 Trigram 拿出來,計算搜索詞中出現在這些 Trigram 中的比例;反過來以搜索詞為基底也做一遍。這相當于是從另一個角度抽取了一些 Latent 標識。

      • 一些新穎的距離尺度,比如 Word Movers Distance

      • 除了 SVD 以外還可以用上 NMF。

      • 最重要的 Feature 之間的 Pairwise Polynomial Interaction。

      • 針對數據不 i.i.d. 的問題,在 CV 時手動構造測試集與驗證集之間產品 ID 不重疊和重疊的兩種不同分割,并以與實際訓練集/測試集的分割相同的比例來做 CV 以逼近 LB 的得分分布。

      至于 Ensemble 的方法,我暫時還沒有辦法學到什么,因為自己只有最簡單的 Stacking 經驗。

      Summary

      Takeaways

      比較早的時候就開始做 Ensemble 是對的,這次比賽到倒數第三天我還在糾結 Feature。

      很有必要搭建一個 Pipeline,至少要能夠自動訓練并記錄最佳參數。

      Feature 為王。我花在 Feature 上的時間還是太少。

      可能的話,多花點時間去手動查看原始數據中的 Pattern。

      Issues Raised

      我認為在這次比賽中遇到的一些問題是很有研究價值的:

      在數據分布并不 i.i.d. 甚至有 Dependency 時如何做靠譜的 CV。

      如何量化 Ensemble 中 Diversity vs. Accuracy 的 Trade-off。

      如何處理 Feature 之間互相影響導致性能反而下降。

      Beginner Tips

      給新手的一些建議:

      1. 選擇一個感興趣的比賽。如果你對相關領域原本就有一些洞見那就更理想了。

      2. 根據我描述的方法開始探索、理解數據并進行建模。

      3. 通過 Forum 和 Scripts 學習其他人對數據的理解和構建 Feature 的方式。

      4. 如果之前有過類似的比賽,可以去找當時獲獎者的 Interview 和 Blog Post 作為參考,往往很有用。

      5. 在得到一個比較不錯的 LB 分數(比如已經接近前 10%)以后可以開始嘗試做 Ensemble。

      6. 如果覺得自己有希望拿到獎金,開始找人組隊吧!

      7. 到比賽結束為止要繃緊一口氣不能斷,盡量每天做一些新嘗試。

      8. 比賽結束后學習排名靠前的隊伍的方法,思考自己這次比賽中的不足和發現的問題,可能的話再花點時間將學到的新東西用實驗進行確認,為下一次比賽做準備。

      9. 好好休息!

      Reference

      1. Beating Kaggle the Easy Way - Dong Ying

      2. Solution for Prudential Life Insurance Assessment - Nutastray

      3. Search Results Relevance Winner’s Interview: 1st place, Chenglong Chen

      TOP5%Kaggler:如何在 Kaggle 首戰中進入前 10% | 干貨

      分享:
      相關文章

      編輯

      聚焦數據科學,連接 AI 開發者。更多精彩內容,請訪問:yanxishe.com
      當月熱門文章
      最新文章
      請填寫申請人資料
      姓名
      電話
      郵箱
      微信號
      作品鏈接
      個人簡介
      為了您的賬戶安全,請驗證郵箱
      您的郵箱還未驗證,完成可獲20積分喲!
      請驗證您的郵箱
      立即驗證
      完善賬號信息
      您的賬號已經綁定,現在您可以設置密碼以方便用郵箱登錄
      立即設置 以后再說
      主站蜘蛛池模板: 章小蕙 桃色| 诱惑:湿身代言| 贝多芬小姐的启示电影| 隐藏的帽子韩国版在线观看| 再见妈妈韩剧| 孙悟空大战盘丝洞猪八戒| 安拉斋在线观看免费版电影| 隔壁的女孩3在线观看| 美丽的小蜜蜂3美丽人生| 真爱谎言下载| 美国禁忌三部曲满天星| 木下檀檩子免费观看高清版| 电影龙蛇争霸| 完全堕落家族动漫免费观看| 天师下山全集免费| 进击的巨人真人版后篇| 哇嘎免费播放网站| 陈小春版鹿鼎记下载| 年轻的母亲3完整版 | 睡美人1999美国版| 维修工人的艳遇视频| 开心超人| 卖肉动漫推荐| 无暇修女| 电视剧错点鸳鸯| 义姐不良妈妈第一季动漫全集免费| 金玉满堂电视剧| 超凡蜘蛛侠国语版| 娃娃脸4美国版| 电影完美搭档| 《朋友的妈妈》5中字头歌词| 大追追什么意思| 剑来在线播放| 麦乐迪女超人在线播放| 超能陆战队免费观看| 云雨影院电视剧全集在线观看| 险恶的绣感完整版在线播放| 鸡毛飞上天观看免费全集| 高清《屈原》| 正中下怀是什么意思| 电影悬崖之上在线观看完整版免费 | 如果.爱| 电影《透视》在线观看| 犯了规短剧| 新少女6少女1| 地球上的星星2全集观看| 拜托了机长国语版| 《金牌销售》全集| 搜下留情电视剧| 亲爱的客栈第二季| 中文字Dl幕岳 和女胥影视| 啦啦队舞蹈教学| 湖北襄阳59天男婴窒息死亡| 超级教师3免费版电视剧在| 心理罪为什么看不了| 互换青春| 星克莱尔第一夫人免费播放| 女总裁的贴身保安短剧完整版| 高清《幽灵狙击手》电影| 我喜欢你免费观看电视剧| 女儿 电影| 施瓦辛格最新电影| 空间神医农女:医术惊天下全集免费| 刘能扮演者叫什么名字| 巜生殖按摩1无删减版电影| 一年一度喜剧大赛在线观看| 3D新金瓶玥菲在线播放百度云| 和部长出差日子HD电影| 三线轮回电影完整版在线观看| 了凡四训电视剧| 棋士电视剧免费观看| 《维修工人的艳遇》中字| 兰桐花开电视剧| 哈利波特生日| 梅西c罗拿过大力神杯吗| 哇嘎高清免费观看| 消失的孩子 电视剧| 唐人街探案2免费版在线观看| 需要爸爸播种子在线免费观看| 情色姐妹| 《法国护士长》2006| 银河奥特曼s剧场版中文版| 千金与仆人电影完整免费观看| 异形vs人类| 菏泽市| 冰火魔厨动漫在线观看免费完整版| 漂亮妈妈7巴字开头叔叔| 湔雪的魔女| 电视剧特战荣耀完整版全集免费观看| 一边面膜敷53分钟日本| jiandangweiye| 信天游电影| 失控的生物课堂TXT免费| 静默管理啥意思| 沙坑里的女孩在线观看完整版| 白峰电影在线播放免费版最新章节 | 《义子侵犯》电影| 小鸡不好惹第五部| 51vv视频社区福| 日剧《和讨厌的前任》中字| 一刀不剪| 胖子视界| 争宠攻略全集免费| 电视剧画眉全集免费观看高清| 美军舰过航台海| 月歌行电视剧在线观看| jux-422| 埃丽诺娃满天星| 乡村爱情小夜曲| 旁观者电影| 我的姐姐是电影免费观看全集| 今夜有戏 杨幂| 韩国r电影| 《修理工的绝遇》拉昔| 美容院特殊待遇4| 三生有幸遇见你免费观看| 商务旅行戴绿色帽子电影| 无限挑战110716| 孽欲追击档案之邪杀在线观看| 芳华在线| 电视剧爱可以重来| 轮到你了中文版| 东北恋哥3:冬天里的一把火| 商务旅行戴绿色的帽子的女老板谁演的| 我们的秘密泰剧在线观看全集| 电视剧真爱诺言| 韩国午夜剧场《分娩按摩2》HD免费在线观看高清完整版-如意影院 | 用身体偿还给社长的妻子电影在哪里| 唐人街神探3免费观看完整电影| 与凤行电视剧在线观看60集| 妈妈的职业5完整版结局在线看免费 | 满天星1993版保镖在线| 轩辕剑之天之痕26| 台剧黛比浪漫女家教1免费播放| 新还珠格格紫薇尔康| 高清历劫惊途 第二季| 女老板的滋味| 女婿回乡全集免费看| 苍空电影观看| 盲山高清国语完整版| 我和僵尸有个约会电影| 台湾版棘手狂情1982的版权声明| 纯情房东俏房客| 新女员工部长的教育| 半是蜜糖半是伤电视剧免费观看| 美味快递员特殊待遇免费版 | 倔强的驱魔师1-4集免费观看 | 美国爸爸要播种2季免费观看| 天使衣橱| 我要爸爸的种子第一季免费观看 | 你好李焕英免费版在线播放| 苹果4刷机教程| 色魔| 《无憾》法国版在线观看| 韩版花样男子国语版| 龙腾四海国语高清| 《黑白决》免费观看| 水管工的绝遇2免费| 开局花光老爸小金库短剧免费观看 | 落魄贵族琉璃动漫免费观看全集| 斗罗大陆第210集免费观看| 再次我的人生第二季| 寡妇村1988无删减| 庄浪县| 法国空姐满天星| 婴儿奶粉喂养方法| 九月风暴下载| 人蛇大战电影全集| 神府红军游击队| 葫芦娃成版人每天看一次| 欢喜冤家电视剧在线观看| 插曲的痛第60集免费观看高清| 魔宫魅影| 女律师的堕落 在线| 喜爱夜蒲2高清完整版| 法国护士长在线免费观看| 落花时节又逢君电视剧免费播放| 女老板的性滋味电影| 点燃我温暖你更新时间| 十七岁高清完整版在线观看日本| 男生女生一起愁愁愁电视剧观看大全 | 东京异种 电影| 牧教师4| 高清危情蜻蜓未删减| 古惑仔3高清国语免费观看| 六德女员工在工作中作弊5_午夜电影全集_完整版免费在线观看-天天影院 | 天字一号| 天柱剑毫| 坎贝奇品味人生在线观看免费高清| 电视剧暴雪时分免费观看| 吴健的农民伯伯第二部| 快乐的大人免费观看完整高清综艺| 电视剧因为遇见你| 赛仑《渔夫的妻子》| 幸福最晴天| 入室强插电影在线播放| 电视剧妈妈在等你全集免费播放| 战狼六免费观看网站| 五百年前的一次回眸| 爱情填满空白第二季完整版| 体育生gay视频| 法国空乘5在线看免费高清全集| 乡村爱情9下部下载| 战狼6欧式少女版资源百度云战| 荣都怪谈| 甜蜜惩罚免费观看第一季全集| 公之浮手中字在线观看| 《美味倒数》| 韩国年轻大胸的继拇999| 斗破苍穹59在线观看| 华为Mate70系列进入最后阶段| 美丽人生 韩剧| 秘密搜查官在线观看完整版免费| 超级教师电视剧免费观看高清| 郡守与里长| 绝代双骄林志颖版| 《维修工》王李丹妮在线观看| 我的妹妹雯雯| 渔夫在线观看免费| 飞虎 国语版| 在厨房和空调修理工| 死神千年血战第二季免费观看| 性生活伦理电影| 《非凡医者》全集| 伦理《法国护士长》电影| 我们恋爱吧第一季2019| 安妈超正最新今天| 喜人奇妙夜2| 熊出没之重返地球在线播放| 夫妻隔帘按摩BD中字电影| 想你爱你更恨你美国版| johnen 定之爱| 新来的邻居| 安斋拉拉在线播放| 反击国产电视剧全集 | 电影跳出去| 金瓶梅之爱的供养| 浪漫满屋泰国版11| 修理工的艳遇| 他是谁全集在线高清免费观看| 黑执事豪华客船篇百度云| 小敏家电视剧全集在线播放| 特殊外卖员在线观看| 周生辰晚上折腾时宜| 高清《鸭王》| 自古英雄出少年免费观看完整版| 小王子 2015 电影| 小镇姑娘免费高清观看全集| 小丑1电影| 今生有你电视剧| 战狼6正版在线观看平台| 利刃出鞘3电影| 私人教练1983年意大利| 决杀令电视剧| 梦境电影在线观看高清| 《汤唯》电影免费观看高清| 《镜的第三乐章》| 公元前2000年| 我知道我爱你免费观看| 《霜花店》| 张雨绮4分钟未删减版| 无欲不爱在线观看| 卡片大战| 特别治疗| 我的姐妹免费韩剧电视剧| 星克莱尔总统夫人1997电影| 全职高手2电视剧官宣| 漂亮妈妈7| 保镖1992| 美国最帅囚犯| 不小心爱上你全集| 广场舞好人好梦| 僵尸叔叔1| 《味道》电影| 汉武大帝高清版| 第11个妈妈| 日本片空姐2019| 电影炼狱| EllieNova艾莉·诺娃《恋爱专家》 | 和讨厌的部长一起去出差旅的电影日剧| 徐小凤经典歌曲| 刀剑神域ii| 葬送的芙莉莲23| 旱冰场音乐| 因法之名免费观看全集完整版| 电影蝴蝶之吻| 激情从来| 喜洋洋之灰太狼飞马奇遇记| 金银悔5普通话国语版免费| 半斤八两动画片全集| 日本维修工的艳遇3| 上错花轿嫁对郎在线观看| 麦乐迪家庭矛盾在线观看完整免费高清原声满天星百 | 双妻艳史| 私人航空在线观看免费| 法国面具男鬼舞步| 神探狄仁杰一部30完整版 | 《法国瑜伽》在线观看| 周处除三害在线观看| 乡村爱情9下部下载| 原来我很爱你电视剧免费观看西瓜| 就是这样 电影| 《月光变奏曲》电视剧| 乡村逆袭:小农民成首富短剧全集| 西部枪手| 女超人麦乐迪版的| 喜爱夜蒲快播观看| 神马电影米利亚姆莱昂| 变形金刚 高清| 奥本海默在线原版免费| 下辈子做你的女人电视剧| 《法国空乘11》成人版| 阿炳的故事| 太极2之英雄崛起| 独步天下 电视剧| 知否知否应是绿肥红瘦主题曲| 法国版女超人在线观看| 最后的99天在线观看| 盲心贵女短剧在线观看免费全集| 赛罗奥特曼中文版| 复仇者联盟h版| 《白日提灯》| 康熙全集来了免费观看| 徐少强新版金银瓶2008第2集| 疯狂动物城免费中文版| 沧元图第二季2集完整版| 请问护士俄剧满天星| 兰花花电视剧完整版免费观看 | 莆仙戏二团| Melody女超人免费观看高清| 法国空乘4完整版| 图书馆员| 迷人的小峓子8| kaera uehara| 以和为贵国语| 《伊波拉病毒》普通话在线观看 | 日本电影和讨厌的部长出差 | 《爱我几何》ViP| 聚会的目的在线播放4| 漂亮妈妈中字开头字| 天赋异禀 美剧| 名侦探柯南普通话版免费观看 | 驯龙高手电影| 美丽小蜜桃5大结局| 智者无敌1-40集全免费| 佐佐木明希奶水喷出是真的吗| 笑傲江湖更新| 朝鲜牡丹峰乐团成员| 电影《庄园女仆满天星》| 半是蜜糖半是伤电视剧免费完整版| 秘密爱韩国电影完整版免费观看| 白夜追凶27| 寸止挑战在线观看| 电视剧白银谷| 难忘之夜在线观看免费完整版| 唐朝诡事录电视剧免费观看| 暴躁46集全集免费观看| 走火入魔指什么生肖 | 北京夜店电影| 美国女儿要爸爸播种电视剧马| 九品芝麻官粤语高清| 我的奴隶| 维修工的绝遇(2)| 古惑仔1高清| 《产科医生》电视剧40集| 破烂男女在线观看电影全集免费| 江山如此多骄电视剧| 怒海潜沙秦岭神树演员表| 开放式婚姻在线观看| 《女超人满天星版》麦乐迪在线观看 | 嫌疑人在线观看免费完整国语版| 战狼6超清免费观看| 薄暮传说剧场版| 男女一起相愁愁愁在线观| 带货女王全集免费| 十堰重庆路车祸| 爱我几何《莫妮卡》电影完整版在线| 宿敌在线观看| 哪吒之魔童降世免费观看| 四川文理学院图书馆| 女性瘾者春梦引爆内地影坛| 魔女宅急便电影| 台湾毛片《鱼夫的荒淫史》在线播放| 丧尸之地| 电影营销技巧未删减巴西 | 《相逢时节》| 铜铜铿锵免费观看高清免费| overflower第1集到第8集免费观看| 照亮你电视剧免费观看星辰影视 | 白百何益达广告完整版| 冲上云霄 粤语| 战狼6欧美版免费观看完整版国语| 空调修理工韩国电影| 金瓶梅电视剧全集电视剧| 新白娘子传奇50集免费看高清| 哇嘎电影高清完整视频| 异形终结2| 牙医郝板栗未删减版| 国台办回应台湾地震| 北条麻妃熟女在线观看AV| 女人的战争之肮脏的交易U| 陈浩民版西游记1| 《和部长一起去出差旅| 大人物电影| 高压监狱在线观看完整免费高清原声满天星2019美国 | 星球大战女版满天星免费观看 | 黑帮大佬和我的360天| 永夜星河电视剧高清免费| 裤袜视界| 功夫熊猫命运之爪| 芭娜娜现场| 吴京乘风电影免费观看| 借爸爸的种子(美囯版)| 淑蓉又痒了办公室献身| 侵犯高傲女教师在线观看 | 马兜铃泰剧在线观看| 你好杀人犯| 和林格尔县| 以家人之名电视剧免费观看| 电影乃雀主演| 爱的语言| 一代女皇武则天免费播放电视剧 | 少年天子顺治王朝| 《义子侵犯》山口珠理| 三体2免费观看完整版在线观看 | 山菊花在线观看| 今天的她们电视剧免费观看 | 广场舞尕撒拉| 男生女生一起愁愁愁电视剧在线观| 米尼的第一次| 大声呼喊你回来电视剧| 巴林左旗| 高清百鬼夜行抄未删减| 《卖房子的女销售》3| 青春正能量我是女神| 圣特罗佩斯的女孩| 人猿泰山电影| 隐密的角落| 开端在线观看全集免费播放| 原千岁电影全集在线观看| 《艳母》动漫在线| 《史前战纪 第三季》| 泰剧天生一对在线观看| 《屋顶工》拉拉在线观看| 同学两亿岁免费观看免费| 企业强人粤语版免费观看| 萨克斯音乐| 疯狂动物2免费国语版| 年会舞蹈老师| 变态女大学生| 啄木鸟酒店实生2023| 雁归时电视剧全集免费| 碧血蓝天电影免费观看完整版| 《令人心动的房东小姐》动漫全集| 爱我多深在线| xl司令第一季全集在线观看完整版免费| 农民伯伯下乡2国| 喜宝电影在线观看完整版| 台湾犯罪故事| 房奴试爱开头电视剧原声| 斗罗大陆2绝世唐门免费观看49| 4个日本混血大学生精油按摩| 恋爱暴君1| 后宫甄嬛传19| 1997版法国总统免费观看| 公主她不装了:摊牌是大佬全集免费 | 美术老师的放羊班| 她们电影| 我这一辈子电影完整版免费观看| 黑白配免费高清观看| 妖精的尾巴剧场版凤凰的巫女| 杨贵妃免费观看| 册亨县| 麦乐迪马克斯女超人[玫瑰]| 河神在线观看| 电视剧小白菜奇案| 《保险推销员》1徐元| 仁心俱乐部24集连续剧免费观看| 至上之法| 唇亡齿寒电影| 啄木鸟壮志凌云在线电影完整版观看 | 《我的阿勒泰》| 女超人麦乐迪无删减在线| 太极生两仪 两仪是什么| 荒野渔夫完整版| 封神榜第一部朝歌风云| 新乌龙女校3| 1PPD%82女友巨乳姐内电影 | 郭晶晶 红外| 电视剧说谎的爱人| 西游之诸神之战免费播放在线观看| 诱惑佳人| 365日:今时之欲在线| 新扎师妹3| 一个完美的结局无删减网盘资源| 花琉璃电视剧免费观看完整版高清 | 兔子先生高清免费观看全集| 骄阳似火电视剧免费观看完整版| 盛唐风流在线播放完整版| 吵闹的邻居| omoflow| 男子姐姐值夜班离奇失踪多年| 边坝县| 复仇者联盟在线观看| 黑街舞男高清版免费观看| 《布鲁克读大学》1978| 借种之灭门| 真假学园第二部| 美容是特殊待遇4| 我是刑警电视剧免费播放西瓜 | 前抛实心球| 奇皇后32集| 漫画威龙之大话特务在线观看| 法证先锋1 粤语| 电视剧歧路兄弟| 开放性成人交友网站 | 需要爸爸播种子电影在线观看| 南妹儿动感光波| 酒店1—100集免费观| 庞贝末日在线观看| 保姆妈妈| 三年大片大全免费观看国语版2| 美式忌讳1| 卢沟桥事变电影| 法国空4在线观看整板| 捡漏小能手:古玩街我称王全集免费| 罪恶王冠19| 《亲爱的楼秘书》全集哪里看| 妻子的姐姐1| 使徒行者31集| 丛林战争| 法国空乘5完整版免费看| 大地资源高清在线观看国语版狂飙| 麦迪时刻35秒13分高清| 刺客伍六七3玄武国篇| 游泳教练的湿润教育电影在线观看| 血色玫瑰电视剧全集免费播放| 爱神电影| 战狼6欧式少女版资源百度云| 欧美1一5| 电影《霸王别姬》| 让我听懂你的语言电视剧| 义姐是不是良在线免费观看| 青青河边草HD免费观看电视剧| 神奇眼镜| 妻子的诱惑 国语| 肇州县| 赵薇资本布局已20年| 年轻的阿姨| 倚天屠龙记2| 夫妻换房在线| 山东近32万考生成绩达一段线| 终极一班3部第一集| 坎贝奇成人影片免费播放| 《孽欲狐仙》在线观看| 电视剧和平使命| 将界截取了一小段05| 周杰伦林俊杰合唱稻香| 秘密列车第8集在线观看| 《上门服务》菲律宾主演是谁 | 八戒八戒8| 高校教师在线观看免费| 相思原唱| 肉汁奴隶完整版| 高清《母亲》韩国电影| 新婚初夜| 我是特种兵2歌曲| 泰剧临时天堂| xl司令38集在线观看| 我喜欢你韩剧| 2对1:三人一次性体检电视剧| 赖小子完整版| 寒枝折不断电视剧免费观看| 需要爸爸的种子类似视频在线观看| 绿色椅子剧情| 白峰美羽| 女扮男装去上学全集免费| 王妃太狂野| 魔力宝贝监狱 电影 完整版| 纲手轮x图静音| 电视剧寻秦记| 今生有你一共多少集| 台湾师生恋《补课》电影是什么电影 | 高清《双刃》短剧免费观看| 蜈蚣咒未删减版完整版恐怖电影 | 初体验3在线| 《屠宰呕吐娃娃》免费观看| 我是证人迅雷下载| 三年大片在线观看免费观看第一集全| 剩男相亲记| 四个少妇精油,按摩师| 白日梦我电视剧全集免费观看高清| 电影战狼4高清完整版在线观看免费9999| 三女炕上交换玩| 新还珠格格全集播放| 豚鼠系列1:恶魔实验完整版| 美丽小蜜桃五| 少妇按摩记轮理片| 旺角卡门| 《隐形的帽子》完整版| 陪读妈妈1一8集| 判逆者电视剧免费| 罗莉星克莱尔的电影在线| 赤裸兵团| 电影《小王子》中文版| 爱我几何未减版完整版| 《让我的指尖扰乱你的心弦》免费| 父女版因为爱情| 自由的她们免费看全集完整版| 聊斋奇谭之武则天| 莫妮卡《爱我几何》电影免费无删减| 青梅竹马是消防员2第二季| 兄弟的嫂子和小姨子| 与僧侣交合之夜| 明星换脸电影完整版免费| 女子护卫队1973电影在线观看| 《法国空乘5》电影| 艳母在线观看视频| 小欢喜全集免费观看| 闪酷电影网| 蓝精灵动画片国语| star-438| 寻龙诀高清| 《辞职欢送温泉之旅》日剧| 《高压监狱 伦理》电影高清在线观看 - 如如影视 | 紫钗奇缘电视剧全集| 琉璃美人煞电视剧在线观看| 法国空乘2016未删减版| 《无憾》电影完整版| 机器人总动员免费| 我这一辈子电影完整版免费观看| 《法国护士长》伦理| 一路繁花综艺| 暴力拆迁| 《法国空乘5》在线免费观看 | 美丽蜜桃5| 火遮眼未删减| 宇宙战舰大和号复活| 侯门嫡女短剧全集| 意大利爸爸的种子免费观看电视剧中 | 复仇者联盟bt| 入室暴行2正版观看| 我年轻瘦子9| 高清打工仔的拷问日常| 电影殊死搏斗免费观看高清| 《完美世界》在线观看| 克里斯蒂满天星| 流氓也识女人香| 斩服少女完整版在线观看| 《查莉成长日记第一季》电视剧| 家庭矛盾4麦乐迪在线观看| 养母的花样年华演员表| 博主:李铁被抓后什么都招了| 天上人间高清| 《卖保险套的女销售》电影免费观看 | 唐朝诡事录2之西行免费观看全集| 永乐大帝电视剧全集免费观看 | 纯属意外电视剧| 欧美金银1—5集普通话版美国 | 沙漠伏击电影免费观看| 爱丫爱丫在线影院电视剧播放| 追龙电影完整版| 石敢当之雄峙天东演员表| 喜羊羊之灰太狼之决战次时代| 大关县| 《满天星》陈宝莲在线观看| 七大罪第一季| 火火的姑娘云裳广场舞| 绝夜潜行| 《善良的女邻居》4| 白峰电影在线观看免费第8集 | 那小子不可爱电视剧| 天地玄门国语| 战狼4欧美版免费观看完整版国语电影| 直播逆袭全集免费| 苦尽柑来| 阳光下的冰器| 韩国《维修工人的艳遇| 麦乐蒂女超人满天星| 欢乐颂第一季免费观看| 长安三万里免费完整看| 黄雀在后电影免费观看全集高清版| 八仙饭店2高清免费播放| 邬君梅 枕边禁书| 《勇敢的心》完整版免费观看| 夫妻之间完整版免费韩国电影观看| 完美星球纪录片免费观看中文版| 《愤怒的小鸟》| 生活中的马玛丽| 生活有点甜电视剧| 《妻子7》在线观看全集| 德云社相声春晚| 出差 日本电影| 《尖帽子的魔法工坊》| 全能王妃杀疯了短剧免费观看| 插曲的疼| 麻美ゆま| 白衣校花与大长腿免费观看电视剧| 吴彦祖窥探无罪电影完整版| 还珠格格风儿阵阵吹| 青春环游记5季免费播放| 柳舟记电视剧免费观看| 睫毛膏5美国1983中文| 青梅竹马是消防员未增删E站| 黑帮大佬和我的365五天| 《千金爱上佣人》完整版| 动漫女装少女| 日喀则怎么读| 抖音牛逼姐| 除却巫山邓家佳DVD版| 血滴子高清| 为什么黛玉是裸死| 吾岸更新至15集| 迷人的小婊子| 第八个嫌疑人免费观看| 错点鸳鸯电视剧50集免费播放| 红楼梦免费完整版在线观看| 善良的小瘦子免费看| 芈月传全集百度网盘| 特朗普与哈里斯首辩倒计时| 三明市| 张云熙| 老男人 电影| 艾玛 德考尼斯| 田阳县| 特殊的治疗2李采潭主演是谁| 活体葫芦娃| 地藏传奇| 罗丽星克莱尔电影观看| 超能少年| 24小时在线观看免费播放电视剧| 肉蒲电影完整版| 韩剧《美妙人生》| 无限复活粤语| 中国可能减7000亿美债| 人猿泰山1995时长1小时34分意大利叫什| 花与蛇3白衣绳奴| 流金岁月电视剧全集观看| 男男同志王伦宝| 看见你的棒棒就想吃的歌手是谁| 欢乐颂第四部50集在线观看免费| 遥控器控制女领导免费观看| 花开山乡电视剧在线观看| 银娇在线| 摄政王妃:掌心娇宠短剧全集 | 妈妈的职业2完整版观看免费高清 电影《水电工人的绝遇》免费 | 女狱警法国| 家有儿女第四部| 甄嬛传44集| 美容室的待遇6在线观看| 电影飞天| 雷军自曝37岁已财务自由| 《替夫还债》的日本电影| 骄阳伴我电视剧免费观看| 双肥临门| 一起再看流星雨| 落魄贵族琉璃川1-2集在线播放| 千灭天际线| 重返荣耀| 铁血使命第2部全集| 神探夏洛克第三季第二集| 凌云之志满天星法版免费观看| 《丰满的继牳| 画江湖之不良人电视剧| 电影灯草和尚高清免费普通话版| 女演员的管家| 电视剧风云免费观看完整版| 心灵诡计| 《原始人》电影免费观看| 大湾仔的夜第二季在线观看| 白峰电影免费高清播放平台| 海棠红电影完整版免费观看| 太空部队在线观看| 胡鑫宇最新消息进展官方今天| 女保镖满天星在线播放| 电视剧红高粱九儿被上第几集| 终极审判第二季| 暴躁妹妹国语版bgm视频下载免费| 帝王之妾韩剧在线观看免费全集| 《锦绣芳华二》全集免费观看高清| 需要爸爸播| 新封神榜 电视剧| 天龙八部舒畅第几集| 《法国空乘在线观看| 最后一枪全集在线观看| 银河奥特曼3| 白燕升个人演唱会| 漂亮小瘦子7电视剧免费观看| 原生鸿蒙之夜| 沉沦肉欲的娇妻第十一章| 单身插班生| 旧水浒传| 读你原唱| 天海翼女检察官无删减版| 纯真年代电影在线完整版观看| 倒霉爱神下载| 暴躁少女完整版在线看| 名侦探柯南638| 前世情迷在线观看| 日本和讨厌的部长出差系列| 派对第二季全集| 猛鬼差馆2| 《赘婿》免费完整版在线观看西瓜 | 在线观看日本电影《和讨厌的部长出差旅》 | 女儿国3满天星版美国| 电影《丽贝卡的秘密》在线播放| 忘年恋电影| 男人的大鸟| 女人的战争2新婚快乐| 明日战记电影免费观看完整版| 美丽教师未删减完整免费观看| 儿子的妻子中字头| 吴雪雯电影性迷宫| 谁能百里挑一20130504| 口头禅的意思| 丈夫上司来做客| 意大利电影此时此刻| 无影灯下连续剧全集免费播放| 幻城 电视剧| 牧神记40集全免费播放| 姐姐妹妹闯北京| 洞房初夜| 一仆二主电视剧 全集| 电影青苹果| melody在线播放高清观看女超人| 恶搞甄嬛传| 高清暗恋者的救赎未删减| 斧头帮音乐下载| 女律师的坠落2理伦片 | 老表发钱寒国语免费完整版| 《牙医郝坂丽1986版》西瓜视频| 今晚睇李| 皇家猎杀| 双世宠妃男主| 特殊游泳课| 不忠电影在线观看免费完整观看| 宋莲生坐堂| 《民间怪谈》彭禺厶| 抓娃娃演员表| 做aj电视剧大全| 铁甲雄心第二季| 规章制度的作用| 唐人街探案3电影完整版免费| 漂亮的小姨韩剧免费观看完整版| 《庆余年2》第107集| 白鹿原全集免费播放| 火星情报局第二季| 巨乳女医生的特殊治疗电影| 红心皇后电影| 金毛动漫库| 恋爱先生电视剧全集免费版观看|