Exemple #1
0
def train_ST():
    RF_st1 = RF.RF_ST_train('./data/testingDataSetST1.csv',
                            './data/VALIDATION_DataSetST1.csv')
    RF_st2 = RF.RF_ST_train('./data/EVAL_DataSetST1.csv',
                            './data/VALIDATION_DataSetST1.csv')
    gdbt_st1 = GDBT_ST.GDBT_ST_train('./data/EVAL_DataSetST1.csv',
                                     './data/VALIDATION_DataSetST1.csv')
    gdbt_st2 = GDBT_ST.GDBT_ST_train('./data/testingDataSetST1.csv',
                                     './data/VALIDATION_DataSetST1.csv')
    gdbt_st3 = GDBT_ST.GDBT_ST_train('./data/VALIDATION_DataSetST1.csv',
                                     './data/VALIDATION_DataSetST1.csv')
    svr_st = s.SVR_ST_train()

    #     # 3个GBDT,1个sSVR再做一次SVR
    #     store = ['1', '2', '3', '4', '5'];pred_y = []
    #     for st in store:
    #         X = [];Y = []
    #         for i in range(len(gdbt_st1)):
    #             if gdbt_st1[i][1] != st: continue
    #             X.append((RF_st1[i][2], gdbt_st1[i][2], gdbt_st2[i][2], svr_st[i][2]))
    #             Y.append(gdbt_st1[i][3])
    #         svr = SVR(kernel='linear', epsilon=0.5, C=1).fit(X, Y)
    #         svr_res = svr.predict(X)
    #         for x in svr_res:
    #             pred_y.append(x)

    fw = open(filename, 'a')
    for i in range(len(gdbt_st1)):
        fw.write('%s,%s,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f\n' %
                 (gdbt_st1[i][0], gdbt_st1[i][1],
                  float(RF_st1[i][2]),
                  float(RF_st2[i][2]),
                  float(gdbt_st1[i][2]),
                  float(gdbt_st2[i][2]),
                  float(gdbt_st3[i][2]),
                  float(svr_st[i][2]),
                  float(svr_st[i][3]),
                  float(svr_st[i][4]),
                  (float(RF_st2[i][2])+float(gdbt_st1[i][2]) + float(gdbt_st2[i][2]) + \
                        float(svr_st[i][2])+float(svr_st[i][3])+float(svr_st[i][4])) / 6,
                  cost_dict[gdbt_st1[i][1]][gdbt_st1[i][0]][0],
                  cost_dict[gdbt_st1[i][1]][gdbt_st1[i][0]][1],
                  float(gdbt_st1[i][3])
                  )
                 )
    fw.close()