You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KERAS运行时报错'int' object is not iterable如何解决?

错误根因

  • TensorFlow版本API差异:高版本TensorFlow(Colab默认环境)支持tf.keras.layers.Input直接传入单个整型作为输入维度,而你本地使用的TensorFlow 1.12.0要求该入参必须为元组类型。
  • 代码语法问题:你写的(input_dim)在Python中不会被识别为单元素元组,括号仅被当做运算优先级符号,实际传入Input层的是整型值,触发迭代int的类型错误。

修复方法

修改dense_layer函数中Input层的定义,补充逗号生成合法单元素元组:

def dense_layer(input_dim, dense_size):
    # 仅修改这一行,末尾加逗号即可
    x = tf.keras.layers.Input((input_dim,))
    dense = tf.keras.layers.Dense(dense_size)(x)
    model = tf.keras.models.Model(inputs=x, outputs=dense)
    return model

其他优化建议

  • 补全代码缺失的依赖导入:需要提前添加import tensorflow as tf、import time、import numpy as np语句。
  • 修改文件写入逻辑:循环内重复打开文件未关闭,建议使用上下文管理器写法避免资源泄漏:
    with open("dense_data.csv", "a+") as to_write:
        # 后续写入逻辑放在缩进块内
    

内容的提问来源于stack exchange,提问作者ayesha shah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 17:45:03