正如我们所知,特征是作为机器学习模型输入的可测量属性或特性。然而,原始数据很少以可以直接供模型使用的整洁格式出现。它有多种类型,每种类型都具有独特的特点和自身的问题,需要特定的特征工程方法。在有效清洗、转换或生成特征之前,理解这些数据类型是基本的一步。我们将研究您将遇到的最常见数据类型以及它们通常带来的难题。数值型数据数值型数据表示数量,可以被测量。它通常是许多算法最直接的数据类型,但仍需要仔细处理。连续型数据: 可以在给定范围内取任意值。例如身高、体重、温度或价格等测量值。问题 - 尺度: 特征可能存在显著不同的尺度上(例如,收入是数十万,而工作年限是个位数)。对距离或量级敏感的算法,如K近邻(KNN)或支持向量机(SVM),以及梯度下降等优化过程,会受到取值范围较大的特征的严重影响。这需要缩放技术(第4章)。问题 - 分布与偏度: 数据可能不服从正态(高斯)分布;它可能存在偏斜(例如,收入数据通常有长尾)。有些模型表现更佳或对数据分布有特定要求。对数变换或Box-Cox变换(第4章)等转换方法可以帮助使分布正常化。问题 - 异常值: 远离大部分数据的极端值可能不成比例地影响模型参数和性能。通常需要找出并处理异常值(第2章)。离散型数据: 只能取特定的、独立数值,通常是计数。例如房屋的卧室数量、客户支持电话的计数或网站点击次数。问题 - 尺度: 类似于连续型数据,如果计数值的范围很大并且在不同特征之间有所不同,尺度差异可能会成为一个困扰。问题 - 稀疏性: 有时离散特征可能有很多零值(例如,稀有事件发生的次数),这可能需要根据模型进行特定处理。问题 - 误解为类别型: 有时,离散数字可能表示类别(例如,1=美国,2=加拿大)。分清数值是代表量级/计数还是仅仅一个标签,这是很重要的。如果它是一个标签,就应该将其视为类别型数据处理。类别型数据类别型数据表示定性属性或标签,将数据分组为不同的类别。模型需要数值输入,因此这些非数值类型需要转换。名义型数据: 没有内在顺序或排名的类别。例如国家名称、颜色、产品类型或性别。问题 - 数值表示: 如何将“红”、“绿”、“蓝”转换为数字而不暗示顺序(例如,蓝 > 绿)?简单的数值分配(1, 2, 3)通常不合适,因为它引入了人为的顺序。需要使用编码技术,如独热编码(第3章)。问题 - 基数: 具有大量独特类别(高基数)的特征,如邮政编码或用户ID,在编码后(例如,使用独热编码)可能导致维度极高的数据,可能引起性能问题或过拟合。目标编码、二进制编码或哈希编码等技术(第3章)提供了替代方案。序数型数据: 具有有意义的顺序或排名的类别,但类别之间差异的大小不一定定义或一致。例如教育水平(“高中”、“学士”、“硕士”、“博士”)、客户满意度评级(“差”、“一般”、“好”、“优秀”)或尺寸标签(“S”、“M”、“L”、“XL”)。问题 - 捕获顺序: 编码必须保留固有的顺序。简单的数值映射(例如,“S”=1,“M”=2,“L”=3)可行,但它假定等级之间等距,这可能不准确。序数编码(第3章)是常规方法。问题 - 定义顺序: 有时需要根据领域知识明确定义顺序。文本数据文本数据由单词或字符序列组成,如客户评论、电子邮件、文章或社交媒体帖子。它本质上是非结构化的。问题 - 非结构化性质: 原始文本无法直接输入到大多数传统机器学习模型中。它需要转换为数值格式(向量)。问题 - 高维度: 数值表示文本通常会产生维度极高的特征空间(例如,词汇表中每个独特单词一个维度)。问题 - 语义: 简单的数值表示(如词频)可能遗漏单词或文档之间的上下文、情感或语义相似性。技术(超出范围): 文本特征工程是自然语言处理(NLP)中的重要分支。常见技术包括词袋模型(BoW)、词频-逆文档频率(TF-IDF),以及更先进的方法如词嵌入(Word2Vec、GloVe、FastText)或上下文嵌入(BERT、GPT)。虽然第5章会提到从结构中提取特征等基本文本处理,但深度的文本特征工程通常需要专门的NLP技术。日期和时间数据时间数据包含时间戳、日期或持续时间。它通常包含有价值的周期性模式和趋势。问题 - 周期性: 时间具有其固有的周期(日、周、月、年)。识别这些模式需要创建特定特征。例如,星期几、月份、一天中的小时可以高度预测。问题 - 绝对时间与相对时间: 有时绝对日期/时间不如事件之间的持续时间或自特定时间点以来经过的时间重要。创建诸如上次购买以来的时间或账户时长等特征可能很有用。问题 - 时区与格式: 确保时区和日期格式的一致性是必要的预处理步骤。技术: 我们将在第5章研究从日期/时间组件创建特征。其他数据类型虽然在侧重表格数据的入门语境中不那么常见,您可能还会遇到:图像数据: 需要专门的计算机视觉技术来识别特征(例如,边缘检测、纹理分析、来自卷积神经网络——CNN的深度学习特征)。音频数据: 需要信号处理技术来识别特征,例如频率成分(如MFCCs)、音高或振幅。地理空间数据: 涉及坐标(纬度、经度),需要专门的库和技术来计算距离、与兴趣点的接近度,或与地图数据结合使用。分辨您正在处理的数据类型是重要的第一步。每种类型都需要特定的考虑和技术,这些构成了我们将在本课程中学习的特征工程过程的主体。接下来的章节将为您提供处理缺失值、类别编码、数值缩放以及从原始数据中生成有用新特征的方法。