如何将我的数据随机分成不同的小批量 [JULIA]

2024-01-28

我有一个包含 100000 个示例的数据向量。值为 -1 和 1。 我想从这个数据中得到16 个不同的小批量随机,每6250个。

这是我的代码,用于生成 100000 个示例的向量,并将其存储在文件中。

Dan 回答了如何将我的数据划分为不同部分的问题。

现在,我想将 [X[p] for p in parts] 存储在 p 文件中。我的意思是:如果我有 3 个部分,我想创建并存储 p 的值。我该怎么办?

workspace()
using JLD, HDF5
#import HTreeRBM

function gen_random(m,k)  

# m the length of the vector , for instance m=100000 and k the number of partitions let's set k=16

s = rand(m)
# Pkg.add("JLD"), Pkg.add("HDF5") these two packages are needed in order to store our vectors in files under the extension jld 

 # allow to convert each random number to -1 or 1

X=float_to_binary(s)



parts= kfoldperm(length(X),k)

for p in 1:length(parts)
file =jldopen(@sprintf("my path to file/mini_batch%d.jld", p),"w")
write(file, "X", [X[p] for p in parts]) 
close(file)
end
return [X[p] for p in parts]

            function float_to_binary(s,level=0.4)
      for i=1:length(s)
        s[i] = s[i] > level ? 1.0 : -1.0
      end
    file = jldopen("/home/anelmad/Desktop/stage-inria/code/HTreeRBM.jl/artificial_data/mydata.jld", "w")
    write(file, "s", s)  # alternatively, say "@write file A"
    close(file)
      return s
    end


           function kfoldperm(l,k)
    n,r = divrem(l,k)
    b = collect(1:n:l+1)
        for i in 1:length(b)
            b[i] += i > r ? r : i-1  
        end
    p = randperm(l)
       return [p[r] for r in [b[i]:b[i+1]-1 for i=1:k]]


    end

Define kfoldperm通过运行:

function kfoldperm(N,k)
    n,r = divrem(N,k)
    b = collect(1:n:N+1)
    for i in 1:length(b)
        b[i] += i > r ? r : i-1  
    end
    p = randperm(N)
    return [p[r] for r in [b[i]:b[i+1]-1 for i=1:k]]
end

Now,

v = rand(10)
parts = kfoldperm(10,3)
[v[p] for p in parts]

会给你一个分区v至 3 部分。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将我的数据随机分成不同的小批量 [JULIA] 的相关文章

随机推荐

  • 两栏布局,固定右栏

    我被一个看似简单的两列 CSS 布局所困扰 通常 这种布局很简单 但我正在构建一个响应式网站 需要各列以移动设备的正确顺序折叠 彼此重叠 在桌面上 我需要右列的大小固定 例如 200px 其余区域由左列占据 当然 我需要这些列来清除并将内容
  • Python 中用于日志记录替代功能的配置文件

    我有功能 def go logger logfilename formatter logging Formatter asctime s levelname s message s logging basicConfig filemode
  • 模拟麦克风输入

    我正在尝试编写一个小程序来读取 wav 文件并发送输出 就好像它来自我的麦克风一样 不幸的是我对声音 API 没有太多经验 背景 我基本上想要实现的是一个在我进行语音聊天时播放声音的程序 即 Teamspeak Ventrilo 为了让它现
  • Java 获取特定日期前一天

    我有一个字符串过期日期 但我需要在过期日期到来的前一天执行一些 SQL 语句 我得到了我的过期日期和截止日期 SimpleDateFormat dateFormat new SimpleDateFormat dd MM yyyy Strin
  • 如何使用 mongodump 转储匹配特定日期范围的记录?

    我正在尝试使用 mongodump 命令转储在特定日期创建的一堆记录 这些记录包含一个 ts 字段 它是 MongoDB Date 对象 mongodump 采用 q 参数 可用于运行查询来选择要包含在转储中的记录 不幸的是 q 参数需要在
  • Rails 3.2.8 引擎中 simple_form 的加载错误

    当在 Rails 3 2 8 引擎中加载 simple form 时 simple form 初始值设定项文件 simple form rb 会导致错误 config initializers simple form rb 2 in
  • 何时使用 NSEnumerationConcurrent

    我时不时地注意到 我使用块来迭代集合 而不会写入任何共享数据或导致任何副作用 我考虑添加 NSEnumerationConcurrent 选项 然后决定不使用它 因为我不太明白何时值得使用它 所以我有一个具体的问题和一个更一般的问题 第一个
  • 如何在 VB.NET 中完成 Visual Studio 代码片段?

    In C if you start a snippet you press Tab to cycle through the snippet elements and press Enter to complete and exit the
  • 在 Java 中访问包私有字段

    探究 Android API 源代码 有FileDescriptor与数据成员descriptor没有访问修饰符 int descriptor 然后就是上课了FileOutputStream构造一个新的 FileDescriptor 并分配
  • 使用 SQL Server 2016 时态表查询已删除记录的最佳方法是什么?

    我正在查看 SQL Server 2016 时态表 找不到任何有效的方法来查询现在已删除的所有历史记录 我不喜欢软删除或移动到 已删除项目表 因为我觉得临时表是多余的 这可以通过时态表以有效的方式实现吗 时态表旨在为您提供数据的时间点视图
  • Process.join() 和队列不适用于大量数据[重复]

    这个问题在这里已经有答案了 我正在尝试拆分 for 循环 即 N 1000000 for i in xrange N do something 使用 multiprocessing Process 并且它适用于较小的 N 值 当我使用更大的
  • 尝试使用 java EventHubClient API 将事件发送到 Azure 事件中心时出现“连接中止”错误

    我正在尝试编写一个java发布程序 以向事件中心发送一条消息 但是 当我尝试执行它时 我收到连接中止错误 我正在使用下面的链接 azure eventhubs 和0 9 0版本中指定的maven依赖项下面是我试图遵循的链接和主要方法 htt
  • SQLiteException:从数据库读取时无法识别的标记

    我已经在应用程序内创建了一个 SQLite 数据库 填充了它 现在我尝试从中读取数据 该应用程序不断崩溃 这是我收到的 logcat 12 30 05 53 18 008 E AndroidRuntime 6205 java lang Ru
  • Linux 上应用程序数据(非用户特定)的存储位置

    In my OSGi https en wikipedia org wiki OSGi基于 Java 应用程序 我正在开发一个捆绑包 为系统的其余部分提供对文件系统的访问权限 除了提供对用户主目录的访问之外 我还希望提供对非用户特定区域的访
  • 让背景颜色延伸到溢出区域

    如果总计内容高度父级的大小是 10 000px 但overflow auto元素是rendered高度为 700px 我如何强制aside子元素动态渲染为 10 000pxinstead默认 700px 当您开始滚动时 您可以看到白色背景小
  • 从图表中获取文本格式的路径

    在我的图表中 我有如下数据 这里 a b c d 是节点 r1 r2 r3 r4 是关系 a r1 gt b b r2 gt a b r2 gt c c r1 gt b d r3 gt a a r1 gt d like this 我正在使用
  • Xcode 7.0 启动图像集“LaunchImage”有 2 个未分配的子项

    我刚刚将 xcode 更新到 7 0 并修复了大部分错误 但我不断收到此错误消息 启动图像集 LaunchImage 有 2 个未分配的子项 我已经删除了两个未分配的子项 但仍然收到此错误消息 尝试深层清洁Xcode 命令 alt shif
  • 有两个输入的表单未提交?

    有人可以解释一下为什么这段代码不起作用 form on submit function e e preventDefault var first first val var next next val alert first next ht
  • 数据库中的原子比较和交换

    我正在研究工作排队解决方案 我想查询数据库中的给定行 其中状态列具有特定值 修改该值并返回该行 并且我想以原子方式执行此操作 以便其他查询不会看到它 begin transaction select from table where pk
  • 如何将我的数据随机分成不同的小批量 [JULIA]

    我有一个包含 100000 个示例的数据向量 值为 1 和 1 我想从这个数据中得到16 个不同的小批量随机 每6250个 这是我的代码 用于生成 100000 个示例的向量 并将其存储在文件中 Dan 回答了如何将我的数据划分为不同部分的