成功解决AttributeError: 'MapDataset' object has no attribute 'group_by_window'-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

成功解决AttributeError: 'MapDataset' object has no attribute 'group_by_window'

简介: 成功解决AttributeError: 'MapDataset' object has no attribute 'group_by_window'

解决问题


image.png


AttributeError: 'MapDataset' object has no attribute 'group_by_window'



解决思路


错误属性:“mapdataset”对象没有“window”的“group”属性


A transformation that groups windows of elements by key and reduces them.


This transformation maps each consecutive element in a dataset to a key using key_func and groups the elements by key. It then applies reduce_func to at most window_size_func(key) elements matching the same key. All except the final window for each key will contain window_size_func(key) elements; the final window may be smaller.


You may provide either a constant window_size or a window size determined by the key through window_size_func.


Args:


key_func: A function mapping a nested structure of tensors (having shapes and types defined by self.output_shapes and self.output_types) to a scalar tf.int64 tensor.

reduce_func: A function mapping a key and a dataset of up to window_size consecutive elements matching that key to another dataset.

window_size: A tf.int64 scalar tf.Tensor, representing the number of consecutive elements matching the same key to combine in a single batch, which will be passed to reduce_func. Mutually exclusive with window_size_func.

window_size_func: A function mapping a key to a tf.int64 scalar tf.Tensor, representing the number of consecutive elements matching the same key to combine in a single batch, which will be passed to reduce_func. Mutually exclusive with window_size.

Returns:


A Dataset transformation function, which can be passed to tf.data.Dataset.apply.


Raises:


ValueError: if neither or both of {window_size, window_size_func} are passed.


解决方法


'MapDataset' 这种对象,没有'group_by_window'这种属性。


tf.contrib.data.group_by_window(

   key_func,

   reduce_func,

   window_size=None,

   window_size_func=None

)

   # batched_dataset = src_tgt_dataset.group_by_window(

   #     key_func=key_func, reduce_func=reduce_func, window_size=batch_size)

   #20180626修改此处

   batched_dataset = src_tgt_dataset.apply(

       tf.contrib.data.group_by_window(

           key_func=key_func, reduce_func=reduce_func, window_size=batch_size))




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章
最新文章
相关文章