线性模型
能不能使用线性分类器得到形状为圆圈的决策边界?
- 可以的!所谓的线性分类器,线性指的是权重向量w和标签y的关系,而决策边界指的是y如何随着x的变化而变化
**the prediction is driven by the score w · φ(x)**,其中x是原始输入,φ(x)是提取到的特征
机器学习问题:定义优化问题,求解得到w(在 φ(x)固定的情况下)
构造特征:
- 先验知识
- 特征模板
定义特征:
- 数组:适用于特征稠密的情况,假定特征排序固定
- 字典:特征稀疏(few nonzeros)时用字典表示字段到double
的映射更有效
定义特征时一定要明确特征的含义
模型的表达(表现)能力——Expressivity:
- hypothesis class:特征φ(x)固定而w不同的预测器的集合
$$
F = {f_w : w ∈ R^d}
$$ - 学习的目的:利用训练数据从F中找到一个特定的预测器
- 如果φ(x)定义的F中的预测器都很差劲,no amount of learning can help.
- 关键在于:φ(x)能不能把好的预测器表达出来
- F是不是越大越好?
non-linearities in the original measurements(原始度量中的非线性) :
- Non-monotonicity(非单调性):
- 体温和健康程度的关系就不是单调的,你不能说体温越高越健康,反之亦然
- φ(x) = [1, temperature(x)] bad
- φ(x) = [1, (temperature(x) − 37)^2] 转换特征,利用了先验知识
- φ(x) = [1, temperature(x), temperature(x)^2] task to simple blocks
- Saturation(饱和):
- 产品推荐
- φ(x) = N(x) 购买产品的人数(受欢迎程度)和相关性,不具有线性关系
- φ(x) = logN(x) 转换特征,取对数(N with a large dynamic range)
- φ(x) = [1[0 < N(x) ≤ 10], 1[10 < N(x) ≤ 100],…]离散化,范围足够精细的话,可以非常灵活地捕捉常规关系
- Interaction between features(特征组合):
- 根据身高、体重预测健康病人状况
- φ(x) = [height(x), weight(x)] #没能捕获身高体重的关系
- φ(x) = (52 + 1.9(height(x) − 60) − weight(x))^2 #组合输入得到新的特征,利用了外界知识
- φ(x) = [1, height(x), weight(x), height(x)^2, weight(x)^2, height(x)weight(x)] #添加包含多个度量的特征
Linear in what?
- Linear in w? Yes
- Linear in φ(x)? Yes
- Linear in x? No! (x not necessarily even a vector,可以是图片、文字)
小结:
- 从特征提取的角度来看,我们可以定义任意特征,带来x的极度非线性的函数
- 从学习的角度来看,线性在有效优化权重方面起着重要作用(因为它会导致凸优化问题)
- 线性模型很强大!
- 将手工定义特征自动化—> 神经网络