logo
Loading...

train_test_split切分成train_X, val_X, train_Y, val_Y的涵義 - Cupoy

1.train_X, test_X, train_Y, test_Y = train_test_sp...

train_test_split

train_test_split切分成train_X, val_X, train_Y, val_Y的涵義

2020/04/02 下午 04:50
機器學習共學討論版
江柏勳
觀看數:57
回答數:4
收藏數:6
train_test_split

1.

train_X, test_X, train_Y, test_Y = train_test_split(train_X, train_Y, test_size=0.5)
train_X
, val_X, train_Y, val_Y = train_test_split(train_X, train_Y, test_size=0.5)

想請問這個東西會得到甚麼結果嗎?(我只能大概理解他再把資料分類,4個變數的意義是?

雖然這看似就是固定的寫法了)

2.

gdbt.fit(train_X, train_Y)
onehot
.fit(gdbt.apply(train_X)[:, :, 0])
lr
.fit(onehot.transform(gdbt.apply(val_X)[:, :, 0]), val_Y)

這個有點顛覆我對apply()對DataFrame作用的認知,他是在?

3.

# 因為擬合(fit)與編碼(transform)需要分開, 因此不使用.get_dummy, 而採用 sklearn 的 OneHotEncoder

呃,是指先fit再transform嗎?,為何分開就不用get_dummy

4.

# 將梯度提升樹+葉編碼+邏輯斯迴歸結果輸出
pred_gdbt_lr
= lr.predict_proba(onehot.transform(gdbt.apply(test_X)[:, :, 0]))[:, 1]
fpr_gdbt_lr
, tpr_gdbt_lr, _ = roc_curve(test_Y, pred_gdbt_lr)
# 將梯度提升樹結果輸出
pred_gdbt
= gdbt.predict_proba(test_X)[:, 1]
fpr_gdbt
, tpr_gdbt, _ = roc_curve(test_Y, pred_gdbt)

請問這些參數是?(我覺得我花時間找找好了)

想請問各位大神(還是稱呼老師or教練),恩.....你們如何記得每一個函式的寫法?

回答列表

  • 2020/04/05 上午 04:24
    張維元 (WeiYuan)
    贊同數:0
    不贊同數:0
    留言數:4

    嗨,柏勳


    「想請問各位大神(還是稱呼老師or教練),恩.....你們如何記得每一個函式的寫法?」


    => 第一次照個書上複製貼上,之後需要改的時候再去找找看文件是否有提供這個參數。


    如果這個回答對你有幫助請主動點選「有幫助」的按鈕,也可以追蹤我的GITHUB帳號。若還有問題的話,也歡迎繼續再追問或者把你理解的部分整理上來,我都會提供你 Review 和 Feedback 😃😃😃

  • 2020/04/05 上午 10:46
    Jeffrey
    贊同數:0
    不贊同數:1
    留言數:1

    關於問題一:

    一般而言, 在做機器學習或是深度學習, 我們會把資料分成訓練集與測試集.  訓練集拿來訓練模型, 測試集拿來驗證模型. 在資料集裡面, 我們會選取特徵 (就是"x") , 對應特徵的部分, 會有 Label (標記), (就是"y") ;

    train_test_split() 這個函數就會幫我們把資料集分成訓練 - X, Y 與測試集 - X, Y;

  • 2020/04/05 上午 11:34
    Jeffrey
    贊同數:0
    不贊同數:1
    留言數:4

    關於問題二:

    方便說明一下, 你對於apply()對DataFrame作用的認知嗎?

    這一段代碼,  使用了 onehot, fit, transform, apply 的函數作用

  • 2020/04/10 上午 00:24
    張維元 (WeiYuan)
    贊同數:0
    不贊同數:0
    留言數:1

    嗨,


    「優化是甚麼意思呢請問」


    => 優化一般分為兩種方式:「程式碼寫的簡潔」或「程式執行得快」


    如果這個回答對你有幫助請主動點選「有幫助」的按鈕,也可以追蹤我的GITHUB帳號。若還有問題的話,也歡迎繼續再追問或者把你理解的部分整理上來,我都會提供你 Review 和 Feedback 😃😃😃