zoukankan      html  css  js  c++  java
  • 怎么用pandas记录训练数据

      参考资料:之前借鉴过的代码

      pandas是python中用于数据处理的一个很方便的包,一般我们希望在训练的时候将相关的训练数据记录在一个csv文件中,这样能方便我们监控实验进程,效果如下所示:

      那么该如何完成这一需求?两种办法:

      1. 新建链表保存数据,整个存入csv文件

    import pandas as pd
    
    result_loss = []
    result_psnr = []
    
    for ...
        """
        训练过程
        """
    
        result_loss.append(loss.item())
        result_psnr.append(psnr.item())
        
        if(i%n_save==0):
            out_path = './statistics/'              
            data_frame = pd.DataFrame(
                    data={'Loss': result_loss, 'PSNR': result_psnr},
                    index=range(1, i + 1))
            data_frame.to_csv(out_path + args.expname + '_train_results.csv', index_label='Epoch')
    

      这种方法的思路很直接,新建列表保存训练中数值,然后每隔若干epochs便重新写入完成的csv。

      2. 在已有的csv文件后append新数据

      和上面的写法类似,只是我们可以不用始终维持一个大的列表,并且写入模式要设置为append。

    import pandas as pd
    
    result_loss = []
    result_psnr = []
    out_path = './statistics/'              
    data_frame = pd.DataFrame(
                    data={'Loss': result_loss, 'PSNR': result_psnr})
    data_frame.to_csv(out_path + args.expname + '_train_results.csv', index_label='Epoch')
    
    for ...
        """
        训练过程
        """
    
        result_loss.append(loss.item())
        result_psnr.append(psnr.item())
        
        if(i%n_save==0):
            out_path = './statistics/'              
            data_frame = pd.DataFrame(
                    data={'Loss': result_loss, 'PSNR': result_psnr},
                    index=range(1, i + 1))
            data_frame.to_csv(out_path + args.expname + '_train_results.csv',mode='a', index=False, header=False)
            result_loss = []
            result_psnr = []
    

      append的代码我没有测试过,不过思路大致是这样的。

  • 相关阅读:
    Java8常用新特性实践
    Presto集群部署
    Exception: Unexpected End Of File(crontab)
    centos6环境下使用yum安装Ambari
    pyspark进行词频统计并返回topN
    七行代码开始flask
    hibernate初步4
    java四大域总结
    servlet中的转发和重定向问题
    一个web页面的访问的过程
  • 原文地址:https://www.cnblogs.com/chester-cs/p/15043187.html
Copyright © 2011-2022 走看看