机器学习:光学字符识别与市场篮子分析
1. 光学字符识别(OCR)模型开发
1.1 数据收集
OCR 软件处理纸质文档时,会将纸张划分为矩阵,每个单元格包含一个字形(字母、符号或数字)。软件会尝试将字形与已知字符集匹配,最后将单个字符组合成单词。在本次练习中,假设已开发出将文档划分为单个字符矩形区域的算法,且文档仅包含英文字母。使用 W. Frey 和 D. J. Slate 捐赠给 UCI 机器学习数据库的数据集,该数据集包含 20,000 个使用 20 种不同随机变形和扭曲的黑白字体打印的 26 个英文字母大写字母示例。
1.2 数据探索与准备
当字形扫描到计算机中时,会转换为像素并记录 16 个统计属性,这些属性用于衡量字形的水平和垂直尺寸、黑白像素比例以及像素的平均水平和垂直位置。下载 letterdata.csv 文件到 R 工作目录,读取数据到 R 中,确认数据包含 16 个特征来定义字母类的每个示例,字母有 26 个级别。
letters <- read.csv("letterdata.csv")
str(letters)
由于 SVM 学习器要求所有特征为数值型,且每个特征需缩放到较小区间。此数据集中每个特征都是整数,无需将因子转换为数字,但部分整数变量范围较宽,需进行归一化或标准化。不过,用于拟合 SVM 模型的 R 包会自动进行重新缩放,可跳过此步骤。根据 Frey 和 Slate 的建议,使用前 16,000 条记录(80%)构建模型,后 4,000 条记录(20%)进行测试。
超级会员免费看
订阅专栏 解锁全文
5196

被折叠的 条评论
为什么被折叠?



