python机器学习算法与数据降维分析详解

目录
  • 一、数据降维
    • 1.特征选择
    • 2.主成分分析(PCA)
    • 3.降维方法使用流程
  • 二、机器学习开发流程
    • 1.机器学习算法分类
    • 2.机器学习开发流程
  • 三、转换器与估计器
    • 1.转换器
    • 2.估计器

一、数据降维

机器学习中的维度就是特征的数量,降维即减少特征数量。降维方式有:特征选择、主成分分析。

1.特征选择

当出现以下情况时,可选择该方式降维:

①冗余:部分特征的相关度高,容易消耗计算性能

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

特征选择主要方法:过滤式(VarianceThreshold)、嵌入式(正则化、决策树)

过滤式:

sklearn特征选择API

sklearn.feature_selection.VarianceThreshold

注意:没有最好的方差选择,需要根据实际效果选择方差。

2.主成分分析(PCA)

API:sklearn.decomposition

主成分分析会尽可能降低原数据的维数,损失少量信息。当特征数量达到上百的时候,就需要考虑主成分分析。可以削减回归分析或者聚类分析中特征的数量。

PCA语法:

里面的n_components通常填0-1的小数,代表保留百分之多少的数据,比如0.95意思是保留95%的数据。通常在0.9-0.95之间

3.降维方法使用流程

例如:研究用户和购买物品类别的关系,数据有不同的表格存储,均为csv文件,但所需的两者“用户”和“购买物品类别”,存在于不同的表中。则可以按照以下流程进行:

1.观察各个表格的键,通过相同的键对表格进行合并,使用pandas.merge(表1,表2,键1,键2)方法,其中键1和键2相同。经过多次合并,最终将两个目标合并到一张表中。

2.通过交叉表pd.crosstab(合并后的表['用户'], 合并后的表['物品类别']),建立一个以用户为行,以物品类别为列的数据表。

3.对表格进行数据的降维,可以使用PCA(n_components=0.9),保留90%的有效信息,输出降维后的数据。即可有效减少维度,并确保留存90%的有效信息。

二、机器学习开发流程

1.机器学习算法分类

数据类型:

离散型:区间内不可分,通常是在分类型问题中。

连续型:区间内可分,通常是在预测型问题中。

算法分类:

算法总体分为两类,监督学习和无监督学习。

①监督学习包含特征值+目标值,算法又分为两小类,分类算法和回归算法。

分类算法:k-近邻算法、贝叶斯分类、决策树与随机森林、逻辑回归、神经网络

回归算法:线性回归、岭回归

②无监督学习只有特征值,通常是聚类算法:k-means

2.机器学习开发流程

机器学习开发首先需要有数据,数据来源可能有以下几种:公司本身有数据、合作过来的数据、购买的数据。

具体开发流程如下:

①明确实际问题做什么:根据目标值数据类型,建立模型,划分应用种类。看看是分类问题还是预测问题。

②数据的基本处理:使用pandas处理数据,缺失值,合并表等等。

③特征工程:对数据特征进行处理(重要)。

④找到合适的算法去进行预测。

⑤模型的评估,判定效果→上线使用,以API形式提供;若模型评估没有合格:换算法、参数,特征工程

sklearn数据集的使用:

通常在使用前会对数据集进行划分,从数据中拿出约75%作为训练集、25%作为测试集。也可以0.8/0.2等。通常0.75/0.25是使用最多的。

sklearn数据集划分API:sklearn.model_selection.train_set_split

sklearn数据集API:

获取数据集返回的类型:

数据集进行分割:

用于分类的大数据集:

sklearn回归数据集:

三、转换器与估计器

1.转换器

在数据处理中用到的fit_tansform方法中,其实可以拆分为fit方法和transform方法。

fit_transform() = fit() + transform()

若直接使用fit_transform(),则是对输入的数据进行求平均值、标准差,并使用它们进行数据处理最终输出结果。

如果拆开的话:

fit():输入数据,计算平均值,标准差等,不进行后续工作。

transform():使用fit计算好的内容进行转换。

也就是说可以通过fit()方法,生成1个数据对应的标准,使用这个标准,对其他数据,通过transform方法进行转换。

2.估计器

估计器就是已经实现了的算法的API,可以直接调用,输入相关数据,对结果进行预测等。

估计器工作流程:

1.调用fit(x_train, y_train),输入训练集

2.输入测试集的数据(x_test, y_test),调用不同接口可得不同结果

API①:y_predict = predict(x_test),该接口可获得算法对y的预测值。

API②:score(x_test, y_test) ,该接口可获得预测的准确率。

以上就是python机器学习算法与数据降维分析详解的详细内容,更多关于python机器学习算法与数据降维的资料请关注我们其它相关文章!

(0)

相关推荐

  • jquery.AutoComplete.js中文修正版(支持firefox)

    复制代码 代码如下: jQuery.autocomplete = function(input, options) { // Create a link to self var me = this; // Create jQuery object for input element var $input = $(input).attr("autocomplete", "off"); // Apply inputClass if necessary if (optio

  • 基于Python和Scikit-Learn的机器学习探索

    你好,%用户名%! 我叫Alex,我在机器学习和网络图分析(主要是理论)有所涉猎.我同时在为一家俄罗斯移动运营商开发大数据产品.这是我第一次在网上写文章,不喜勿喷. 现在,很多人想开发高效的算法以及参加机器学习的竞赛.所以他们过来问我:"该如何开始?".一段时间以前,我在一个俄罗斯联邦政府的下属机构中领导了媒体和社交网络大数据分析工具的开发.我仍然有一些我团队使用过的文档,我乐意与你们分享.前提是读者已经有很好的数学和机器学习方面的知识(我的团队主要由MIPT(莫斯科物理与技术大学)和

  • python机器学习朴素贝叶斯算法及模型的选择和调优详解

    目录 一.概率知识基础 1.概率 2.联合概率 3.条件概率 二.朴素贝叶斯 1.朴素贝叶斯计算方式 2.拉普拉斯平滑 3.朴素贝叶斯API 三.朴素贝叶斯算法案例 1.案例概述 2.数据获取 3.数据处理 4.算法流程 5.注意事项 四.分类模型的评估 1.混淆矩阵 2.评估模型API 3.模型选择与调优 ①交叉验证 ②网格搜索 五.以knn为例的模型调优使用方法 1.对超参数进行构造 2.进行网格搜索 3.结果查看 一.概率知识基础 1.概率 概率就是某件事情发生的可能性. 2.联合概率 包

  • python机器学习基础特征工程算法详解

    目录 一.机器学习概述 二.数据集的构成 1.数据集存储 2.可用的数据集 3.常用数据集的结构 三.特征工程 1.字典数据特征抽取 2.文本特征抽取 3.文本特征抽取:tf-idf 4.特征预处理:归一化 5.特征预处理:标准化 6.特征预处理:缺失值处理 一.机器学习概述 机器学习是从数据中,自动分析获得规律(模型),并利用规律对未知数据进行预测. 二.数据集的构成 1.数据集存储 机器学习的历史数据通常使用csv文件存储. 不用mysql的原因: 1.文件大的话读取速度慢: 2.格式不符合

  • python机器学习基础K近邻算法详解KNN

    目录 一.k-近邻算法原理及API 1.k-近邻算法原理 2.k-近邻算法API 3.k-近邻算法特点 二.k-近邻算法案例分析案例信息概述 第一部分:处理数据 1.数据量缩小 2.处理时间 3.进一步处理时间 4.提取并构造时间特征 5.删除无用特征 6.签到数量少于3次的地点,删除 7.提取目标值y 8.数据分割 第二部分:特征工程 标准化 第三部分:进行算法流程 1.算法执行 2.预测结果 3.检验效果 一.k-近邻算法原理及API 1.k-近邻算法原理 如果一个样本在特征空间中的k个最相

  • python机器学习基础决策树与随机森林概率论

    目录 一.决策树原理概述 1.决策树原理 2.信息论 ①信息熵 ②决策树的分类依据 ③其他决策树使用的算法 ④决策树API 二.决策树算法案例 1.案例概述 2.数据处理 3.特征工程 4.使用决策树进行预测 5.决策树优缺点及改进 三.随机森林 1.集成学习方法 2.单个树建立过程 3.随机森林API 4.随机森林使用案例 5.随机森林的优点 一.决策树原理概述 1.决策树原理 决策树的分类原理,相当于程序中的if-then结构,通过条件判断,来决定结果. 2.信息论 ①信息熵 假设有32支球

  • python机器学习算法与数据降维分析详解

    目录 一.数据降维 1.特征选择 2.主成分分析(PCA) 3.降维方法使用流程 二.机器学习开发流程 1.机器学习算法分类 2.机器学习开发流程 三.转换器与估计器 1.转换器 2.估计器 一.数据降维 机器学习中的维度就是特征的数量,降维即减少特征数量.降维方式有:特征选择.主成分分析. 1.特征选择 当出现以下情况时,可选择该方式降维: ①冗余:部分特征的相关度高,容易消耗计算性能 ②噪声:部分特征对预测结果有影响 特征选择主要方法:过滤式(VarianceThreshold).嵌入式(正

  • Python机器学习应用之工业蒸汽数据分析篇详解

    目录 一.数据集 二.数据分析 1 数据导入 2 数据特征探索(数据可视化) 三.特征优化 四.对特征构造后的训练集和测试集进行主成分分析 五.使用LightGBM模型进行训练和预测 一.数据集 1. 训练集 提取码:1234 2. 测试集 提取码:1234 二.数据分析 1 数据导入 #%%导入基础包 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from

  • python爬取天气数据的实例详解

    就在前几天还是二十多度的舒适温度,今天一下子就变成了个位数,小编已经感受到冬天寒风的无情了.之前对获取天气都是数据上的搜集,做成了一个数据表后,对温度变化的感知并不直观.那么,我们能不能用python中的方法做一个天气数据分析的图形,帮助我们更直接的看出天气变化呢? 使用pygal绘图,使用该模块前需先安装pip install pygal,然后导入import pygal bar = pygal.Line() # 创建折线图 bar.add('最低气温', lows) #添加两线的数据序列 b

  • Python机器学习应用之决策树分类实例详解

    目录 一.数据集 二.实现过程 1 数据特征分析 2 利用决策树模型在二分类上进行训练和预测 3 利用决策树模型在多分类(三分类)上进行训练与预测 三.KEYS 1 构建过程 2 划分选择 3 重要参数 一.数据集 小企鹅数据集,提取码:1234 该数据集一共包含8个变量,其中7个特征变量,1个目标分类变量.共有150个样本,目标变量为 企鹅的类别 其都属于企鹅类的三个亚属,分别是(Adélie, Chinstrap and Gentoo).包含的三种种企鹅的七个特征,分别是所在岛屿,嘴巴长度,

  • 详解Python中生成随机数据的示例详解

    目录 随机性有多随机 加密安全性 PRNG random 模块 数组 numpy.random 相关数据的生成 random模块与NumPy对照表 CSPRNG 尽可能随机 os.urandom() secrets 最佳保存方式 UUID 工程随机性的比较 在日常工作编程中存在着各种随机事件,同样在编程中生成随机数字的时候也是一样,随机有多随机呢?在涉及信息安全的情况下,它是最重要的问题之一.每当在 Python 中生成随机数据.字符串或数字时,最好至少大致了解这些数据是如何生成的. 用于在 P

  • python人工智能算法之决策树流程示例详解

    目录 决策树 总结 决策树 是一种将数据集通过分割成小的.易于处理的子集来进行分类或回归的算法.其中每个节点代表一个用于划分数据的特征,每个叶子节点代表一个类别或一个预测值.构建决策树时,算法会选择最好的特征进行分割数据,使每个子集中的数据尽可能的归属同一类或具有相似的特征.这个过程会不断重复,类似于Java中的递归,直到达到停止条件(例如叶子节点数目达到一个预设值),形成一棵完整的决策树.它适合于处理分类和回归任务.而在人工智能领域,决策树也是一种经典的算法,具有广泛的应用. 接下来简单介绍下

  • 对python 操作solr索引数据的实例详解

    测试代码1: def test(self): data = {"add": {"doc": {"id": "100001", "*字段名*": u"我是一个大好人"}}} params = {"boost": 1.0, "overwrite": "true", "commitWithin": 1000} ur

  • Python机器学习从ResNet到DenseNet示例详解

    目录 从ResNet到DenseNet 稠密块体 过渡层 DenseNet模型 训练模型 从ResNet到DenseNet 上图中,左边是ResNet,右边是DenseNet,它们在跨层上的主要区别是:使用相加和使用连结. 最后,将这些展开式结合到多层感知机中,再次减少特征的数量.实现起来非常简单:我们不需要添加术语,而是将它们连接起来.DenseNet这个名字由变量之间的"稠密连接"而得来,最后一层与之前的所有层紧密相连.稠密连接如下图所示: 稠密网络主要由2部分构成:稠密块(den

  • 表格梳理python内置数学模块math分析详解

    python内置数学模块math 提供了一些基础的计算功能,下列表达式默认 from math import * 默认输入输出均为一个数字.大部分函数都很直观,望文生义即可. 其他函数 isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0) 若 a 和 b 的值比较接近则返回True,否则False. rel_tol 是相对容差,表示a, b之间允许的最大差值.例如,要设置5%的容差,rel_tol=0.05.rel_tol 必须大于0. abs_tol 是最小

  • python 人工智能算法之随机森林流程详解

    目录 随机森林 优缺点总结 随机森林 (Random Forest)是一种基于决策树(前文有所讲解)的集成学习算法,它能够处理分类和回归两类问题. 随机森林的基本思想是通过随机选择样本和特征生成多个决策树,然后通过取多数投票的方式(分类问题)或均值计算的方式(回归问题)来得出最终的结果.具体来说,随机森林的训练过程可以分为以下几个步骤: 首先从原始数据集中随机选择一定数量的样本,构成一个新的训练集 从所有特征中随机选择一定数量的特征,作为该节点的候选特征 利用上述训练集和候选特征生成一棵决策树

随机推荐