网站首页 > 技术文章 正文
还记得当年的“阿尔法狗”机器人吗?阿尔法围棋(AlphaGo)是第一个击败人类职业围棋选手、第一个战胜围棋世界冠军的人工智能机器人,由谷歌(Google)旗下DeepMind公司戴密斯·哈萨比斯领衔的团队开发,其主要工作原理是"深度学习"。
而“深度学习”从本质来讲就是一种实现“机器学习”的技术。
机器学习是什么?
“机器学习”是一门多领域的交叉学科,涉及概率论、统计学、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。
通俗来讲,“机器学习”使用算法来分析数据,然后从中学习,类似于我们中学学科的学习,听老师讲课然后加入自己的理解后消化,将此知识点学习成功并应用。“机器学习”来源于早期的人工智能领域,传统的算法包括决策树、聚类、贝叶斯分类、支持向量机等等。
Logistic 回归
Logistic 回归在机器学习中应用相对较多,下面介绍最大似然估计在 logistic 回归模型训练中的应用。
logistic 回归预测函数为 :
其中 x 为输入向量,w 为权重向量,b 为偏置项。权重向量与偏置项是模型的参数,通过训练得 到。为了简化表述,用如下的方式对向量进行扩充合并
预测函数变为
这是样本为正样本的概率。样本属于负样本的概率为 1 ? h(x)。这是一个伯努利分布。下面用最 大似然估计确定模型的参数 w。
给定训练样本集 (xi , yi), i = 1, · · · , l,其中 xi 为 n 维特征向量,yi 为类别标签,其取值为 1 或 0。根据伯努利分布的概率质量函数表达式,样本属于每个类的概率可以统一写成
由于样本独立同分布,训练样本集的似然函数为
对数似然函数为
求该函数的极大值等价于求下面函数的极小值
目标函数的梯度为
梯度的计算公式
目标函数的黑塞矩阵为
如果单个样本的特征向量为 xi = (xi1 · · · xin) T,矩阵 Xi 定义为
此矩阵可以写成如下乘积形式
对任意非 0 向量 x 有
因此矩阵 Xi 半正定,由于
对于如下的训练样本集,我们接下来将上面的交叉熵目标函数可视化。
每个训练样本的前半部分为样本的特征向量,后半部分为样本的标签值。标签值为 0 表示负样 本,标签值为 1 表示正样本。共有 4 个样本,这是经典的异或问题。如果在平面上将 4 个点显示 出来,两个类都位于正方形的对角线上,无法用线性分类器将它们分开。
图1为使用交叉熵损失函数时的目标函数曲面,是一个光滑的凸函数,可以确保找到全局极小值点。图中横坐标和纵坐标为权重向量的两个分量,竖坐标为目标函数值,这里将偏置项统一设置为 0。
图 1 使用交叉熵时的损失函数
下面考虑使用欧氏距离作为损失函数,定义为
图 2是使用此损失函数的曲面,不是凸函数。存在多个局部极小值点,寻找全局极小值存在困难。
图 2 使用欧氏距离时的目标函数
如果使用梯度下降法求解,根据梯度计算公式,梯度下降法的迭代更新公式非常简洁
上述内容来自《机器学习的数学》一书
本书覆盖了人工智能领域中与机器学习相关的数学知识体系,不仅囊括了微积分和线性代数等基本数学原理,还详细讲解了概率论、信息论、最优化方法等诸多内容。在讲解数学知识的同时也进行了举例说明,方便读者更具象化地理解抽象的数学理论,同时对机器学习算法有更深刻的认识。
如果大家有“高等数学”、“线性代数”、“概率论与数理统计”这三门课的基础知识,那么可以无障碍读懂本书。即使你没有学过前面这些课程,只要有高中数学的基础,理论上也可以读懂这本书。
本书满足几乎绝大部分读者在机器学习、深度学习、强化学习以及它们各个应用方向做学术、产品研发的需求。为了帮助读者以及高校老师使用,本书还配备了PPT教学资源。
- 上一篇: 以淘宝女装分类为例:AI产品经理要不要懂算法?
- 下一篇: 信号识别中的对抗攻击技术 信号识别算法
猜你喜欢
- 2024-10-23 学习笔记六附:DNN损失函数和激活函数的选择
- 2024-10-23 信号识别中的对抗攻击技术 信号识别算法
- 2024-10-23 以淘宝女装分类为例:AI产品经理要不要懂算法?
- 2024-10-23 2022年关于损失函数的5篇最新论文推荐
你 发表评论:
欢迎- 最近发表
-
- 在 Spring Boot 项目中使用 activiti
- 开箱即用-activiti流程引擎(active 流程引擎)
- 在springBoot项目中整合使用activiti
- activiti中的网关是干什么的?(activiti包含网关)
- SpringBoot集成工作流Activiti(完整源码和配套文档)
- Activiti工作流介绍及使用(activiti工作流会签)
- SpringBoot集成工作流Activiti(实际项目演示)
- activiti工作流引擎(activiti工作流引擎怎么用)
- 工作流Activiti初体验及在数据库中生成的表
- Activiti工作流浅析(activiti6.0工作流引擎深度解析)
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)