一切尽在掌控之中这个Python脚本,让

北京哪能治好女性白癜风 http://wapyyk.39.net/hospital/89ac7_detail.html

图源:unsplash

笔者经常编写Python脚本来进行数据处理、数据传输和模型训练。随着数据量和数据复杂性的增加,运行脚本可能需要一些时间。在等待数据处理完成时可以同时做一些其他工作。

为了达到这个目的,笔者编写了一组用于解决这个问题的Python脚本。使用这些脚本向手机发送流程更新、可视化和完成通知。当偶尔拥有这些自由的时刻,你可以享受而不是担心模型的进度。

需要什么

第一个问题是,需要知道什么?这取决于你正在做的工作。对于笔者来说主要有有三个可能会占用时间的处理任务:

·模型训练

·数据处理和/或传输

·金融模型

我们需要对于每一种情况具体分析。

模型训练

更新每n个epoch,必须包括关键指标。例如,训练和验证集的损失和准确性。接着完成通知,包括:

·训练期间关键指标的可视化(同样,训练和验证集的损失和准确性)

·其他不太重要但仍然有用的信息,如本地模型目录、训练时间、模型架构等

·预测输出,对于文本生成来说输出生成的文本(或它的一个样本);对于图像生成来说,输出结果是一个(希望)很酷的可视化

以训练一个神经网络来重现给定的艺术风格为例。我们需要重点从模型中生成的图像,损失和精度图,当前的训练时间,和一个模型的名称。

importnotifySTART=datetime.now()#thislinewouldbeplacedbeforemodeltrainingbeginsMODELNAME="SynthwaveGAN"#givingusourmodelnameNOTIFY=#sowesendanupdatenotificationeveryepochs#foreachepoche,wewouldincludethefollowingcodeife%notify_epoch==0ande!=0:#herewecreatetheemailbodymessagetxt=(f"{MODELNAME}updateasof"f"{datetime.now().strftime(%H:%M:%S)}.")#webuildtheMIMEmessageobjectwithnotify.messagemsg=notify.message(subject=SynthwaveGAN,text=txt,img=[f../visuals/{MODELNAME}/epoch_{e}_loss.png,f../visuals/{MODELNAME}/epoch_{e}_iter_{i}.png])#notethatweattachtwoimageshere,thelossplotand#...ageneratedimageoutputfromourmodelnotify.send(msg)#wethensendthemessage

每隔个epoch,就会发送一封包含上述所有内容的电子邮件。以下是其中一封邮件:

数据处理和传输

这点不是很有趣,但在时间消耗方面,它排第一名。

以使用Python将批量数据上传到SQLServer为例(对于没有BULKINSERT的人)。在上传脚本的最后,会有一个简单的消息通知上传完成。

importosimportnotifyfromdataimportSql#see



转载请注明地址:http://www.sanbaicaoasb.com/sczz/8473.html
  • 上一篇文章:
  • 下一篇文章:
  • 热点文章

    • 没有热点文章

    推荐文章

    • 没有推荐文章