파이썬에서 다변량 선형 회귀


10

다변량 선형 회귀를 구현하는 Python 패키지를 찾고 있습니다.

(용어 참고 : 다변량 회귀 분석은 종속 변수가 둘 이상인 경우를 처리 하고 다중 회귀 분석은 종속 변수가 하나 이상이지만 독립 변수가 둘 이상인 경우를 처리합니다.)


나는 이것에도 관심이 있지만 비선형 변환 후 특징 벡터 만 원합니다. 따라서 행에 는 2 개의 변수가있는 차수 2 모델에 대한 것입니다. [1,엑스1,엑스2,엑스1엑스2,엑스12,엑스22]
피노키오

답변:


9

sklearn.linear_model.LinearRegression을 계속 사용할 수 있습니다 . y종속 변수가있는 열 수만큼 출력 을 행렬로 만들면됩니다. 비선형 을 원하면 다른 기본 함수를 시도하거나 다항식 기능을 사용하거나 NN과 같은 다른 회귀 방법을 사용할 수 있습니다.


1
다변량 로지스틱 회귀에 대해 구체적으로 묻고 있습니까? 한 번에 많은 분류를 수행하고 싶습니까? 다변량 선형 회귀가 확실히 구현됩니다. sklearn 라이브러리를 사용하려면 로지스틱 회귀 분석을 다르게 구성해야합니다.
jamesmf

죄송합니다, 잘못 읽었으며 선형 회귀에 대해 생각하는 sklearn.linear_model.LogisticRegression 문서를 읽고있었습니다. 미래의 독자들을 혼란스럽게하지 않기 위해 내 의견을 삭제하겠습니다. 감사!
Franck Dernoncourt

다항식 특징 벡터를 얻는 방법을
Pinocchio


2

재미를 위해 튜플을 형성하여 손으로 기능을 계산할 수 있습니다. 에스이자형=(1,...,) 그런 에스미디엄(에스이자형)=나는=1. 이러한 튜플을 구성하면 각 항목에 현재 원시 기능이 증가해야하는 전력이 표시됩니다. 그래서 말해(1,2,) monomial에 매핑 엑스1엑스22엑스.

튜플을 얻는 코드는 다음과 같습니다.

def generate_all_tuples_for_monomials(N,D):
    if D == 0:
        seq0 = N*[0]
        sequences_degree_0 = [seq0]
        S_0 = {0:sequences_degree_0}
        return S_0
    else:
        # S_all = [ k->S_D ] ~ [ k->[seq0,...,seqK]]
        S_all = generate_all_tuples_for_monomials(N,D-1)# S^* = (S^*_D-1) U S_D
        print(S_all)
        #
        S_D_current = []
        # for every prev set of degree tuples
        #for d in range(len(S_all.items())): # d \in [0,...,D_current]
        d = D-1
        d_new = D - d # get new valid degree number
        # for each sequences, create the new valid degree tuple
        S_all_seq_for_deg_d = S_all[d]
        for seq in S_all[d]:
            for pos in range(N):
                seq_new = seq[:]
                seq_new[pos] = seq_new[pos] + d_new # seq elements dd to D
                if seq_new not in S_D_current:
                    S_D_current.append(seq_new)
        S_all[D] = S_D_current
        return S_all

선형 대수학을 알고 있다면 회귀하기가 쉬워야합니다.

c = pseudo_inverse(X_poly)*y

예. 일반화에 관심이 있다면 정규 선형 회귀 분석을 수행하는 것이 좋습니다.


Yuval에 대한 감사의 말 은 도움을위한 CS 교환 입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.