问题标签 [dataloader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1930 浏览

numpy - 在 pytorch 中加载多个 .npy 文件(大小 > 10GB)

我正在寻找一个优化的解决方案来使用 pytorch 数据加载器加载多个巨大的 .npy 文件。我目前正在使用以下方法,它为每个时期的每个文件创建一个新的数据加载器。

我的数据加载器是这样的:

我有一个 npy 文件列表:

我创建了一个数据加载器,它给出了文件名

我遍历它们如下:

上述方法有效,但我正在寻找内存效率更高的解决方案。注意:我有大量数据 > 200 GB,因此将 numpy 数组连接到 1 个文件可能不是解决方案(由于 RAM 限制)。提前致谢

0 投票
1 回答
250 浏览

node.js - 在嵌套表中使用 dataloader-sequelize 显示特定列

目前我有一些模型。我正在使用带有 dataloader-sequelize 的 graphql,只要我显示没有第三级的关联表,它就可以正常工作。

我的模型:

“articulo.js”

articulo_tipo.js

canalizado.js

canalizado_tipo.js

我的解析器:

articulo.js

canalizado.js

如果我用这句话在graphql中搜索它会很好:

另一方面,如果我尝试更深层次地寻找,我会从不需要使用的列中获得自动名称:

在这种情况下,在 Graphql 中返回此错误: "message": "Invalid column name 'CanalizadoTipoCaiCodigo'.",

我怎样才能省略那个领域?我可以使用“属性”之类的东西来指定我想显示的属性吗?我试图在解析器、模型中使用它......但总是没有成功

如果我寻找更深的层次,这个错误是一样的:

对我的问题有任何想法吗?万事如意!!


更新

服务器.js

配置/模型/index.js

解析器 > articulo_tipo.js

0 投票
1 回答
646 浏览

node.js - 跨上下文创建的数据加载器缓存(graphQl ApolloServer)

我已将 DataLoaders 集成到我的 graphQL 请求中,但由于某种原因,缓存是跨请求记忆的。我可以读到在 ApolloServer 配置中将函数传递给上下文应该在每个请求上创建一个新的上下文,但由于某种原因,即使在那时,DataLoaders 也会被记忆。

这是我的代码

阿波罗配置:

生成上下文:

生成加载器:

问题加载器:

0 投票
1 回答
3044 浏览

deep-learning - Pytorch 默认数据加载器卡在大型图像分类训练集上

我正在 Pytorch 中训练图像分类模型,并使用它们的默认数据加载器来加载我的训练数据。我有一个非常大的训练数据集,所以通常每个班级有几千个样本图像。过去我训练过的模型总共有大约 20 万张图像,没有任何问题。但是我发现当总共有超过一百万张图像时,Pytorch 数据加载器会卡住。

我相信当我打电话时代码正在挂起datasets.ImageFolder(...)。当我 Ctrl-C 时,这始终是输出:

我认为某处可能存在死锁,但是根据 Ctrl-C 的堆栈输出,它看起来不像在等待锁定。所以后来我认为数据加载器很慢,因为我试图加载更多数据。我让它运行了大约 2 天,但没有任何进展,在加载的最后 2 小时内,我检查了 RAM 使用量保持不变。在过去不到几个小时的时间内,我还能够加载包含超过 20 万张图像的训练数据集。我还尝试将我的 GCP 机器升级为拥有 32 个内核、4 个 GPU 和超过 100GB 的 RAM,但似乎在加载了一定数量的内存后,数据加载器就会卡住。

我很困惑数据加载器在遍历目录时如何卡住,我仍然不确定它是卡住还是非常慢。有什么方法可以改变 Pytortch 数据加载器,使其能够处理超过 100 万张图像进行训练?任何调试建议也值得赞赏!

谢谢!

0 投票
0 回答
2686 浏览

python - TypeError:使用 Pandas Dataframe 时类型的对象没有 len()

我尝试了以下代码

执行df.head()时,数据框有数据,打印数据。但它给出了错误

什么时候

被执行。

但是根据在这里找到的正确答案, len(DataFrame.index) 给了我预期的不。数据框中的行数。并且 df.index 1打印数据帧的第一行,但无法找出问题所在。

我也尝试将数据框转为列表,但给出了相同的错误。代码中可能有一些我没有看到的错误,而且我是 python 新手。任何形式的帮助表示赞赏。

编辑(取消缩进一次后):

这将给出以下错误

0 投票
1 回答
1483 浏览

postgresql - 使用分页时如何提高嵌套 graphql 连接的性能

我正在尝试实施某种基本的社交网络项目。它有Posts,CommentsLikes其他任何东西一样。

  • 一个帖子可以有很多评论
  • 一个帖子可以有很多赞
  • 一篇文章可以有一个作者

/posts在客户端应用程序上有一条路线。Posts它通过分页列出并显示它们的titleimageauthorName和。commentCountlikesCount

graphql查询是这样的;

我正在使用apollo-server,TypeORM和. 我用来获取每个帖子。我只是用 批处理请求,从查询中获取,将查询结果映射到每个. 你知道,最基本的用法类型。PostgreSQLdataloaderdataloaderauthorauthorIdsdataloaderauthorsPostgreSQLwhere user.id in authorIdsauthorIddataloader

但是当我尝试在 each 下查询commentsorlikes连接时post,我被卡住了。postId如果没有分页,我可以使用相同的技术并为它们使用。但是现在我必须包含分页的过滤器参数。对于某些where条件,可能还有其他过滤器参数。

我找到了数据加载器的cacheKeyFn选项。我只是为传递给数据加载器的过滤器对象创建一个字符串键,它不会复制它们。它只是将唯一的传递给batchFn. 但是我不能创建一个 sql 查询TypeORM来分别获取每个first, after,orderBy参数的结果并将结果映射回调用数据加载器的函数。

我搜索了spectrum.chat源代码,我认为它们不允许用户查询嵌套连接。还尝试了 Github GraphQL Explorer,它可以让您查询嵌套连接。

有没有推荐的方法来实现这一目标?我了解如何使用 传递objecttodataloader和批处理它们cacheKeyFn,但我不知道如何从PostgreSQL一个查询中获取结果并将结果映射到从加载程序返回。

谢谢!

0 投票
1 回答
313 浏览

graphql - graphql sequlize 数据加载器问题,无法为不可为空的字段返回 null

ip地址的架构:

我创建了一个数据加载器,但出现“错误”:

如果我需要该字段ip_key: CblockIp! 并且如果我删除“!” 从ip_key: CblockIpip_key 为空:)

我的文件如下所示:

app.js一部分:

batchFunctions.js

configProxy.js(解析器):

如果在我的解析器中,我将 { proxyLoader } 替换为 { models } 和这一行

一切正常,但没有批处理器。我想在我的批处理器中我做错了什么。

Console.log 显示即使在批处理器中一切都应该没问题,这就是为什么我不明白问题出在哪里。这是来自批处理器功能的console.log:

graphql 查询看起来像这样

0 投票
1 回答
30 浏览

python - 当我将数据加载器张量转换为 numpy 数组时,Pytorch 张量数据受到干扰

我正在使用一个简单的训练循环来执行回归任务。为了确保回归的真实值与我在训练循环中的预期相同,我决定绘制每批数据。但是,我看到当我将数据加载器的张量转换为 numpy 数组并绘制它时,它受到了干扰。我正在使用 myTensor.data.cpu().numpy() 进行转换。

我的代码如下:

在此处输入图像描述

0 投票
1 回答
2081 浏览

python-3.x - 将批量大小增加到 1 以上时 Pytorch 中的 RuntimeError

  • 我的自定义数据加载器的这段代码在 batch_size=1 的情况下运行顺利,但是当我增加批量大小时,我得到以下错误:

    • RuntimeError: 标量类型 Double 的预期对象,但在位置 #1“张量”的序列参数中的序列元素 1 获得标量类型 Long

我注意到一些奇怪的事情,例如张量类型是不同的,即使图像和标签和权重图是具有相同类型和大小的图像。错误回溯:

0 投票
0 回答
76 浏览

r - SASxport 到 R:读取 XPT SAS 文件时出错

任何人都知道如何在将 SAS 导出格式文件导入 R 时忽略/跳过错误?

检查指定文件是否具有适当的标头

正在提取数据文件信息...

正在读取数据文件... ### [.data.frame(ds, whichds) 中的错误:选择了未定义的列

我有很多专栏,不想一一检查它是否真的存在。想忽略缺失但函数中没有选项。

编辑

找到了一个简单的解决方案:

现在大概可以选择lu$names和相交cols。仍然不是每个变量都可以读取,但它更好。

但是当我选择几列(选中)时,我得到另一个无法跳过的错误:

if (any(tooLong)) { 中的错误:需要 TRUE/FALSE 的缺失值

为什么这会停止读取过程并返回 null?

编辑 2

找到解决方法读取相同的功能但来自不同的包:

工作,不幸的是,加载整个数据 - 如果有一些大小限制,我可能无能为力。