Python机器学习

学习意味着通过学习或经验获得知识或技能。基于此,我们可以定义机器学习(ML)如下 -

它可以被定义为计算机科学领域,更具体地说是人工智能的应用,其为计算机系统提供了学习数据和从经验改进而无需明确编程的能力。

基本上,机器学习的主要焦点是允许计算机自动学习而无需人为干预。现在问题是如何开始和完成这种学习?它可以从数据的观察开始。数据可以是一些示例,指令或一些直接经验。然后在此输入的基础上,通过查找数据中的某些模式,机器可以做出更好的决策。

机器学习类型(ML)

机器学习算法帮助计算机系统学习而无需明确编程。这些算法分为监督或无监督。现在让我们看一些算法 -

今天的分享就到此结束,如果我的分享对你有帮助,也欢迎大家转发我的文章让更多人受益,如果你在学习Python的过程当中有遇见任何问题,可以加入我的python交流学习qq群:250933691,多多交流问题,互帮互助,群里有不错的学习教程和开发工具。学习python有任何问题(学习方法,学习效率,如何就业),可以随时来咨询我

监督机器学习算法

这是最常用的机器学习算法。它被称为监督,因为从训练数据集学习算法的过程可以被认为是监督学习过程的教师。在这种ML算法中,可能的结果是已知的,训练数据也标有正确的答案。可以理解如下

假设我们有输入变量 x 和输出变量 y ,我们应用算法来学习从输入到输出的映射函数,例如

Y= f(x)

现在,主要目标是近似映射函数,以便当我们有新的输入数据(x)时,我们可以预测该数据的输出变量(Y)。

主要监督学习倾向问题可分为以下两类问题 -

分类 - 当我们有“黑色”,“教学”,“非教学”等分类输出时,一个问题被称为分类问题。

回归 - 当我们有“距离”,“千克”等实际值输出时,问题称为回归问题。

决策树,随机森林,knn,逻辑回归是监督机器学习算法的例子。

无监督机器学习算法

顾名思义,这些机器学习算法没有任何主管提供任何形式的指导。这就是为什么无监督的机器学习算法与一些人称之为真正的人工智能的方法紧密结合的原因 可以理解如下

假设我们输入变量x,那么在监督学习算法中就没有相应的输出变量。

简单来说,我们可以说在无监督学习中,没有正确的答案,也没有教师可以提供指导。算法有助于发现数据中有趣的模式。

无监督学习问题可分为以下两种问题

聚类 - 在聚类问题中,我们需要发现数据中的固有分组。 例如,按客户的购买行为对客户进行分组。

关联 - 一个问题被称为关联问题,因为这类问题需要发现描述大部分数据的规则。 例如,找到同时购买 x 和 y 的客户。

用于聚类的K均值,用于关联的Apriori算法是无监督机器学习算法的示例。

加固机器学习算法

这些机器学习算法的使用非常少。这些算法训练系统做出具体决策。基本上,机器暴露在一个环境中,在那里它使用试错法连续训练自己。这些算法从过去的经验中学习,并尝试捕获最佳可能的知识,以做出准确的决策。马尔可夫决策过程是增强机器学习算法的一个例子。

最常见的机器学习算法

在本节中,我们将了解最常见的机器学习算法。算法如下所述 -

线性回归

它是统计学和机器学习中最着名的算法之一。

基本概念 - 主要是线性回归是一种线性模型,它假设输入变量x和单个输出变量y之间的线性关系。换句话说,我们可以说y可以从输入变量x的线性组合计算。变量之间的关系可以通过拟合最佳线来建立。

线性回归的类型

线性回归有以下两种类型 :

简单线性回归 - 线性回归算法如果只有一个自变量,则称为简单线性回归。

多元线性回归 - 线性回归算法如果具有多个自变量,则称为多元线性回归。

线性回归主要用于基于连续变量估计实际值。例如,可以通过线性回归来估计基于实际值的一天中商店的总销售额。

Logistic回归

它是一种分类算法,也称为 logit 回归。

主要逻辑回归是一种分类算法,用于根据给定的一组自变量估计离散值,如0或1,真或假,是或否。基本上,它预测概率,因此其输出介于0和1之间。

决策树

决策树是一种监督学习算法,主要用于分类问题。

基本上它是一个分类器,表示为基于自变量的递归分区。决策树具有形成有根树的节点。生根树是一个带有名为“root”的节点的有向树。Root没有任何传入边缘,所有其他节点都有一个传入边缘。这些节点称为叶子或决策节点。例如,考虑以下决策树以查看某人是否合适。

支持向量机(SVM)

它用于分类和回归问题。但主要是用于分类问题。SVM的主要概念是将每个数据项绘制为n维空间中的点,每个特征的值是特定坐标的值。这里将是我们将拥有的功能。以下是一个简单的图形表示来理解SVM的概念.

在上图中,我们有两个特征,因此我们首先需要在二维空间中绘制这两个变量,其中每个点有两个坐标,称为支持向量。该行将数据拆分为两个不同的分类组。这一行是分类器。

朴素贝叶斯

它也是一种分类技术。这种分类技术背后的逻辑是使用贝叶斯定理来构建分类器。假设预测变量是独立的。简单来说,它假定类中特定特征的存在与任何其他特征的存在无关。下面是贝叶斯定理的等式

NaïveBayes模型易于构建,特别适用于大型数据集。

K-Nearest Neighbors(KNN)

它用于问题的分类和回归。它被广泛用于解决分类问题。该算法的主要概念是它用于存储所有可用的案例,并通过其k个邻居的多数票来对新案例进行分类。然后将该情况分配给在其K- 最近邻居中最常见的类,通过距离函数测量。距离函数可以是欧几里德,闵可夫斯基和汉明距离。考虑以下使用KNN

计算KNN比用于分类问题的其他算法昂贵。

变量的标准化需要更高范围的变量,否则可能会对其产生偏差。

在KNN中,我们需要处理像噪声消除这样的预处理阶段。

K-Means聚类

顾名思义,它用于解决聚类问题。它基本上是一种无监督学习。K-Means聚类算法的主要逻辑是通过许多聚类对数据集进行分类。按照以下步骤通过K- means形成集群

K-means为称为质心的每个簇选择k个点。

现在每个数据点形成具有最接近的质心的簇,即k个簇。

现在,它将根据现有的集群成员找到每个集群的质心。

我们需要重复这些步骤,直到收敛发生。

随机森林

它是一种监督分类算法。随机森林算法的优点是它可以用于分类和回归类问题。基本上它是决策树(即森林)的集合,或者你可以说决策树的集合。随机森林的基本概念是每棵树都给出一个分类,森林从中选择最佳分类。以下是随机森林算法的优点

随机森林分类器可用于分类和回归任务。

他们可以处理缺失的值。

即使我们在森林中有更多的树木,它也不会过度适应模型。

python机器学习的常用算法的更多相关文章

  1. python拓展3 常用算法

    知识内容: 1.递归复习 2.算法基础概念 3.查找与排序 参考资料: http://python3-cookbook.readthedocs.io/zh_CN/latest/index.html h ...

  2. python 机器学习 K-近邻算法

    本人想边写文章,边学习,用的是 网上最火的<机器学习实战>machine learning in action 来做一次实践. 希望在过程中理顺思路之余,也有分享自己的一些理解,学习.加油 ...

  3. 只需十四步:从零开始掌握 Python 机器学习(附资源)

    分享一篇来自机器之心的文章.关于机器学习的起步,讲的还是很清楚的.原文链接在:只需十四步:从零开始掌握Python机器学习(附资源) Python 可以说是现在最流行的机器学习语言,而且你也能在网上找 ...

  4. 只需十四步:从零开始掌握Python机器学习(附资源)

    转载:只需十四步:从零开始掌握Python机器学习(附资源) Python 可以说是现在最流行的机器学习语言,而且你也能在网上找到大量的资源.你现在也在考虑从 Python 入门机器学习吗?本教程或许 ...

  5. 常用python机器学习库总结

    开始学习Python,之后渐渐成为我学习工作中的第一辅助脚本语言,虽然开发语言是Java,但平时的很多文本数据处理任务都交给了Python.这些年来,接触和使用了很多Python工具包,特别是在文本处 ...

  6. Python机器学习笔记:常用评估指标的用法

    在机器学习中,性能指标(Metrics)是衡量一个模型好坏的关键,通过衡量模型输出y_predict和y_true之间的某种“距离”得出的. 对学习器的泛化性能进行评估,不仅需要有效可行的试验估计方法 ...

  7. python机器学习笔记:EM算法

    EM算法也称期望最大化(Expectation-Maximum,简称EM)算法,它是一个基础算法,是很多机器学习领域的基础,比如隐式马尔科夫算法(HMM),LDA主题模型的变分推断算法等等.本文对于E ...

  8. Python机器学习笔记:异常点检测算法——LOF(Local Outiler Factor)

    完整代码及其数据,请移步小编的GitHub 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/MachineLearningNote 在数据挖掘方面,经常需 ...

  9. Python之路,Day21 - 常用算法学习

    Python之路,Day21 - 常用算法学习   本节内容 算法定义 时间复杂度 空间复杂度 常用算法实例 1.算法定义 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的 ...

随机推荐

  1. iOS 性能优化点

    用 ARC 管理内存 在正确的地方使用 reuseIdentifier 尽量把 views 设置为完全不透明 如果你有透明的 Views 你应该设置它们的 opaque(不透明)属性为 YES.例如一 ...

  2. 数据分析_numpy_基础1

    数据分析_numpy_基础1 创建数组 方法 说明 np.array( x ) 将输入数据转化为一个ndarray| np.array( x, dtype ) 将输入数据转化为一个类型为type的nd ...

  3. RbbitMQ详解

    高性能消息队列RabbitMQ 1.为什么要使用mq 主要解决应用解耦,流量削峰,异步消息,实现高性能,可升缩,最终一致性的架构. 2.activeMq的通讯模式 基于队列(点对点)与发布订阅(有多个 ...

  4. Python数据库之数据操作

    一 介绍 MySQL数据操作: DML ======================================================== 在MySQL管理软件中,可以通过SQL语句中的 ...

  5. list容器排除重复单词的程序

    #include<iostream> #include<fstream> #include<string> #include<algorithm> #i ...

  6. mysql 中UNIQUE KEY 到底是约束还是索引?

    答案来自:https://zhidao.baidu.com/question/1863373387452612907.html 两者关系 unique索引包含了unique约束,因为unique约束是 ...

  7. Coding 是门技术

    今天的分享来源于工作中的点点滴滴…… 01. 习惯性自嘲 代码写久了,伴随肩疼头痛眼近视,于是乎也就成了名副其实的 code farmer(码农),作为如牛吃草挤奶般的码农,吃草(撸)挤奶(码)便是日 ...

  8. Redis对象——列表(List)

    列表(list)类型是用来存储多个有序的字符串,列表中的每个字符串称为元素(element),一个列表最多可以存储232-1个元素.在Redis中,可以对列表两端插入(push)和弹出(pop),还可 ...

  9. VUE CLI3.0安装及配置

    # 安装 npm install -g @vue/cli # 查看已安装版本vue --version 或者 vue -V # 卸载 npm uninstall @vue/cli -g # 新建项目 ...

  10. Xshell连接Centos7

    13:53:10 2019-08-05 一个月暑假开始 学习搭建一个自己的博客 我是用阿里云的服务器搭建自己的博客 先利用XShell连接我的服务器 XShell下载地址:https://www.ne ...