3blue1brown系列课程,精美的动画,配上生动的讲解,非常适合帮助建立数学的形象思维,非常值得反复观看:

http://www.3blue1brown.com/

哔哩哔哩:

https://space.bilibili.com/88461692

作者还把制作视频的用到的代码放到了 github 上,有兴趣的同学可以研究看看

Github: https://github.com/3b1b/manim

我们节选其中一部分内容,领略一下微积分的奥妙

要了解微积分的本质,我们从一个大家都知道的公式说起。这个公式就是求圆的面积公式:A=πr²

 我们将用微积分的方式来推导这个公式,在这个过程中,我们将利用到微分,积分,和两者的互逆。

首先我们先将一个圆如下图切分成数个圆环。我们获得每个圆环的面积,然后将他们相加不就得到圆的面积了。

所以我们以相同的距离dr将圆切分成若干个同心圆环。

比如圆环的半径是3,dr取0.1 那么我们就将一个圆换分成了30个宽度都是0.1的同心圆环:

每一个圆环拉直会得到一个新的形状,我们将这个形状近似看做一个矩形

那么这个矩形的面积就是这个圆环的周长乘以dr,圆环的周长为圆环到圆心的距离*2π

那么每个圆环的近似面积面积就为:**2πr*dr**(这里的r是每个圆环到圆心的距离)

你会发现我们的dr 取值越小,那么我们计算出来的圆的面积也就越精确。

现在如果我们把所有近似矩从小到大一个接一个的排列在一起,我们会有一些全新的发现:

注意,为了方便观察我们y轴与x轴的比例为5:1

现在我们去的dr是0.1,而我们取的dr值越小,获得的圆环的数量就越多,而这些圆环的近似矩形面积相加起来的面积就靠近原来的圆的面积。

若是无限多个圆环,那么我们获得的近似值越来越靠近真实值。

可是我们取的圆环越多,那么计算量不就越大,无限多的就代表根本没法计算。

但注意,当dr取值无限小的时候,我们将所有圆环的面积加起来与下图三角形的面积是相同的。

这个三角形的底是3 而高最大圆环的周长,也就是圆的周长:2π*3

如果圆的半径是r,那么它对应的三角形就是一个底为r,高为2π*r的三角形。根据三角形面积公式,我们得到

圆的面积为:πr²

对于数学家来说,你不光要找到答案,你还想要能发展处解决一般问题的工具和技巧

我们回想一下刚刚发生了什么。为什么这样做是可行的。这个从近似值到精确值的过程,通过这个过程,我们可以了解微积分的本质。

最开我们将问题化解为许多微小值的和,来获得一个近似的结果。

首先我们取每间隔dr值,取一个圆环。我们将一个圆换分成若干个小圆环,将其近似看成若干个矩形,我们就能获得近似的圆形面积。

这里的dr 不仅是圆环的宽度,也是每个圆环半径的间距。

我们将这个这个dr越缩小,dr值取的越小,所有矩形相加的面积就越接近于一个三角形的面积。

我们可以得出结论,原来的原型的面积恰好就是这个三角形的面积。

注意此时已经不是近似值,而是完全准确。

通过这种方法,我们重新推导了计算圆的面积的公式。

现在我们看看这种方法在其他的地方如何发挥作用。

例如,已知骑车在每个时间点上的速度,求这段时间骑车走了多远的距离。

我们可以用每个时间点的速度乘以这段微小的时间,然后相加求和,就是这一整段时间走的距离的近似值。

从图中,我们可以看出,最后我们将一个物理学的问题,变成了几何学的问题。这是不是很有趣?

还有很多的问题都可以这样来计算,我们将一个复杂的问题,拆解为若干近似于a*b然后相加求和的问题(如上面的速度乘以时间),

其中每一个乘法计算中的a都是相同的。(如上一例子中,每一个时间点之间的距离是相同的,也就是vt中的t是相同的)

那么我们就可以将问题转化为若干细长的矩形面积(a*b不就是求矩形面积的公式?)相加取得近似值的问题。

若是我们取的a(在这个汽车例子中的t)取值越小,我们最终获得的值就越精确,而且越发靠近求下图面积的问题的。

等等,这个形状的面积似乎也不是那么好求得。

似乎我们不会像求圆的面积的时候那么的幸运,得到图形正好是一个三角形。

如上题我们求一个汽车从发动到停止这段时间经过的距离,最后我们得到的这样一个形状,我们要怎么求它的面积呢?

一个二次函数的曲线下的面积要怎么求呢?

视频告诉我们,当你在数学上遇到一个特别难解的问题是,不要想着正面硬解,这样你往往会撞上南墙。

相反,你应该带着不明确的目的不断把玩这些概念。

我们将二次函数,x²函数曲线下的面积设置A(x)

那么A(x)与x²之间有什么特殊关系呢?

如果我们将x的值增加一点点,那A(x²)的值回发生怎样的变化呢?

我们把增加的面积叫做dA,x的增加值叫做dx

我们将这个增加的面积近似看做一个矩形。

我们可以得到:

dA≈x²*dx   由此我们得到: dA/dx≈x²

这里我们dx的值取的越小,那么这个dA的面积就越接近矩形的面积。dA/dx也就越接近x²

我们将x=3,dx0.001代入这个公式可以得到

现在我们还是不知道神秘的A(x),但是我们有了这样一个一个公式:dA/dx≈f(x)

dx取值越小,这个公式就越精确。

作者:guolaomao@cnblogs

https://www.cnblogs.com/guolaomao/category/1136473.html

100天搞定机器学习|Day 30-32 微积分的本质的更多相关文章

  1. 100天搞定机器学习|Day11 实现KNN

    机器学习100天|Day1数据预处理 100天搞定机器学习|Day2简单线性回归分析 100天搞定机器学习|Day3多元线性回归 100天搞定机器学习|Day4-6 逻辑回归 100天搞定机器学习|D ...

  2. 100天搞定机器学习|day37 无公式理解反向传播算法之精髓

     100天搞定机器学习(Day1-34) 100天搞定机器学习|Day35 深度学习之神经网络的结构 100天搞定机器学习|Day36 深度学习之梯度下降算法 本篇为100天搞定机器学习之第37天,亦 ...

  3. 100天搞定机器学习|day40-42 Tensorflow Keras识别猫狗

    100天搞定机器学习|1-38天 100天搞定机器学习|day39 Tensorflow Keras手写数字识别 前文我们用keras的Sequential 模型实现mnist手写数字识别,准确率0. ...

  4. 100天搞定机器学习|Day7 K-NN

    最近事情无比之多,换了工作.组队参加了一个比赛.和朋友搞了一些小项目,公号荒废许久.坚持是多么重要,又是多么艰难,目前事情都告一段落,我们继续100天搞定机器学习系列.想要继续做这个是因为,一方面在具 ...

  5. 100天搞定机器学习|Day8 逻辑回归的数学原理

    机器学习100天|Day1数据预处理 100天搞定机器学习|Day2简单线性回归分析 100天搞定机器学习|Day3多元线性回归 100天搞定机器学习|Day4-6 逻辑回归 100天搞定机器学习|D ...

  6. 100天搞定机器学习|Day9-12 支持向量机

    机器学习100天|Day1数据预处理 100天搞定机器学习|Day2简单线性回归分析 100天搞定机器学习|Day3多元线性回归 100天搞定机器学习|Day4-6 逻辑回归 100天搞定机器学习|D ...

  7. 100天搞定机器学习|Day16 通过内核技巧实现SVM

    前情回顾 机器学习100天|Day1数据预处理100天搞定机器学习|Day2简单线性回归分析100天搞定机器学习|Day3多元线性回归100天搞定机器学习|Day4-6 逻辑回归100天搞定机器学习| ...

  8. 100天搞定机器学习|Day17-18 神奇的逻辑回归

    前情回顾 机器学习100天|Day1数据预处理 100天搞定机器学习|Day2简单线性回归分析 100天搞定机器学习|Day3多元线性回归 100天搞定机器学习|Day4-6 逻辑回归 100天搞定机 ...

  9. 100天搞定机器学习|Day19-20 加州理工学院公开课:机器学习与数据挖掘

    前情回顾 机器学习100天|Day1数据预处理 100天搞定机器学习|Day2简单线性回归分析 100天搞定机器学习|Day3多元线性回归 100天搞定机器学习|Day4-6 逻辑回归 100天搞定机 ...

  10. 100天搞定机器学习|Day21 Beautiful Soup

    前情回顾 机器学习100天|Day1数据预处理 100天搞定机器学习|Day2简单线性回归分析 100天搞定机器学习|Day3多元线性回归 100天搞定机器学习|Day4-6 逻辑回归 100天搞定机 ...

随机推荐

  1. IO流簡單代碼

    今天測試了一下,在博客園裏HTML源碼編譯器裏寫CSS内部樣式,更新編譯后,内部樣式可用,但是會將寫的内部樣式代碼强制加上代碼注釋進行編譯,有點類似于强制注入.編譯后的效果就是在前面加入了一個空的p標 ...

  2. Java学习笔记之---基础语法

    Java学习笔记之---基础语法 一. Java中的命名规范 (一)包名 由多个单词组成时,所有字母小写(例如:onetwo) (二)类名和接口 由多个单词组成时,所有单词首字母大写(例如:OneTw ...

  3. MyBatis从入门到精通:insert用法

    2.4.1 简单的insert方法 1.接口类中的方法: int insert(SysUser sysUser); 2.映射文件中的修改: <!-- insert标签包含如下的属性: id: p ...

  4. py+selenium遇见IE,元素只有name属性【神奇解决】

    问题:当需要自动化测试某系统,而该系统只兼容IE8,怎么办? IE8的问题:IE8不支持getElementByName,而属性中又没有ID,定位难度较大. IE8以下不兼容getElementByN ...

  5. 简介SoftICE是Compuware NuMega公司1的产品,是目前公认最好的系统级调试工具

    简介SoftICE是Compuware NuMega公司1的产品,是目前公认最好的系统级调试工具

  6. Vincent的城堡

    \(\mathcal{Description}\) \(\mathcal{Solution}\) 除去前k部分,后面的是随便怎么选的所以后面的就是\((n-k)^{n-k}\)种方案 前k部分,由于k ...

  7. DAX 第三篇:过滤器函数

    过滤器函数允许你操纵筛选上下文以创建动态的计算. 一,筛选上下文的构成 DAX中的筛选上下文由三部分构成:交叉过滤构成的过滤,查询上下文中每行的列值构成的过滤,外部切片器构成的显式过滤. 1,交叉过滤 ...

  8. ArcGIS API For JavaScript 开发(三)使用小部件设计页面框架

    其实上一个的鹰眼.比例尺.图例等都是小部件:这篇文章主要是页面布局设计,dojo提供了非常多的小部件,从功能的角度可以分为3大类:表单小部件.布局小部件和应用小部件. 表单小部件于HTML中的表单部件 ...

  9. 二十、Sql Server 保留几位小数的两种做法

    问题: 数据库里的 float momey 类型,都会精确到多位小数.但有时候 我们不需要那么精确,例如,只精确到两位有效数字. 解决: 1. 使用 Round() 函数,如 Round(@num,2 ...

  10. 程序员的长安十二时辰:Java实现从Google oauth2.0认证调用谷歌内部api

    最近公司在做一个app购买的功能,主要思路就是客户在app上购买套餐以后,Google自动推送消息到Java后端,然后Java后端通过订单的token获取订单信息,保存到数据库. Java后端要获取订 ...