当前位置:网站首页>AI中的数学思想
AI中的数学思想
2022-07-31 02:01:00 【IT极客帮】
AI所涉及的数学知识主要涉及三个方面:线性代数、微积分、概率论,下面我们就整个AI流程中所涉及的数学知识进行描述,度学习归根结底就是在学习如何拟合一个函数,这个函数将输入映射成输出,其本质就是数学建模问题。
假设空间:
假设空间,也叫做函数空间,如何选择函数,这需要一些先验知识,我们习惯上将房价预测划分为回归问题,因为输出值是一个连续的实数值;明天是否下雨,结果只有下或者不下两个离散值,这样的问题我们称为分类问题;对于这样的问题,我们很容易进行函数的选择,但对于复杂问题,例如图像模式识别,普通的回归就无法完成任务(在机器学习时代,这需要人工提取特征后将特征输入到机器学习算法),这就需要神经网络,他虽然是个黑盒,我们不知道里面发生了什么,但需要几个隐藏层,仍然需要人为凭借先验知识去设定,所谓的函数空间是指当网络模型固定,按照一定的概率分布去初始化网络参数,然后在训练过程中去优化函数空间,但有一种特殊情况,就是Dropout,类似于Bagging思想,Dropout的存在使得网络模型变得更加复杂,但这种复杂性有效防止了过拟合。
目标函数:
既然是拟合问题,那就少不了评价拟合效果的工具,这就是目标函数的作用,它用来衡量拟合函数的输出与真实标签间的差距,并且通过改变网络参数来不断减小差距,这就是数学中的优化问题,在数学中,函数的导数表示自变量变化时,因变量的变化率,理想情况下导数为0的点被称之为极值点,极值点处的参数就是我们要求的最终结果,这种理想函数我们称之为凸函数,但现实生活中的问题往往并不是凸优化问题,导数为0的点可能是局部极值点或者鞍点,面对这种问题,就需要梯度下降法去寻找最优解,先初始化起点,然后每一步都沿着梯度最大的方向移动,这种方式仍可能只找到局部最优解,科学家提出的Adam等方法就是为了优化求解过程。
优化过程依赖损失函数的特性:处处可微,线性回归模型选择均方误差作为损失函数,而分类问题却选择交叉熵作为损失函数;深度学习所拟合的函数是一个非常复杂的函数,我们可以认为其是一个很深的复合函数,对于一个复合函数如何求导?答案是链式求导法则;对于输入输出都是标量的情况,求导过程非常简单,但对于CV领域,输入是一个矩阵,NLP领域输入是一个向量,输出可能是一个向量、矩阵还有可能是一个标量,这种情况可以利用矩阵求导法则去求得损失函数的极值。
涉及到矩阵操作时,可以根据矩阵的性质去求解,例如,矩阵的逆,矩阵的特征值分解,矩阵的奇异值分解,矩阵行列式等。
边栏推荐
- 项目开发软件目录结构规范
- uniapp使用第三方字体
- [1153]mysql中between的边界范围
- Crypto Life, a day in the life of a Web3 project partner
- Coldfusion file read holes (CVE - 2010-2861)
- Calculate S=a+aa+…+aa…a
- What are the project management tools like MS Project
- 力扣每日一题-第46天-704. 二分查找
- uniapp uses 3rd party fonts
- C language applet -- common classic practice questions
猜你喜欢

Tower of Hanoi problem

软件测试报告有哪些内容?

VSCode插件:嵌套注释

coldfusion8 background scheduled tasks take shell

16. Registration Center-consul

MySql installation and configuration super detailed tutorial and simple method of building database and table

mmdetection训练一个模型相关命令

【Map与Set】之LeetCode&牛客练习

ShardingJDBC usage summary

leetcode-399:除法求值
随机推荐
MySQL的安装教程(嗷嗷详细,包教包会~)
Brute Force/Adjacency Matrix Breadth First Directed Weighted Graph Undirected Weighted Graph
静态路由解析(最长掩码匹配原则+主备路由)
16. Registration Center-consul
12 pictures take you to fully understand service current limit, circuit breaker, downgrade, and avalanche
真正的CTO,是一个懂产品的技术人
Can an inexperienced college graduate switch to software testing?my real case
软件测试报告有哪些内容?
pycharm重命名后无法运行(报错: can‘t open file......No such file or directory)
FPGA-based vending machine
Calculate S=a+aa+…+aa…a
C language applet -- common classic practice questions
The real CTO is a technical person who understands products
力扣刷题之爬楼梯(7/30)
充电效果模拟
My first understanding of MySql, and the basic syntax of DDL and DML and DQL in sql statements
[WeChat applet] This article takes you to understand data binding, event binding, event parameter transfer, and data synchronization
What have I experienced to become a tester who is harder than development?
mysql view
multiplayer-hlap 包有问题,无法升级的解决方案