首页 > 其他分享 >SelfDefinedDataset显示没有属性get_datasets

SelfDefinedDataset显示没有属性get_datasets

时间:2023-04-21 09:02:07浏览次数:42  
标签:__ datasets get self loader SelfDefinedDataset data

get_datasets 是一个PyTorch Lightning框架中的方法,用于返回数据加载器中包含的训练、验证和测试数据集。如果你的自定义数据集类没有该方法,则会出现 AttributeError: 'YourDataset' object has no attribute 'get_datasets' 错误。

要解决这个问题,你需要在自定义数据集类中实现 get_datasets 方法。下面是一个示例代码,演示如何在数据集类中实现 get_datasets 方法:

python from torch.utils.data import Dataset, DataLoader class YourDataset(Dataset): def __init__(self, data): self.data = data def __len__(self): return len(self.data) def __getitem__(self, index): return self.data[index] def get_datasets(self): # 返回训练、验证和测试数据集 train_data = self.data[:1000] val_data = self.data[1000:1500] test_data = self.data[1500:] return { 'train': DataLoader(train_data, batch_size=32), 'val': DataLoader(val_data, batch_size=32), 'test': DataLoader(test_data, batch_size=32) }

在上面的代码中,我们定义了一个名为 YourDataset 的数据集类,并实现了 __init____len____getitem__ 方法。此外,我们还添加了一个名为 get_datasets 的方法,该方法将数据集划分为训练、验证和测试集,并返回一个包含数据加载器的字典。在返回的字典中,每个数据集都用一个 DataLoader 对象表示,该对象将数据划分为小批量,并允许在训练期间对其进行迭代。

当你定义了这个 get_datasets 方法后,就可以在使用 PyTorch Lightning 中的 Trainer 训练模型时,通过调用该方法来获取数据加载器中包含的数据集,例如:

python dataset = YourDataset(data) train_loader, val_loader, test_loader = dataset.get_datasets() trainer = pl.Trainer(gpus=1) model = MyModel() trainer.fit(model, train_loader, val_loader) trainer.test(model, test_loader)

请注意,上述示例代码中的 get_datasets 方法仅适用于具有固定大小的数据集。如果你的数据集具有可变大小,你可能需要在该方法中添加更复杂的逻辑来实现动态数据集划分。

标签:__,datasets,get,self,loader,SelfDefinedDataset,data
From: https://www.cnblogs.com/dididtui/p/17339102.html

相关文章

  • Android问题解决:android.os.FileUriExposedException: file:///storage/......Intent.
    文章目录一、遇到问题二、解决问题三、分析问题一、遇到问题---------beginningofcrash2022-12-2720:18:15.01014422-14422/com.lisi.evidence_boxE/AndroidRuntime:FATALEXCEPTION:mainProcess:com.lisi.evidence_box,PID:14422android.os.FileUriExpose......
  • SpringBoot + WebFlux + Spring Security ,SecurityContextHolder.getContext().getA
    解决方案直接在Controller接口方法参数中写入org.springframework.security.core.Authentication,如下:@GetMapping(path="/test")publicMono<Response<?,?>>test(Authenticationauthentication){returnMono.just(ResponseUtil.success(authentica......
  • C#基础 MethodInfo GetMethod 反射 调用有参公共方法
     .NETFramework:4.7.2       IDE:VisualStudioCommunity2019        OS:Windows10x64    typesetting:Markdown codeusingSystem;usingSystem.Reflection;namespaceConsoleApp{publicclassPerson{publicvoidSayH......
  • C#基础 MethodInfo GetMethod 反射 调用无参公共方法
     .NETFramework:4.7.2       IDE:VisualStudioCommunity2019        OS:Windows10x64    typesetting:Markdown codeusingSystem;usingSystem.Reflection;namespaceConsoleApp{publicclassPerson{publicvoidSayH......
  • Python pth 文件写入 getshell 或权限维持
    今天看到Y4er师傅写的文章,我这里简单学习了一下:https://y4er.com/posts/python-pth-file-write-getshell/概述python的site模块支持"Site-specificconfigurationhook"的功能,这个功能点本身是用来将特定路径加入模块搜索路径。该模块在初始化期间自动导入。sys.prefix......
  • 一统天下 flutter - widget 选择类: showDatePicker()/showTimePicker/CalendarDatePi
    源码https://github.com/webabcd/flutter_demo作者webabcd一统天下flutter-widget选择类:showDatePicker()/showTimePicker/CalendarDatePicker-日期选择和时间选择示例如下:lib\widget\selection\time_picker.dart/**showDatePicker()/showTimePicker/Calenda......
  • fix Linux apt-get install package HTTPS error All In One
    fixLinuxapt-getinstallpackageHTTPSerrorAllInOneerrorsE:Themethoddriver/usr/libapt/methods/httpscouldnotbefound.N:Isthepackageapt-transport-httpsinstalled?solutionssymbollinksoftlink/软链接$cd/usr/lib/apt/methods#symbo......
  • Linux apt-get vs apt All In One
    Linuxapt-getvsaptAllInOneapt-getaptdemos(......
  • 生信工具推荐之(2) datasets
    datasetsNCBI出品跨平台轻松批量从数据库中下载数据的命令行工具指南:工具处于快速更新迭代阶段,正逐步添加新功能,,参考网址:https://www.ncbi.nlm.nih.gov/datasets/docs/v1/how-tos/安装:curl-odatasets'https://ftp.ncbi.nlm.nih.gov/pub/datasets/command-line/v1/linux-am......
  • Android之AppWidget 开发浅析
    什么是AppWidgetAppWidget即桌面小部件,也叫桌面控件,就是能直接显示在Android系统桌面上的小程序,先看图:图中我用黄色箭头指示的即为AppWidget,一些用户使用比较频繁的程序,可以做成AppWidget,这样能方便地使用。典型的程序有时钟、天气、音乐播放......