1.注冊kaggle賬號
注冊的時候注意:網(wǎng)站發(fā)Email來自己的郵箱confirm的那個鏈接貌似需要上網(wǎng)
2.配置API
3.報名競賽 進(jìn)入Data
這個界面會提供競賽背景和數(shù)據(jù)的概要/特征
4.下載數(shù)據(jù)
Data界面的Data欄目后面有個API,點擊可以copy下來.
可以在后面補充路徑相關(guān)內(nèi)容
kaggle competitions download -c <competition_name> -p <path>
#or use
kaggle competitions download -c <competition_name> -f <filename> -p <path>
5.上交代碼/預(yù)測結(jié)果
usage: kaggle competitions submit [-h] [-c COMPETITION] -f FILE -m MESSAGE
[-q]
required arguments:
-f FILE, --file FILE File for upload (full path)
-m MESSAGE, --message MESSAGE
Message describing this submission
optional arguments:
-h, --help show this help message and exit
-c COMPETITION, --competition COMPETITION
Competition URL suffix (use "kaggle competitions list" to show options)
If empty, the default competition will be used (use "kaggle config set competition")"
-q, --quiet Suppress printing information about download progress
eg:
kaggle competitions submit -c diabetic-retinopathy-detection -f sample_submission_favorita.csv.7z -m "My submission message"
6.評測
數(shù)據(jù)競賽的評測和信息學(xué)競賽的還是有差異,在Titanic數(shù)據(jù)中,一天只能上交10次
7.根據(jù)評測結(jié)果調(diào)整模型
8.賽后分享
以下是本次kaggle的過程
0.前期準(zhǔn)備
注冊賬號,搭建開發(fā)環(huán)境,下載第三方庫等工作.
1.下載數(shù)據(jù)
用指令把Titanic競賽的數(shù)據(jù)下載到本地
2.分析背景
分析應(yīng)用的背景,對問題有個感性的認(rèn)知,確認(rèn)問題的類型和適合的算法.
- 這次的問題是一個典型的分類問題,需要根據(jù)Titanic上面人的特征去predict其獲救或者死亡,適合用決策樹分類器解決問題.
- 引進(jìn)pandas處理數(shù)據(jù)
- 引進(jìn)plt做可視化
3.探索數(shù)據(jù)
探索數(shù)據(jù)的特征,對問題逐漸開始理性了解,去考慮數(shù)據(jù)的特征等問題.
*好像pandas里面內(nèi)置了一些對csv的處理文件但是一定要注意
- 路徑不要中文啊喂
- 路徑串前面加r表示raw input
讀入表格之后可以看表頭
注意classifier的分類問題中,要把非數(shù)字的要處理的feature轉(zhuǎn)化成數(shù)字,這應(yīng)該在本階段進(jìn)行觀察
4.數(shù)據(jù)預(yù)處理
(1)特征選擇:剔除關(guān)聯(lián)度小的/缺失太多的特征
- Ticket,Name影響不大,直接剔除
- Cabin缺失太多,直接剔除
(2)補充缺失值
均值\中位數(shù)\極值\0
- 太少的缺失直接drop整行掉
- 非數(shù)值化的特征要對其數(shù)值化
- 查看特征可以取列,調(diào)用unique()方法
- 用lambda表達(dá)式讓多分類轉(zhuǎn)化成數(shù)值(不超過10),注意這樣的轉(zhuǎn)化不能用在序數(shù)上面.如收入0-1-2對應(yīng)低-中-高,但是一個不是另一個的兩倍
- 可以直接把True/False類型轉(zhuǎn)化成int
(3)分離關(guān)鍵特征
- 分理出
和
,然后分為訓(xùn)練集,測試集并且重新編號
5.開始線下模擬
- 實例化分類器
- 訓(xùn)練模型
- 求出score
6.線下模型進(jìn)行改進(jìn)
- 交叉驗證
- 調(diào)參&剪枝
- 畫學(xué)習(xí)曲線觀察參數(shù),防止過擬合.
- 萬一用了網(wǎng)格學(xué)習(xí)那可要要跑一段時間
7.線上評測
8.改進(jìn)算法,繼續(xù)提交
9.賽后分享