九十九诚 2024-02-01 03:59 采纳率: 0%
浏览 7

类 'nnet.cnn.TrainingOptionsADAM' 的属性 'verbose' 无法识别。

类 'nnet.cnn.TrainingOptionsADAM' 的属性 'verbose' 无法识别。

出错 pnp_admm (第 24 行)
if ~isfield(options, 'verbose'), options.verbose = 1; end

出错 M3 (第 303 行)
[x, iter] = pnp_admm(y,epsilon,Phit,Phi, options,net );

  • 写回答

3条回答 默认 最新

  • 专家-郭老师 Java领域新星创作者 2024-02-01 04:00
    关注

    参考通义千问和郭老师的小迷弟雅思莫了-编写提供,主要是为了帮助您快速解决问题,如下回答,您可以参考下,如有问题,评论区留言。

    这个错误信息表明,在 'nnet.cnn.TrainingOptionsADAM' 类中并没有定义一个名为 'verbose' 的属性,而在调用函数 pnp_admm 时尝试访问并初始化了这个属性。

    在类 'nnet.cnn.TrainingOptionsADAM' 中,若要添加一个控制训练过程是否显示详细信息的属性(例如 verbose),你需要确保在类定义中明确声明该属性:

    classdef TrainingOptionsADAM
        properties
            % ... 其他已存在的属性 ...
            verbose % 添加 verbose 属性,默认值可以在构造函数中设置
        end
    
        methods
            function obj = TrainingOptionsADAM(varargin)
                % 在构造函数中初始化 verbose 属性
                obj.verbose = false; % 或者根据需要设置为其他默认值
                % ... 其他初始化代码 ...
            end
        end
    end
    

    之后在 pnp_admm 函数中,就可以安全地检查和设置这个属性:

    function [x, iter] = pnp_admm(y, epsilon, Phit, Phi, options, net)
        if ~isfield(options, 'verbose')
            options.verbose = 1;
        end
        % ... 其他函数内容 ...
    end
    

    请确认你的类定义文件中是否已经正确包含了 'verbose' 这个属性。如果没有,你需要添加它;如果已经存在但依然报错,请检查是否有其他逻辑错误或者版本兼容性问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 2月1日

悬赏问题

  • ¥20 Wpf Datarid单元格闪烁效果的实现
  • ¥15 图像分割、图像边缘提取
  • ¥15 sqlserver执行存储过程报错
  • ¥100 nuxt、uniapp、ruoyi-vue 相关发布问题
  • ¥15 浮窗和全屏应用同时存在,全屏应用输入法无法弹出
  • ¥100 matlab2009 32位一直初始化
  • ¥15 Expected type 'str | PathLike[str]…… bytes' instead
  • ¥15 三极管电路求解,已知电阻电压和三级关放大倍数
  • ¥15 ADS时域 连续相位观察方法
  • ¥15 Opencv配置出错