最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談matplotlib 繪制梯度下降求解過程

 更新時間:2020年07月12日 11:06:46   作者:Michael阿明  
這篇文章主要介紹了淺談matplotlib 繪制梯度下降求解過程,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

機器學(xué)習(xí)過程中經(jīng)常需要可視化,有助于加強對模型和參數(shù)的理解。

下面對梯度下降過程進行動圖演示,可以修改不同的學(xué)習(xí)率,觀看效果。

import numpy as np
import matplotlib.pyplot as plt
from IPython import display

X = 2*np.random.rand(100,1)
y = 4+3*X+np.random.randn(100,1) # randn正態(tài)分布
X_b = np.c_[np.ones((100,1)),X] # c_行數(shù)相等,左右拼接

eta = 0.1 # 學(xué)習(xí)率
n_iter = 1000 # 迭代次數(shù)
m = 100 # 樣本點個數(shù)
theta = np.random.randn(2,1) # 參數(shù)初始值

plt.figure(figsize=(8,6))
mngr = plt.get_current_fig_manager() # 獲取當(dāng)前figure manager
mngr.window.wm_geometry("+520+520") # 調(diào)整窗口在屏幕上彈出的位置,注意寫在打開交互模式之前
# 上面固定窗口,方便screentogif定位錄制,只會這種弱弱的方法
plt.ion()# 打開交互模式
plt.rcParams["font.sans-serif"] = "SimHei"# 消除中文亂碼

for iter in range(n_iter):
  plt.cla() # 清除原圖像

  gradients = 2/m*X_b.T.dot(X_b.dot(theta)-y)
  theta = theta - eta*gradients
  X_new = np.array([[0],[2]])
  X_new_b = np.c_[np.ones((2,1)),X_new]
  y_pred = X_new_b.dot(theta)

  plt.axis([0,2,0,15])
  plt.plot(X,y,"b.")
  plt.plot(X_new,y_pred,"r-")
  plt.title("學(xué)習(xí)率:{:.2f}".format(eta))
  plt.pause(0.3) # 暫停一會
  display.clear_output(wait=True)# 刷新圖像


plt.ioff()# 關(guān)閉交互模式  
plt.show()


學(xué)習(xí)率:0.1,較合適


學(xué)習(xí)率:0.02,收斂變慢了


學(xué)習(xí)率:0.45,在最佳參數(shù)附近震蕩


學(xué)習(xí)率:0.5,不收斂

到此這篇關(guān)于淺談matplotlib 繪制梯度下降求解過程的文章就介紹到這了,更多相關(guān)matplotlib 梯度下降內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python?if?else條件語句形式詳解

    Python?if?else條件語句形式詳解

    這篇文章主要介紹了Python?if?else條件語句形式詳解,在?Python?中,可以使用?if?else?語句對條件進行判斷,然后根據(jù)不同的結(jié)果執(zhí)行不同的代碼,這稱為選擇結(jié)構(gòu)或者分支結(jié)構(gòu),接下來小編就根據(jù)情況的不同介紹if?else條件語句形式的不同,需要的朋友可以參考一下
    2022-03-03
  • 將 Ubuntu 16 和 18 上的 python 升級到最新 python3.8 的方法教程

    將 Ubuntu 16 和 18 上的 python 升級到最新 python3.8 的方法教程

    這篇文章主要介紹了如何將 Ubuntu 16 和 18 上的 python 升級到最新 3.8 版,本文通過實例代碼相結(jié)合給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • Python常用工具之音頻調(diào)整音量

    Python常用工具之音頻調(diào)整音量

    這篇文章主要介紹一個可以將音頻提升音量的python常用工具,代碼具有一定的學(xué)習(xí)價值,感興趣的小伙伴可以了解一下
    2021-11-11
  • python從子線程中獲得返回值的方法

    python從子線程中獲得返回值的方法

    今天小編就為大家分享一篇python從子線程中獲得返回值的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • django redis的使用方法詳解

    django redis的使用方法詳解

    本文主要介紹了django redis的使用方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 最新評論

    樟树市| 抚远县| 个旧市| 铁岭市| 同江市| 咸丰县| 平乡县| 仁化县| 包头市| 连城县| 上饶县| 堆龙德庆县| 板桥市| 伊川县| 扎鲁特旗| 收藏| 布尔津县| 龙门县| 十堰市| 沭阳县| 青河县| 宣汉县| 南宫市| 康平县| 保靖县| 永福县| 平远县| 河池市| 阳东县| 尉氏县| 陇南市| 北辰区| 宽甸| 炎陵县| 宜春市| 三穗县| 枣阳市| 体育| 民权县| 岐山县| 静安区|