keras tensorflow 实现在python下多进程运行


Posted in Python onFebruary 06, 2020

如下所示:

from multiprocessing import Process
import os
 
 
def training_function(...):
 import keras # 此处需要在子进程中
 ...
 
if __name__ == '__main__':
 p = Process(target=training_function, args=(...,))
 p.start()

原文地址:https://stackoverflow.com/questions/42504669/keras-tensorflow-and-multiprocessing-in-python

1、DO NOT LOAD KERAS TO YOUR MAIN ENVIRONMENT. If you want to load Keras / Theano / TensorFlow do it only in the function environment. E.g. don't do this:

import keras
 
def training_function(...):
 ...

but do the following:

def training_function(...):
 import keras
 ...

Run work connected with each model in a separate process: I'm usually creating workers which are making the job (like e.g. training, tuning, scoring) and I'm running them in separate processes. What is nice about it that whole memory used by this process is completely freedwhen your process is done. This helps you with loads of memory problems which you usually come across when you are using multiprocessing or even running multiple models in one process. So this looks e.g. like this:

def _training_worker(train_params):
 import keras
 model = obtain_model(train_params)
 model.fit(train_params)
 send_message_to_main_process(...)
 
def train_new_model(train_params):
 training_process = multiprocessing.Process(target=_training_worker, args = train_params)
 training_process.start()
 get_message_from_training_process(...)
 training_process.join()

Different approach is simply preparing different scripts for different model actions. But this may cause memory errors especially when your models are memory consuming. NOTE that due to this reason it's better to make your execution strictly sequential.

以上这篇keras tensorflow 实现在python下多进程运行就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现发送email的几种常用方法
Aug 18 Python
利用Python绘制数据的瀑布图的教程
Apr 07 Python
python3对拉勾数据进行可视化分析的方法详解
Apr 03 Python
python scrapy爬虫代码及填坑
Aug 12 Python
Python高级特性 切片 迭代解析
Aug 23 Python
Python3.7 读取 mp3 音频文件生成波形图效果
Nov 05 Python
python列表推导式入门学习解析
Dec 02 Python
python分别打包出32位和64位应用程序
Feb 18 Python
Python库skimage绘制二值图像代码实例
Apr 10 Python
Django REST 异常处理详解
Jul 15 Python
python实现测试工具(二)——简单的ui测试工具
Oct 19 Python
Python实现数据的序列化操作详解
Jul 07 Python
Scrapy框架实现的登录网站操作示例
Feb 06 #Python
Tensorflow 多线程设置方式
Feb 06 #Python
Scrapy框架基本命令与settings.py设置
Feb 06 #Python
python opencv圆、椭圆与任意多边形的绘制实例详解
Feb 06 #Python
Python输出指定字符串的方法
Feb 06 #Python
python实现简单飞行棋
Feb 06 #Python
python实现飞行棋游戏
Feb 05 #Python
You might like
php 模拟 asp.net webFrom 按钮提交事件的思路及代码
2013/12/02 PHP
PHP自毁程序(慎用)
2015/07/09 PHP
Yii中的relations数据关联查询及统计功能用法详解
2016/07/14 PHP
PHP实现的贪婪算法实例
2017/10/17 PHP
PHP删除字符串中非字母数字字符方法总结
2019/01/20 PHP
五个jQuery图片画廊插件 推荐
2011/05/12 Javascript
Ext JS 4实现带week(星期)的日期选择控件(实战二)
2013/08/21 Javascript
JS获取几种URL地址的方法小结
2014/02/26 Javascript
jQuery 和 CSS 的文本特效插件集锦
2014/12/12 Javascript
JS实现很实用的对联广告代码(可自适应高度)
2015/09/18 Javascript
jQuery中的each()详细介绍(推荐)
2016/05/25 Javascript
JS实现将数字金额转换为大写人民币汉字的方法
2016/08/02 Javascript
JavaScript实现横线提示输入验证码随输入验证码输入消失的方法
2016/09/24 Javascript
关于JavaScript中forEach和each用法浅析
2017/07/27 Javascript
详解Vue路由钩子及应用场景(小结)
2017/11/07 Javascript
vue 输入电话号码自动按3-4-4分割功能的实现代码
2020/04/30 Javascript
vue键盘事件点击事件加native操作
2020/07/27 Javascript
python网络编程学习笔记(六):Web客户端访问
2014/06/09 Python
Python简单获取自身外网IP的方法
2016/09/18 Python
Python错误提示:[Errno 24] Too many open files的分析与解决
2017/02/16 Python
Python 类的私有属性和私有方法实例分析
2019/09/29 Python
django实现类似触发器的功能
2019/11/15 Python
flask框架渲染Jinja模板与传入模板变量操作详解
2020/01/25 Python
Python 日期时间datetime 加一天,减一天,加减一小时一分钟,加减一年
2020/04/16 Python
利用CSS3实现圆角的outline效果的教程
2015/06/05 HTML / CSS
英国第一的购买便宜玩具和游戏的在线购物网站:Bargain Max
2018/01/24 全球购物
Unineed中文官网:高端护肤美妆与时尚配饰,英国直邮
2020/07/23 全球购物
甲方资料员岗位职责
2013/12/13 职场文书
仓库管理制度
2014/01/21 职场文书
服务员岗位职责
2014/01/29 职场文书
高中打架检讨书
2014/02/13 职场文书
校园文明倡议书
2014/05/16 职场文书
领导班子党的群众路线对照检查材料
2014/09/25 职场文书
社区文明倡议书
2015/04/28 职场文书
深入理解Vue的数据响应式
2021/05/15 Vue.js
MySQL数据库如何查看表占用空间大小
2022/06/10 MySQL