微信扫一扫
分享到朋友圈

Knock Knock!你的模型已训练完成……

作者:机器之心 来源:机器之心 公众号
分享到:

03-31

选自Github

作者:huggingface

机器之心编译

参与:淑婷、路雪

训练出了问题你却不知道?训练结束了你还在傻傻等待?这里有一个好用的工具,两行代码即可实时通知模型训练状况。本文介绍了一个小型的代码库 Knock Knock,当你的模型训练完成或者训练过程出现问题时,它会及时通知你。而你只需要写两行代码。

项目地址:https://github.com/huggingface/knockknock


在训练模型时,我们通常会使用早停法。除了粗略的估计,你很难预测出训练什么时候会结束。因此,为模型训练设置自动通知就很有意思了。而且当训练因为未知原因而中途崩溃时,收到通知就更重要了。


安装


用 pip 或类似的工具安装。


pip install .


该代码仅用 Python3.6 测试过。


使用


该库可无缝使用,只需对代码做最小的修改:你只需在主函数调用上加一个装饰器。


现在有两种设置通知的方式:邮件和 Slack。


邮件


邮件服务要依赖 Yagmail,这是一个 GMAIL/SMTP 客户端。你需要一个 gmail 邮件地址来使用它。最好创建一个新的邮件地址(不要使用常用地址),因为你需要修改账户的安全设置,以允许该 Python 库打开不太安全的 APP(选中 Allow less secure apps)进而访问它。


from knockknock import email_sender
@email_sender(recipient_email: "<your_email@address.com>"sender_email"<grandma's_email@gmail.com>")def train_your_nicest_model(your_nicest_parameters):
    import time
    time.sleep(10000)


如果未指定 sender_email,则 recipient_email 也可以用于发送邮件。


注意,启用此功能会向你询问发件人的邮箱密码。密码将通过 keyring Python 库被安全地存储在系统 keyring 服务中。


Slack


你还可以使用 slack 来获取通知。你必须提交 Slack 房间的 webhook URL 和用户 id(用户 id 为可选项,如果你想添加自己或其他人则选择该项)。


from knockknock import slack_sender

webhook_url = "<webhook_url_to_your_slack_room>"@slack_sender(webhook_url=webhook_url, channel="<your_favorite_slack_channel>")def train_your_nicest_model(your_nicest_parameters):
    import time
    time.sleep(10000)


你还可以指定一个可选参数来添加特定的人:user_mentions=[<your_slack_id>, <grandma's_slack_id>]。



本文为机器之心编译,转载请联系本公众号获得授权

✄------------------------------------------------

加入机器之心(全职记者 / 实习生):hr@jiqizhixin.com

投稿或寻求报道:content@jiqizhixin.com

广告 & 商务合作:bd@jiqizhixin.com

阅读37889
模型 
举报0
关注机器之心微信号:almosthuman2014

用微信扫描二维码即可关注
声明

1、头条易读遵循行业规范,任何转载的稿件都会明确标注作者和来源;
2、本文内容来自“机器之心”微信公众号,文章版权归机器之心公众号所有。

评论
更多

文章来自于公众号:

机器之心

微信号:almosthuman2014

邮箱qunxueyuan#163.com(将#换成@)
微信编辑器
免责声明
www.weixinyidu.com   免责声明
版权声明:本站收录微信公众号和微信文章内容全部来自于网络,仅供个人学习、研究或者欣赏使用。版权归原作者所有。禁止一切商业用途。其中内容并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现头条易读网站上有侵犯您的知识产权的内容,请与我们联系,我们会及时修改或删除。
本站声明:本站与腾讯微信、微信公众平台无任何关联,非腾讯微信官方网站。