机器学习概念
这是听了李宏毅老师的课做下的笔记,第一次写博客,其实主要还是给自己看的,有些东西写的并不正式,请多指教。
总结下来机器学习就是让机器找一个函数,比如输入一张图,输出他的内容是啥
分为两类:
-
regression回归,输出一个数值
-
classification分类,准备好多选项,让它选一个选项输出
-
还有一类少提的,产生有结构的东西,学会创造东西 structural learning
训练分为三步:
-
猜一个函数 model y=b+wx ; b、w 是 parameter 参数,x是未知数,是feature
-
定义loss 函数 L(b,w)输入数定义的model里的参数,看这些参数设置的好不好:看真实的值(label)和估算的值的差距,这其中可以用error surface 也就是一个等高线图看loss
-
optimization 找一组参数让Loss最小
gradient descent 是一种方法,有local minima的问题
-
随机选一个初始点w0
-
对于每一个参数,比如w,计算w=w0时的微分g= △L/△w 然后可以自己定义一个learning rate η w1=w0-η×g 然后更新w0->w1,可以一直改
-
得到结果之后分析,更新model
需要找一个model模拟比较复杂的关系,就要用很多sigmoid函数加在一起逼近它
model进化史
究极
再计算loss,然后optimization
sigmoid可以换成别的函数,这些都是激活函数,是neuron,比如ReLU
整个一排的neuron就是hidden layer,很多hidden layer就是deep learning
然后,可以再把上述过程再叠加几遍,过多会过拟合。整个就是neural network