感知机-1
神经元:
单个神经细胞有2中状态: 1.兴奋 2.抑制 。通过突触传递介质,当介质(信号)超过某个值时,细胞就会兴奋。
Frank Rosenblatt 模拟 突触/阈值/细胞体兴奋 等特征 发明一种称之为 感知机 的 机器,数学表达式如下:
f(x)为细胞体,为1 表示兴奋;为0 表示抑制
w 为 模拟突触的强度
b 为 激活的阈值
x为向量 反映的是一系列突触对细胞体的影响
易见,可以用感知机进行二元分类。同时,可以看到可以通过调节权值,学习二元分类。
感知机的学习算法:
- 首先将所有权值设为0, 这样, 输入值预设为对结果不产生任何影响。同时,偏移量也被预设为0。
- 我们使用参数MaxIter。这个参数是整个算法中唯一一个超参数(hyper-parameter)。这个超参数表示当我们一直无法找到准确答案时,我们要最多对权重和偏移量进行几次优化。
- 在算法PerceptronTrain第5行,我们用之前提到的加法公式计算出当前激发值a。由于这个简单的感知器算法只可以产生二维结果,我们 只检查激发值a的符号是否与实际值同号(第6行)。如果同号,这意味着算法为当前数据的输入值找到了合适的权重和偏移量,算法结束。
- 如果激发值与实际值异号,感知器算法就要进行自调节的过程(第7, 8行)。自调节过程分成两步:
新的激发值a 受影响于 新的权值w和新的偏置b
这个是比较直观的形式,更加一般的推导过程如下:
内积的数学概念:
感知分类的学习策略是, 假设训练数据集是线性可分的,感知机学习的目标是求得一个能够将训练集正实例点和负实例点完全正确分开的分离超平面
先看看感知机的几何解释:
线性方程: ![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAM0AAAAnCAYAAACsY8yNAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAP9SURBVHhe7Zo/axRBGIfT29tro5U2KSwsFCwsFGws1EpQ7AS1ExQbQSuRVClCTBHQQIqIV6SJIU2aS5MqYKp8gPsKK8/Km7wOc7f77uxxMf6Kh9ub2ZuZm32f+bO7c6PRqBJCtEfSCBFE0ggRRNIIEUTSCBFE0ggRRNIIEUTSCBFE0ggRRNIIEUTSCBFE0ggRRNJMgVc7O9X5lZXqwupqNbe4WF1bX8+eJ/5NJM0UMWkebW5m808D39a+Vk+ePq7u3L1dzc9frY+3t39mzxV/kDQZvh8cZNOjIAx8Gg6z+bNmeXmpunT5YrWw8Pk47cXL53XaYPDjr3PFCZImA4H+bnc3m9cWRKGcc0tL1fDoKHvOLNnbG9ZyMMMcHv46TueYdGYdf744QdJk6EMalmSUwxItlz9rmF2Qg5klzbtx87pmmwlImgx9SHNlba0u595gkM2fNQ8e3q/FePP2dShPBKR5trVVj5osN9JAYClCkNja/cv+fn33CPpemlDerY2Nuj7K55g9iKXRxtKA70Ma+olyaBdtsv44Lfsbm00mScNNgTRPtJSGAOLCE5w2gvqLb2mIxXduufK9j+DzIAzBSD0c0x6rh+CkTQQm33O/b0tpuxk0rF30jd1YyPXdrECKJmnY76R5oqU0BCIicGwjKIFh+RYgPo1nE30HCGL4Zx6IY3UTmLaPIDhLZjjKKJEGqSmDfjNhwNrX9NzGDzpR2t54kDTdaZTGgpELYRfTByVSkMZM5C+WpTddQETgvDYPAGmHF9PaY3VbG32gdoEyS6SxASNdxvLd2uvTZ4Gk6U7oRoAFgy3DwEZPgt+fS/C2CQ5+azQJlmJBmNbdBPX4eqPw33LlGjYbp+LRH6S3GSCmDbeUm6ThM80TAWl8oPmR3NbpaSARyAjl03LwO8rwIrbFgrApiKNQZteZhr6xfvKDgO+/Lv+1b0yMSdLk8kRAmnHLMBtVvUjkk973hpelmQnig9PXTZ2l9VJmV2l8P/l02k06/eLbm8PO7Yq/PuP48PF9LUbuDpndWeMVmzRPdJTGp+cuFCNp6WY8xUtCQFtgeYn5ZPNdsh8BqyOX14S1M+2ncTPyrLA3AtIn/5aOOP5NAXFCaE+Tziq2iQcb3ZkNCFy/Ye8Dk5bgszpoD5CPMLSH/UKprNRTIp4JYu2wfjoNyzKPvRXArGNpzDyaZSYTkoZgJSgJVEZSgoE0Pgli0sgvXR6Ng3qom7oIQOqhTmsPe6impU8bSqUxgWkXAnE8rT4pxd5yZsbhbhmv1ej1mcmEpPlfKJVGnG0kTQZJIyYhaTL0vR8TZwtJI0QQSSNEEEkjRBBJI0QQSSNEEEkjRBBJI0QQSSNEiFH1G+gg+byOXajuAAAAAElFTkSuQmCC)
定义一个经验损失函数,并将损失最小化。
损失函数可以选择误分点的总数,也可以选择误分点到超平面的距离。为了确保连续可导的,选择误分点到超平面的距离作为经验损失函数。
注意 y = 1 或者 -1
感知器学习算法的一般形式:
修正错误的几何意义:
- 看右上方y=+1的图,正确的是正的,却算出来负的,说明w 和 x的夹角太大,要把w转向x,因为此时y=+1所以w+yx是 w+x,相当于图中的中间那条向量;
- 再看y=-1的图,正确的是负的,但是算出来是正的,说明w和x的夹角太小了,要把w向远离x的方向转,此时w+yx=w-x,所以结果就转向远离x的方向了。