第5章
分类问题基础介绍
本章内容
- 编写正式表示
- 使用逻辑回归
- 使用混淆矩阵
- 理解多分类
想象一家广告代理公司正在收集用户交互的相关信息以决定展示哪类广告。这并非罕见。谷歌、Twitter、Facebook以及其他依赖广告的大型科技巨头都拥有极好的用户画像以帮助其发布个性化广告。一个最近搜索过游戏键盘或显卡的用户有更大概率点击关于最新和最酷视频游戏的广告。
为每个人投放专门制作的广告比较困难,所以将用户分组是一项常用的技巧。例如,一个用户可以被归类为游戏玩家,以接收视频游戏相关的广告。
机器学习是完成此类任务的首选工具。在最基本的层面上,机器学习实践者希望构建一个工具来帮助理解数据。为数据打上标签将其归属于独立的类别,根据特定的需求来描述数据,是一种非常好的办法。
第4章讨论了回归,即在数据上拟合一条曲线。你应该还记得,最佳拟合曲线是一个函数,它将数据项作为输入,并从连续分布中取出一个数值。创建一个为输入指定离散标签的机器学习模型称为分类。分类是一种处理离散输出的监督学习算法。(每个离散的值称为一个类。)输入通常是一个特征向量,输出是一个类。如果只有两个类标签(True/False
、On/Off
、Yes/No
),我们称这种学习算法为二分类器,否则,我们称之为多分类器。
有很多种分类器,但本章主要聚焦在表5.1中列举的几种。每种方法都有优缺点,我们在TensorFlow中实现每种分类器后再进行深入讨论。
线性回归是最容易实现的类型,因为我们在第3章和第4章已经完成了其大部分的工作,但是你会看到,这是一个糟糕的分类器。一个更好的分类器是逻辑回归(logistic regression)算法。顾名思义,它通过对数性质来定义一个更好的代价函数。最后,softmax回归是解决多分类问题的一种直接方法。它是逻辑回归的自然泛化,之所以被称为softmax回归是因为在最后一步调用了一个被称为softmax
的函数。
表5.1 分类器