ML-For-Beginners Jupyter Notebook 单元格运行后不显示输出怎么排查?
ML-For-Beginners Jupyter Notebook 单元格运行后不显示输出怎么排查【免费下载链接】ML-For-Beginners12 weeks, 26 lessons, 52 quizzes, classic Machine Learning for all项目地址: https://gitcode.com/GitHub_Trending/ml/ML-For-Beginners在 ML-For-Beginners 课程里打开任意 lesson 的notebook.ipynb、选中代码块点运行之后最常见的卡点是单元格显示已经执行但看不到print的结果、图表或报错信息。ML-For-Beginners 的官方 TROUBLESHOOTING.md 把 Cells are running but not showing output 单列为一个条目并给出了 kernel、图表显示、Jupyter server 和 VS Code 集成几类对应的处理路径。本文按先跑通一个最小验证单元格再按症状对号入座的顺序给出文档中实际支持的排查步骤课程要求 Python 3.8 及以上并安装 Jupyter这是排查的环境前提。准备用最小单元格确认输出链路是否通在做任何重装、换 kernel 之前先用一个不依赖任何数据或第三方库的单元格做基线测试。这是课程 2-Regression/1-Tools/README.md 里 Exercise - work with a notebook 的标准操作打开本课程的 notebook例如 notebook.ipynb在代码块里输入print(hello notebook)选中运行图标执行课程文档给出的预期输出文档示例hello notebook这一步能显示输出说明 Jupyter 服务、kernel 和渲染链路基本正常问题多半出在原 notebook 的具体单元格内容、执行顺序或图表配置上直接跳到图表类输出不显示一节连最小输出都不显示按下面的顺序继续排查。先判断你属于哪类症状TROUBLESHOOTING.md 把没有输出拆成了几个不同的现象对应不同的处理路径先对号再操作现象文档中的问题条目处理入口单元格显示[*]还在执行中Cells are running but not showing output先等它执行完单元格已结束但输出为空同上Restart Run All重建输出运行后整个 notebook 无响应、提示符卡住Cant run cells检查 Jupyter serverprint 有输出但图表不出现Plots not showing in Jupyter检查%matplotlib inline与plt.show()kernel 反复崩溃重启Kernel keeps dying or restarting逐个单元格定位 内存检查在 VS Code 里 notebook 都打不开VS Code Integration扩展与解释器配置确认单元格是否还在运行再重启内核重建输出按文档 Notebook Cell Issues 条目的顺序操作看单元格的执行标记正在执行的单元格会显示[*]指示符。部分课程 notebook例如时间序列课程要下载和处理数据的步骤执行时间较长先等它跑完再判断如果单元格已执行完仍没有输出执行Kernel → Restart Run All重启 kernel 并重新运行全部单元格让所有输出在干净的 kernel 状态下重建执行后逐个检查print语句应该恢复输出如果只有个别单元格异常回到第 1 步单独重跑该单元格定位。Kernel 排查选错、缺失或无法启动确认当前 kernel 是否正确文档 Kernel Issues 给出的入口是Kernel → Change Kernel打开后确认当前 notebook 绑定的是哪个 Python kernel然后选择正确的 Python 版本。如果列表中缺少你正在用的环境在已激活该虚拟环境的终端中注册python -m ipykernel install --user --nameml-env注册完成后回到 Jupyter 用Kernel → Change Kernel重新选择。kernel 无法启动时重装 ipykernel如果 kernel 根本起不来按文档顺序重装并重新注册# Reinstall ipykernel pip uninstall ipykernel pip install ipykernel # Register the kernel again python -m ipykernel install --user在虚拟环境里注册带显示名的 kernel文档 Environment and Configuration 一节说明包明明装好了、notebook 里却找不到通常是 notebook 没有使用你 venv 里的 kernel。在已激活 venv 的终端中执行# Ensure notebook uses the correct kernel # Install ipykernel in your venv pip install ipykernel python -m ipykernel install --user --nameml-env --display-namePython (ml-env)然后按文档提示# In Jupyter: Kernel → Change Kernel → Python (ml-env)在 Jupyter 中切换到这个 kernel。kernel 反复崩溃、重启文档 Kernel keeps dying or restarting 给出的处理顺序Kernel → RestartKernel → Restart Clear Output清空输出后重来怀疑内存问题时参照运行缓慢与内存不足的处理一节逐个单元格运行Try running cells individually定位是哪段代码导致 kernel 崩溃。图表类输出不显示启用 inline 绘图并显式 showprint正常但 matplotlib 图表不出现时文档 Plotting Issues 条目的解法是在代码中启用 inline 绘图并显式显示# Enable inline plotting %matplotlib inline # Import pyplot import matplotlib.pyplot as plt # Show plot explicitly plt.plot(data) plt.show()课程里的 notebook 本身就是这么写的2-Regression/4-Logistic/README.md 画 ROC 曲线的代码、7-TimeSeries/1-Introduction/README.md 加载电力数据的代码块都以%matplotlib inline开头。如果你的课程单元格缺少这两处中的任何一处magic 或plt.show()图表不会出现在 notebook 里。关于文档中的示例结果Logistic 一课中print(auc)打印出的 AUC 值、diabetes 数据集print(X.shape)的(442, 10)等都是文档示例数值只能用来确认输出区域能正常显示内容不要当作固定预期结果做校验。点 Run 完全没反应先检查 Jupyter server这一类现象文档单独列为 Cant run cells - no response when clicking Run处理顺序是回到启动 Jupyter 的终端确认 Jupyter server 还在运行刷新浏览器页面关闭 notebook 后重新打开重启 Jupyter server。如果问题是 notebook 页面本身打不开Jupyter wont launch in browser文档给了两条路# Try specifying the browser jupyter notebook --browserchrome # Or copy the URL with token from terminal and paste in browser manually # Look for: http://localhost:8888/?token...即指定浏览器启动或从终端复制带 token 的http://localhost:8888/?token...地址手动粘贴到浏览器。在 VS Code 中使用 notebook 的前置检查如果你不是在浏览器而是在 VS Code 里打开 notebook文档 VS Code Integration 针对 Jupyter notebooks wont open in VS Code 给出四步在 VS Code 中安装 Python 扩展安装 Jupyter 扩展CtrlShiftP→ Python: Select Interpreter选择正确的 Python 解释器重启 VS Code。运行缓慢或内核卡死的处理kernel 长时间没有输出、提示符一直卡在[*]时可能不是没输出而是内存或性能问题。文档 Performance Issues 给出的手段Kernel → Restart释放内存关闭不用的 notebook 释放资源开发阶段用更小样本测试df_sample df.sample(n1000)用 IPython magic 找耗时操作%time operation() # 计时单次操作 %timeit operation() # 多次运行计时如果已经报MemoryError或 kernel 在处理数据时死亡文档 Common Error Messages 给出了三类代码级处理# Load data in chunks for chunk in pd.read_csv(large_file.csv, chunksize10000): process(chunk) # Or read only needed columns df pd.read_csv(file.csv, usecols[col1, col2]) # Free memory when done del large_dataframe import gc gc.collect()其中large_file.csv、col1/col2是文档中的占位写法替换为你自己的数据文件与列名。验证与后续动作排查完成后回到最小验证单元格print(hello notebook)应再次显示hello notebook文档示例然后运行目标 lesson 的 notebook确认print输出和图表如课程文档展示过的 scatterplot、ROC 曲线都出现在单元格下方这一步同时验证了 kernel、inline 绘图和输出渲染三条链路。如果按以上路径仍无法解决按 TROUBLESHOOTING.md Still Having Issues? 的建议提交 issue包含操作系统及版本、Python/R 版本、完整报错信息full traceback、复现步骤、已经尝试过的手段。【免费下载链接】ML-For-Beginners12 weeks, 26 lessons, 52 quizzes, classic Machine Learning for all项目地址: https://gitcode.com/GitHub_Trending/ml/ML-For-Beginners创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考