我们已经知道,某种格式的数据对于机器学习算法是必需的。 另一个重要的要求是,在将数据作为机器学习算法的输入发送之前,必须正确标记数据。 例如,如果所说的分类,那么数据上会有很多标记。 这些标记以文字,数字等形式存在。与sklearn中的机器学习相关的功能期望数据必须具有数字标记。 因此,如果数据是其他形式,那么它必须转换为数字。 这个将单词标签转换为数字形式的过程称为标记编码。

标记编码步骤

按照以下步骤在Python中对数据标记进行编码 -

第1步 - 导入有用的软件包

如果使用Python,那么这将是将数据转换为特定格式(即预处理)的第一步。 它可以做到如下 -

import numpy as np
from sklearn import preprocessing

第2步 - 定义样本标签

导入包后,我们需要定义一些样本标签,以便可以创建和训练标签编码器。 现在将定义以下样本标签 -

# Sample input labels
input_labels = ['red','black','red','green','black','yellow','white']

第3步 - 创建和训练标签编码器对象

在这一步中,我们需要创建标签编码器并对其进行训练。 以下是Python代码的实现 -

# Creating the label encoder
encoder = preprocessing.LabelEncoder()
encoder.fit(input_labels)

以下是运行上面的Python代码后的输出 -

LabelEncoder()
第4步 - 通过编码随机排序列表来检查性能

此步骤可用于通过编码随机排序列表来检查性能。 下面的Python代码可以做同样的事情 -

# encoding a set of labels
test_labels = ['green','red','black']
encoded_values = encoder.transform(test_labels)
print("\nLabels =", test_labels)

标签将如下打印 -

Labels = ['green', 'red', 'black']
 

现在,可以得到编码值列表,即将文字标签转换为数字,如下所示 -

print("Encoded values =", list(encoded_values))

输出结果打印如下 -

Encoded values = [1, 2, 0]
第5步 - 通过解码一组随机数来检查性能 -

通过对随机数字集进行解码,可以使用此步骤来检查性能。 下面的Python代码也可以做同样的事情 -

现在,将被打印如下 -

Encoded values = [3, 0, 4, 1]
print("\nDecoded labels =", list(decoded_list))
Python

现在,解码值将被打印如下 -

Decoded labels = ['white', 'black', 'yellow', 'green']

标记与未标记数据

未标记的数据主要由自然或人造物体的样本组成,这些样本可以很容易从现实世界中获得。 它们包括音频,视频,照片,新闻文章等。

另一方面,带标签的数据采用一组未标记的数据,并用一些有意义的标签或标签或类来扩充每片未标记的数据。 例如,如果有照片,那么标签可以基于照片的内容放置,即它是男孩或女孩或动物或其他任何照片。 标记数据需要人类专业知识或判断一个给定的未标记数据。

有很多情况下,无标签数据丰富且容易获得,但标注数据通常需要人工/专家进行注释。 半监督学习尝试将标记数据和未标记数据组合起来,以建立更好的模型。

易百教程人工智能python修正-人工智能数据准备-标记数据的更多相关文章

  1. 易百教程人工智能python修正-人工智能无监督学习(聚类)

    无监督机器学习算法没有任何监督者提供任何指导. 这就是为什么它们与真正的人工智能紧密结合的原因. 在无人监督的学习中,没有正确的答案,也没有监督者指导. 算法需要发现用于学习的有趣数据模式. 什么是聚 ...

  2. 易百教程人工智能python修正-人工智能监督学习(回归)

    回归是最重要的统计和机器学习工具之一. 我们认为机器学习的旅程从回归开始并不是错的. 它可以被定义为使我们能够根据数据做出决定的参数化技术,或者换言之,允许通过学习输入和输出变量之间的关系来基于数据做 ...

  3. 易百教程人工智能python修正-人工智能监督学习(分类)

    分类技术或模型试图从观测值中得出一些结论. 在分类问题中,我们有分类输出,如“黑色”或“白色”或“教学”和“非教学”. 在构建分类模型时,需要有包含数据点和相应标签的训练数据集. 例如,如果想检查图像 ...

  4. 易百教程人工智能python修正-人工智能数据准备-预处理数据

    预处理数据 在我们的日常生活中,需要处理大量数据,但这些数据是原始数据. 为了提供数据作为机器学习算法的输入,需要将其转换为有意义的数据. 这就是数据预处理进入图像的地方. 换言之,可以说在将数据提供 ...

  5. 易百教程人工智能python修正-人工智能NLTK性别发现器

    在这个问题陈述中,将通过提供名字来训练分类器以找到性别(男性或女性). 我们需要使用启发式构造特征向量并训练分类器.这里使用scikit-learn软件包中的标签数据. 以下是构建性别查找器的Pyth ...

  6. [oBIX包使用教程] 使用 Python 通过 oBIX 协议访问 Niagara 数据

    oBIX 全称是 Open Building Information Exchange,它是基于 RESTful Web Service 的接口的标准,用于构建控制系统.oBIX是在专为楼宇自动化设计 ...

  7. 易百教程人工智能python补充-NLTK包

    自然语言处理(NLP)是指使用诸如英语之类的自然语言与智能系统进行通信的AI方法. 如果您希望智能系统(如机器人)按照您的指示执行操作,希望听取基于对话的临床专家系统的决策时,则需要处理自然语言. N ...

  8. MyBatis整合Spring MVC(易百教程)

    MyBatis是ibatis的升级版,作为hibernate的老对手,它是一个可以自定义SQL.存储过程和高级映射的持久层框架.与Hibernate 的主要区别就是 Mybatis 是半自动化的,而 ...

  9. Mybatis与Spring集成(易百教程)

    整个Mybatis与Spring集成示例要完成的步骤如下: 1.示例功能描述 2.创建工程 3.数据库表结构及数据记录 4.实例对象 5.配置文件 6.测试执行,输出结果 1.示例功能描述 在本示例中 ...

随机推荐

  1. 配置docker阿里云加速器

    1. 安装/升级Docker客户端 推荐安装1.10.0以上版本的Docker客户端,参考文档 docker-ce 2. 配置镜像加速器 针对Docker客户端版本大于 1.10.0 的用户 您可以通 ...

  2. 公司不用 Spring Boot,果断离职了!

    面试问到离职原因,我想这是很多面试者的痛,包括我自己,曾经也被离职原因所坑过. 面试回答离职原因简直特么就是巨坑,我也因此在微信公众号 "Java技术栈" 写了这篇文章<过了 ...

  3. Servlet快速入门及运行流程

    一.Servlet快速入门 1.创建一个web工程 2.在JavaResource中src下创建一个包名称为com.myxq.servlet 3.在创建的servlet包当中创建一个class文件起名 ...

  4. ls列出排除的文件

    今天有个需求,将从日志文件夹中列出它排除旧备份日志的文件. ls -lhrt --ignore="*.gz" --ignore="*.zip"

  5. android -------- AES加密解密算法

    AES加密标准又称为高级加密标准Rijndael加密法,是美国国家标准技术研究所NIST旨在取代DES的21世纪的加密标准.AES的基本要求是,采用对称分组密码体制,密钥长度可以为128.192或25 ...

  6. DispatcherServlet 被加载顺序

    javax.servlet.Servlet#init 0 -> javax.servlet.GenericServlet#init(javax.servlet.ServletConfig) 1 ...

  7. (2)PyCharm开发Flash项目之蓝图构建

    下面通过在PyCharm开发工具中创建一个简单的Flask项目来体会一下Flask的蓝图构建(Blueprint). 何谓蓝图:在Flask中蓝图就在大型应用中,将不同功能的模块(module)分开管 ...

  8. matlab学习笔记10_4MATLAB中的字符串表示

    一起来学matlab-字符串操作 10_4 MATLAB中的字符串表示 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合应用>张德丰等著 感 ...

  9. rpm和deb包制作和升级执行步骤

    deb安装包升级和安装都是dpkg -i .deb命令,升级时直接覆盖安装新包安装步骤:1 preinst install2 postinst configure升级步骤:1 先执行旧包prerm u ...

  10. DataTable.NET的event執行順序

    var dataTable = $('#table') .on( 'processing.dt', function ( e, settings, processing ) { $('#loading ...