迭代读取文件

news2024/11/16 1:15:18

使用 torch.utils.data.dataset.Dataset 收集数据信息,创建数据集。

使用 import torch.utils.data.dataloader 创建一个可以批量迭代的数据载入器,并通过 for 循环批量读取所有文件的数据。

import torch.utils.data.dataset as dataset
import torch.utils.data.dataloader as dataLoader
from natsort import natsorted
import os

class data_set(dataset.Dataset):

    def __init__(self, data_dir):
        self.data_dir = data_dir
        self.data_name = os.listdir(self.data_dir)
        self.data_name = natsorted(self.data_name)

    def __len__(self):
        return len(self.data_name)

    def __getitem__(self, idx):
        data_file = os.path.join(self.data_dir, self.data_name[idx])
        with open(data_file, mode='r', encoding='utf-8') as f:
            data = f.read()
        return data, data_file

    def print_data_name(self):
        print(self.data_name)

if __name__ == '__main__':
    # 首先创建一个数据集,让数据集对象知道去哪里读取数据,并收集路径中文件的文件名信息
    log_set = data_set('./log/i_loop1/')
    print(log_set.print_data_name())
    # 打乱数据集内的数据排序
    log_set = torch.utils.data.DataLoader(
                                           dataset=log_set,
                                           batch_size=4,
                                           pin_memory=True,
                                           shuffle=False,
                                           sampler=None,
                                           drop_last=True,
                                           num_workers=0
                                         )
    for idx, (data, file) in enumerate(log_set):
        print(idx)
        print(data)
        print(file)

输出为

 

随机的批量遍历数据

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/739380.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

windows凭据收集

实验目的 掌握windows凭据的收集方法 实验环境 windows server 2008 实验工具 mimikatz procdump 实验原理 用户凭证获取,一般是指 ntlm hash 或者可以直接利用的明文密码。 实验内容 使用mimikatz获取用户信息 使用procdump获取当前用户的明文密码 实验步骤…

IDEA(java: 错误: 不支持发行版本 5)

问题描述 今天在IDEA中运行项目时,突然蹦出error:java:不支持发行版本5报错,原因是项目运行的时候,jdk版本与本地的版本不一致,我的本地jdk版本是11,但是项目默认成了5,所以不一致,建议根据自己…

MIT 6.S081 教材第八章内容 -- Crash recovery -- 04

MIT 6.S081 教材第八章内容 -- Crash recovery -- 02 引言什么是 File system crashFile system crash示例File system logginglog_write函数end_op函数File system recovering Log写磁盘流程File system challenges 引言 MIT 6.S081 2020 操作系统 本文为MIT 6.S081课程第八…

Python启动UDP服务,监听并接收客户端数据

可以使用Python的socket库实现UDP协议的验证,以下是一个简单的示例代码: 服务器: [rootlocalhost python]# cat udp_server.py import socket# 创建一个UDP socket udp_socket socket.socket(socket.AF_INET, socket.SOCK_DGRAM)# 绑定到…

springboot超市进销存系统

本次设计任务是要设计一个超市进销存系统,通过这个系统能够满足超市进销存系统的管理及员工的超市进销存管理功能。系统的主要功能包括:首页、个人中心、员工管理、客户管理、供应商管理、承运商管理、仓库信息管理、商品类别管理、 商品信息管理、采购信…

Linux离线安装docker

问题: service docker start /status 都会报如下错误 报错:docker:unrecognized service 使用docker -v也能正常显示docker版本但唯独就是不能启动成功 找了很多资料都没有一个详细的答案和步骤 试了很多方法今天终于解决, 对此进行做个…

前端Vue自定义精美商品分类列表组件 侧边栏商品分类组件 category组件 左边分类category 右边列表List

随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。 通过组件化开发,可以有效实现…

TortoiseGit 入门指南03:提交

你现在应该已经有了一个仓库,在工作过程中会对项目做一些修改,比如添加代码、修复错误等等,你将不定时的将这些更改 提交(commit)到代码仓库。 术语 提交 是将 暂存区 内容放入 版本库 。这个过程涉及到 Git 的一些基…

Jina AI 受邀出席 WAIC 2023「科技无障碍」论坛,与行业专家共话 AI 普惠未来

7 月 6 日,2023 世界人工智能大会(WAIC)在上海世博中心及世博展览馆开幕,并在浦东张江、徐汇西岸设分会场,同步在闵行等产业集聚区开展同期活动。本届大会由上海市人民政府和国家发改委、工信部、科技部、国家网信办、…

qiankun 与vue-router 不兼容导致路由显示 undefined 问题

在路由前置守卫中监听 to 及 from 的变化,发现 router.push 跳转路由时,会发现打印出 两次以上的 to、form 对象,只有第一次打印的from对象是正确的,而后两次都是由于 qiankun 与vue-router 不兼容引起的路由守卫重复执行的问题导…

CSS word-break 详解

word-break:normal 使用浏览器默认的换行规则 <!DOCTYPE html> <html> <head> <style> p.test1 { width:11em; border:1px solid #000000; word-break:normal; } </style> </head> <body> <p class"test1">This …

构建WebRTC技术需要的后端服务

&#x1f4e2;欢迎点赞 &#xff1a;&#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff0c;赐人玫瑰&#xff0c;手留余香&#xff01;&#x1f4e2;本文作者&#xff1a;由webmote 原创&#x1f4e2;作者格言&#xff1a;新的征程&#xff0c;我们面对的不是…

【C语言】三子棋----详解

目录 前言 一、游戏规则 二、创建文件 1.test.c文件 &#x1f604;菜单函数的实现 &#x1f604;main函数的实现 &#x1f604;game游戏函数的实现 2.game.c文件 &#x1f604;书写初始化棋盘的函数&#xff1a; &#x1f604;书写打印棋盘的函数 &#x1f604;书写玩家…

iSCSI磁盘配置

iSCSI磁盘简要描述 iSCSI&#xff08;Internet Small Computer System Interface&#xff09;&#xff0c;Internet小型计算机系统接口&#xff0c;又称为IP-SAN&#xff0c;是一种基于因特网及SCSI-3协议下的存储技术。 iSCSI 可以与任意类型的 SCSI 设备进行通信。对于一个…

【阿里巴巴1688API接口开发系列】数据采集获取,封装接口可加高并发,大数据中心项目

首先以1688商品数据为例 item_get-获得1688商品详情 公共参数 名称类型必须描述keyString是调用key&#xff08;必须以GET方式拼接在URL中&#xff09;注册Key和secret接入secretString是调用密钥api_nameString是API接口名称&#xff08;包括在请求地址中&#xff09;[item_…

Kafka request.log中RequestQueueTimeMs、LocalTimeMs、RemoteTimeMs、ThrottleTimeMs、含义

Kafka request.log中RequestQueueTimeMs、LocalTimeMs、RemoteTimeMs、ThrottleTimeMs、含义 要理解各个延时项的含义&#xff0c;必须从Kafka收到TCP请求、处理请求到返回TCP包整个流程开始梳理 RequestQueueTimeMs Processor 执行processNewResponses() 方法&#xff0c;不…

DPWWN1靶场详解

DPWWN1靶场详解 首先还是nmap -sP 192.168.102.0/24扫描到ip地址&#xff0c;然后对这个ip进行一个单独的扫描&#xff0c;发现这个靶场有一个mysql数据库&#xff0c;猜测可能会用到sql注入&#xff0c;但是没用到。 ip登陆到网页发现并没有什么可利用的 唯一的切入点也就数…

【Docker】Docker之镜像上传(阿里云镜像仓库)

注册阿里云镜像仓库 登录阿里云 登录成功后&#xff0c;搜索docker镜像 点击立即开通 创建个人实例 创建镜像仓库 点击下一步之后&#xff0c;可以选择代码源&#xff0c;本文选择的是本地仓库 镜像仓库创建成功&#xff0c;根据对应操作命令实现想要的功能&#xff0c;如上传镜…

Java 动态规划 剑指 Offer 47. 礼物的最大价值

代码展示&#xff1a; class Solution {public int maxValue(int[][] grid) {int mgrid.length;int ngrid[0].length;//创建dp数组int[][]dpnew int[m1][n1];//填充数组for(int i1;i<m;i){for(int j1;j<n;j){dp[i][j]Math.max(dp[i-1][j],dp[i][j-1])grid[i-1][j-1];}}r…

LLM模型微调方法总结

文章目录 Freeze方法P-tuning方法prefix-tuningPrompt TuningP-tuning v1P-tuning v2 Lora方法Qlora方法 在现在这大规模语言模型&#xff08;LLM&#xff09;盛行的时代&#xff0c;由于模型参数和显卡配置的因素&#xff0c;预训练基本是大公司或者高校可以完成的事情&#x…