JMP에서 "Power Fit" 모델 구현 및 모델 조정모두,
엑셀의 '파워핏'에 잘 맞는 데이터가 있습니다.
이 게시물에서 유용한 정보를 찾았습니다( https://community.jmp.com/t5/Discussions/Power-Fit-Equation-for-JMP/td-p/5783 )
이 주제에 대한 추가 지침을 주시면 감사하겠습니다.
- Excel의 데이터에 대해 검정력 맞춤을 수행하면 맞춤이 상당히 합리적으로 보입니다.
- JSL의 데이터에 대한 검정력 맞춤을 수행하기 위해 theta1과 theta2는 조정 가능한 2개의 매개변수입니다. 데이터를 잘 맞는 모형으로 만들기 위해 세타2와 세타1의 합리적인 값이 무엇인지 시행착오를 거쳐 알아냈습니다.
사용자가 모델을 과대적합하지 않고 주어진 데이터 세트에 대한 theta1 및 theta2에 대한 최상의 값이 무엇인지 어떻게 알아낼 수 있습니까?
가능하다면 친절하게 예를 들어주세요.
Re: JMP에서 "Power Fit" 모델 구현 및 모델 조정마무리를 위해 기술 지원으로부터 받은 응답을 게시합니다.
기본적으로 JSL을 통한 비선형 플랫폼 시작에는 특정 제한 사항이 있습니다. 즉, 비선형 모델을 활용하는 가장 좋은 방법은 다음을 수행하는 것입니다.
1. 모델을 지배하는 공식을 인코딩하는 열을 정의합니다.
2. 공식화된 열을 비선형 플랫폼의 함수 호출에 대한 입력으로 제공합니다.
이것은 초기 시작 값을 요구하는 동안 내가 지금까지 찾은 최고의 답변입니다.
dt << New Column("Model E", Numeric, Continuous,
Formula( Parameter( {theta1 = 0.03, theta2 = 1.25}, theta1 * :year ^ theta2 ) )
);
dt << New Column("Exponential 3", Numeric, Continuous,
Formula( Parameter( {a = -20, b = 0.01, c = 0.01},
a + b * Exp( c * :year ) ) )
);
dt << New Column("Mechanistic Growth", Numeric, Continuous,
Formula( Parameter( {a = -40, b = 0.01, c = -0.01},
a * (1 - b * Exp( -c * :year ) ) ) )
);
dt << Run Formulas;
fc = Nonlinear( Y( :pop ), X( :Name("Exponential 3" )) );
fc << Finish;
fc << Save Prediction Formula;
//End Script;Re: JMP에서 "Power Fit" 모델 구현 및 모델 조정비선형 플랫폼이 어떻게 작동하는지에 대한 나의 이해는 약간 다릅니다.해당 플랫폼을 실행하려면 매개변수를 사용하여 수식 예측 열을 생성합니다. 이러한 매개변수의 초기 값을 추측으로 입력해야 한다고 생각합니다."이동"을 클릭하면 플랫폼이 솔루션으로 수렴되었는지 여부를 알려줍니다.수렴하고 솔루션을 저장하면 생성된 예측 변수 열에 해당 값이 배치되지만 수식은 여전히 원본과 동일합니다.즉, 예측 열에는 초기화하고 최적화해야 하는 매개변수가 포함되어 있습니다.그러나 다른 JMP 플랫폼과 달리 저장 열은 새 열을 생성하지 않고 사용자가 생성한 동일한 공식 열의 비선형 최적화에만 솔루션 값을 배치합니다.
내 이해가 틀렸을 수도 있으므로 누군가가 나를 바로잡을 수 있습니다.
Re: JMP에서 "Power Fit" 모델 구현 및 모델 조정@dale_lehman , @susan_walsh1
귀하의 제안에 감사드립니다.
워크플로우를 이해하기 위해 예제를 작성하려고 합니다.
"비선형" 모델 플랫폼을 시작할 때 다음을 지정합니다.
- Y - 변수
- X - 변수
- 비선형 모델
예측 공식 저장 - 값이 데이터 테이블에 저장됩니다.
이 단계를 수행하면 모델의 매개변수에 대한 시작 값을 설정하지 않기 때문에 JMP가 자동으로 가장 적합하다고 생각되는 값을 모델 매개변수에 설정하고 예측 데이터를 열로 저장한다고 가정합니다. 데이터 테이블 .
그런데 동일한 데이터 테이블에서 두 번째 모델을 실행하려고 하면 두 번째 비선형 플랫폼을 실행한 후 추가되는 열에 이전 모델의 방정식이 포함됩니다.아래 샘플 코드를 참조하세요.
Clear Log();
Clear Globals();
dt = Open( "$SAMPLE_DATA/Nonlinear Examples/US Population.jmp" );
/* Run Predictions using different models*/
PowerFitPredModel = Nonlinear(Y(:pop),X(:Name("X-formula")),"Model E(2P)");
PowerFitPredModel << Save Prediction Formula ;
PowerFitPredModel << Close Window;
Wait(0.1);
CPredModel = Nonlinear(Y(:pop),X(:Name("X-formula")),"Mechanistic Growth Model(3P)");
CPredModel << Save Prediction Formula ;
CPredModel << Close Window;
이제 내가 따르지 않는 몇 가지 사항은 다음과 같습니다.
- 비선형 플랫폼을 여러 번 실행할 때 위 스크립트에서 내가 호출한 첫 번째 모델 방정식만 적용되는 이유는 무엇입니까?
- JMP가 모델에 적합하다고 가정하는 매개변수가 수렴하는 솔루션을 생성하는지 어떻게 확인할 수 있나요?

Re: JMP에서 "Power Fit" 모델 구현 및 모델 조정대답은 없지만 흥미로운 토론이 시작될 수 있습니다.첨부된 내용은 자동차 속도와 정지 거리에 대한 일부 관찰 내용이 포함된 작은 데이터 세트입니다.전력 곡선이 잘 들어맞는 것 같습니다.추정 열과 함께 JMP의 비선형 플랫폼을 사용했습니다. 1,1의 초기 매개변수 추측을 사용했습니다(올바른 값에 너무 가깝지는 않지만 그리 멀지도 않음). 데이터 세트에 저장된 내용은 비선형에서 가장 적합합니다. 플랫폼(질문에 대한 부분 답변에서 JMP는 theta1과 theta2를 계산하므로 "과적합"에 대해 걱정할 필요가 없지만 추측을 시작하는 데 사용하는 값에 따라 JMP가 솔루션에 수렴할지 여부에 대한 문제가 있습니다) .또한 Power Fit 추세선에 대해 Excel에서 제공하는 공식을 사용하여 열을 넣었습니다.동일하지 않으니 참고하세요!Excel 적합보다 JMP 적합이 더 좋습니다.Excel은 종종 최상의 통계 분석을 수행하지 않기 때문에 이는 놀라운 일이 아닙니다.그러나 이 매우 간단한 데이터에 대해 두 가지 솔루션이 얼마나 다른지에 놀랐습니다.
저는 JMP와 Excel 모두 데이터에 힘의 관계를 맞추는 데 문제가 발생할 수 있다고 생각합니다.JMP는 수렴하는 솔루션으로 수렴할 수도 있고 그렇지 않을 수도 있습니다. 저는 그 솔루션이 신뢰할 수 있다고 믿습니다.Excel은 단지 적합성을 제공합니다. 적합하지 않으면 오류가 발생하는지 또는 어떤 일이 발생하는지 알 수 없습니다. 아마도 누군가가 Excel이 거듭제곱 함수를 데이터에 맞추는 방법을 밝힐 수 있을 것입니다.나는 "과적합"이 여기서 빨간 청어라고 생각합니다. 이는 권력 관계가 올바른 관계인지 아닌지에 관한 것이지 적합해지는 특정 권력 관계가 아닙니다.알고리즘은 theta1 및 theta2 값을 선택하므로 데이터에 가장 잘 맞는 값이 됩니다. 과적합은 항상 가능성이 있지만 이는 데이터를 맞추는 데 사용하는 함수의 속성이지 특정 선택 항목이 아닙니다. 알고리즘이 선택하는 매개변수입니다.아마도 이를 더 명확하게 표현하면, 이 특정 데이터가 모델링하려는 데이터(아마도 다른 유형의 자동차)의 좋은 샘플이 아닌 경우 이 데이터에 전력 관계를 맞추면 과적합의 위험이 있다는 것입니다.
Excel과 JMP 질문은 다른 질문이므로 둘 사이의 차이점을 밝힐 수 있는 사람이 있다면 관심이 있습니다.