jupyternotebook运行python_jupyter notebook参数化运行python方式

Updates

(2019.8.14 19:53)吃饭前用这个方法实战了一下,吃完回来一看好像不太行:跑完一组参数之后,到跑下一组参数时好像没有释放之占用的 GPU,于是 notebook 上的结果,后面好几条都报错说 cuda out of memory。

现在改成:将 notebook 中的代码写在一个 python 文件中,然后用命令行运行这个文件,比如:

# autorun.py

import os

# print(os.getcwd())

over = [ # 之前手工改参数跑完的参数组合

[0, 1, 1], [0, 1, 2], [0, 1, 3],

[0, 2, 1],

[1, 0, 1],

[1, 2, 1]

]

for alpha in range(1, 4, 1):

for beta in range(3):

for gamma in range(3):

if [alpha, beta, gamma] in over:

continue

os.system(f'python main.py --alpha {alpha} --beta {beta} --gamma {gamma}')

这里的 main.py 是训练用的主文件。改在 py 里用 os.system 跑,希望跑一组参数之后完会自动释放资源再跑下一组(?)

Notes

有多组参数组合需要尝试,不想每组参数都人工修改 python 代码,再在 notebook 中 %run 它。

python 参数通过的 argparse 接收,在 notebook 中写个多重循环遍历参数组合传给 python 程序自动运行。

记录一个简例。

Codes

test_dir

|- test.py

|- test.ipynb

in py file

# test.py

import argparse

parser = argparse.ArgumentParser()

parser.add_argument('--number', type=int, default=0, help='number')

parser.add_argument('--string', type=str, default='abc', help='string')

args = parser.parse_args()

print('number:', args.number, type(args.number))

print('string:', args.string, type(args.string))

in notebook

注意传参数时 $ 的使用

# test.ipynb

for i in range(3):

for s in ('a', 'b', 'c'):

%run test.py --number $i --string $s

补充知识:Jupyter Notebook出现kernel error FileNotFoundError: [WinError 2] 系统找不到指定的文件

Jupyter Notebook出现kernel error

5kr5t45p0eg.jpg

conda create -n py36 --clone root

当时用Anaconda克隆本地的环境root到自己创建的py36环境,由于克隆完成后我又更改了虚拟环境名称,所以导致启动

jupyter notebook 进入文件是不能找到连接文件。

File”//anaconda/lib/python2.7/site-packages/jupyter_client/manager.py”, line 190, in _launch_kernel

return launch_kernel(kernel_cmd, **kw)

File “//anaconda/lib/python2.7/site-packages/jupyter_client/launcher.py”, line 123, in launch_kernel

proc = Popen(cmd, **kwargs)

File “//anaconda/lib/python2.7/subprocess.py”, line 710, in init

errread, errwrite)

File “//anaconda/lib/python2.7/subprocess.py”, line 1335, in _execute_child

raise child_exception

OSError: [Errno 2] No such file or director

解决办法

首先在cmd 使用jupyter kernelspec list查看安装的内核和位置

进入安装内核目录打开kernel.jason文件,查看Python编译器的路径是否正确

dgiyjjmuzfz.jpg

如果不正确python -m ipykernel install --user重新安装内核,如果有多个内核,如果你使用conda create -n python2 python=2,为Python2.7设置conda变量,那么在anacoda下使用activate pyhton2切换python环境,重新使用python -m ipykernel install --user安装内核.(通用情况)

或者直接进入kernel.json里更改py36(这是属于我的情况)

重启jupyter notebook即可。

以上这篇jupyter notebook参数化运行python方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

本文标题: jupyter notebook参数化运行python方式

本文地址: http://www.cppcns.com/jiaoben/python/307018.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490441.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

重磅|PPT讲解机器人产业发展现状与未来展望,重磅资料

来源:机器人大讲堂前段时间咱们分享过王喜文博士做的关于《5G》的PPT,大家反映做的很棒,最近王喜文博士在机械工业出版社又出了一本新书:智能:《新一代人工智能发展规划》解读,ISBN:978-7-111-6…

中国之光!中国最酷黑科技30强名单公布!

来源:智慧芽当前的中国正在迎来一个科技大爆发的时代,科技成果输出的速度远远快于经济成长的速度。中国现在每年产出科技成果,居世界第二,且正在高速接近美国。最好的一个证明就是含金量相对较高的PCT国际专利申请量,2…

python为什么没有指针_Python 没有指针,如何解算法题?

👆“Python猫” ,一个值得加星标的公众号 花下猫语: 今天一大早,读者群里又讨论了 Python 的“指针”问题。之前在公众号里发布过樱雨楼小姐姐的《对比 C 和 Python,谈谈指针与引用》,它从概念上有比较清晰…

深度 | 刘群:基于深度学习的自然语言处理,边界在哪里?

来源: AI科技评论 编辑 | Camel四大边界:数据边界、语义边界、符号边界和因果边界当前,深度学习之于自然语言处理,有其局限性。那么它所能起作用的边界在哪里呢?对此问题,我们应当深思。近日,在…

html border阴影效果_【开发小技巧】026—如何使用HTML和CSS创建浮动框阴影效果?...

英文 | https://www.geeksforgeeks.org/how-to-create-floating-box-effect-using-html-and-css/?refrp浮动框效果是自定义框阴影技术的经典示例。在这种技术中,我们无需使用CSS提供的box-shadow属性即可创建逼真的阴影效果。实现方法:在选择器之后使用…

NLP这两年:15个预训练模型对比分析与剖析

来源 | 知乎前言在之前写过的《NLP的游戏规则从此改写?从word2vec, ELMo到BERT》一文中,介绍了从word2vec到ELMo再到BERT的发展路径。而在BERT出现之后的这大半年的时间里,模型预训练的方法又被Google、Facebook、微软、百度、OpenAI等极少数…

多余的读写端口什么时候会对程序造成影响_程序员需要了解的硬核知识之控制硬件...

应用和硬件的关系我们作为程序员一般很少直接操控硬件,我们一般通过 C、Java 等高级语言编写的程序起到间接控制硬件的作用。所以大家很少直接接触到硬件的指令,硬件的控制是由 Windows 操作系统 全权负责的。你一定猜到我要说什么了,没错&am…

直击2019WAIC丨李德毅:人工智能是脱离意识的工具,需要约束的是人类自己

转自 上观新闻中国工程院院士、中国人工智能学会理事长李德毅在2019世界人工智能大会“科学前沿”主论坛上表示,人工智能就是人类智能的体外延伸,可以脱离意识而存在,应该将其看作一种工具。李德毅认为,意识和智能相互之间有很多典…

matplotlib给坐标轴特定的位置加上文字

比如我想在横坐标0和1这两个位置分别用文字“y1”和“y2”代替,即实现以下这种效果: plt.xlim([-1, 2]) plt.xticks([0, 1], ["y1", "y2"])

K-Means ++ 算法

Kmeans算法的缺陷 • 聚类中心的个数K 需要事先给定,但在实际中这个 K 值的选定是非常难以估计的,很多时候,事先并不知道给定的数据集应该分成多少个类别才最合适• Kmeans需要人为地确定初始聚类中心,不同的初始聚类中心可能导致…

螺旋桨设计软件_我们又双叒叕获得一项国家软件著作权!

近日中建三局一公司深圳分公司岗厦天元花园项目“实时监测数据可视化与BIM集成展示平台(简称监测数据可视化集成展示平台)V1.0”荣获国家软件著作权该项成果由岗厦天元花园项目与哈尔滨工业大学深圳校区组成的科研团队共同完成该平台能收集钢结构塔冠的水平位移、应变、温度、风…

计算机界和数学界,也需要一个“希波克拉底誓言”

汉娜弗莱: “未来不会就这么来到我们眼前,我们一直在塑造它。”摄影:Paul Wilkinson | The Guardian来源 The Guardian翻译 刘勤编辑 魏潇一位学界的领军人物表示,数学家、工程师以及科学家们应通过一个计算机界的“希波克拉底…

WCF技术实现基于角色的访问控制

第一次写,小紧张! 即将毕业了,现在将我毕业设计中用到的小的编程技术以及自己的一些理解分享出来,希望可以做点小贡献。 首先要感谢网上各路大神无私的分享,没有你们,就没有我的收获。 在大四之前&#xff…

double类型占几个字节_MongoDB 中的数据类型

1 JSON 与 BSONMongoDB 是文档数据库,什么是文档呢?如果你看了之前的文章相信你已经有些概念了,这里的文档不是指 Word、PDF 这样的文档,而是类似 JSON(JavaScript Object Notation) 的对象,由不同的键以及对应的值组成…

李德毅院士:未来交通——自动驾驶与智能网联

图片来源:华龙网转自:主线科技(trunktech)近日,中国国际智能产业博览会(智博会)在重庆召开。中国人工智能学会理事长李德毅院士在智博会“人工智能产业发展合作论坛”上,发表了主题为…

C++输入一个整数后接着输入字符串

当我们输入整数,按回车,实际上输入的是:整数和换行符号(\n)。cin把整数读进了,但是换行符号没有读,因此如果接下来输入字符串,即使用cin.getline,首先会读入\n。然后就直接结束了。 下面这个程序需要输入四…

elasticsearch 查看索引_ElasticSearch 索引基本操作

松哥原创的 Spring Boot 视频教程已经杀青,感兴趣的小伙伴戳这里-->Spring BootVue微人事视频教程ElasticSearch 系列第五篇,和大家聊一聊索引的基本操作,前四篇传送门:打算出一个 ElasticSearch 教程,谁赞成&#…

协作机器人鼻祖“重生”,卷土重来的Rethink能否给行业注入一针强心剂?

来源:机器人大讲堂十年之前,他横空出世,创新颠覆 2008年,美国机器人制造专家,麻省理工学院计算机科学与人工智能实验室创始主任罗德尼布鲁克斯创建了Rethink Robotics公司,他将基于行为的人工智能理论和其在…

HTML基础做出属于自己的完美网页

HTML HTML解释: HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,他是一种制作万维网页面标准语言(标记)。相当于定义统一的规则(W3C),大家都来遵守他,这样就可以让浏…