열을 사용하여 변수를 해결하는 선형 표현식의 최적화Minimize() 또는 유사한 함수를 사용하여 이 식을 해결하는 방법이 있습니까?
expr1 = expr((a:A+b:B+c:C)=:Target);
다음 표를 사용하여:
| ㅏ | 비 | 씨 | 표적 |
| 10 | 0 | 0 | 30 |
| 500 | 0 | 0 | 1500 |
| 9999 | 0 | 0 | 29997 |
| 30 | 0 | 100 | 590 |
| 0 | 50 | 9999 | 500095 |
| 0 | 1000 | 500 | 4500 |
| 50 | 9999 | 0 | 20148 |
| 200 | 100 | 0 | 800 |
| 10 | 0 | 0 | 30 |
| 0 | 0 | 0 | 0 |
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화예, 매개변수 추정치를 꺼낼 수 있습니다. 이전 포스팅에서 말씀드렸듯이, JMP 스크립팅 가이드. 아마도 "JMP 보고서 탐색" 섹션부터 시작할 것입니다.
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화좋습니다. Fit Model이 잘 작동하는 것 같습니다. 감사합니다. 또한 자세한 내용을 알아보기 위해 해당 클래스를 살펴보겠습니다.
적합 모델 출력의 "매개변수 추정치" 테이블이 내가 찾고 있는 숫자입니다. JSL을 사용하여 해당 테이블을 데이터 테이블로 추출하는 방법이 있습니까?
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화JMP 학습 탭에서 제공되는 무료 산업 문제 해결을 위한 통계적 사고 과정(또는 줄여서 통계적 사고 과정)을 살펴보고 싶을 수도 있습니다. 회귀 섹션을 보십시오. 그러면 회귀의 작동 방식과 JMP에서 이를 수행하는 방법을 알 수 있습니다. 회귀는 이 크기의 문제를 처리할 수 있습니다.
X 열을 JMP 테이블에 입력하십시오. 20개의 X 열과 200개의 행이 있습니다. 테이블에 총 21개의 열이 있도록 Y 열도 넣으십시오. JMP 스크립팅을 사용하려는 경우 여기에서 JSL 코드를 사용할 수 있습니다. 또는 모델 적합을 사용할 수 있습니다. Y를 지정하십시오. 모든 X를 강조 표시하고 추가를 클릭합니다. 그런 다음 모델 실행을 클릭합니다.
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화이 방법이 유망해 보이지만 확장하는 데 문제가 있습니다... 로그 출력:
입력에 누락된 값이 있습니다.
[., ., ., ., ., ., ., ., ., ., .]
나는 결국 이것을 최대 20개의 변수 문제로 확장하려고 시도하고 있습니다.
X = [20x200] 행렬
Y = [1x200] 행렬
Y = M*X , 여기서 M은 20개 변수의 행렬입니다.
선형 회귀로 여전히 가능합니까? 일부 온라인 리소스는 배치 경사하강법을 제안하는 것 같습니다.
감사
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화원래 질문의 문구는 아마도 JSL을 통한 솔루션이 필요함을 시사합니다. 이 경우 JMP 플랫폼 사용을 피하는 대안은 다음과 같습니다.
NamesDefaultToHere(1);
// Data table
dt = New Table( "Test",
Add Rows( 10 ),
New Column( "A",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [10, 500, 9999, 30, 0, 0, 50, 200, 10, 0] )
),
New Column( "B",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [0, 0, 0, 0, 50, 1000, 9999, 100, 0, 0] )
),
New Column( "C",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [0, 0, 0, 100, 9999, 500, 0, 0, 0, 0] )
),
New Column( "Target",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [30, 1500, 29997, 590, 500095, 4500, 20148, 800, 30, 0] )
)
);
// Get values into vectors (could use table subscripting too)
Y = Column(dt, "Target") << getValues;
Avals = Column(dt, "A") << getValues;
Bvals = Column(dt, "B") << getValues;
Cvals = Column(dt, "C") << getValues;
X = Avals||Bvals||Cvals;
// Do the regression (see 'Help > Scripting Index' for more details of 'results')
results = LinearRegression(Y, X);
parameters = results[1];
Print(parameters);
그러나 ~함에 따라 @Dan_Obermiller 지적한 바와 같이 회귀 문제로 볼 수 있으며 일반적으로 데이터나 결과를 육안으로 검사하지 않고 회귀를 수행하는 것은 좋지 않습니다.
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화결과는 Parameter Estimates 보고서에 있습니다. JSL을 통해 가져오려는 경우 JMP 스크립팅 가이드를 참조하세요. 아마도 "JMP 보고서 탐색" 섹션부터 시작할 것입니다.
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화안녕 @단 , 답변 주셔서 감사합니다. 당신이 언급한 결과를 어떻게 끌어낼 수 있지만 이것은 내가 필요한 것에 대해 유망한 것 같습니다.

또한 a, b 및 c에 대한 개별 값을 어떻게 추출합니까?
감사!
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화나는 비선형 플랫폼(선형 최적화의 경우에도)과 함께 행운을 빕니다.열과 함께 매개변수를 입력해야 하며 해당 매개변수에 대해 해결됩니다.
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화나는 당신이 정말로 무엇을 하려는지 잘 모르겠지만 이것은 나에게 회귀 문제처럼 보입니다.
(a*A + b*B + c*C)(예측값이라고 부름)와 Target 사이의 차이가 가능한 한 작도록 a, b 및 c의 값을 찾습니다. 회귀 컨텍스트에서 오류 = 대상 - 예측 값인 제곱 오류의 합을 최소화합니다.
내가 한 Fit Model을 사용하여 대화식으로 이 작업을 수행할 수 있습니다. 가는 스크립트는 아래에 있습니다. 결과는 다음과 같습니다.

Fit Model(
Y( :Target ),
Effects( :A, :B, :C ),
Personality( "Standard Least Squares" ),
Emphasis( "Effect Leverage" ),
Run(
:Target << {Summary of Fit( 1 ), Analysis of Variance( 1 ),
Parameter Estimates( 1 ), Scaled Estimates( 0 ),
Plot Actual by Predicted( 1 ), Plot Regression( 0 ),
Plot Residual by Predicted( 1 ), Plot Studentized Residuals( 0 ),
Plot Effect Leverage( 1 ), Plot Residual by Normal Quantiles( 0 ),
Box Cox Y Transformation( 0 )}
)
);
Re: 열을 사용하여 변수를 해결하는 선형 표현식의 최적화죄송합니다. 표현 오류:
dt = 현재 데이터 테이블;
expr1 = expr((a*dt:A+b*dt:B+c*dt:C)=:목표);
a, b 및 c에 대한 값을 식별하려고 합니다.