Exemple #1
0
def run_para(oriTrain,oriTest,field,numField,postfix,isToCSV=True):
    if isToCSV: csv_2_ffm.to_ffm(oriTrain,oriTest,field,numField=numField,postfix= postfix)
    trainFile = oriTrain[0:-4]+ '_'+ postfix  +'.ffm'
    testFile =  oriTest[0:-4]+  '_'+ postfix  +'.ffm'
    t=str(150) ; k=str(8) ; l=str(0.00002)
    resultName = '../submit/ffm_'+ postfix  + '_t{t}_k{k}_l{l}'.format(t=t,k=k,l=l,feat=str(len(field)))
    assignCMDPara=' -t {t} -k {k} -l {l} -s 4 -r 0.02 '.format(t=t,k=k,l=l)
    ffm.runffm(trainFile,testFile,resultName,assignCMDPara)
Exemple #2
0
 def onceRun(day):
     oriTrain = '../data/temp/train_preAction_{day}.csv'.format(day=day)
     oriTest = '../data/temp/test_preAction_19.csv'
     postfix='m_p_u_amc_s{feat}_preAction_{day}'.format(feat=str(len(field)),day=day)
     csv_2_ffm.to_ffm(oriTrain,oriTest,field,numField=[],postfix= postfix)
     trainFile = oriTrain[0:-4]+ '_'+ postfix  +'.ffm'
     testFile =  oriTest[0:-4]+  '_'+ postfix  +'.ffm'
     t=str(150)
     k=str(8)
     l=str(0.00002)
     resultName = '../submit/ffm_'+ postfix  + '_t{t}_k{k}_l{l}'.format(t=t,k=k,l=l,feat=str(len(ori11Field)))
     assignCMDPara=' -t {t} -k {k} -l {l} -s 4 -r 0.02 '.format(t=t,k=k,l=l)
     ffm.runffm(trainFile,testFile,resultName,assignCMDPara)
Exemple #3
0
def run_userIDappID_2():
    ori11Field=copyField[:]
    oriTrain = '../data/temp/train_preAction_userID,appID_5_.csv'
    oriTest = '../data/temp/test_preAction_userID,appID_5_.csv'
    ori11Field.extend(['preAction','preClickCount','preClickDist','preConvCount','preConvDist'])
    numField=['preClickCount','preClickDist','preConvCount','preConvDist']
    postfix='m_p_u_amc_s{feat}_preAction_appIDuserID_5'.format(feat=str(len(ori11Field)))
    csv_2_ffm.to_ffm(oriTrain,oriTest,ori11Field,numField=numField,postfix= postfix)
    trainFile = oriTrain[0:-4]+ '_'+ postfix  +'.ffm'
    testFile =  oriTest[0:-4]+  '_'+ postfix  +'.ffm'
    t=str(150)  ;k=str(8)  ;l=str(0.00002)
    resultName = '../submit/ffm_'+ postfix  + '_t{t}_k{k}_l{l}'.format(t=t,k=k,l=l,feat=str(len(ori11Field)))
    assignCMDPara=' -t {t} -k {k} -l {l} -s 4 -r 0.02 '.format(t=t,k=k,l=l)
    ffm.runffm(trainFile,testFile,resultName,assignCMDPara)
Exemple #4
0
def joinXgbFmmRun(n):
    trainFile = '../data/concat/xgb{n}_s11.ffm'.format(n=n)
    testFile = '../data/concat/test_xgb{n}_s11.ffm'.format(n=n)

    xgbTrain='../data/concat/xgb_trainFeature_FFMlibsvm_1_{n}'.format(n=n)
    s11Train='../data/concat/m_p_u_amc_selected11.ffm'
    #csv_2_ffm.joinOriXGB(xgbTrain,s11Train,trainFile)

    xgbTest='../data/concat/xgb_testFeature_FFMlibsvm_1_{n}'.format(n=n)
    s11Test='../data/concat/test_m_p_u_amc_selected11.ffm'
    #csv_2_ffm.joinOriXGB(xgbTest,s11Test,testFile)

    # t=str(150)
    # k=str(8)
    # l=str(0.00002)
    # resultName = '../submit/ffm_joinXgb{n}-11_t{t}_k{k}_l{l}'.format(n=n,t=t,k=k,l=l)
    # assignCMDPara=' -t {t} -k {k} -l {l} -s 4 -r 0.02 '.format(t=t,k=k,l=l)
    # return ffm.runffm(trainFile,testFile,resultName,assignCMDPara)

    #
    t=str(200)
    k=str(12)
    l=str(0.000005)
    resultName = '../submit/ffm_joinXgb{n}-11_t{t}_k{k}_l{l}'.format(n=n,t=t,k=k,l=l)
    assignCMDPara=' -t {t} -k {k} -l {l} -s 3 -r 0.02 '.format(t=t,k=k,l=l)
    return ffm.runffm(trainFile,testFile,resultName,assignCMDPara)
Exemple #5
0
def combRun():
    #--------------------55个组合特征 + 原始11特征使用--------------
    field=combAllFeat()[0:55]
    field.extend(ori11Field)

    oriTrain = '../data/ori_and_11twoComb.csv'
    oriTest = '../data/test_ori_and_11twoComb.csv'
    postfix='11+55_s{feat}'.format(feat=str(len(field)))
    # csv_2_ffm.to_ffm(oriTrain,oriTest,field,numField=[],postfix= postfix)

    trainFile = oriTrain[0:-4]+ '_'+ postfix  +'.ffm'
    testFile =  oriTest[0:-4]+  '_'+ postfix  +'.ffm'

    k=str(16)
    l=str(0.000001)

    #-200次迭代
    t=str(200)
    resultName = '../submit/ffmresult_'+ postfix  + '_t{t}_k{k}_l{l}'.format(t=t,k=k,l=l,feat=str(len(ori11Field)))
    assignCMDPara=' -t {t} -k {k} -l {l} -s 4 -r 0.02 '.format(t=t,k=k,l=l)
    ffm.runffm(trainFile,testFile,resultName,assignCMDPara)
Exemple #6
0
def mergeRun(field_21,
             numField_21,
             fixDay,
             addPostfix='',
             needMerge=True,
             toffm=True):

    # merge_train = merge_appID_userID('../data/temp/train_preAction_userID_{fixDay}.csv'.format(fixDay=fixDay),
    #                              '../data/temp/train_preAction_userIDappID_{fixDay}.csv'.format(fixDay=fixDay),
    #                              '../data/temp/merge_appID_userID_{fixDay}.csv'.format(fixDay=fixDay))
    # merge_test = merge_appID_userID('../data/temp/test_preAction_userID_{fixDay}.csv'.format(fixDay=fixDay),
    #                                   '../data/temp/test_preAction_userIDappID_{fixDay}.csv'.format(fixDay=fixDay),
    #                                   '../data/temp/merge_test_appID_userID_{fixDay}.csv'.format(fixDay=fixDay))

    merge_train = '../data/temp/old/merge_appID_userID_{fixDay}.csv'.format(
        fixDay=fixDay)
    merge_test = '../data/temp/old/merge_test_appID_userID_{fixDay}.csv'.format(
        fixDay=fixDay)

    postfix = 'mergeAppUser_s{feat}_preAction_{fixDay}_{addPostfix}'.format(
        feat=str(len(field_21)), fixDay=fixDay, addPostfix=addPostfix)
    toffm = False
    if toffm:
        csv_2_ffm.to_ffm(merge_train,
                         merge_test,
                         field_21,
                         numField=numField_21,
                         postfix=postfix)
    trainFile = merge_train[0:-4] + '_' + postfix + '.ffm'
    testFile = merge_test[0:-4] + '_' + postfix + '.ffm'
    t = str(120)
    k = str(8)
    l = str(0.00002)
    resultName = '../submit/ffm_' + postfix + '_t{t}_k{k}_l{l}'.format(
        t=t, k=k, l=l, feat=str(len(field_21)))

    assignCMDPara = ' -t {t} -k {k} -l {l} -s 4 -r 0.02 '.format(t=t, k=k, l=l)
    ffm.runffm(trainFile, testFile, resultName, assignCMDPara)
Exemple #7
0
def oriInRun():
    oriTrain = '../data/sample/recent20.csv'
    oriTest = '../data/sample/test_oldPositionIDadID.csv'
    postfix='oldPositionIDadID_recent20_s{feat}'.format(feat=str(len(ori11Field)))
    csv_2_ffm.to_ffm(oriTrain,oriTest,ori11Field,numField=[],postfix= postfix)

    trainFile = oriTrain[0:-4]+ '_'+ postfix  +'.ffm'
    testFile =  oriTest[0:-4]+  '_'+ postfix  +'.ffm'
    t=str(150)
    k=str(8)
    l=str(0.00002)
    resultName ='../data/sample/result/ffm_'+ postfix  + '_t{t}_k{k}_l{l}'.format(t=t,k=k,l=l,feat=str(len(ori11Field)))
    assignCMDPara=' -t {t} -k {k} -l {l} -s 4 -r 0.02 '.format(t=t,k=k,l=l)
    instanceID=pd.read_csv(oriTest)['instanceID'].tolist()
    return ffm.runffm(trainFile,testFile,resultName,assignCMDPara,instanceID=instanceID)
Exemple #8
0
def newInRun():
    newInField=ori11Field[:]
    newInField.extend( [ "hometown" ,"residence","sitesetID","appPlatform" "hourTime","appSum"] )
    oriTrain = '../data/sample/mergeAll_recent20.csv'
    oriTest = '../data/sample/test_newPositionIDadID.csv'
    postfix='newPositionIDadID_recent20_s{feat}'.format(feat=str(len(newInField)))
    csv_2_ffm.to_ffm(oriTrain,oriTest,ori11Field,numField=[],postfix= postfix)

    trainFile = oriTrain[0:-4]+ '_'+ postfix  +'.ffm'
    testFile =  oriTest[0:-4]+  '_'+ postfix  +'.ffm'
    t=str(150)
    k=str(8)
    l=str(0.00002)
    resultName = '../data/sample/result/ffm_'+ postfix  + '_t{t}_k{k}_l{l}'.format(t=t,k=k,l=l,feat=str(len(ori11Field)))
    assignCMDPara=' -t {t} -k {k} -l {l} -s 4 -r 0.02 '.format(t=t,k=k,l=l)
    instanceID=pd.read_csv(oriTest)['instanceID'].tolist()
    return ffm.runffm(trainFile,testFile,resultName,assignCMDPara,instanceID=instanceID)
Exemple #9
0
        'connectionType_appID',  #44
        'adID_advertiserID',  #45
        'positionType_advertiserID',  #46
        'camgaignID_appID',  #47
        'positionType_appCategory',  #48
        'advertiserID_appID',  #49
        'positionType_appID',  #50
        'adID_appID',  #51
        'camgaignID_appCategory',  #52
        'appID_appCategory',  #53
        'adID_appCategory',  #54
        'advertiserID_appCategory',  #55
    ]


oriTrain = '../data/m_p_u_amc_only11twoComb.csv'
oriTest = '../data/test_m_p_u_amc_only11twoComb.csv'

featNum = 22
field = combAllFeat()[0:featNum]
csv_2_ffm.to_ffm(oriTrain, oriTest, field, numField=[], postfix=str(featNum))

trainFile = '../data/m_p_u_amc_only11twoComb' + '_' + str(featNum) + '.ffm'
testFile = '../data/test_m_p_u_amc_only11twoComb' + '_' + str(featNum) + '.ffm'
t = str(250)
resultName = '../submit/ffmresult_ori_and_11twoComb' + '_' + str(
    featNum) + '_t' + t
assignCMDPara = './ffm-train -l 0.00002 -k 4 -t ' + t + ' -r 0.02 -s 8'
ffm.runffm(trainFile, testFile, resultName, assignCMDPara)
#--------------------------