【神经网络】{4} ——多元分类
如何利用神经网络解决多类别分类问题?
(手写数字的识别问题,其实就是一个多类别分类问题,因为它有 101010 种需要识别的类别,也就是数字 000 到 999。)
要在神经网络中实现多类别分类,采用的方法本质上是一对多法的拓展。
假设有一个计算机视觉的例子,我们不只需要识别出图中的汽车,现在我们需要识别四个类别的对象,通过图像来辨别出哪些是行人、汽车、摩托车或者货车:
这样的话,我们要做的就是建立一个有四个输出单元的神经网络:
现在神经网络的输出将是一个含 444 个数的向量:
输出变成了一个四维的向量,那么现在要做的就是,用第一个输出单元来判断图中是否是一个行人,再用第二个输出单元来判断图片中是否是一辆汽车,以此类推……
当图像中是一个行人时,理想情况下,这个网络会输出:
当图中是一辆汽车时,希望输出:
以此类推……
现在可以说我们有 444 个逻辑回归分类器:
它们每一个都将识别图片中的物体是否是四种类别中的一种。
这就是四输出单元的神经网络:
下面是 h(x)h(x)h(x) 对应不同图片的取值情况,我们对这种设定下的训练集的表示方式如下所示:
当训练集中有各种图片,包含行人、汽车、摩托车、卡车,应该怎么办呢?
首先,输出的表示方法如下所示:
y(i)y^{(i)}y(i) 的值取决于对应的图像 x(i)x^{(i)}x(i),那么一个训练样本将由一组 (x(i),y(i))(x^{(i)}, y^{(i)})(x(i),y(i)) 组成。
其中 x(i)x^{(i)}x(i) 就是四种物体其中一种的图像,而 y(i)y^{(i)}y(i) 就是这些向量中的一个:
我们希望找到一个方法,让神经网络输出一些数值,输出值 h(x(i))h(x^{(i)})h(x(i)) 约等于 y(i)y^{(i)}y(i),并且 h(x(i))和y(i)h(x^{(i)})和y^{(i)}h(x(i))和y(i) 在该例子中都是四维向量,分别代表四种不同的类别。
这需要一个算法,它能在给定训练集时,为神经网络拟合参数。下一篇笔记会提到。
这就是让神经网络解决多类别分类问题的方法。
参考资料:吴恩达机器学习系列课程
【神经网络】{4} ——多元分类相关推荐
- 卷积神经网络之多元分类(剪刀石头布)
目录 一.多元分类模型 1.准备数据集 2.数据集处理 3.模型构建 4.模型编译 5.模型训练 6.模型保存 7.模型训练结果分析 8.模型预测(验证) 9.模型结果显示 二.注释 1.fit与fi ...
- python卷积神经网络多元分类_CV4-卷积神经网络之多元分类(剪刀石头布)
目录 这里以剪刀石头布为例.具体一些细节已经在CV1-CV3中详细解释过. 一.多元分类模型 1.准备数据集 下载代码: 训练集数据 wget --no-check-certificate \ htt ...
- 吴恩达ex3_[Coursera] Machine Learning ex3 多元分类和神经网络 步骤分析
第四周的主要内容是神经网络,个人觉得讲得比较跳,所以补充几篇文章加深一下理解: But what *is* a Neural Network? 先提一下,本人设计背景,没学过微积分,这篇只当是笔记,有 ...
- 四、【机器学习作业】多元分类与神经网络(python版ex3)
多元分类与神经网络 (一)多元分类问题 利用逻辑回归算法进行手写字符识别 (二)神经网络模型(初识) (1) 简单模型 vs 复杂模型 (2)介绍神经网络模型(前馈) (3)神经网络模型的建立 (4) ...
- 机器学习入门(06)— 输出层多元分类、softmax 归一化指数函数以及输出层的神经元数量
输出层所用的激活函数,要根据求解问题的性质决定.一般地, 回归问题可以使用恒等函数,也就是说会将输入按原样输出: 二元分类问题可以使用 sigmoid 函数: 多元分类问题可以使用 softmax 函 ...
- 机器学习基础之模型篇-----二元分类和多元分类
机器学习是一个比较广阔的知识领域,涉及到很多数学统计和计算机的相关知识. 要想深入了解,需要系统学习和大量的时间. 但是如果我们很清楚地知道机器学习如果用一句话来概括就是:通过大量的训练,使得机器把输 ...
- Tensorflow实现神经网络及实现多层神经网络进行时装分类
Tensorflow实现神经网络及实现多层神经网络进行时装分类 1. tf.keras构建模型训练评估测试API介绍 import tensorflow as tf from tensorflow i ...
- 使用神经网络做二分类,输出层需要几个神经元?应该选择哪一种激活函数?如果要处理minst数据、输出层需要几个神经元?使用那种激活函数?如果使用神经网络预测房价,输出层需要几个神经元、使用什么激活函数?
使用神经网络做二分类,输出层需要几个神经元?应该选择哪一种激活函数?如果要处理minst数据.输出层需要几个神经元?使用那种激活函数?如果使用神经网络预测房价,输出层需要几个神经元.使用什么激活函数? ...
- 使用卷积神经网络进行文本分类textCNN
使用卷积神经网络进行文本分类textCNN 一维卷积层 我们可以将文本当作一维图像,从而可以用一维卷积神经网络来捕捉临近词之间的关联.与二维卷积层一样,一维卷积层使用一维的互相关运算.在一维互相关运算 ...
- 3.9 神经网络解决多分类问题-机器学习笔记-斯坦福吴恩达教授
神经网络解决多分类问题 假定我们需要将图像分为四类: 行人图像 车辆图像 摩托车图像 卡车图像 这是一个多分类问题,由于图像特征较多,因此我们可以考虑设计含有多个隐含层的神经网络来完成特征优化(扩展) ...
最新文章
- Machine Learning | (5) Scikit-learn的分类器算法-朴素贝叶斯
- sample java_从sample来学习Java堆(转)
- mysql配置管理器在哪_SQL Server 2008配置管理器在哪下载
- 一篇文章带你搞懂 DEX 文件的结构
- 博士生找工作的真相!就问一声:你是否足够强大?
- python-格化输出format方法
- 回顾丨2021数据库大咖讲坛(第6期)视频PPT互动问答
- html+css+js实现网页拼图游戏
- 【批处理】用netsh管理防火墙示例
- Luogu P2827 蚯蚓
- 2010头号病毒追杀令——恶意下载者001
- 设计模式之(Composite)组合模式
- war包的解压和打包为原来的war包的方法
- 2016安卓手机安全隐私之对比与分析
- 412 Precondition Failed
- matlab 提取文件路径名称 带后缀与不带后缀
- Java工具类实现excel转pdf结果几乎一模一样
- Postfix部署【2】传输代理
- 计算机核心期刊排名及简介一览
- 如何录制iPhone手机上的视频
热门文章
- linux 消息队列大小设置,linux 消息队列 参数
- 驱动程序在 /Device/Harddisk0/D 上检测到控制器错误
- 用pl.pojo.tester测试Pojo类,提高测试覆盖率
- 计算机快捷键大全列表6,快捷键大全excel
- python|文本文件的处理
- android一键改机之真改机build.prop
- 自考本科计算机要学什么,计算机自考本科需要考哪些科目
- 免费下载 | ContextCapture分块OBJ模型合并与裁剪
- 搭建opensips进行简单的注册、呼叫
- goahead webserver源码分析