1.神经网络之感知机
-
感知机(就是根据大量数据训练出的模型,从而用于二分类的线性分类模型
例题:景区规定14周岁以下的儿童可买半价票。但儿童往往没有身份证,难以准确判断年龄, 如何 根据一个人的身高和体重,判断其是否可以买半价票。 生物学的神经网络 。 神经元的树突收到输入信号(人眼看到屏幕上的光信号) 。 信号刺激细胞核,达到一定的阈值后会产生输出 。 该输出就是进一步的信号,继续传到下一个神经元 感知机模型: 最简单的神经网络 。 输入层:输入身高x1,和体重数据x2,相当于神经元接受2个输入信号 。 激活函数f:综合判断输入信号是否达到阈值 。输出层: 激活函数f就在输出层,求得的函数值就是输出值y
-
模型的建立,就是把题目"翻译"成数学语言
-
分析: 综合考虑身高(x1),和体重(x2),判断此人是否达到了14周岁(阈值b)
。结果只能"未达到"和“达到"两种情况,可分别用0和1代表 。函数值只有0和1,可用阶跃函数作为激活函数(激活函数还有sigmoid函数等) 。阶跃函数: f(t) = if(t>=0){f(t)=1} else {f(t)=0} 。1.怎么实现"综合考虑"? .线性求和∑wixi(权重wi代表变量xi的重要性) .求和意味着身高和体重(即所有变量)都考虑到了,即"综合考虑" .初始时,权重wi的数值需要根据查文献或常识经验确定。 。2. 如何根据"综合考虑"的结果进行判断? .”判断标准",就是线性求和与阈值的差值,该差值作为激活函数的自变量 .设阈值为b,激活函数的自变量为t = ∑wixi - b。差值越大(t越大),越容易判断。 。3. 输出结果/题目答案 .某种情况:t=∑wixi - b>=0 <==> f(t) =1 <==> "综合考虑"身高和体重超过了"阈值" .感知机输出值为1,则判定此人达到了14周岁
-
模型
-
学习本质:不断地更改权重wi,使得模型求出的预测值尽可能地接近真实值
- Step1:模型初始化,人为主观地设置权重wi(查文献、靠经验)
- Step2:搜集大量地身高x1,体重x2和是否达到14周岁y地数据,作为训练数据集
- Step3:将x1和x2带入模型,求得估计值y^
- Step4:将估计值y^与实际值y比较,差别越小越好
- Step5:若未满足终止条件,则继续对权重wi进行优化,得到新的wi,再重复Step3
- 终止条件:估计值和实际值地差别小到一定程度为止
-
问题转化为:如何对权重wi进行优化?
感知机的优化方法:将wi改为wi+^wi = wi + n(y-y^)xi
n属于(0,1),通常设为0.1,称为学习率。n过大容易震荡,过小则收敛速度太慢
当达到终止条件后,此时的wi就作为模型的权重,模型就彻底建好了。