欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python機器學習高數(shù)篇之泰勒公式

 更新時間:2021年08月30日 14:05:09   作者:水龍吟唱  
這篇文章主要介紹了python機器學習高數(shù)篇之函數(shù)極限和導數(shù),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

不少同學一提到泰勒公式,腦海里立馬浮現(xiàn)高大上的定義和長長的公式,令人望而生畏。

實際上,泰勒公式?jīng)]有那么可怕,它是用簡單的多項式來逼近一個光滑的函數(shù),從而近似替代不熟悉的函數(shù)。由于泰勒公式具有將復雜函數(shù)近似成多個冪函數(shù)疊加形式的性質(zhì),可以用它進行比較、求極限、求導、解微分方程等。

我們先來看一下泰勒公式的發(fā)明者,布魯克·泰勒——

在這里插入圖片描述

布魯克·泰勒(Brook Taylor,1685-1732),英國數(shù)學家,牛頓學派最優(yōu)秀的代表人物之一,他于1712年的一封信里首次敘述了泰勒公式。

再來看一下高數(shù)書上對泰勒公式的定義:

在這里插入圖片描述

公式3-5就稱為f(x)在x0處的帶有拉格朗日余項的n階泰勒公式。

初看這個泰勒公式的定義,就覺得恢宏大氣,氣勢磅礴。不過光從泰勒公式的定義,很難直觀看出它是怎么用多項式逼近原函數(shù)的。接下來我們用圖像和圖表來感受一下——

這里我們先列舉出f(x) = cosx在原點的泰勒2階、4階、6階、8階、10階的多項式,并用圖像表示該函數(shù)及其泰勒n階多項式。

在這里插入圖片描述

對應圖像如下,其中黑色線條為原函數(shù)f(x),彩色線條為多項式g(x)??梢钥吹诫S著階數(shù)的增大,多項式在更大范圍內(nèi)越來越逼近原函數(shù)。

在這里插入圖片描述

我們再用python實現(xiàn)函數(shù)y=cosx的泰勒n階多項式,并與y=cosx的實際值進行比較,其中令n=40。

def f_cos(x):
    m = 20+1
    sum = 1.0
    for i in range(1,m): #range函數(shù)取值是左閉右開
        n = 2 * i 
        tmp1,tmp2,tmp3 = 1,1,1
        for j in range(1,i+1):
            tmp1 = -tmp1             
        for j in range(1,n+1):                    
            tmp2 = tmp2*x
            tmp3 = tmp3*j
        sum = sum + tmp1*tmp2/tmp3
    return sum
from numpy import *
for x in range(-20,21):
    print("x = " + str(x))
    print("f_cos(x) = " + str(f_cos(x)))
    print("cos(x) = " + str(cos(x)))

比較自定義的f_cos(x)和numpy庫的cosx的誤差:

x取值 自定義的f_cos(x) numpy庫的cosx 誤差(f_cos(x) - cos(x)) 分析
20 2577.3069 0.4081 2576.8988 誤差非常大
19 305.1701 0.9887 304.1814 誤差較大
18 32.5969 0.6603 31.9366 存在誤差
17 2.6676 -0.2752 2.9428 存在誤差
16 -0.7234 -0.9577 0.2343 存在0.1級誤差
15 -0.7439 -0.7597 0.0158 存在0.01級誤差
14 0.1376 0.1367 0.0009 存在0.0001級誤差
13 0.9075 0.9074 0.0000 精度范圍內(nèi)一致
12 0.8439 0.8439 0.0000 精度范圍內(nèi)一致
11 0.0044 0.0044 0.0000 精度范圍內(nèi)一致
10 -0.8391 -0.8391 0.0000 精度范圍內(nèi)一致
9 -0.9111 -0.9111 0.0000 精度范圍內(nèi)一致
8 -0.1455 -0.1455 0.0000 精度范圍內(nèi)一致
7 0.7539 0.7539 0.0000 精度范圍內(nèi)一致
6 0.9602 0.9602 0.0000 精度范圍內(nèi)一致
5 0.2837 0.2837 0.0000 精度范圍內(nèi)一致
4 -0.6536 -0.6536 0.0000 精度范圍內(nèi)一致
3 -0.9900 -0.9900 0.0000 精度范圍內(nèi)一致
2 -0.4161 -0.4161 0.0000 精度范圍內(nèi)一致
1 0.5403 0.5403 0.0000 精度范圍內(nèi)一致
0 1.0000 1.0000 0.0000 精度范圍內(nèi)一致

由于f(x) = cosx函數(shù)關于y軸對稱,這里只列舉出了x軸右半部分[0,20]的范圍,x軸左半部分的結(jié)果與右半部分結(jié)果相同。

在[0,20]范圍內(nèi),當x=20時,二者的誤差非常大。隨著x的減小,二者的誤差也在逐漸減小。在[0,13]范圍內(nèi),二者在精度范圍內(nèi)完全一致,幾乎零誤差。

大家可以嘗試一下,把n的值調(diào)大,這個精度一致的范圍會變大。例如此例若n=30,即y=cosx的泰勒30階多項式,則在[-20,20]范圍內(nèi),二者精度都完全一致。感興趣的同學可以運用同樣的方法,分析一下其他函數(shù)。

再試著寫出函數(shù)y=sinx的泰勒n階多項式的python程序,其中n=19。

def f_sin(x):
    m = 10+1
    sum = 0.0
    for i in range(1,m):
        n = 2 * i - 1     
        tmp1,tmp2,tmp3 = 1,1,1
        for j in range(1,i):
            tmp1 = -tmp1  
        for j in range(1,n+1):          
            tmp2 = tmp2*x
            tmp3 = tmp3*j
        sum = sum + tmp1*tmp2/tmp3 
    return sum
from numpy import *
for x in range(-20,21):
    print("x = " + str(x))
    print("f_sin(x) = " + str(f_sin(x)))
    print("sin(x) = " + str(sin(x)))

后續(xù)會繼續(xù)增加一些函數(shù)的泰勒n階多項式python程序(可能會偷懶)。

最后推薦一個比較好用的在線畫函數(shù)的工具Desmos:

https://www.desmos.com/calculator?lang=zh-CN

簡易教程:

https://www.ravenxrz.ink/archives/27d14722.html

還可以用著名的心形線畫個愛心哦:

在這里插入圖片描述

到此這篇關于python機器學習高數(shù)篇之泰勒公式的文章就介紹到這了,更多相關python泰勒公式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python爬取一組小姐姐圖片實例

    python爬取一組小姐姐圖片實例

    大家好,本篇文章主要講的是python爬取一組小姐姐圖片實例,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • 解決python3.6 右鍵沒有 Edit with IDLE的問題

    解決python3.6 右鍵沒有 Edit with IDLE的問題

    這篇文章主要介紹了解決python3.6 右鍵沒有 Edit with IDLE的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • pytorch 實現(xiàn)計算 kl散度 F.kl_div()

    pytorch 實現(xiàn)計算 kl散度 F.kl_div()

    這篇文章主要介紹了pytorch 實現(xiàn)計算 kl散度 F.kl_div(),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 解決jupyter notebook 出現(xiàn)In[*]的問題

    解決jupyter notebook 出現(xiàn)In[*]的問題

    這篇文章主要介紹了解決jupyter notebook 出現(xiàn)In[*]的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python中關于range()函數(shù)反向遍歷的幾種表達

    python中關于range()函數(shù)反向遍歷的幾種表達

    這篇文章主要介紹了python中關于range()函數(shù)反向遍歷的幾種表達,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Python關于print的操作(倒計時、轉(zhuǎn)圈顯示、進度條)

    Python關于print的操作(倒計時、轉(zhuǎn)圈顯示、進度條)

    這篇文章主要介紹了Python關于print的操作(倒計時、轉(zhuǎn)圈顯示、進度條),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 如何使用Python數(shù)據(jù)清洗庫

    如何使用Python數(shù)據(jù)清洗庫

    數(shù)據(jù)清洗是數(shù)據(jù)處理過程中至關重要的一部分,本文主要介紹了如何使用Python數(shù)據(jù)清洗庫,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • python實現(xiàn)對excel進行數(shù)據(jù)剔除操作實例

    python實現(xiàn)對excel進行數(shù)據(jù)剔除操作實例

    python在數(shù)據(jù)分析這方便的介紹應該不用多說了,下面這篇文章主要給大家介紹了關于利用python實現(xiàn)對excel進行數(shù)據(jù)剔除操作的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-12-12
  • Python利用wxPython制作股票價格查詢工具

    Python利用wxPython制作股票價格查詢工具

    在當今信息時代,金融市場是一個引人注目的話題。本文將介紹如何使用 Yahoo Finance API、yfinance 模塊和 wxPython 庫來創(chuàng)建一個簡單的全球股市實時價格查詢工具,希望大家能夠喜歡
    2023-05-05
  • 談談如何手動釋放Python的內(nèi)存

    談談如何手動釋放Python的內(nèi)存

    Python不會自動清理這些內(nèi)存,這篇文章主要介紹了談談如何手動釋放Python的內(nèi)存,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-12-12

最新評論