【Python机器学习】处理文本数据——用字符串表示的数据类型

目录

分类数据

可以在语义上映射为类别的自由字符串

结构化字符串数据

文本数据


之前学习过数据数据属性的两种类型的特征:连续特征和分类特征,前者用于描述数量,后者是固定列表中的元素。

在许多应用中还可以见到第三种类型的特征:文本。文本数据通常被表示为由字符组成的字符串,大部分例子中,文本数据的长度都不相同,这个特征显然与之前学习过的数值特征有很大不同,我们需要先处理数据,然后才能对其使用机器学习算法。

文本通常只是数据集中的字符串,但并非所有的字符串特征都应该被当作文本来处理,字符串变量有时可以表示分类变量。在查看数据之前,我们无法知道如何处理一个字符串特征。

一般情况下,会遇到一下四种类型的字符串数据:

1、分类数据;

2、可以在语义上映射为类别的自由字符串;

3、结构化字符串数据;

4、文本数据。

下面分别来解释:

分类数据

分类数据是来自固定列表的数据。比如通过调查人们最喜欢的颜色来收集数据,你向他们提供了一个下拉菜单,可以从红色、黑色、绿色等颜色中选择。这样就会得到一个包含多种不同取值的数据集,这几种不同取值表示的显然是分类变量。我们可以通过观察来判断数据是不是分类数据,并通过计算数据集中的唯一值并绘制其出现次数的直方图来验证判断结果。

可以在语义上映射为类别的自由字符串

仍是收集最喜欢颜色的例子,如果现在提供的不是下拉菜单,而是一个文本框,每个人都自己填写,这种情况下,有些人会常规填写,但有些人会拼写错误、或使用更加形象的描述词(比如"午夜蓝色"),甚至会有些奇怪的答案,有时很难将一些名称与颜色自动对应(甚至完全无法对应)。这种从文本框得到的回答就属于可以在语义上映射为类别的自由字符串。可能最好是将这种数据编码为分类变量,可以利用最常见的条目来选择类别,也可以自定义类别,使用户回答对应用有意义。这样就会得到一些标准颜色类别、"多色"类别、其他类别。这种字符串预处理过程可能会需要大量人力,并且不容易自动化。如果能够改变数据的收集方式,那么对于分类变量能够更好表示的改变,不要使用手动输入值。

结构化字符串数据

通常来说,手动输入值不与固定的类别对应,但仍有一些内在的结构,比如地址、人名地名、日期或其他标识符。这种类型的字符串通常难以解析,其处理方法也强烈依赖于上下文和具体领域。

文本数据

自动格式的文本数据 ,由短语或句子组成。例子包括推文、聊天记录、评论等。所有这些集合包含的信息大多数是由单词组成的句子。在文本分析的语境中,数据集通常被称为语料库 ,每个由单个文本表示的数据点被称为文档。这些属于来自于信息检索和自然语言处理的社区,它们主要针对文本数据。

相关推荐
WeeJot嵌入式3 分钟前
卷积神经网络:深度学习中的图像识别利器
人工智能
喜欢猪猪5 分钟前
Django:从入门到精通
后端·python·django
一个小坑货5 分钟前
Cargo Rust 的包管理器
开发语言·后端·rust
bluebonnet2710 分钟前
【Rust练习】22.HashMap
开发语言·后端·rust
古月居GYH10 分钟前
在C++上实现反射用法
java·开发语言·c++
糖豆豆今天也要努力鸭11 分钟前
torch.__version__的torch版本和conda list的torch版本不一致
linux·pytorch·python·深度学习·conda·torch
脆皮泡泡13 分钟前
Ultiverse 和web3新玩法?AI和GameFi的结合是怎样
人工智能·web3
机器人虎哥16 分钟前
【8210A-TX2】Ubuntu18.04 + ROS_ Melodic + TM-16多线激光 雷达评测
人工智能·机器学习
码银23 分钟前
冲破AI 浪潮冲击下的 迷茫与焦虑
人工智能
何大春27 分钟前
【弱监督语义分割】Self-supervised Image-specific Prototype Exploration for WSSS 论文阅读
论文阅读·人工智能·python·深度学习·论文笔记·原型模式