顾名思义,分类是将事物“分类”为子类别的任务。但是,通过机器!如果这听起来并不多,想象一下您的计算机能够区分您和陌生人。在土豆和西红柿之间。介于 A 级和 F 级之间。现在,这听起来很有趣。在机器学习和统计中,分类是根据包含观察的训练数据集及其类别成员资格来识别新观察属于一组类别(子群体)中的哪一个的问题。

分类类型

分类分为两种:

  1. 二元分类:当我们必须将给定数据分类为 2 个不同的类时。示例——根据一个人的特定健康状况,我们必须确定该人是否患有某种疾病。
  2. 多类分类:类的数量超过2。例如——根据不同种类的花的数据,我们必须确定我们的观察属于哪个种类。

    图:二元和多类分类。这里 x1 和 x2 是预测类的变量。

分类是如何工作的?

假设我们必须根据称为特征的 3 个变量来预测给定患者是否患有某种疾病。

这意味着有两种可能的结果:

  1. 患者患有上述疾病。基本上,结果标记为“是”或“真”。
  2. 患者无病。标有“否”或“假”的结果。

这是一个二元分类问题。
我们有一组称为训练数据集的观察结果,其中包含具有实际分类结果的样本数据。我们在这个数据集上训练了一个模型,称为分类器,并使用该模型来预测某个患者是否会患病。
因此,结果现在取决于:

  1. 这些功能如何“映射”到结果
  2. 我们数据集的质量。我所说的质量是指统计和数学的质量。
  3. 我们的分类器在多大程度上概括了特征和结果之间的这种关系。
  4. x1 和 x2 的值。

以下是分类任务的通用框图。

广义分类框图

  1. X:预分类数据,N*M矩阵形式。N 是编号。的观察和 M 是特征的数量
  2. y:一个 Nd 向量,对应于 N 个观测值中的每一个的预测类别。
  3. 特征提取:使用一系列变换从输入 X 中提取有价值的信息。
  4. ML 模型:我们将训练的“分类器”。
  5. y’:分类器预测的标签。
  6. 质量指标:用于衡量模型性能的指标。
  7. ML 算法:用于更新权重 w’ 的算法,它更新模型并迭代地“学习”。

分类器的类型(算法)

有各种类型的分类器。他们之中有一些是 :

  • 线性分类器:逻辑回归
  • 基于树的分类器:决策树分类器
  • 支持向量机
  • 人工神经网络
  • 贝叶斯回归
  • 高斯朴素贝叶斯分类器
  • 随机梯度下降 (SGD) 分类器
  • 集成方法:随机森林、AdaBoost、Bagging 分类器、投票分类器、ExtraTrees 分类器

这些方法的详细描述超出了一篇文章!

分类的实际应用

  • 谷歌的自动驾驶汽车使用支持深度学习的分类技术,使其能够检测和分类障碍物。
  • 垃圾邮件过滤是分类技术最广泛和公认的用途之一。
  • 检测健康问题、面部识别、语音识别、物体检测、情感分析都以分类为核心。

代码:

# Python program to perform classification on Iris dataset# Run this program on your local Python interpreter
# provided you have installed the required libraries# Importing the required libraries
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
from sklearn import datasets
from sklearn import svm
from sklearn.tree import DecisionTreeClassifier
from sklearn.naive_bayes import GaussianNB# import the iris dataset
iris = datasets.load_iris()
X = iris.data
y = iris.target# splitting X and y into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=1)# GAUSSIAN NAIVE BAYES
gnb = GaussianNB()
# train the model
gnb.fit(X_train, y_train)
# make predcitions
gnb_pred = gnb.predict(X_test)
# print the accuracy
print("Accuracy of Gaussian Naive Bayes: ", accuracy_score(y_test, gnb_pred))# DECISION TREE CLASSIFIER
dt = DecisionTreeClassifier(random_state=0)
# train the model
dt.fit(X_train, y_train)
# make predcitions
dt_pred = dt.predict(X_test)
# print the accuracy
print("Accuracy of Decision Tree Classifier: ", accuracy_score(y_test, dt_pred))# SUPPORT VECTOR MACHINE
svm_clf = svm.SVC(kernel='linear') # Linear Kernel
# train the model
svm_clf.fit(X_train, y_train)
# make predcitions
svm_clf_pred = svm_clf.predict(X_test)
# print the accuracy
print("Accuracy of Support Vector Machine: ",accuracy_score(y_test, svm_clf_pred))

机器学习-分类Classification相关推荐

  1. 机器学习笔记04:逻辑回归(Logistic regression)、分类(Classification)

    之前我们已经大概学习了用线性回归(Linear Regression)来解决一些预测问题,详见: 1.<机器学习笔记01:线性回归(Linear Regression)和梯度下降(Gradien ...

  2. 来!一起捋一捋机器学习分类算法

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 来自:算法与数学之美 可是,你能够如数家珍地说出所有常用的分类算法,以及他们的特征.优 ...

  3. 机器学习:分类_机器学习基础:K最近邻居分类

    机器学习:分类 In the previous stories, I had given an explanation of the program for implementation of var ...

  4. 机器学习分类与性能度量

    机器学习分类与性能度量 数据集:训练集(Training Set).验证集(Validation Set)和测试集(Test Set) 1. 当模型无需人为设定超参数,所用参数都通过学习得到,则不需要 ...

  5. [转载] python机器学习第三章:使用scikit-learn实现机器学习分类算法

    参考链接: 使用Scikit-Learn在Python中进行embedding/投票分类 训练机器学习算法所涉及的五个主要步骤可以概述如下: 1.特征的选择 2.确定性能评价标准 3.选择分类器及其优 ...

  6. 机器学习分类光谱数据

    ** Extended-wavelength diffuse reflectance spectroscopy with a machine-learning method for in vivo t ...

  7. 大数据 机器学习 分类算法_13种用于数据科学的机器学习分类算法及其代码

    大数据 机器学习 分类算法 The roundup of most common classification algorithms along with their python and r cod ...

  8. 主流监督式机器学习分类算法

    主流监督式机器学习分类算法的性能比较 姓名:欧阳qq     学号:169559 摘要:机器学习是未来解决工程实践问题的一个重要思路.本文采比较了目前监督式学习中几种主流的分类算法(决策树.SVM.贝 ...

  9. 机器学习分类问题指标理解——准确率(accuracy)、精确率(precision)、召回率(recall)、F1-Score、ROC曲线、P-R曲线、AUC面积

    2020.08.25更新: 修改了ROC曲线中TPR公式的错误. 2020.07.25更新: 修改了混淆矩阵,每一行为实际值,每一列与预测值. 机器学习分类问题指标理解 0. 一个例子 1.准确率(A ...

  10. 机器学习 分类监督学习_地球科学中使用无监督机器学习的相分类

    机器学习 分类监督学习 石油和天然气数据科学 (Data science in Oil and Gas) Facies are uniform sedimentary bodies of rock w ...

最新文章

  1. kotlin 类及其成员的可见性
  2. 汽车位置服务之kafka集群配置注意事项
  3. Linux 系统之软件管理
  4. 软件测试实验报告下载 实验一到实验五
  5. 【ECharts系列|01入门】 从入门到天黑【入门级教程实战】
  6. vue 双数据绑定原理
  7. Linux系统学习 八、SSH服务—SSH远程管理服务
  8. Android 系统(94)---Android属性之build.prop生成过程分析
  9. 拓扑一致体参数化的复杂模型的等几何分析计算重用
  10. Linux lsof命令使用小结
  11. Helpful links
  12. JDK_Proxy_InvocationHandler_动态代理
  13. win10无法装载iso文件_win10系统解决方案无法打开iso文件
  14. Swift 圆形进度条
  15. 洛谷p5369[PKUSC2018]最大前缀和
  16. visual studio code输入感叹号没有提示
  17. 计算机怎样打开鼠标点的键盘,如何打开计算机虚拟键盘?五种打开计算机虚拟键盘的方法简介...
  18. python3.7 安装 scrapy, pip 升级
  19. 公网IP与私网IP区别
  20. 2018.8.22日阿里巴巴java实习生面试答案整理

热门文章

  1. 服务器删除的excel文件备份在哪里,excel自动备份文件在哪!如何找回EXCEL表格已删除的文件...
  2. Google_翻译整个PDF文件为英文
  3. Oracle数据库中,表的锁死查询与解锁。
  4. 雅猴的脚印——2019年上半年
  5. 进制转换: 十进制转换成其他进制(一)
  6. eudc计算机术语英文,汽车循环工况测试CLTC(CLTC-P和CLTC-C)、WLTC、FTP75、JC08、NEDC、ECE15、EUDC.xls...
  7. JAVA中操作数据库方式与设计模式的应用 --青山不改绿水长流-EKing
  8. java freemarker jxl excel_freemarker导出定制excel
  9. 2020年浙江大学金融考研经验分享
  10. 计算机文件夹无法排序,win7系统怎么无法排序磁盘文件夹?手动排序方法