zoukankan      html  css  js  c++  java
  • caffe 中如何打乱训练数据

    第一:

    可以选择在将数据转换成lmdb格式时进行打乱;

    设置参数--shuffle=1;(表示打乱训练数据)

    默认为0,表示忽略,不打乱。

    打乱的目的有两个:防止出现过分有规律的数据,导致过拟合或者不收敛。

    在caffe中可能会使得,在模型进行测试时,每一个测试样本都输出相同的预测概率值。

    或者,直接打乱训练文件的标签文件:train.txt

    方法如下:

    1)将 train_160309-train.txt按行打乱,每行内容则保持不变,命令:

    1. cd 存放文件的路径  
    2. awk 'BEGIN{ 100000*srand();}{ printf "%s %s ", rand(), $0}'   train_160309-train.txt |sort -k1n | awk '{gsub($1FS,""); print $0}'   

    2)但这样处理后只是在屏幕上输出显示,如果需要将输出写入新的文本train.txt,则在末尾加上 | tee train.txt:

    1. sudo awk 'BEGIN{ 100000*srand();}{ printf "%s %s ", rand(), $0}'   train_160309-train.txt |sort -k1n | awk '{gsub($1FS,""); print $0}' | tee train.txt  

    3)如果不需要在屏幕上输出显示,直接将输出写入新的文本train.txt,则在末尾将 | tee 换作 > 即可:

    1. sudo awk 'BEGIN{ 100000*srand();}{ printf "%s %s ", rand(), $0}'   train_160309-train.txt |sort -k1n | awk '{gsub($1FS,""); print $0}' > train.txt  

    附:

    1、awk命令详解

    2、tee命令详解

    参考:https://blog.csdn.net/u010555688/article/details/50475739

  • 相关阅读:
    SQL 测试
    atoi的实现
    python基础3 ---python数据类型二
    python基础2 ---python数据类型一
    python基础1 ---python简介
    shell编程3 ---流程控制语句
    shell编程2 ---条件判断语句
    oldboyshell编程扩展内容
    nfs服务器
    shell编程1
  • 原文地址:https://www.cnblogs.com/Allen-rg/p/8997424.html
Copyright © 2011-2022 走看看