欢迎关注公众号 【小菜与老鸟】
【关键字】分类器、损失函数
“老鸟,刚下班啊,吃饭没?”小菜刚从卫生间出来就看到老鸟下班回来了,瞄了一眼墙上的表,11点11分。
“在公司吃过了。”
“来我这歇会。天气热,我买了个西瓜。”小菜招呼道。
“哈哈。感情好。”
“这西瓜真甜。”老鸟边吃边说。
“老鸟,上次说的机器学习分类器的事,我回头思考了下。你看对不对。”小菜说道。
“你看啊。举个例子,现在有两个线性分类器,我画个图。”
图1 线性分类器1
图2 线性分类器2
“你看,看起来分类器2要比分类器1要好点。也就是说机器学习在学习的过程中就是从较差的分类器进化到较好的分类器。”小菜解释道。
老鸟笑着:“你是怎么量化这两者的好坏呢?”
“你看,分类器1分错了这么多,分类器2分错的比较少。”小菜自信的回答道。
“这么分是不准确的。”老鸟否定了小菜的思路。
“第一条线分错了5个,第二条线分错了2个,并不能说明第二条线,或者说第二个分类器的参数要优于第一个分类器。分类器最终目的是什么,是要对新的数据进行判断分类,训练时分错少并不能证明预测效果也好。”
“那鸢尾花这个例子,如何衡量两个分类器的优劣呢?”小菜问道。
“问到点子上了。也就是说我们如何衡量分类器对数据的误分类程度?于是损失函数或者叫代价函数这个概念就出来了。损失函数用来评价模型的预测值和真实值不一样的程度,是度量分类器输出错误程度的数学化表示。”老鸟解释道。
“所以如果没有任何误分类的数据,损失函数是不是就是0?”小菜问。
“对。没有任何误分类,损失函数就是0,如果有误分类,就需要用损失函数计算损失。”
“鸢尾花这个例子该怎么定义损失函数呢?”小菜接着问。
“公式中,使用累加函数,计算了所有的样本数据的损失值,将-y * (a1x1+a2x2+b),和比较,取较大值。如果大于0,则取该值,表示该样本会增加损失函数累计值;如果小于等于0,则取0,则该样本不会增加损失函数累计值。“
”仔细体会下,小菜。“
”嗯嗯,我好好消化消化。“
“西瓜真甜,不能再吃了,得休息了。”老鸟告别小菜,准备休息。
“OK。明天见。”
领取专属 10元无门槛券
私享最新 技术干货