개요:
비선형 적합이 성공했는지 확인하려면 어떻게 해야 합니까?
(실제 데이터가 항상 수렴되는 것은 아니며 자동화/테스트/제품 문제에 대한 수동 검토가 필요할 수 있습니다.)
세부 사항:
비선형 적합이 수렴하지 못한 후 응답을 스크립팅하고 싶습니다.적합하지 않으면 다른 방법으로 처리하거나 결국 수동 검토를 위해 라벨을 지정해야 합니다. (저는 모집단을 샘플링한 다음 각 부분에 대해 비선형 적합을 수행합니다.일반적으로 수렴에 실패하면 어딘가에 테스트 문제가 있는 것입니다. 나는 실제로 수렴 기준을 느슨하게 하고 싶지 않다.)
('실패' 메시지: "실패: 목적 함수를 감소시킬 수 없습니다.")

Numeric Derivatives Only에서 수정된 스크립트(도움말 > 스크립팅 색인 > "<<비선형")
(현재 JMP 15.2.1 실행 중)
Names Default To Here( 1 );
dt = Open(
"$SAMPLE_DATA/Nonlinear Examples/US Population.jmp"
);
// Random, intentionally divergent, formula on this dataset
dt << New Column( "Random", Numeric, Formula( Random LogLogistic(5) ) );
dt << New Column( "FancyPredictionFormula",
Numeric,
Continuous,
Formula(
Parameter(
{Rth0 = 735, n = 0.5},
(:year / :pop) * ((1 - ((n - 1) * :pop * Rth0) / (:year
* (300 / :year) ^ n)) ^ (-1 / (n - 1)) - 1)
)
)
);
nonlinear = dt << Nonlinear(
Y( :Name( "Random" ) ),
X( :Name("FancyPredictionFormula") ),
Expand Intermediate Formulas( 1 ),
Numeric Derivatives Only( 1 ),
QuasiNewton SR1,
Interation Limit(50),
Finish,
Plot( 0 ),
Confidence Limits,
Save Estimates
);
// How to check if nonlinear fit succeeded?
이상적인.
성공 또는 실패를 나타내는 어딘가에 비선형 적합 플랫폼에 의해 반환된 bool 상태 변수가 있다면 그것이 성공을 확인하는 이상적인 방법이 될 것이라고 생각합니다.
대안 1.
또한 데이터를 표로 만들거나 요약하여 모든 : 이름 ( "FancyPredictionFormula" ) 값은 0입니다.(적합이 실패하면 값이 0인 것 같습니다.)
대안 2.
XML을 확인하고 '실패' 메시지를 읽는 방법이 있을 것입니다.
당신의 시간과 배려에 감사드립니다.
- 오브리