本文为Element of Statistical Learning (ESL, https://web.stanford.edu/~hastie/ElemStatLearn/)的读书笔记。文中并不全是对原书的总结整理,很多内容是基于原书,笔者自己的演绎,不具有权威性,欢迎指教。
变量类型与表示方法
变量包括输入
X
,目标值(/真值)
变量的格式类型包括:qualitative(离散的)和quantitive(连续的)。
根据变量类型不同,对其采用不同的表示方法。
1. 离散变量通常使用编码结果表示,一种常用的方法是dummy variables(/one-hot),即每个bit表示一类,同时只可能有一个bit设为1。这种表示的一个显著好处是不引入先验,所有目标值之间的距离相同(而且结果的可解释性强);这种方法的一个例子是:Hinton Neural Networks课程笔记4a:使用神经网络做逻辑推理。与dummy variables相对的表示离散变量的方式为压缩编码,常见的如果存在k类,则使用
ceil(log2k)
bits表示。这种编码方式虽然可以节约空间,使用最少比特数存储信息,但是其中引入大量无意义的先验,这种表示通常是不被采用的。还有一种引入有意义先验的方法,即通过人为设置每个bit对应意义,对变量进行表示,这种方法的一个例子是LeNet的输出:LeNet论文阅读:LeNet结构以及参数个数计算。
2. 连续变量通常是用浮点数值表示;但也有有意对其进行转化,表示为离散变量,如PixelCNN和WaveNet。
不同的变量和变量表示方式方法的组合,决定了解决问题和模型的不同。
1. 根据目标值
Y
格式的不同,可以将监督学习分为classification(分类)和regression(回归)两类问题。其中分类问题对应于离散的真值,而回归问题对应于连续的真值。
2. 输入
须注明的是,
1. 采用何种表示方法与模型对其的处理方法不相关。例如使用one-hot的方法对真值
Y
进行编码之后,通常将其看做连续的变量,与预测输出
2. 变量本身的天然类型与实际使用的表示方法不相关。例如WaveNet对音频的幅值做离散化表示。
未完待续