数据预处理习题
简述常用的文本数据类型。
- 结构化文本:如数据库中的表格数据、JSON/XML格式数据,具有明确的字段和层级关系。
- 非结构化文本:如自然语言文本(新闻、社交媒体内容)、长文档(书籍、论文),缺乏固定格式。
- 半结构化文本:如HTML网页、日志文件,部分内容有标签或固定模式,但整体无严格结构。
- 序列数据:如时间序列文本(聊天记录)、token化的句子,强调顺序性。
指令数据的常用构造方法有哪几种?
- 人工标注:专家编写高质量的指令-回答对,确保准确性和多样性。
- 模板生成:基于预定义模板自动生成指令(如“翻译以下句子:{文本}”),适合规模化但可能缺乏灵活性。
- 众包平台:通过平台(如Amazon Mechanical Turk)收集多样化的指令数据,成本较低但需质量控制。
- 模型生成:用大模型(如GPT)自动生成指令-回答对,再经人工筛选。
- 数据增强:对现有指令进行改写、回译或添加噪声,增加数据多样性。
BPE算法存在哪些问题,以及WordPiece算法针对这些问题做了哪些改进?
BPE(Byte Pair Encoding)的问题:
- 贪婪合并:频繁合并字符对可能生成不合理的子词(如合并“ing”导致“playing”被拆为“play+ing”而非更小单元)。
- 未考虑语义:仅基于频率合并,忽略词汇的语义连贯性。
WordPiece的改进:
- 概率合并:基于语言模型(如最大似然估计)选择合并对,优先合并能提升整体概率的字符对,更贴合语义。
- 动态调整:通过统计词汇概率动态调整拆分策略,避免BPE的机械性合并。
简述ULM算法的设计思想。
ULM算法的核心思想是:
- 概率模型驱动:将子词拆分视为概率问题,通过语言模型计算每个子词的出现概率,选择使句子整体概率最大的分词方式。
- 从词汇表反推分词:首先生成一个较大的候选子词库,然后通过EM算法迭代优化子词概率,保留高概率子词。
- 多分词可能性:支持对同一文本生成多个分词结果(带概率),增强灵活性。
- 与BPE/WordPiece对比:ULM是“自上而下”(先候选再筛选),而BPE/WordPiece是“自下而上”(逐步合并)。
简述高斯双边滤波与高斯滤波的区别。
- 高斯滤波:仅考虑空间距离权重,对邻域像素进行加权平均,平滑噪声但会模糊边缘。
- 高斯双边滤波:同时考虑空间距离和像素值差异的权重:
- 空间权重:与高斯滤波相同,距离越近权重越大。
- 像素值权重:像素值差异越小权重越大,保护边缘(如锐利颜色变化区域)。
- 效果:双边滤波在平滑噪声的同时能保留边缘,但计算复杂度更高。
灰度直方图的作用是什么?
灰度直方图是图像中每个灰度级出现频率的统计图,作用包括:
- 分析图像特性:判断对比度、亮度分布(如直方图左偏表示图像偏暗)。
- 图像增强:指导直方图均衡化,拉伸动态范围。
- 阈值选择:用于二值化(如通过双峰直方图确定最佳阈值)。
- 检测异常:如过度曝光(直方图集中在右侧)或欠曝光(集中在左侧)。
什么是对比度拉伸?
对比度拉伸是一种线性图像增强技术,通过调整像素灰度范围来提升图像对比度:
- 原理:将原始灰度范围 [a,b] 映射到更宽的范围 [c,d](如0~255),公式为:
- 效果:低对比度图像(如灰度集中在100~150)被拉伸后,暗部更暗、亮部更亮,细节更突出。
- 局限性:若原图灰度范围已覆盖整个动态范围,则拉伸无效;可能放大噪声。