机器学习概述

一、机器学习概述

1、什么是机器学习

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

2、为什么需要机器学习

解放生产力——不知疲倦24小时作业

解决专业问题——有用,帮助看病等

提供社会便利——比如智慧城市

3、机器学习的应用场景

自然语言处理、无人驾驶、计算机视觉、推荐系统

二、数据来源与类型

1、数据来源

企业积累的数据、政府掌握的数据、科研机构提供的实验数据......

2、数据类型

离散型数据、连续型数据

3、可用的数据集

三、数据的特征工程

1、什么是特征工程

特征工程是将原始数据转换为更好地代表预测模型的潜在问题的特征的过程,从而提高了对未知数据的模型准确性。比如就像下图这样,将一个计算机不认识的文章,转换成一个机器能识别处理的矩阵。

2、特征工程的意义

直接影响模型的预测结果。

比如请看下图:在天池大赛中,排名第一第二第三的成绩其实差得都是那么一点点,但是就是这一点点造成了结果的打不通。同样的数据,同样的算法(毕竟数据挖掘和机器学习的算法基本上大家都懂都想得到),那么为什么结果就不同?当然是因为前期的特征工程直接影响了模型的预测结果。

 

3、scikit-learn库介绍

(1)、简介

python语言的机器学习工具

scikit-learn包括许多知名的机器学习算法的实现

文档完善,容易上手,丰富的API,在学术界颇受欢迎

(2)、安装

https://blog.csdn.net/pp814274513/article/details/87295829

4、数据的特征抽取

1、特征抽取实例演示

请看如下实例演示:将两个句子经过特征值化,转变成了矩阵。由此得出结论:特征抽取就是对文本(文章、句子、字符串)等进行特征值化以便计算机更好地去理解数据

2、sklearn特征抽取API

sklearn.feature_extraction中

3、字典特征抽取

作用:对字典数据进行特征值化。把字典中一些类别数据分别转换成特征。

注意,如果看不懂结果,请补充知识——one-hot编码。

from sklearn.feature_extraction import DictVectorizer

def dictvec():
    """
    字典数据抽取
    :return: None
    """
    # 实例化
    dict = DictVectorizer(sparse=False)

    # 调用fit_transform
    data = dict.fit_transform([{'city':'北京','temp':100},{'city':'上海','temp':80},{'city':'三亚','temp':60}])
    # 获取特征值项以及目标项
    print(dict.get_feature_names())
    # 获取行数据
    print(data)
    return None

if __name__ =="__main__":
    dictvec()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
['city=三亚', 'city=上海', 'city=北京', 'temp']
[[  0.   0.   1. 100.]
 [  0.   1.   0.  80.]
 [  1.   0.   0.  60.]]

Process finished with exit code 0

4、文本特征抽取

应用场景:文本分类、情感分析。这些都需要先输入文本。通过对每个文章得出的关键词的词频,大致可以判断出分类。

作用:对文本数据进行特征值化。

(1)、方式一fit_transform

注意,这里只是一个示例,真正的应用中应该是很长的文章。除此之外,单个字母不参与统计,因为单个英文字母不能反映文章主题。

from sklearn.feature_extraction import DictVectorizer
from sklearn.feature_extraction.text import CountVectorizer

def contvec():
    """
    对文本进行特征值化
    :return: None
    """
    # 实例化
    cv = CountVectorizer()
    # 文本特征值化
    data = cv.fit_transform(["life is short,i like python","life is too long,i dislike python"])
    # 获取词的列表
    print(cv.get_feature_names())
    # 对该词在文章中出现的次数进行统计
    print(data.toarray())

    return None
if __name__ =="__main__":
    contvec()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
['dislike', 'is', 'life', 'like', 'long', 'python', 'short', 'too']
[[0 1 1 1 0 1 1 0]
 [1 1 1 0 1 1 0 1]]

Process finished with exit code 0

下面这个是一个中文示例:

from sklearn.feature_extraction.text import CountVectorizer
import jieba

def cunword():
    """
    使用jieba对三段中文文章进行分词
    :return:
    """
    con1 = jieba.cut("党中央决定组建中央全面依法治国委员会,这是我们党历史上第一次设立这样的机构,目的是加强党对全面依法治国的集中统一领导,统筹推进全面依法治国工作。")
    con2 = jieba.cut("近日,有网友在社交平台上看到吴卓林的妻子Andy更新了动态,这则动态的内容引发了网友们的议论。Andy晒出了一张图片,照片中的两个人分别伸出一只手,两只手之间传递着魔力。照片的寓意很难猜测,这两个人代表她和吴卓林吗?")
    con3 = jieba.cut("据每日经济新闻15日消息,从中国电信方面知情人士处获悉,中国电信下发了首张5G网络下的SIM卡,也就是5G手机电话卡,SOHO中国董事长潘石屹率先尝鲜。此前的1月29日,中国电信与SOHO中国签订了5G战略合作协议,根据双方的商定,中国电信将向SOHO中国北京楼宇入驻用户提供5G网络覆盖。")
    # 转换成列表
    content1 = list(con1)
    content2 = list(con2)
    content3 = list(con3)
    # 把列表转换成以空格分开的字符串
    c1 = ' '.join(content1)
    c2 = ' '.join(content2)
    c3 = ' '.join(content3)
    return c1,c2,c3

def hanzivec():
    """
    中文特征值化
    :return: None
    """
    c1, c2, c3 = cunword()
    print(c1, c2, c3)

    # 实例化
    cv = CountVectorizer()
    # 文本特征值化
    data = cv.fit_transform([c1, c2, c3])
    # 获取词的列表
    print(cv.get_feature_names())
    # 对该词在文章中出现的次数进行统计
    print(data.toarray())

    return None
if __name__ =="__main__":
    hanzivec()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe "D:\program files (x86)\JetBrains\PyCharm 2016.1.4\helpers\pydev\pydevd.py" --multiproc --qt-support --client 127.0.0.1 --port 64797 --file J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
warning: Debugger speedups using cython not found. Run '"D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe" "D:\program files (x86)\JetBrains\PyCharm 2016.1.4\helpers\pydev\setup_cython.py" build_ext --inplace' to build.
pydev debugger: process 11888 is connecting

Connected to pydev debugger (build 145.1504)
Building prefix dict from the default dictionary ...
Loading model from cache C:\Users\mapu\AppData\Local\Temp\jieba.cache
Loading model cost 0.695 seconds.
Prefix dict has been built succesfully.
党中央 决定 组建 中央 全面 依法治国 委员会 , 这是 我们 党 历史 上 第一次 设立 这样 的 机构 , 目的 是 加强 党 对 全面 依法治国 的 集中统一 领导 , 统筹 推进 全面 依法治国 工作 。 近日 , 有 网友 在 社交 平台 上 看到 吴卓林 的 妻子 Andy 更新 了 动态 , 这则 动态 的 内容 引发 了 网友 们 的 议论 。 Andy 晒出 了 一张 图片 , 照片 中 的 两个 人 分别 伸出 一只 手 , 两只手 之间 传递 着 魔力 。 照片 的 寓意 很难 猜测 , 这 两个 人 代表 她 和 吴卓林 吗 ? 据 每日 经济 新闻 15 日 消息 , 从 中国电信 方面 知情 人士处 获悉 , 中国电信 下发 了 首张 5G 网络 下 的 SIM卡 , 也 就是 5G 手机 电话卡 , SOHO 中国 董事长 潘石屹 率先 尝鲜 。 此前 的 1 月 29 日 , 中国电信 与 SOHO 中国 签订 了 5G 战略 合作 协议 , 根据 双方 的 商定 , 中国电信 将 向 SOHO 中国 北京 楼宇 入驻 用户 提供 5G 网络覆盖 。
['15', '29', '5g', 'andy', 'sim卡', 'soho', '一只', '一张', '下发', '两个', '两只手', '中国', '中国电信', '中央', '之间', '人士处', '代表', '传递', '伸出', '依法治国', '党中央', '入驻', '全面', '内容', '决定', '分别', '加强', '动态', '北京', '协议', '历史', '双方', '合作', '吴卓林', '商定', '图片', '妻子', '委员会', '寓意', '尝鲜', '就是', '工作', '平台', '引发', '很难', '我们', '战略', '手机', '推进', '提供', '新闻', '方面', '晒出', '更新', '机构', '根据', '楼宇', '此前', '每日', '消息', '潘石屹', '照片', '猜测', '率先', '用户', '电话卡', '目的', '看到', '知情', '社交', '第一次', '签订', '组建', '经济', '统筹', '网友', '网络', '网络覆盖', '获悉', '董事长', '议论', '设立', '近日', '这则', '这是', '这样', '集中统一', '领导', '首张', '魔力']
[[0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 3 1 0 3 0 1 0 1 0 0 0 1 0 0 0 0 0
  0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0
  1 0 1 0 0 0 0 0 0 1 0 0 1 1 1 1 0 0]
 [0 0 0 2 0 0 1 1 0 2 1 0 0 0 1 0 1 1 1 0 0 0 0 1 0 1 0 2 0 0 0 0 0 2 0 1
  1 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 2 1 0 0 0 0 1 0 1 0 0
  0 0 0 2 0 0 0 0 1 0 1 1 0 0 0 0 0 1]
 [1 1 4 0 1 3 0 0 1 0 0 3 4 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 1 1 0 1 0
  0 0 0 1 1 0 0 0 0 0 1 1 0 1 1 1 0 0 0 1 1 1 1 1 1 0 0 1 1 1 0 0 1 0 0 1
  0 1 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 0]]

(2)、方式二tf-idf分析

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

TF-IDF作用:用以评估一个词对于一个文件集或一个语料库的其中一份文件的重要读。

TF:词频

IDF:逆文档频率,log(总文档数量/该词出现的文档数量)

TF-IDF=TF*IDF,度量重要性程度的值。

请看下面示例,相对于第一种方案,真的进步很多:

from sklearn.feature_extraction.text import CountVectorizer,TfidfVectorizer
import jieba

def cunword():
    """
    使用jieba对三段中文文章进行分词
    :return:
    """
    con1 = jieba.cut("党中央决定组建中央全面依法治国委员会,这是我们党历史上第一次设立这样的机构,目的是加强党对全面依法治国的集中统一领导,统筹推进全面依法治国工作。")
    con2 = jieba.cut("近日,有网友在社交平台上看到吴卓林的妻子Andy更新了动态,这则动态的内容引发了网友们的议论。Andy晒出了一张图片,照片中的两个人分别伸出一只手,两只手之间传递着魔力。照片的寓意很难猜测,这两个人代表她和吴卓林吗?")
    con3 = jieba.cut("据每日经济新闻15日消息,从中国电信方面知情人士处获悉,中国电信下发了首张5G网络下的SIM卡,也就是5G手机电话卡,SOHO中国董事长潘石屹率先尝鲜。此前的1月29日,中国电信与SOHO中国签订了5G战略合作协议,根据双方的商定,中国电信将向SOHO中国北京楼宇入驻用户提供5G网络覆盖。")
    # 转换成列表
    content1 = list(con1)
    content2 = list(con2)
    content3 = list(con3)
    # 把列表转换成以空格分开的字符串
    c1 = ' '.join(content1)
    c2 = ' '.join(content2)
    c3 = ' '.join(content3)
    return c1,c2,c3

def tfidfvec():
    """
    中文特征值化
    :return: None
    """
    c1, c2, c3 = cunword()
    print(c1, c2, c3)

    # 实例化
    tf = TfidfVectorizer()
    # 文本特征值化
    data = tf.fit_transform([c1, c2, c3])
    # 获取词的列表
    print(tf.get_feature_names())
    # 对该词在文章中出现的次数进行统计
    print(data.toarray())

    return None

if __name__ =="__main__":
    tfidfvec()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
Building prefix dict from the default dictionary ...
Loading model from cache C:\Users\mapu\AppData\Local\Temp\jieba.cache
Loading model cost 0.685 seconds.
Prefix dict has been built succesfully.
党中央 决定 组建 中央 全面 依法治国 委员会 , 这是 我们 党 历史 上 第一次 设立 这样 的 机构 , 目的 是 加强 党 对 全面 依法治国 的 集中统一 领导 , 统筹 推进 全面 依法治国 工作 。 近日 , 有 网友 在 社交 平台 上 看到 吴卓林 的 妻子 Andy 更新 了 动态 , 这则 动态 的 内容 引发 了 网友 们 的 议论 。 Andy 晒出 了 一张 图片 , 照片 中 的 两个 人 分别 伸出 一只 手 , 两只手 之间 传递 着 魔力 。 照片 的 寓意 很难 猜测 , 这 两个 人 代表 她 和 吴卓林 吗 ? 据 每日 经济 新闻 15 日 消息 , 从 中国电信 方面 知情 人士处 获悉 , 中国电信 下发 了 首张 5G 网络 下 的 SIM卡 , 也 就是 5G 手机 电话卡 , SOHO 中国 董事长 潘石屹 率先 尝鲜 。 此前 的 1 月 29 日 , 中国电信 与 SOHO 中国 签订 了 5G 战略 合作 协议 , 根据 双方 的 商定 , 中国电信 将 向 SOHO 中国 北京 楼宇 入驻 用户 提供 5G 网络覆盖 。
['15', '29', '5g', 'andy', 'sim卡', 'soho', '一只', '一张', '下发', '两个', '两只手', '中国', '中国电信', '中央', '之间', '人士处', '代表', '传递', '伸出', '依法治国', '党中央', '入驻', '全面', '内容', '决定', '分别', '加强', '动态', '北京', '协议', '历史', '双方', '合作', '吴卓林', '商定', '图片', '妻子', '委员会', '寓意', '尝鲜', '就是', '工作', '平台', '引发', '很难', '我们', '战略', '手机', '推进', '提供', '新闻', '方面', '晒出', '更新', '机构', '根据', '楼宇', '此前', '每日', '消息', '潘石屹', '照片', '猜测', '率先', '用户', '电话卡', '目的', '看到', '知情', '社交', '第一次', '签订', '组建', '经济', '统筹', '网友', '网络', '网络覆盖', '获悉', '董事长', '议论', '设立', '近日', '这则', '这是', '这样', '集中统一', '领导', '首张', '魔力']
[[0.         0.         0.         0.         0.         0.
  0.         0.         0.         0.         0.         0.
  0.         0.16439899 0.         0.         0.         0.
  0.         0.49319696 0.16439899 0.         0.49319696 0.
  0.16439899 0.         0.16439899 0.         0.         0.
  0.16439899 0.         0.         0.         0.         0.
  0.         0.16439899 0.         0.         0.         0.16439899
  0.         0.         0.         0.16439899 0.         0.
  0.16439899 0.         0.         0.         0.         0.
  0.16439899 0.         0.         0.         0.         0.
  0.         0.         0.         0.         0.         0.
  0.16439899 0.         0.         0.         0.16439899 0.
  0.16439899 0.         0.16439899 0.         0.         0.
  0.         0.         0.         0.16439899 0.         0.
  0.16439899 0.16439899 0.16439899 0.16439899 0.         0.        ]
 [0.         0.         0.         0.28867513 0.         0.
  0.14433757 0.14433757 0.         0.28867513 0.14433757 0.
  0.         0.         0.14433757 0.         0.14433757 0.14433757
  0.14433757 0.         0.         0.         0.         0.14433757
  0.         0.14433757 0.         0.28867513 0.         0.
  0.         0.         0.         0.28867513 0.         0.14433757
  0.14433757 0.         0.14433757 0.         0.         0.
  0.14433757 0.14433757 0.14433757 0.         0.         0.
  0.         0.         0.         0.         0.14433757 0.14433757
  0.         0.         0.         0.         0.         0.
  0.         0.28867513 0.14433757 0.         0.         0.
  0.         0.14433757 0.         0.14433757 0.         0.
  0.         0.         0.         0.28867513 0.         0.
  0.         0.         0.14433757 0.         0.14433757 0.14433757
  0.         0.         0.         0.         0.         0.14433757]
 [0.10846523 0.10846523 0.43386092 0.         0.10846523 0.32539569
  0.         0.         0.10846523 0.         0.         0.32539569
  0.43386092 0.         0.         0.10846523 0.         0.
  0.         0.         0.         0.10846523 0.         0.
  0.         0.         0.         0.         0.10846523 0.10846523
  0.         0.10846523 0.10846523 0.         0.10846523 0.
  0.         0.         0.         0.10846523 0.10846523 0.
  0.         0.         0.         0.         0.10846523 0.10846523
  0.         0.10846523 0.10846523 0.10846523 0.         0.
  0.         0.10846523 0.10846523 0.10846523 0.10846523 0.10846523
  0.10846523 0.         0.         0.10846523 0.10846523 0.10846523
  0.         0.         0.10846523 0.         0.         0.10846523
  0.         0.10846523 0.         0.         0.10846523 0.10846523
  0.10846523 0.10846523 0.         0.         0.         0.
  0.         0.         0.         0.         0.10846523 0.        ]]

Process finished with exit code 0

 

5、数据的特征处理

1、什么是特征处理

通过特定的统计方法(数学方法)将数据转换成算法要求的数据。例如下面的通过特征处理,第一组数值变小,第二组特征数量变少了。

2、特征处理的方法

注意:归一化和标准化的目的是一样的,都是为了防止度量单位不同,而数值大小不同,让不同特征之间没有可比性。简单说就是防止某一个特征对最终结果造成影响。

数值型数据:标准缩放:

   1、归一化,2、标准化,3、缺失值

类别性数据:

   one-hot编码

时间类型:

    时间的切分

归一化:通过对原始数据进行变换把数据映射到(默认【0,1】)之间

很显然,这种方法很不好。如果是我的话,我宁愿以最大的值作为单位1,这种归一化会将X各个取值之间的大小关系损失掉。

 

归一化方式:在特定场景下最大值和最小值是变化的,另外,最大值与最小值非常容易受异常点影响,所以这种方法的鲁棒性较差,只适合传统精确小数据场景。而传统精确小数据场景几乎没有,极少极少。

 

标准化:通过对原始数据进行变换,将数据映射到均值为0,方差为1的范围内。

对于庞大的数据量,异常点的缺失对于平均值和标准差影响很小,故该方法适合样本足够多的情况下,适合现代嘈杂大数据场景

缺失值处理

对于缺失值得处理无非两种——要么删除,要么插补。

from sklearn.preprocessing import MinMaxScaler, StandardScaler, Imputer
import numpy as np

def im():
    """
    缺失值处理
    :return: None
    """
    #缺失值标记,填补标记是平均值,按列填补
    im = Imputer(missing_values="NaN", strategy="mean", axis=0)
    data = im.fit_transform([[5,2], [1,4], [1,np.nan], [np.nan,2], ])
    print(data)
    return None

if __name__ =="__main__":
    im()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
D:\Users\mapu\AppData\Local\Programs\Python\Python37\lib\site-packages\sklearn\utils\deprecation.py:58: DeprecationWarning: Class Imputer is deprecated; Imputer was deprecated in version 0.20 and will be removed in 0.22. Import impute.SimpleImputer from sklearn instead.
  warnings.warn(msg, category=DeprecationWarning)
[[5.         2.        ]
 [1.         4.        ]
 [1.         2.66666667]
 [2.33333333 2.        ]]

Process finished with exit code 0

3、sklearn特征处理API

归一化:

from  sklearn.preprocessing import MinMaxScaler

def mm():
    """
    归一化处理
    :return: None
    """
    # 实例化
    mm = MinMaxScaler()
    # 调用归一化方法得到结果存储在data中
    data = mm.fit_transform([[100,50,30,3], [100,550,306,38], [100,540,320,33]])
    print(data)
    return None
if __name__ =="__main__":
    mm()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
[[0.         0.         0.         0.        ]
 [0.         1.         0.95172414 1.        ]
 [0.         0.98       1.         0.85714286]]

Process finished with exit code 0

标准化:

from sklearn.preprocessing import MinMaxScaler, StandardScaler

def stand():
    """
    标准化处理
    :return: None
    """
    # 实例化
    stand = StandardScaler()
    # 调用归一化方法得到结果存储在data中
    data = stand.fit_transform([[100,50,30,3], [100,550,306,38], [100,540,320,33]])
    print(data)
    return None

if __name__ =="__main__":
    stand()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
[[ 0.         -1.41399717 -1.41291748 -1.40182605]
 [ 0.          0.72842279  0.65403601  0.86266219]
 [ 0.          0.68557439  0.75888147  0.53916387]]

Process finished with exit code 0

6、数据的特征选择/数据降维

0、特征选择原因

冗余:部分特征相关度高,容易消耗内存

噪声:部分特征对预测结果有负影响

1、什么是特征选择

特征提取后,从所有提取出来的特征中选择部分特征作为训练集特征,特征在选择前和选择后的维数比以前小。

主要方法:

*Filter(过滤式):VarianceThreshold

方式一:删除方差为零或者方差过低的特征。因为方差为零(或过低)代表着在这个特征下的样本的取值是同一个值(或者相差极小)。

from sklearn.feature_selection import VarianceThreshold

def var():
    """
    特征选择-过滤式-删除低方差的特征
    :return: None
    """
    # 实例化
    var = VarianceThreshold(threshold=0.0)
    data = var.fit_transform([[0,1,2,3], [0,1,2,3], [0,1,2,3], [3,3,3,3]])
    print(data)
    return None

if __name__ =="__main__":
    var()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
[[0 1 2]
 [0 1 2]
 [0 1 2]
 [3 3 3]]

Process finished with exit code 0

*Embedded(嵌入式):正则化、决策树

Wrapper(包裹式)

 

方式二:PCA

此方法应用场景并不多,一般如果你的特征数量达到上百个的时候,可以考虑要不要使用PCA进行数据简化。

PCA是什么?是一种分析、简化数据集的技术,目的是压缩数据尽可能降低原数据的维数,损失少量信息。

from sklearn.decomposition import PCA

def pca():
    """
    主成分分析进行数据姜维
    :return: None
    """
    # 实例化,这里我比较严格,要求保留百分之九十九的数据
    pca1 = PCA(n_components=0.99)
    # 进行主成分分析,注意这里是二维的数据
    data = pca1.fit_transform([[1,2,3], [4,2,3], [1,5,3], [1,2,7]])
    # 打印PCA的结果,注意这里会是一个一维的数据
    print(data)
    return None

if __name__ =="__main__":
    pca()

D:\Users\mapu\AppData\Local\Programs\Python\Python37\python.exe J:/2018传智播客人工智能15期/AICode/特征值提取/zidiantezhengchouqu.py
[[-4.75803478e-01 -2.89943967e-14  1.37790096e+00]
 [-1.34752654e+00  2.12132034e+00 -5.56032573e-01]
 [-1.34752654e+00 -2.12132034e+00 -5.56032573e-01]
 [ 3.17085656e+00  5.26337959e-15 -2.65835813e-01]]

Process finished with exit code 0

2、sklearn特征选择API

3、其他特征选择方法

四、机器学习基础

 

 

 

 

 

 

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值