如何使用 tf.data.Dataset.from_generator() 将参数发送到生成器函数?

2024-04-22

我想创建多个tf.data.Dataset使用from_generator()功能。我想向生成器函数发送一个参数(raw_data_gen)。这个想法是生成器函数将根据发送的参数产生不同的数据。这样我想raw_data_gen能够提供训练、验证或测试数据。

training_dataset = tf.data.Dataset.from_generator(raw_data_gen, (tf.float32, tf.uint8), ([None, 1], [None]), args=([1]))

validation_dataset = tf.data.Dataset.from_generator(raw_data_gen, (tf.float32, tf.uint8), ([None, 1], [None]), args=([2]))

test_dataset = tf.data.Dataset.from_generator(raw_data_gen, (tf.float32, tf.uint8), ([None, 1], [None]), args=([3]))

当我尝试致电时收到的错误消息from_generator()这样就是:

TypeError: from_generator() got an unexpected keyword argument 'args'

这里是raw_data_gen函数,虽然我不确定你是否需要这个,因为我的预感是问题出在调用from_generator():

def raw_data_gen(train_val_or_test):

    if train_val_or_test == 1:        
        #For every filename collected in the list
        for filename, lab in training_filepath_label_dict.items():
            raw_data, samplerate = soundfile.read(filename)
            try: #assume the audio is stereo, ready to be sliced
                raw_data = raw_data[:,0] #raw_data is a np.array, just take first channel with slice
            except IndexError:
                pass #this must be mono audio
            yield raw_data, lab

    elif train_val_or_test == 2:
        #For every filename collected in the list
        for filename, lab in validation_filepath_label_dict.items():
            raw_data, samplerate = soundfile.read(filename)
            try: #assume the audio is stereo, ready to be sliced
                raw_data = raw_data[:,0] #raw_data is a np.array, just take first channel with slice
            except IndexError:
                pass #this must be mono audio
            yield raw_data, lab

    elif train_val_or_test == 3:
        #For every filename collected in the list
        for filename, lab in test_filepath_label_dict.items():
            raw_data, samplerate = soundfile.read(filename)
            try: #assume the audio is stereo, ready to be sliced
                raw_data = raw_data[:,0] #raw_data is a np.array, just take first channel with slice
            except IndexError:
                pass #this must be mono audio
            yield raw_data, lab

    else:
        print("generator function called with an argument not in [1, 2, 3]")
        raise ValueError()

您需要根据以下内容定义一个新函数raw_data_gen这不需要任何争论。您可以使用lambda关键字来执行此操作。

training_dataset = tf.data.Dataset.from_generator(lambda: raw_data_gen(train_val_or_test=1), (tf.float32, tf.uint8), ([None, 1], [None]))
...

现在,我们将一个函数传递给from_generator不需要任何参数,但它只是充当raw_data_gen将参数设置为 1。您可以对验证集和测试集使用相同的方案,分别传递 2 和 3。

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

如何使用 tf.data.Dataset.from_generator() 将参数发送到生成器函数? 的相关文章

  • 根据 pandas 中的条件交换列值

    我想按条件重新定位列 如果国家 地区是 日本 我需要将姓氏和名字反向重新定位 df pd DataFrame France Kylian Mbappe Japan Hiroyuki Tajima Japan Shiji Kagawa Eng
  • DataFrame 中的字符串,但 dtype 是对象

    为什么 Pandas 告诉我我有对象 尽管所选列中的每个项目都是一个字符串 即使在显式转换之后也是如此 这是我的数据框
  • 如何用xlrd读取公式

    我正在尝试做一个解析器 它读取几个 Excel 文件 我通常需要位于行底部的值 您可以在其中找到所有上部元素的总和 因此 单元格值实际上是 sum 或 A5 0 5 可以说 对于使用 Excel 打开此文件的用户来说 它看起来像一个数字 这
  • multiprocessing.freeze_support()

    为什么多处理模块需要调用特定的function http docs python org dev library multiprocessing html multiprocessing freeze support在被 冻结 以生成 Wi
  • 使用reduce方法的斐波那契数列

    于是 我看到有人用reduce方法来计算斐波那契数列 这是他的想法 1 0 1 1 2 1 3 2 5 3 对应于 1 1 2 3 5 8 13 21 代码如下所示 def fib reduce n initial 1 0 dummy ra
  • 我有一个 Employee 类,我想返回“姓名”列表

    我有一个 Employee 类 我想返回 姓名 列表 雇员 py class Employee object def init self id name members None self id id self name name self
  • 熊猫记忆

    我有冗长的计算 我重复了很多次 因此 我想使用记忆 诸如jug http packages python org Jug and joblib http packages python org joblib memory html 与Pan
  • 如何将同步函数包装在异步协程中?

    我在用着aiohttp https github com aio libs aiohttp构建一个 API 服务器 将 TCP 请求发送到单独的服务器 发送 TCP 请求的模块是同步的 对于我来说是一个黑匣子 所以我的问题是这些请求阻塞了整
  • 别碰我的女人

    我讨厌的一件事迪斯图尔斯 http docs python org distutils 我猜他是邪恶的人 他这样做了 https github com python cpython blob 300dd552b15825abfe0e367a
  • 如何在python中递归复制目录并覆盖全部?

    我正在尝试复制 home myUser dir1 及其所有内容 及其内容等 home myuser dir2 在Python中 此外 我希望副本覆盖中的所有内容dir2 It looks like distutils dir util co
  • 如何将reportlab与Google应用程序引擎一起使用

    我无法在谷歌应用程序引擎下正确导入reportlab 根据以下guide http blog notdot net 2010 04 Generating PDFs on App Engine Python and introducing M
  • 与函数复合 UniqueConstraint

    一个快速的 SQLAlchemy 问题 我有一个 文档 类 其属性为 数字 和 日期 我需要确保没有重复的号码同年 是 有没有办法对 数字 年份 日期 进行UniqueConstraint 我应该使用唯一索引吗 我如何声明功能部分 SQLA
  • 将参数传递给 __enter__

    刚刚学习 with 语句尤其是这篇文章 http effbot org zone python with statement htm 问题是 我可以传递一个参数给 enter 我有这样的代码 class clippy runner def
  • dask allocate() 或 apply() 中的变量列名

    我有适用于pandas 但我在将其转换为使用时遇到问题dask 有一个部分解决方案here https stackoverflow com questions 32363114 how do i change rows and column
  • python csv按列转换为字典

    是否可以将 csv 文件中的数据读取到字典中 使得列的第一行是键 同一列的其余行构成列表的值 例如 我有一个 csv 文件 strings numbers colors string1 1 blue string2 2 red string
  • Python列表对象属性“append”是只读的

    正如标题所说 在Python中 我试图做到这一点 以便当有人输入一个选择 在本例中为Choice13 时 它会从密码列表中删除旧密码并添加新密码 passwords mrjoebblock mrjoefblock mrjoegblock m
  • 获取运行云功能的运行时服务帐户

    有没有办法以编程方式从云功能获取运行时服务帐户的电子邮件 我知道我可以 猜测 默认的 App Engine 帐户 因为它始终是 appspot gserviceaccount com 但这不是我想要的 我本来期待有一些环境变量 https
  • 如何将 Pandas Dataframe 中的字符串转换为字符列表或数组?

    我有一个名为的数据框data 其中一列包含字符串 我想从字符串中提取字符 因为我的目标是对它们进行一次性编码并使之可用于分类 包含字符串的列存储在预测因子如下 predictors pd DataFrame data columns Seq
  • 将数组从 .npy 文件读入 Fortran 90

    我使用 Python 以二维数组 例如 X 的形式生成一些初始数据 然后使用 Fortran 对它们进行一些计算 最初 当数组大小约为 10 000 x 10 000 时 np savetxt 在速度方面表现良好 但是一旦我开始增加数组的维
  • Python 中的迭代器 (iter()) 函数。 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 对于字典 我可以使用iter 用于迭代字典的键 y x 10 y 20 for val in iter y print val 当

随机推荐

  • 加入同一存储库旧版本的历史记录

    我有一个包含这段历史的存储库 A B C D 然后 这个存储库被 拆分 基本上 使用 git subtrees 创建了另一个存储库 其历史记录从 D 开始 现在 我有另一个具有这段历史的存储库 The same D as the other
  • 使用 C# 写入 Excel 文件的最佳和最快方法是什么?

    我正在尝试使用 OLEDB 没有自动化 写入 Excel 文件 我有大约 500 行数据 这些数据是从其他应用程序获取的 然后使用 INSERT INTO 查询将其一一写入 Excel 文件 我确信从其他应用程序读取数据没有延迟 我查了一下
  • 发现同一依赖程序集的不同版本之间存在冲突

    我目前使用 net 3 5 框架和 microsoft interops 在 Visual Studio 中编写一个程序来与 Office 产品交互 我的 app config 文件有问题 每次我编译我的解决方案 重建或构建它时 错误列表中
  • 高分辨率图像 IE 浏览器渲染

    我正在针对这些更高分辨率的显示器 尤其是新的 iPad 优化我的网站 我按照我想要的方式格式化了网站 我只是增加了每个图像的分辨率 但仍然将其限制为我当前拥有的 DIV 例如 我有一个分辨率为 483x246 的图像 并将其适合设置大小为
  • 绕过 C++ 中的复制语义

    请考虑这段代码 class A int main std vector a test test push back A 构造函数和析构函数将被调用两次 内存将被分配两次并且对象将被复制 现在这不仅可能对性能不利 还可能导致运行时错误 特别是
  • jQuery文件上传不提交额外参数

    我需要使用 jQuery 文件上传控件中提供的 formData 参数在提交时将附加数据发送到服务器 formData 的默认实现是调用一个函数 该函数获取表单中的所有控件并将它们序列化为数组 使用 jQuery serializeArra
  • 在 Windows 7 64 位上运行 gem 安装时出错

    我刚刚使用 ruby installer org 的安装程序安装了 ruby 1 9 2 p136 现在我正在尝试安装 Rails 当我执行 gem install Rails 时 出现以下错误 C Users Clayton USA gt
  • 如何使用mockito模拟字符串?

    我需要模拟一个测试场景 其中我调用getBytes String 对象的方法 我得到一个 UnsupportedEncodingException 我尝试使用以下代码来实现这一点 String nonEncodedString mock S
  • 使用 jquery 验证插件滚动到特定错误

    我在这里找到了关于如何处理错误和滚动的很好的参考 如何在 jquery 验证器插件中发生错误时触发事件 https stackoverflow com questions 2885346 how to fire an event on er
  • 我们可以将值的正则表达式放入 DTD 中吗?

    我想知道是否有一种方法可以将正则表达式与属性值关联起来 就像 XML 模式中的那样
  • C# 中的抽象枚举

    有没有办法制作一个 protected enum abstract in C 基类示例 protected abstract enum commands CS0106 protected abstract void useCommands
  • 在 SQL 表的列中分离大小相关数据是否更有效?

    我有一个 MySQL 数据库表 其中有一列类型为 varchar 386 我选择这个字符数是因为我事先计算了最长条目的字符数 我目前有 400 000 个条目 但预计会随着时间的推移而增加 我进行了一些测试 发现大约 390 000 个条目
  • 如何使 Maven 程序集插件 dependencySets 描述符包含 POM 文件中定义的依赖项?

    例如 POM 依赖声明 这仅用于演示目的 而不是我的实际代码
  • DB2 400 落柱

    我想删除一个名为id这是一个自动递增的PK SQL alter table CO88GT XGLCTL drop column id cascade 我得到 Error SQL0952 Processing of the SQL state
  • 如何在其他标记之上显示 Google 地图 Android 标记?

    我的应用程序中有多个标记 有时其中一些位于同一位置 我希望其中一些标记始终显示在其他标记的前面 我应该如何进行 先感谢您 标记 setZIndex Float MAX VALUE
  • Three.js StereoEffect 显示 2 只眼睛的网格

    我有一个使用 StereoEffect 渲染器的 THREE js 场景 但是 当我向场景添加新网格时 它们会显示在两只眼睛上 而不是为每只眼睛重复显示 我相信 THREE js 应该自动完成 我不必自己复制它们 我尝试复制它们 但这是很多
  • Facebook Messenger API:发送结构化消息

    当关注时这个例子 https developers facebook com docs messenger platform quickstart messageData attachment type template payload t
  • 将 mbTiles 文件合并在一起的最佳方法

    我已经从 openMapTiles 为美国地图的不同子区域生成了 mbtile 现在 我想将所有生成的 mbTiles 文件合并在一起 有什么更好的方法来做到这一点 Thanks 一旦你有tile join https github com
  • 在 SD 卡上安装 Android 应用

    我开发了一个可以安装在 SD 卡或移动内存中的应用程序 我用了android installLocation属性设置为 auto 现在我面临的问题是 当我在设备上运行应用程序时 它显示我已启用 移动到 SD 卡 按钮 但是当我将应用程序上传
  • 如何使用 tf.data.Dataset.from_generator() 将参数发送到生成器函数?

    我想创建多个tf data Dataset使用from generator 功能 我想向生成器函数发送一个参数 raw data gen 这个想法是生成器函数将根据发送的参数产生不同的数据 这样我想raw data gen能够提供训练 验证