2016-08-12 8 views
1

예측 모델을 만들려고하고 있으며 현재 JMP 모델로 작업하고 있습니다. 우리의 현재 접근법은 n 번째 다항식을 추측 한 다음 어떤 용어가 중요한 모델 효과가 아닌지 살펴 보는 것입니다. 다항식이 항상 최상의 것은 아니며 이로 인해 많은 혼란과 나쁜 모델이 생깁니다. 우리의 데이터는 2 ~ 7 개의 효과를 가질 수 있으며 항상 하나의 응답을 갖습니다.가변 예측 예측 방정식을 목표로하는 Python 모델

저는 이것을 위해 python을 사용하고 싶지만 패키지 문서 나 온라인 안내서는 찾기가 어렵습니다. 파이썬에서 특정 n 차 다항식 또는 선형 회귀를 맞추는 방법을 알고 있지만 데이터 집합에 가장 적합한 함수 유형을 '추측'하는 방법을 알지 못합니다.

내가 뭔가 명확하지 않거나 다양한 기능 유형을 통해 프로브를 작성해야합니까? 정밀도가 가장 중요합니다. 작은 (~ 2000x100) 데이터 세트로 작업하고 있습니다.

잠재적으로 나는 더 작은 훈련 세트에서 회귀를 할 수 있고, 검증 세트와 비교하여 테스트하고, 모델의 순위를 매기고 최선을 선택합니다. 더 좋은 점이 있나요?

답변

1

바닐라 리니어 모델 대신 다른 회귀 모델을 사용해보십시오.

poly = PolynomialFeatures(degree=2) 
X_ = poly.fit_transform(input_data) 

을 그리고 Y_ 당신에 대해 훈련 할 출력 어디 있는지 올가미 회귀

clf = linear_model.Lasso(alpha = 0.5, positive = True) 
clf.fit(X_,Y_) 

을 통해 가중치를 제약 조건 수 :

당신은 다항식 회귀이 같은 것을 사용할 수 있습니다.

알파를 0으로 설정하면 간단한 선형 회귀로 바뀝니다. 알파는 기본적으로 작은 가중치에 대해 부과 된 벌칙입니다. 당신은 또한 무게를 엄격하게 긍정적으로 만들 수 있습니다. 이것을 확인하십시오 here.

소규모로 실행하고 교차 유효성 검사를 수행하여 적합성을 확인하십시오.

다항식의 차수를 늘리면 일반적으로 과도하게됩니다. 따라서 4 학년이나 5 학년을 사용해야하는 경우 다른 모델을 찾아야합니다.

이 부분을 보셔야합니다. question. 이렇게하면 커브가 잘 맞는지 확인할 수 있습니다.

0

ANOVA (analysis of variance)은 공분산을 사용하여 어떤 효과가 통계적으로 유의한지 결정합니다. 임의로 용어를 선택하지 않아도됩니다.

그러나 데이터가 동일하지 않은 경우 (즉, 단일 모델을 모든 데이터에 적용하면 안 됨), scikit-learn 툴킷을 사용하여 다음 중 일부를 선택할 수있는 분류 기준을 구축하는 것이 좋습니다. 적합 할 데이터.