机器学习算法基础--基础概念,特征抽取,归一化,标准化,sklearn缺失值处理

本文介绍了机器学习的基础概念,包括数据集来源如Kaggle、scikit-learn和UCI,以及数据处理工具pandas和sklearn。重点讲解了特征抽取,如字典特征抽取、文本特征抽取和TF-IDF,并详细阐述了sklearn中的DictVectorizer和CountVectorizer。此外,还讨论了特征处理的归一化和标准化方法,以及sklearn中的缺失值处理策略。
摘要由CSDN通过智能技术生成

机器学习基础概念

  • 机器学习:从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测
  • 数据集
    数据集的数据结构组成:特征值+目标值

可用数据集:
1.Kaggle
特点:
(1).大数据竞赛平台
(2).真实数据
(3).数据量巨大
2.scikit-learn
特点:
(1).数据量较小
(2).方便学习
3.UCI
(1).收录了360个数据集
(2).覆盖科学,生活,经济等领域
(3).数据量几十万

  • 数据处理工具
    1.pandas:一个数据读取非常方便以及基本的处理格式的工具
    2.sklearn:对于特征处理提供了强大的接口
    sk-learn包括许多知名的机器学习算法的实现

  • 特征工程:将原始数据转换为更好地代表预测模型的潜在问题的特征的过程,从而提高了对未知数据的模型准确性
    特征工程的步骤:
    1.数据特征抽取
    2.数据特征预处理
    3.数据特征选择

特征抽取

  • 特征抽取对文本等数据进行特征值化–为了让机器更好的理解数据

字典特征抽取

  • 目的:对字典数据进行特征值化
  • DictVectorizer
    1.DictVectorizer.fit_transform(X)
    (1).X为字典或者包含字典的迭代器
    (2).返回值:返回sparse矩阵,sparse节约内存,方便读取处理
    2.DictVectorizer.inverse_transform(X)
    (1).X:array数组或者sparse矩阵
    (2).返回值:转换之前数据格式
    3.DictVectorizer.get_feature_names_out()
    (1).返回类别名称
    4.DictVectorizer.transform(X)
    (1).按照原先的标准转化
    使用:
def dictvec():
    """
    字典数据抽取
    :return:
    """
    #实例化,默认sparse为True
    dict = DictVectorizer()
    #调用fit_transform
    data = dict.fit_transform(([{
   'city':'北京','temperature':100},{
   'city':'上海','temperature':60},{
   'city':'广州','temperature':30}]))
    #获取类别名称
    print(dict.get_feature_names_out())
    print('这是sparse矩阵:\n',data)

    #实例化,将sparse设置为False
    dict = DictVectorizer(sparse=False)
    data = dict.fit_transform(([{
   'city':'北京','temperature':100},{
   'city':'上海','temperature':60},{
   'city':'广州','temperature':30}]))
    print('这是ndarray类型:\n', data)
    return  None


if __name__ == '__main__':
    dictvec()

输出:

['city=上海' 'city=北京' 'city=广州' 'temperature']
这是sparse矩阵:
   (0, 1)	1.0
  (0, 3)	100.0
  (1, 0)	1.0
  (1, 3)	60.0
  (2, 2)	1.0
  (2, 3)	30.0
这是ndarray类型:
 [[  0.   1.   0. 100.]
 [  1.   0.   0.  60.]
 [  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值