ORTCheckpoint

Objective-C

@interface ORTCheckpoint : NSObject

Swift

class ORTCheckpoint : NSObject

ORT 检查点是模型在给定时间点的状态快照。

此类保存了完整的训练会话状态,包括模型参数、其梯度、优化器参数和用户属性。ORTTrainingSession 通过访问和更新所包含的训练状态来利用 ORTCheckpoint

自 1.16 版本可用。

注意

此类仅在启用训练 API 时可用。
  • 不可用

    声明

    Objective-C

    - (instancetype)init NS_UNAVAILABLE;
  • 从磁盘上的目录创建检查点。

    警告

    检查点状态的构建需要实例化 ORTEnv。如果 ORTEnv 未正确初始化,则初始化将失败。

    声明

    Objective-C

    - (nullable instancetype)initWithPath:(nonnull NSString *)path
                                    error:(NSError *_Nullable *_Nullable)error;

    Swift

    init(path: String) throws

    参数

    path

    检查点目录的路径。

    error

    可选的错误信息,如果在发生错误时设置。

    返回值

    实例,或如果发生错误则为 nil。

  • 将检查点保存到磁盘上的目录。

    声明

    Objective-C

    - (BOOL)saveCheckpointToPath:(nonnull NSString *)path
              withOptimizerState:(BOOL)includeOptimizerState
                           error:(NSError *_Nullable *_Nullable)error;

    Swift

    func save(toPath path: String, withOptimizerState includeOptimizerState: Bool) throws

    参数

    path

    检查点目录的路径。

    includeOptimizerState

    标志,指示是否保存优化器状态。

    error

    可选的错误信息,如果在发生错误时设置。

    返回值

    检查点是否成功保存。

  • 向此检查点添加一个整型属性。

    声明

    Objective-C

    - (BOOL)addIntPropertyWithName:(nonnull NSString *)name
                             value:(int64_t)value
                             error:(NSError *_Nullable *_Nullable)error;

    Swift

    func addIntProperty(withName name: String, value: Int64) throws

    参数

    name

    属性的名称。

    value

    属性的值。

    error

    可选的错误信息,如果在发生错误时设置。

    返回值

    属性是否成功添加。

  • 向此检查点添加一个浮点型属性。

    声明

    Objective-C

    - (BOOL)addFloatPropertyWithName:(nonnull NSString *)name
                               value:(float)value
                               error:(NSError *_Nullable *_Nullable)error;

    Swift

    func addFloatProperty(withName name: String, value: Float) throws

    参数

    name

    属性的名称。

    value

    属性的值。

    error

    可选的错误信息,如果在发生错误时设置。

    返回值

    属性是否成功添加。

  • 向此检查点添加一个字符串属性。

    声明

    Objective-C

    - (BOOL)addStringPropertyWithName:(nonnull NSString *)name
                                value:(nonnull NSString *)value
                                error:(NSError *_Nullable *_Nullable)error;

    Swift

    func addStringProperty(withName name: String, value: String) throws

    参数

    name

    属性的名称。

    value

    属性的值。

    error

    可选的错误信息,如果在发生错误时设置。

    返回值

    属性是否成功添加。

  • 从此检查点获取一个整型属性。

    声明

    Objective-C

    - (int64_t)getIntPropertyWithName:(nonnull NSString *)name
                                error:(NSError *_Nullable *_Nullable)error;

    Swift

    func getIntProperty(withName name: String) throws -> Int64

    参数

    name

    属性的名称。

    error

    可选的错误信息,如果在发生错误时设置。

    返回值

    属性的值,或如果发生错误则为 0。

  • 从此检查点获取一个浮点型属性。

    声明

    Objective-C

    - (float)getFloatPropertyWithName:(nonnull NSString *)name
                                error:(NSError *_Nullable *_Nullable)error;

    Swift

    func getFloatProperty(withName name: String) throws -> Float

    参数

    name

    属性的名称。

    error

    可选的错误信息,如果在发生错误时设置。

    返回值

    属性的值,或如果发生错误则为 0.0f。

  • 从此检查点获取一个字符串属性。

    声明

    Objective-C

    - (nullable NSString *)getStringPropertyWithName:(nonnull NSString *)name
                                               error:(NSError *_Nullable *_Nullable)
                                                         error;

    Swift

    func getStringProperty(withName name: String) throws -> String?

    参数

    name

    属性的名称。

    error

    可选的错误信息,如果在发生错误时设置。

    返回值

    属性的值。