机器学习概述

机器学习

机器学习是从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测。

目的:让机器学习程序替换手动的步骤

数据集的构成

机器学习的数据:文件csv
mysql:1、性能瓶颈,读取速度
2、格式不太符合机器学习要去数据的格式

在这里插入图片描述在这里插入图片描述

特征工程

特征工程是将原始数据转换为更好地代表预测模型的潜在问题的特征的过程,从而提高了对未知数据的模型准确性

特征抽取

  • 特征抽取针对非连续型数据
  • 特征抽取对文本等进行特征值化

sklearn特征抽取API

sklearn.feature_extraction

字典特征抽取
作用:对字典数据进行特征值化

sklearn.feature_extraction.DictVectorizer
DictVectorizer语法

DictVectorizer(sparse=True,…)

  • DictVectorizer.fit_transform(X)
    * X:字典或者包含字典的迭代器
    * 返回值:返回sparse矩阵
  • DictVectorizer.inverse_transform(X)
    * X:array数组或者sparse矩阵
    * 返回值:转换之前数据格式
  • DictVectorizer.get_feature_names()
    * 返回类别名称
  • DictVectorizer.transform(X)
    * 按照原先的的标准转换

字典数据抽取:把字典中一些类别数据,分别进行转换成特征

数组形式,有类别的这些特征先要转换字典数据

ndarray[二维数组]
在这里插入图片描述文本特征抽取
作用:对文本数据进行特征值化

sklearn.feature_extraction.text.CountVectorizer

CountVectorizer语法

  • CountVectorizer(max_df=1.0,min_df=1,…)
    • 返回词频矩阵
    • CountVectorizer.fit_transform(X,y)
      • X:文本或者包含文本字符串的可迭代对象
      • 返回值:返回sparse矩阵
    • CountVectorizer.inverse_transform(X)
      • X:array数组或者sparse矩阵
      • 返回值:转换之前数据格式
    • CountVectorizer.get_feature_names()
      • 返回值:单词列表

1、统计所有文章当中所有的词,重复的只看做一次–词的列表
在这里插入图片描述2、 对每篇文章,在词的列表里面进行统计每个词出现的次数

TF-IDF

TF-IDF的主要思想是:如果某个词或短语在一篇文章中出现的概率高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。

作用:用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。

sklearn.feature_extraction.text.TfidfVectorizer

TfidfVectorizer语法

  • TfidfVectorizer(stop_words=None,…)
    • 返回词的权重矩阵
    • TfidfVectorizer.fit_transform(X,y)
      • X:文本或者包含文本字符串的可迭代对象
      • 返回值:返回sparse矩阵
    • TfidfVectorizer.inverse_transform(X)
      • X:array数组或者sparse矩阵
      • 返回值:转换之前数据格式
    • TfidfVectorizer.get_feature_names()
      • 返回值:单词列表

数据的特征处理

数据值类型:标准缩放:
1、归一化
2、标准化
3、缺失值
类别型数据:one-hot编码
时间类型:时间的切分

skelearn特征预处理API
sklearn.preprocessing

归一化

特点:通过对原始数据进行变换把数据映射到(默认为[0,1])之间

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述sklearn归一化API

sklearn.preprocessing.MinMaxScaler

MinMaxScaler语法

  • MinMaxScaler(feature_range=(0,1)…)
    • 每个特征缩放到给定范围(默认[0,1])
    • MinMaxScaler.fit_transform(X)
      • X:numpy array格式的数据[n_samples,n_features]
      • 返回值:转换后的形状相同的array

总结:

注意在特定场景下最大值最小值是变化的,另外,最大值与最小值非常容易易受异常点影响,所以这种方法鲁棒性较差,只适合传统精确小数据场景。

标准化

  • 特点:通过对原始数据进行变换把数据变换到均值为0,方差为1范围内
  • 公式:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述sklearn特征化API:
scikit-learn.preprocessing.StandardScaler

StandardScaler语法

  • StandardScaler(…)
    • 处理之后每列来说所有数据都聚集在均值0附近方差为1

    • StandardScaler.fit_transform(X,y)

      • X:numpy array格式的数据[n_samples,n_features]
      • 返回值:转换后的形状相同的array
    • StandardScaler.mean_

      • 原始数据中每列特征的平均值
    • StandardScaler.std_

      • 原始数据每列特征的方差

缺失值处理方法

在这里插入图片描述sklearn缺失值API:

sklearn.preprocessing.lmputer

lmputer语法

  • lmputer(missing_values=‘NaN’,strategy=‘mean’,axis=0)
    • 完成缺失值插补
    • lmputer.fit_transform(X,y)
      • X:numpy array格式的数据[n_samples,n_features]
      • 返回值:转换后的形状相同的array
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值