当前位置:网站首页>AI中的数学思想
AI中的数学思想
2022-07-31 02:01:00 【IT极客帮】
AI所涉及的数学知识主要涉及三个方面:线性代数、微积分、概率论,下面我们就整个AI流程中所涉及的数学知识进行描述,度学习归根结底就是在学习如何拟合一个函数,这个函数将输入映射成输出,其本质就是数学建模问题。
假设空间:
假设空间,也叫做函数空间,如何选择函数,这需要一些先验知识,我们习惯上将房价预测划分为回归问题,因为输出值是一个连续的实数值;明天是否下雨,结果只有下或者不下两个离散值,这样的问题我们称为分类问题;对于这样的问题,我们很容易进行函数的选择,但对于复杂问题,例如图像模式识别,普通的回归就无法完成任务(在机器学习时代,这需要人工提取特征后将特征输入到机器学习算法),这就需要神经网络,他虽然是个黑盒,我们不知道里面发生了什么,但需要几个隐藏层,仍然需要人为凭借先验知识去设定,所谓的函数空间是指当网络模型固定,按照一定的概率分布去初始化网络参数,然后在训练过程中去优化函数空间,但有一种特殊情况,就是Dropout,类似于Bagging思想,Dropout的存在使得网络模型变得更加复杂,但这种复杂性有效防止了过拟合。
目标函数:
既然是拟合问题,那就少不了评价拟合效果的工具,这就是目标函数的作用,它用来衡量拟合函数的输出与真实标签间的差距,并且通过改变网络参数来不断减小差距,这就是数学中的优化问题,在数学中,函数的导数表示自变量变化时,因变量的变化率,理想情况下导数为0的点被称之为极值点,极值点处的参数就是我们要求的最终结果,这种理想函数我们称之为凸函数,但现实生活中的问题往往并不是凸优化问题,导数为0的点可能是局部极值点或者鞍点,面对这种问题,就需要梯度下降法去寻找最优解,先初始化起点,然后每一步都沿着梯度最大的方向移动,这种方式仍可能只找到局部最优解,科学家提出的Adam等方法就是为了优化求解过程。
优化过程依赖损失函数的特性:处处可微,线性回归模型选择均方误差作为损失函数,而分类问题却选择交叉熵作为损失函数;深度学习所拟合的函数是一个非常复杂的函数,我们可以认为其是一个很深的复合函数,对于一个复合函数如何求导?答案是链式求导法则;对于输入输出都是标量的情况,求导过程非常简单,但对于CV领域,输入是一个矩阵,NLP领域输入是一个向量,输出可能是一个向量、矩阵还有可能是一个标量,这种情况可以利用矩阵求导法则去求得损失函数的极值。
涉及到矩阵操作时,可以根据矩阵的性质去求解,例如,矩阵的逆,矩阵的特征值分解,矩阵的奇异值分解,矩阵行列式等。
边栏推荐
- Drools WorkBench的简介与使用
- 【微信小程序】一文带你了解数据绑定、事件绑定以及事件传参、数据同步
- 12 pictures take you to fully understand service current limit, circuit breaker, downgrade, and avalanche
- tcp框架需要解决的问题
- Validate XML documents
- 静态路由解析(最长掩码匹配原则+主备路由)
- Can an inexperienced college graduate switch to software testing?my real case
- MySql installation and configuration super detailed tutorial and simple method of building database and table
- 力扣每日一题-第46天-704. 二分查找
- The comprehensive result of the case statement, do you know it?[Verilog Advanced Tutorial]
猜你喜欢
What does a software test report contain?
VSCode插件:嵌套注释
Unity界面总体介绍
VSCode Plugin: Nested Comments
What are the project management tools like MS Project
二层广播风暴(产生原因+判断+解决)
MySQL installation tutorial (detailed, package teaching package~)
成为比开发硬气的测试人,我都经历了什么?
[WeChat applet] This article takes you to understand data binding, event binding, event parameter transfer, and data synchronization
mmdetection trains a model related command
随机推荐
How to expose Prometheus metrics in go programs
multiplayer-hlap 包有问题,无法升级的解决方案
What does a software test report contain?
[1154] How to convert string to datetime
进程间通信学习笔记
Between two orderly array of additive and Topk problem
What have I experienced to become a tester who is harder than development?
MySql的初识感悟,以及sql语句中的DDL和DML和DQL的基本语法
《MySQL数据库进阶实战》读后感(SQL 小虚竹)
软件测试报告有哪些内容?
tcp框架需要解决的问题
[Map and Set] LeetCode & Niu Ke exercise
爬虫文本数据清洗
Overview of prometheus monitoring
Introduction to flask series 】 【 flask - using SQLAlchemy
The PC side determines the type of browser currently in use
After reading "MySQL Database Advanced Practice" (SQL Xiao Xuzhu)
User interaction + formatted output
充电效果模拟
Maximum monthly salary of 20K?The average salary is nearly 10,000... What is the experience of working in a Huawei subsidiary?