最近在看关于特征构建的文章,在此做下学习记录。接下来的关于特征构建的博文将按[1]的过程进行记录,并在记录的过程中补充涉及特征构建的其他文献。
谈到特征构建,我们就会问什么是特征构建、为什么进行特征构建。下面首先回答为什么要做特征构建。
1、为什么要进行特征构建
首先,对术语进行相关说明。
selective induction (SI):SI假设具有相似属性的instance具有相似类别(class-membership values)。该假设是SI这类算法的基础假设,如果该假设不能得到满足,那么SI的效果就会受到影响。如决策树等
Intrinsic accuracy:给定训练数据,Intrinsic accuracy是指在给定的数据上能达到的最高准确率。Intrinsic accuracy是个理论最高值,不同的学习技术只能不同程度上接近Intrinsic accuracy。
那么,会出现这样一个现象,给定一个问题,该问题具有较高的Intrinsic accuracy,但是根据该问题的原始特征描述,传统的SI方法(例如决策树)学习性能很差,这种现象称之为hard concepts。那么应该怎么处理hard concepts问题那?
特征构建就是一种可选方案。那么什么是特征构建哪?
2、特征构建
SI的基本假设是具有相似属性的instance具有相似类别(class-membership values)。如果这一基本假设不成立,SI性能就会降低。但是,我们可以在原始特征的基础上,通过构建新特征的方法在某种程度上满足SI的基本假设,从而使SI能够达到更好的性能。这个过程我们可称之为特征构建。
3、SI与FC之间的关联总结
selective induction (SI)的基本假设是:具有相似属性的实例具有相似类别值(class-membership values)。SI把在某种度量下(例如余弦相似度、欧氏距离等)相似的实例划分到一起,认为相似实例的class-membership values也相似。但是,如果实际情况不满足该假设,SI的这种划分操作就不合理。也就是说出现了相似的实例却具有不相似的class-membership values的情况。举个例子,0 /1二分类中,实例i与实例j是相似的,但是i与j却不属于相同的类目。如果这种情况普遍出现,SI就不适用了。但是,我们可以通过特征构建FC把原始特征进行转换,使新产生的特征符合SI的基本假设,从而提高SI的性能。
这里简单介绍了下特征构建,没有涉及具体的构建方法,在后续的文章里会更加具体的介绍特征构建。如果感兴趣的朋友,可以深入研究下文献[1]。
*[1]Learning hard concepts through constructive induction: framework and rationale,
LARRYRENDELL AND RAJ SESHU***