ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Jupyter notebook添加内核的正确姿势

2021-04-13 15:02:46  阅读:252  来源: 互联网

标签:Jupyter torch 环境 notebook 内核 base jupyter


  参考资料:

  https://www.jianshu.com/p/fcaec99e7e2a:下面叫他教程A

  如果你在搜索引擎中搜索,“Jupyter notebook添加内核”。你可以搜索到很多篇文章,但是在细节方面,这些文章往往没有点到位。这就导致读者多走很多弯路:比如我。今天是我对Jupyter notebook添加核的第三次尝试,每次都借鉴了网上的教程文章。但是直到最近灵光一现才把这个事情解决,下面教程中的粗体字涉及的部分读者一定要小心。

  首先,conda的其中一个重要的功能是创建虚拟环境:参见:https://www.cnblogs.com/chester-cs/p/11824433.html

  那么好,我现在创建了两个环境,一个是(base)环境,一个是(torch环境),这两个环境有如下差异:

  (base):python 3.6,Pytorch 1.2

  (torch):python 3.8,Pytorch 1.8

  我们首先按照教程A的指引,在 base 环境中安装jupyter notebook,并且将jupyter notebook搭建好:(下图是Jupyter Lab,原理一样)

  注意看,这里和base环境一致,并且,右上角有一个Python 3,这其实就是base环境的内核。如果你点击它,是可以换内核的。现在我们还没有添加内核,当然无核可换。

  我们的目标是:通过新建一个ipynb文件,点击右上角的Python 3更换内核,使得新的ipynb文件里的环境完全和torch环境一致!!!

  注意了,当前这个Jupyter notebook(Jupyter Lab同理)是在基环境(base)里面搭建的,如果我们按照教程A,在torch环境中安装ipykernel,结果会怎样?请看下图:

  此时,我们有两个jupyter了!!!而且明显是两个可执行文件,那么,添加核的操作,到底应该在哪个环境中进行??是在torch环境,还是base环境?

  之前的两次尝试,我都想当然地认为,应当是在base环境中添加kernel,理由是我们当前的jupyter notebook是从base环境中启动的,如果添加内核并在这个jupyter notebook中用,添加肯定要在这个环境中进行啊。

  但是,正确的做法恰好相反,我们应当在torch环境中添加内核。不妨继续按照教程A中的步骤,在torch环境中运行添加核的命令:

python -m ipykernel install --name env_name

  在此处就是

python -m ipykernel install --name torch

  运行后有如下输出:

Installed kernelspec torch in /usr/local/share/jupyter/kernels/torch

  看到这里,有经验的读者应该明白之前我的想法为什么错,而这种做法为什么对了。

  jupyter其实就是为每个环境中的内核都创建一个配置文件,这个配置文件是对所有的环境都可见的,因此 base 环境中的jupyter notebook看到了torch环境的配置文件。直接就可以显示在它的jupyter界面中,不妨试一试,刷新页面就能成功。

   成功创建了一个torch环境的ipynb文件!

标签:Jupyter,torch,环境,notebook,内核,base,jupyter
来源: https://www.cnblogs.com/chester-cs/p/14653149.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有