数据为王
It’s not who has the best algorithm wins, it’s who has the most data.
如何判断数据是否真的为王,以及多少数据就可以称王,可以使用learning curve帮助判断。
复习learning curve:
- 横轴是训练集大小,纵轴是cost,
- 先使用大小为m1的training set;求解后算cost,再带入CV set求cost,画两个点。
- 使用大小为m2的训练集。。。
- 当训练集足够大,两条曲线贴近的时候,说明
如何解决数据集太大的问题
Stochastic Gradient Descent
传统Gradient descent 我们叫batch Gradient Descent,就是说算的时候所有数据都放进去。
Stochastic Gradient Descent, 换了一种思路,把数据一组一组取出来,使用当前选中的数据组调整参数,再取下一组数据。
1 | 1) Randomly Shuffle Training Examples |
如果有300,000,000数据,使用batch Gradient Descent,每次调整参数就需要所有的数据参与计算。但是对于stochastic gradient descent,一次repeat一次全数据参与,最多十次,运气好(同时也是数据多的时候),一次就可以得到很好的结果。
这是为什么这种算法很快的原因。