def linear_model_normal(valSet,is_visual): if valSet==None: data, label = creatingMat.createDataSet() X_train=data[0:-100] Y_train=label[0:-100] X_test=data[-100:] Y_test=label[-100:] else: X_train = valSet[0] Y_train = valSet[1] X_test = valSet[2] Y_test = valSet[3] linearModel_normal=LinearModel.myLM() linearModel_normal.myLMtrain(X_train , Y_train ) Y_result=linearModel_normal.myLMpredict(X_test) if is_visual==True: #visualization makeVisual(Y_test,Y_result,'Linear Regression Using Normal equation') Global.getAccuracy(Y_test, Y_result, 20) else: #----------------------- return Global.getAccuracy(Y_test, Y_result, 20) return Global.getCorrelation(Y_test, Y_result)
def svr_models(valSet,is_visual,C_cons=1e3): min_max_scaler = preprocessing.MinMaxScaler() svr_lin = SVR(kernel='linear', C=C_cons) if valSet == None: data, label = creatingMat.createDataSet() X_train = data[0:-100] Y_train = label[0:-100] X_test = data[-100:] Y_test = label[-100:] else: X_train = valSet[0] Y_train = valSet[1] X_test = valSet[2] Y_test = valSet[3] X_minmax = min_max_scaler.fit_transform(X_train + X_test) Y_minmax = min_max_scaler.fit_transform(Y_train + Y_test) X_train_minmax = array(X_minmax[0:-100]) Y_train_minmax = array(Y_minmax[0:-100]) X_test_minmax = array(X_minmax[-100:]) Y_test_minmax = array(Y_minmax[-100:]) Y_train_minmax_1d=[i[0] for i in Y_train_minmax ] Y_result=svr_lin.fit(X_train_minmax,Y_train_minmax_1d).predict(array(X_test_minmax)) Y_result_new=[[i] for i in Y_result] F_result = Global.getAccuracy(Y_test_minmax, Y_result_new, 20) return Global.getCorrelation(Y_test_minmax, Y_result_new)
def getCorrelationDic(): corDic={} for feature in Atributes: x,y=createCustomeDataSet([feature]) corDic[feature]=Global.getCorrelation(x, y) return corDic