public struct ParameterGroupOptimizerBuilder
ParameterGroupOptimizer
를 빌드합니다. 이는 기본적으로 모델의 단일 가중치 수준에서 사용됩니다. ( [Bool]
에서 ParameterGroupOptimizer로)에 의해 선택된 매개변수 그룹의 매핑이 최종 최적화 프로그램을 정의합니다.
선언
public init()
선언
public mutating mutating func makeParameter(_ name: String, _ value: Float) -> GlobalAccessor
선언
public subscript(global: GlobalAccessor) -> Float { get }
선언
public subscript(state name: String) -> StateAccessor { mutating get }
선언
public subscript(local name: String) -> LocalAccessor { mutating get }
콜백 목록에 콜백을 추가합니다.
선언
public mutating mutating func appendCallback(_ cb: @escaping OptimizerCallback)
옵티마이저를 반환하고 빌더를 지웁니다.
선언
public mutating mutating func makeOptimizer() -> ParameterGroupOptimizer
현재 매개변수 그룹 최적화에 추진력이 있는 sgdStep을 적용합니다.
선언
public mutating func sgdStep( nesterov: Bool, mom: GlobalAccessor, lr: GlobalAccessor, velocity: StateAccessor )
LARS에서 사용되는 ClippedTrustRatio를 계산합니다.
선언
public mutating func clippedTrustRatio( trustCoefficient: GlobalAccessor, epsilon: GlobalAccessor, weightDecay: GlobalAccessor ) -> LocalAccessor
trustRatio(LARS에서 사용됨)에 따라 그라데이션의 크기를 조정합니다.
선언
public mutating mutating func scaleGradByTrustRatio(trustRatio: LocalAccessor)
그라디언트에 가중치 감소 스케일링을 적용합니다.
선언
public mutating mutating func scaleGradient(byWeightDecay weightDecay: GlobalAccessor)
새로운 기울기(학습률에 따라 조정됨)를 기반으로 속도 매개변수를 다시 계산합니다.
선언
public mutating func updateVelocity( mom: GlobalAccessor, lr: GlobalAccessor, velocity: StateAccessor )