No nonsense commonly used sklearn package model call

# 读取csv文件
import numpy  as np
import pandas as pd

data_file_path = f'__path__'

#如果给的数据使用空格分隔,修改sep的内容
df = pd.read_csv(data_file_path,sep = ',')

##    如果你的数据需要额外的处理,请另外添加代码段
##    默认最后一列为标签

np_data = df.iloc[:,:-1].to_numpy()
np_label= df.iloc[:,-1].to_numpy()

# 训练集测试集分隔
from sklearn.model_selection import train_test_split

x_train,x_test,y_train,y_test = tts(np_data,np_label)

## 线性回归模型
from sklearn.linear_model import LinearRegression

lr_model = LinearRegression()
lr_model.fit(x_train,y_train)

## 参数与bias
## lr_model.coef_,lr_model.intercept_

## KNN回归
from sklearn.neighbors import KNeighborsRegressor
from sklearn.preprocessing import MinMaxScaler

#需要使用最大最小归一化处理数据
knn_scaler = MinMaxScaler()
knn_x_train = knn_scaler.fit_transform(x_train)
knn_x_test = knn_scaler.transform(x_test)

KNR_model = KNeighborsRegressor()
KNR_model.fit(knn_x_train,y_train)

## 调用score函数时请使用 knn_x_t* 作为输入对象
## eg: KNR_model.score(knn_x_test,y_test)

## 多项式回归

from sklearn.preprocessing import PolynomialFeatures

# degree值可修改,过大容易过拟合
poly = PolynomialFeatures(degree=2)
x_poly_train = poly.fit_transform(x_train)

#注意数据都需要通过poly处理
x_poly_test = poly.transform(x_test)

poly_model = LinearRegression()
poly_model.fit(x_poly_train,y_train)


## 决策树回归
from sklearn.tree import DecisionTreeRegressor

dt = DecisionTreeRegressor()
dt.fit(x_train,y_train)


## GBDT回归(梯度提升树回归)
from sklearn.ensemble import GradientBoostingRegressor as GBDT

gb = GBDT()
gb.fit(x_train,y_train)


## XGBOOST,如果无法调用,使用
# !pip install xgboost -i https://pypi.tuna.tsinghua.edu.cn/simple
## 以安装xgboost包
import xgboost as xgb

xgb_model = xgb.XGBRegressor()
xgb_model.fit(x_train,y_train)

### 分类模型

## 朴素贝叶斯(伯努利分布/二项分布)
from sklearn.naive_bayes import BernoulliNB

nb_model = BernoulliNB()
nb_model.fit(x_train,y_train)

## 支持向量机
from sklearn.svm import SVC

clf = SVC()
clf.fit(x_train,y_train)

## KNN
from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import MinMaxScaler

knn_scaler = MinMaxScaler()
knn_x_train = knn_scaler.fit_transform(x_train)
knn_x_test = knn_scaler.transform(x_test)


knn_c =  KNeighborsClassifier()
knn_c.fit(knn_x_train,y_train)

## 决策树分类
from sklearn.tree import DecisionTreeClassifier

dtc = DecisionTreeClassifier()
dtc.fit(x_train,y_train)

## xgboost
from xgboost import XGBClassifier

xgbc = XGBClassifier()
xgbc.fit(x_train,y_train)

 Most of the time, just looking for the code is enough to find the model calling code.

I have learned a lot of principles, but it is very troublesome to look through them in which bag

Going to search for information talks about a lot of principles (in fact, what we need is not principles, even if we search for GBDT+ code in the search box)

It is still necessary to look through a lot of things to find the code, so a simple arrangement is enough for homework.

Guess you like

Origin blog.csdn.net/nanaminanaki/article/details/130140741