【机器学习】基础知识

该教程主要参考了scikit-learn机器学习库定制。本章节我们将讲解机器学习中最重要的一部分中特征工程中的数据预处理,后续我还会针对系统性的讲解机器学习知识.点解参考文档学习,效果更佳!

1.1机器学习基础模块

1.1.1分类算法
  • 主要用来做垃圾邮件的检测和简答图像的识别。
  • 常见的分类算法:KNN、Logistic Regression、Decision Tree、SVC、Navie Bayes等。
1.1.2回归算法
  • 主要用来做药物反应、股票价格拟合等。
  • 线性回归就是回归,主要运用来数学、金融、经济等领域
  • 逻辑回归主要用来做分类。主要用在数据挖掘、疾病自动诊断、经济预测等领域。
1.1.3聚类算法
  • 是一种无监督学习,主要应用来客户细分、实验结果的分组
  • 常用算法:KMeans、DBSCAN、层次据类等
1.1.4关联算法
  • 主要用来做推荐系统、apriori、协同过滤等。
1.1.5降维算法
  • 应用:数据可视化、用来提高模型的效率
  • 算法:PCA、LDA、NMF等
1.1.6模型选择
  • 模型的选择,比较、验证和参数的选择等。
1.1.7数据预处理
  • 应用特征提取、归一化、文本转化等

1.2datasets模块(数据的采集)

1.2.1自带的数据集

自带数据集的使用流程

1.2.2自定义数据集

1】回归模型数据集生成

X,Y=datasets.make_regression(n_samples=100,n_features=1,n_targets=1,noise=10)  # 用来生成回归数据
plt.scatter(X,Y)
plt.show()

2】分类模型数据集生成

X,Y=make_classification(
    n_samples=300, # 300条数据
    n_features=2,  # 2个特征
    n_redundant=0,  # 没有冗余的数据
    n_informative=2,  # 信息量
    random_state=22,  # 随机状态
    n_clusters_per_class=1,  # 每类几个部分
    scale=100   #  # 规模
)

plt.scatter(X[:,0],X[:,1],c='y')
plt.show()

3】层次聚类数据集生成

X,t = datasets.make_swiss_roll(n_samples=1500,noise = 0.05)

4】团状数据集生成

X,y = datasets.make_blobs(n_samples=300,centers=5)
plt.scatter(X[:,0],X[:,1],c = y)

X3,y3 = datasets.make_blobs(n_samples=500,n_features=2,centers=[[1.5,1.5]],cluster_std=0.2)

5】环形数据集合生产

X,y = datasets.make_circles(
    n_samples=100,  # 样本个数
    shuffle=True,  # 是否打乱顺序
    noise=0.1,  # 噪声点占比
    random_state=None, # 随机种子
    factor=0.3,  # 方差
)

6】常用参数

  • n_samples:样本数量
  • n_features:特征的个数,有多少个特征就有多少个未知数
  • centers:中心点的个数
  • cluster_std:聚类的标准差
  • center_box:中心点的范围,默认(-10.0, 10.0)
  • shuffle:点是随机的
  • random_state:如果为True,每次的随机都是一样的

1.3模型的加载和保存

1.3.1pickle模块

模型的保存

import pickle
with open('./knn',mode='wb') as wf:
    pickle.dump(knn1,wf)

模型的加载

with open('./knn',mode='rb') as rf:
    knn=pickle.load(rf)
    print(knn)
1.3.2datasets自带的joblib模块

模型的加载和保存

from sklearn.externals import joblib
joblib.dump(knn,'./knn1')
knn1=joblib.load('./knn1')
print(knn1)

1.4可视化及其数据挖掘流程

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值