비선형 성능안녕하세요,
정기적으로 비선형 플랫폼을 사용하는 고객이 있습니다.
그는 16 개의 매개 변수로 방정식을 정의하고 상대적으로 큰 데이터 (106300 행)로 추정하려고합니다. 상당히 긴 추정을 수행하는 데 약 3 시간이 걸릴 수 있습니다.
그는 4 코어 컴퓨터를 가지고 있지만 프로세스 중에는 하나만 사용됩니다.
RAM을 제외하고 누구든지 자신의 사건에 대한 시간 문제를 개선하기 위해 조언이 있습니까? 이 경우 RAM을 추가하면 실제로 좋은 영향을 미칩니 까?
기본적으로 그는 Newton 방법을 사용하고 있습니다. 이 옵션을 변경하는 것이 유용 할 수 있는지 잘 모르겠습니다.
제안 해 주셔서 감사합니다
피렌체
추신 : 나는 모두에게 좋은 축제 휴식을 원합니다!
재 : 비선형 공연나는 nick의 접근법, 특히 시작점과 사용 된 알고리즘에 동의합니다. 뉴턴을 사용할 때 시작점이 매우 중요합니다. 그럼에도 불구하고 뒤에있는 방법을 기반으로 로컬 솔루션을 생각해 낼 수 있습니다. 또한 다중 터닝 포인트로 비선형 동작이 높으면 뉴턴이 어려움을 겪습니다. 그러면 최적 점에서 다른 점으로 점프하여 수렴하기가 어려울 수 있습니다. BFGS 또는 Quasi Neeton이 더 잘 수행해야합니다. 그리고 그들은 진정한 최적의 결과를 낳을 것입니다. 그는 미리 설정된 매개 변수를 줄일 수없는 경우를 대비하여 두 가지 제안을 시도해야합니다. 나는 또한 이것이 큰 매개 변수 세트라는 것에 동의합니다. 수치 최적화에서는 드문 일이 아닙니다. 그러나 Newton에서는 각 반복에서 16x16 hessian을 계산해야하며 시간이 많이 걸리는 역수라는 점을 명심해야합니다. 또한 Newton의 경우 각 단계가 이전 단계의 미분을 계산해야하므로 다중 스레드라고 생각하지 않습니다. 그러나 헤 시안 계산에서 멀티 스레드 될 수 있습니다. 또한 JMP에서 1과 다른 단계 크기를 구현했는지 확실하지 않으므로 많은 극단의 비선형 함수에 더 좋습니다. BFGS와 예를 들어 levenberg markwardt는 이전 반복의 기울기 정보에 기초하여 헤 시안의 근사치를 사용하고 있습니다. 따라서 적은 작업이 필요합니다.재 : 비선형 공연안녕, 피렌체!
16 개의 매개 변수가있는 모델은 많이 들립니다… 16 개의 매개 변수를 실행하는 이유 (물리적 모델 등)가 있습니까? 또한 어떤 버전의 JMP, OS, Ram 크기 등을 사용하고 있습니까?
비선형은 하이퍼 스레드 방식이므로 (“JMP 사용 pg 602 참조”) 4 개의 코어 모두에서 실행되어야합니다. 장착하는 동안 다른 코어에 하중이 보이지 않으면 하이퍼 스레딩을 허용하지 않는 무언가가 설정되었을 수 있습니다. JMP에서 성능을 향상시킬 수 있기 때문에 그 후로 먼저 갈 것입니다.
베스트,
엠
재 : 비선형 공연비선형 플랫폼을 사용하여 고객과 항상 아래 전략을 공유합니다. 일반적으로 솔루션에 빠르게 수렴하는 데 도움이됩니다.
-다양한 반복 옵션 조합 (Newton, QuasiNewton BFGS, QuasiNewton SR1 및 Numeric Derivatives Only)을 사용하십시오.
-슬라이더를 사용하여 매개 변수의 시작 값을 조정하여 곡선을 시각적으로 더 잘 수정하십시오.
-방정식을 변환하여 다항식의 중심을 설정하면 최적화 조건이 개선됩니다.
-허용되는 반복 횟수 증가
수렴 기준 중 하나를 이완
-다른 모델을 사용해보십시오. 데이터가 선택한 모델과 동일한 관계를 나타내지 않으면 솔루션으로 수렴하기가 어렵습니다.
-매개 변수 수를 줄입니다. 초과 정의 된 모델은 관계를 모델링하는 데 필요한 것보다 많은 매개 변수가있는 모델입니다.
재 : 비선형 공연안녕하세요 피렌체,
다소 역효과를 낼 수 있지만 고객은 훨씬 작은 데이터 하위 집합에 대해 매개 변수 추정을 시도한 다음 더 큰 데이터 집합과 추정값을 비교하여 전체 데이터 집합을 사용하여 얼마나 멀리 떨어져 있는지 확인하는 것이 좋습니다. 10 % 또는 20 %의 데이터로 합리적인 견적을 얻을 수 있습니까? 일단 그들이 일련의 매개 변수를 가지고 있으면 그들이 신뢰할 수있는 공식을 나머지 데이터 세트에 적용 할 수 있습니다.
베스트,
계산서