一、机器学习基本算法归类
数据源有标签
属于有监督
学习(回归可以理解为:y=ax b)
数据源无标签
属于无监督
学习
离散
型变量一般属于分类
算法
连续
型变量一般属于回归
算法
注:逻辑回归是二分类算法
二、机器学习一般建模流程
1、导入库(sciket-learn相关模块儿)
2、导入原始数据(数据读入,sql/本地文件/其他数据方式)
3、数据清洗(null值,偏离值等处理)
4、特征选择:选出所需特征x,以及对应目标y
—数据决定了机器学习的上限,而算法只是尽可能的逼近这个上限
—
特征工程:特征构建、特征提取、特征选择
代码语言:javascript复制常用特征处理方法及API
#特征抽取
import sklearn.feature_extraction
#字典特征抽取DictVectorizer
from sklearn.feature_extraction import DictVectorizer
#文本特征抽取
from sklearn.feature_extraction.text import CountVectorizer
#TF-IDF特征抽取
from sklearn.feature_extraction.text import TfidfVectorizer
参考链接:https://blog.csdn.net/qq_35866846/article/details/102929575
5、数据集划分
代码语言:javascript复制from sklearn.model_selection import train_test_split #数据集划分API
x_train,x_test,y_train,y_test=train_test_split(X,Y,test_size=0.25,random_state=0)
6、数据预处理(标准化、归一化)
代码语言:javascript复制import sklearn.preprocessing
from sklearn.preprocessing import StandardScaler #标准化
from sklearn.preprocessing import MinMaxScaler #归一化
–StandardScaler/MinMaxScaler又称Transformer转换器
–
7、建模、模型训练
使用训练集建立模型 常用模型算法及API
代码语言:javascript复制#导入线性回归模型
from sklearn.linear_model import LinearRegression
#逻辑回归
from sklearn.linear_model import LogisticRegression
#决策树
from sklearn.tree import DecisionTreeClassifier
#随机森林
from sklearn.ensemble import RandomForestClassifier
#梯度下降
from sklearn.linear_model import SGDRegressor
#KMeans聚类
from sklearn.cluster import KMeans
#KN_k近邻算法
from sklearn.neighbors import KNeighborsClassifier
#朴素贝叶斯
from sklearn.naive_bayes import MultinomialNB
–Linear Regression等称为Estimator估计器-
-
8、检验模型效果
回归:看R方,R方越接近1模型效果越好,模型越稳定 分类:①score评分;②精准率、召回率、F1评分
9、模型调优
①交叉验证网格搜索调参 ②多折交叉验证