簡體   English   中英

Google Colab - 重復運行時斷開連接

[英]Google Colab - Repeat Runtime Disconnect

我試圖通過 Stack Overflow 查看此問題,但無法找到針對我的具體情況的任何解決方案,如下所示(我也是 python 菜鳥):

**我正在使用Google Colab(免費)。

我正在嘗試按照我在網上找到的教程在徑向圖中可視化一些數據(全球溫度)。 一切似乎都進展順利,直到最終的 animation 被生產出來——最初它很好,除了這個警告:

Animation大小已經達到22083561字節,超過了20971520.0的限制。 如果您確定要嵌入更大的 animation,請將 animation.embed_limit rc 參數設置為更大的值(以 MB 為單位)。 這個和更多的幀將被丟棄。

我查了一下這個信息位/錯誤,發現下面的代碼會增加限制:

from matplotlib import rcParams
rcParams['animation.embed_limit'] = 2**128

從那里開始,在運行相應的 output 代碼后,我的會話在 1 分鍾左右斷開連接。 它需要重新啟動運行時並將 animation.embed_limit 設置為 20,以便我返回到輸出不完整的 animation 的半成功 state。

對此的任何幫助將不勝感激。

代碼如下

# Drive Mounting
from google.colab import drive
drive.mount('/content/drive')

# Library Imports
import pandas as pd
from matplotlib import pyplot as plt
from matplotlib.animation import FuncAnimation
from matplotlib import rc
rc('animation', html='jshtml')
from matplotlib import rcParams
rcParams['animation.embed_limit'] = 2**128
import numpy as np

# Raw Data Import
hadcrut = pd.read_csv(
    '/content/drive/MyDrive/HadCRUT.4.6.0.0.monthly_ns_avg.txt',
    delim_whitespace=True,
    usecols=[0, 1],
    header=None)

# Data Prep
hadcrut['year'] = hadcrut.iloc[:, 0].apply(lambda x: x.split("/")[0]).astype(int)
hadcrut['month'] = hadcrut.iloc[:, 0].apply(lambda x: x.split("/")[1]).astype(int)
hadcrut = hadcrut.rename(columns={1: 'value'})
hadcrut = hadcrut.iloc[:, 1:]
hadcrut = hadcrut.drop(hadcrut[hadcrut['year'] == 2018].index)
hadcrut = hadcrut.set_index(['year', 'month'])
hadcrut -= hadcrut.loc[1850:1900].mean()
hadcrut = hadcrut.reset_index()
years = hadcrut['year'].unique()

fig = plt.figure(figsize=(14,14))
ax1 = plt.subplot(111, projection='polar')

ax1.axes.get_yaxis().set_ticklabels([])
ax1.axes.get_xaxis().set_ticklabels([])
fig.set_facecolor('#323331')

full_circle_thetas = np.linspace(0, 2*np.pi, 1000)
blue_line_one_radii = [1.0]*1000
red_line_one_radii = [2.5]*1000
red_line_two_radii = [3.0]*1000

ax1.plot(full_circle_thetas, blue_line_one_radii, c='blue')
ax1.plot(full_circle_thetas, red_line_one_radii, c='red')
ax1.plot(full_circle_thetas, red_line_two_radii, c='red')

ax1.text(np.pi/2, 1.0, '0.0 C', color='blue', ha='center', fontdict={'fontsize': 20})
ax1.text(np.pi/2, 2.5, '1.5 C', color='red', ha='center', fontdict={'fontsize': 20})
ax1.text(np.pi/2, 3.0, '2.0 C', color='red', ha='center', fontdict={'fontsize': 20})


def update(i):
    year = years[i]
    r = hadcrut[hadcrut['year'] == year]['value'] + 1

    theta = np.linspace(0, 2*np.pi, 12)
    ax1.grid(False)
    ax1.set_title('Global Temperature Change (1850-2017)', color='white', fontdict={'fontsize': 20})

    ax1.set_ylim(0, 3.25)
    ax1.set_facecolor('#000100')   
    ax1.plot(theta, r, c=plt.cm.viridis(i*2))
    return ax1

anim = FuncAnimation(fig, update, frames=len(years), interval = 50, repeat_delay = 1000)

anim

這是從重啟到斷開連接的運行時日志

時間戳、級別、消息“2022 年 4 月 16 日下午 4:18:40”,信息,丟棄 d5ff7869-edb3-4e31-a38e-20e2c655f7d2:c7df80dc0b1b4ae7959d1ea88b633edb 的 3 條緩沖消息“2022 年 4 月 16 日下午 4:4:4” ,信息,適應 kernel d5ff7869-edb3-4e31-a38e-20e2c655f7d2 的協議 v5.1 “2022 年 4 月 16 日,下午 4:18:38”,警告,tornado.websocket.WebSocketClosedError “Apr 1226, 4:20 :38 PM”,警告,引發 WebSocketClosedError() “2022 年 4 月 16 日,下午 4:18:38”,警告,“文件”“/usr/local/lib/python3.7/dist-packages/tornado/websocket。 py"", line 876, in wrapper" "Apr 16, 2022, 4:18:38 PM", WARNING, yielded = self.gen.throw(*exc_info) "Apr 16, 2022, 4:18:38 PM" ,警告,“文件”“/usr/local/lib/python3.7/dist-packages/tornado/gen.py””,第 1141 行,運行中”“2022 年 4 月 16 日,下午 4:18:38”, WARNING,Traceback (最近調用 last): "Apr 16, 2022, 4:18:38 PM",WARNING,"處理上述異常時,發生另一個異常:" "Apr 16, 2022, 4:18:38 PM”,警告,tornado.iostream.StreamClosedError:Stream已關閉“2022 年 4 月 16 日下午 4:18:38”,警告,value = future.result()“2022 年 4 月 16 日下午 4:18:38”,警告,“文件”“/usr/local/ lib/python3.7/dist-packages/tornado/gen.py"",第 1133 行,運行中""2022 年 4 月 16 日,下午 4:18:38",警告,yield fut"2022 年 4 月 16 日,4:下午 18 點 38 分”,警告,“文件”“/usr/local/lib/python3.7/dist-packages/tornado/websocket.py””,第 874 行,在包裝器中”“2022 年 4 月 16 日,4:18 :38 PM",WARNING,Traceback(最近一次調用最后):"Apr 16, 2022, 4:18:38 PM",WARNING,future: "Apr 16, 2022, 4:18:38 PM",WARNING,ERROR :asyncio:Future exception was never retrieved "Apr 16, 2022, 4:18:38 PM",INFO, starting buffering for d5ff7869-edb3-4e31-a38e-20e2c655f7d2:c7df80dc0b1b4ae7959d1ea88b633edb "2022 年 4 月 16 日,下午 5:16 “,信息,為 kernel d5ff7869-edb3-4e31-a38e-20e2c655f7d2 適應協議 v5.1 “2022 年 4 月 16 日下午 4:16:33”,信息,Kernel 開始:d5ff7869-edb3-4e728d-a325f7d2 2022 年 4 月 16 日,下午 4:13:35",信息,使用 Control-C 停止此服務器並關閉所有內核(兩次到 s 基普確認)。 "2022 年 4 月 16 日,下午 4:13:35",信息,http://172.28.0.12:9000/ "2022 年 4 月 16 日,下午 4:13:35",信息,Jupyter 筆記本運行於:" 2022 年 4 月 16 日下午 4:13:35",信息,0 個活動內核 "2022 年 4 月 16 日,下午 4:13:35",信息,使用 Control-C 停止此服務器並關閉所有內核(兩次以跳過確認)。 "2022 年 4 月 16 日,下午 4:13:35",信息,從本地目錄提供筆記本:/ "2022 年 4 月 16 日,下午 4:13:35",信息,http://172.28.0.2:9000/ " 2022 年 4 月 16 日,下午 4:13:35",信息,Jupyter Notebook 運行於:"2022 年 4 月 16 日,下午 4:13:35",信息,0 個活動內核“2022 年 4 月 16 日,4:13 :35 PM",INFO,google.colab 服務器擴展已初始化。 “2022 年 4 月 16 日,下午 4:13:35”,信息,從本地目錄提供筆記本:/“2022 年 4 月 16 日,下午 4:13:35”,信息,google.colab 服務器擴展已初始化。 “2022 年 4 月 16 日,下午 4:13:35”,警告,/root/.jupyter/jupyter_notebook_config.json “2022 年 4 月 16 日,下午 4:13:35”,警告,/root/.jupyter/jupyter_notebook_config.json “2022 年 4 月 16 日,下午 4:13:35”,警告,/root/.local/etc/jupyter/jupyter_notebook_config.json “2022 年 4 月 16 日,下午 4:13:35”,警告,/root/.local /etc/jupyter/jupyter_notebook_config.json“2022 年 4 月 16 日下午 4:13:35”,警告,/usr/etc/jupyter/jupyter_notebook_config.json“2022 年 4 月 16 日下午 4:13:35”,警告, /usr/etc/jupyter/jupyter_notebook_config.json“2022 年 4 月 16 日下午 4:13:35”,警告,/usr/local/etc/jupyter/jupyter_notebook_config.json“2022 年 4 月 16 日下午 4:13:35 “,警告,/usr/local/etc/jupyter/jupyter_notebook_config.d/panel-client-jupyter.json “2022 年 4 月 16 日,下午 4:13:35”,警告,/usr/local/etc/jupyter/jupyter_notebook_config .json“2022 年 4 月 16 日下午 4:13:35”,警告,/usr/local/etc/jupyter/jupyter_notebook_config.d/panel-client-jupyter.8817956304058 8 “2022 年 4 月 16 日,下午 4:13:35”,警告,/etc/jupyter/jupyter_notebook_config.json “2022 年 4 月 16 日,下午 4:13:35”,警告,/etc/jupyter/jupyter_notebook_config.json “ 2022 年 4 月 16 日,下午 4:13:35",信息,將筆記本服務器 cookie 秘密寫入 /root/.local/share/jupyter/runtime/notebook_cookie_secret "2022 年 4 月 16 日,下午 4:13:35",警告, FutureWarning) "Apr 16, 2022, 4:13:35 PM",WARNING,"/usr/local/lib/python3.7/dist-packages/traitlets/traitlets.py:2205: FutureWarning: Supporting extra quotes around strings 是在 traitlets 5.0 中棄用。 如果你需要 traitlets >=5,你可以使用 '/content' 而不是 '""/content""'。" "2022 年 4 月 16 日,下午 4:13:35",警告,FutureWarning) "2022 年 4 月 16 日,下午 4:13:35",警告,"/usr/local/lib/python3.7/dist-packages/traitlets/traitlets.py:2205:FutureWarning:在 traitlets 5.0 中不推薦使用字符串周圍的額外引號。 如果你需要 traitlets >=5,你可以使用 '/' 而不是 '""/""'。" "Apr 16, 2022, 4:13:35 PM",WARNING, FutureWarning) "Apr 16, 2022, 4:下午 13:35",警告,"/usr/local/lib/python3.7/dist-packages/traitlets/traitlets.py:2205:FutureWarning:在 traitlets 5.0 中不推薦使用字符串周圍的額外引號。 如果你需要 traitlets >=5,你可以使用 '172.28.0.12' 而不是 '""172.28.0.12""'。" "Apr 16, 2022, 4:13:35 PM",INFO,Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret "2022 年 4 月 16 日,下午 4:13:35",警告,FutureWarning) "2022 年 4 月 16 日,下午 4:13:35",警告,"/usr /local/lib/python3.7/dist-packages/traitlets/traitlets.py:2205: FutureWarning: 在 traitlets 5.0 中不推薦使用字符串周圍的額外引號。 如果你需要 traitlets >=5,你可以使用 '/content' 而不是 '""/content""'。" "2022 年 4 月 16 日,下午 4:13:35",警告,FutureWarning) "2022 年 4 月 16 日,下午 4:13:35",警告,"/usr/local/lib/python3.7/dist-packages/traitlets/traitlets.py:2205:FutureWarning:在 traitlets 5.0 中不推薦使用字符串周圍的額外引號。 如果你需要 traitlets >=5,你可以使用 '/' 而不是 '""/""'。" "Apr 16, 2022, 4:13:35 PM",WARNING, FutureWarning) "Apr 16, 2022, 4:下午 13:35",警告,"/usr/local/lib/python3.7/dist-packages/traitlets/traitlets.py:2205:FutureWarning:在 traitlets 5.0 中不推薦使用字符串周圍的額外引號。 如果你需要 traitlets >=5,你可以使用 '172.28.0.2' 而不是 '""172.28.0.2""'。”

任何幫助將不勝感激。

在@r-beginners 的幫助下,我能夠通過將圖像大小 (fig) 減小到大約 (8,8) 來在一定程度上解決這個問題,這使我能夠完全無誤地渲染它。

之前:

fig = plt.figure(figsize=(14,14))

后:

fig = plt.figure(figsize=(8,8))

老實說,考慮到圖形的簡單程度,我不認為該過程會遇到資源牆。 然而,在圖形的計算和創建中可能涉及的比我想象的要多得多,而且我的天真可能會持續下去。

不過,希望這對其他人有幫助!

tl;dr - output 文件大小太大,假設使用 Google Colab(免費版)限制,減少 output 文件大小,成功

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM