목차
소개
학습 목표
목차
상호 작용 용어의 기본 사항을 이해합니다
수학적 표현
상호 작용 용어 추가
상호 작용 용어가 회귀 계수에 어떤 영향을 미칩니 까?
예 : 사용자 활동 및 소비 시간
시뮬레이션 시나리오 : 전자 상거래 플랫폼의 사용자 동작
상호 작용 용어가없는 모델
상호 작용 용어가있는 모델
모델 성능 비교
결론
주요 테이크 아웃
자주 묻는 질문
기술 주변기기 일체 포함 상호 작용 용어 이해를위한 안내서

상호 작용 용어 이해를위한 안내서

Apr 15, 2025 am 09:56 AM

소개

상호 작용 항은 종속 변수에서 둘 이상의 독립 변수의 효과를 캡처하기 위해 회귀 모델링에 통합됩니다. 때로는 제어 변수와 조사중인 대상 변수 간의 간단한 관계 일뿐 만 아니라 상호 작용 용어 가이 순간에 상당히 도움이 될 수 있습니다. 이들은 하나의 독립 변수와 종속 변수 사이의 관계가 다른 독립 변수의 수준에서 조건부 일 때마다 유용합니다.

물론 이것은 응답 변수에 대한 예측 변수의 효과가 다른 예측 변수의 수준에 달려 있음을 의미합니다. 이 블로그에서는 시뮬레이션 된 시나리오를 통해 상호 작용 용어의 아이디어를 검토합니다. 시간과 시간 예측 사용자가 과거의 행동을 사용하여 전자 상거래 채널에 소비하는 시간의 양을 예측합니다.

학습 목표

  • 상호 작용 용어가 회귀 모델의 예측력을 향상시키는 방법을 이해하십시오.
  • 회귀 분석에서 상호 작용 용어를 작성하고 통합하는 법을 배우십시오.
  • 실용적인 예를 통해 상호 작용 용어가 모델 정확도에 미치는 영향을 분석하십시오.
  • 상호 작용 용어가 예측 된 결과에 미치는 영향을 시각화하고 해석합니다.
  • 실제 시나리오에서 상호 작용 용어를 언제 그리고 왜 적용 해야하는지에 대한 통찰력을 얻으십시오.

이 기사는 Data Science Blogathon 의 일부로 출판되었습니다 .

목차

  • 소개
  • 상호 작용 용어의 기본 사항을 이해합니다
  • 상호 작용 용어가 회귀 계수에 어떤 영향을 미칩니 까?
  • 시뮬레이션 시나리오 : 전자 상거래 플랫폼의 사용자 동작
  • 상호 작용 용어가없는 모델
  • 상호 작용 용어가있는 모델
  • 모델 성능 비교
  • 결론
  • 자주 묻는 질문

상호 작용 용어의 기본 사항을 이해합니다

실제로, 우리는 변동이 다른 사람들과 분리되어 작동한다는 것을 알지 못하므로 실제 모델은 수업에서 공부하는 모델보다 훨씬 더 복잡합니다. 예를 들어, 전자 상거래 플랫폼에 소요되는 시간에 항목을 카트에 추가하는 것과 같은 최종 사용자 탐색 작업의 효과는 사용자가 항목을 카트에 추가하고 구매할 때 다릅니다. 따라서 회귀 모델에 변수로 상호 작용 항을 추가하면 이러한 교차로를 인식하고 관찰 된 데이터의 기본 패턴을 설명하거나 종속 변수의 미래 값을 예측하는 데있어서 목적을위한 모델의 적합성을 향상시킬 수 있습니다.

수학적 표현

두 개의 독립적 인 변수 X1과 X2의 선형 회귀 모델을 고려해 봅시다.

y = β0 β1 x1 β2 x2 ϵ,

여기서 y는 종속 변수이고, β0은 인터셉트이고, β1 및 β2는 각각 독립 변수 x1 및 x2의 계수이며, 오차 항입니다.

상호 작용 용어 추가

X1과 X2 사이의 상호 작용 항을 포함시키기 위해 새로운 변수 X1⋅X2를 소개합니다.

y = β0 β1x1 β2x2 β3 (x1⋅x2) ϵ,

여기서 β3은 X1과 X2 사이의 상호 작용 효과를 표현합니다. 용어 x1⋅x2는 두 개의 독립 변수의 곱입니다.

상호 작용 용어가 회귀 계수에 어떤 영향을 미칩니 까?

  • β0 : 모든 독립 변수가 0 일 때 y의 예상 값을 나타내는 절편.
  • β1 : x2가 0 일 때 y에 대한 x1의 효과.
  • β2 : x1이 0 일 때 y에 대한 x2의 효과.
  • β3 : X2의 1 단위 변화에 대한 1 단위 변화에 대한 X1의 효과의 변화 또는 X1의 1 단위 변화에 대한 x2의 효과 변화.

예 : 사용자 활동 및 소비 시간

먼저 온라인 상점에서 사용자 동작을 나타내는 시뮬레이션 된 데이터 세트를 만들어 봅시다. 데이터는 다음으로 구성됩니다.

  • Adde_in_Cart : 사용자가 카트에 제품을 추가했는지 여부를 나타냅니다 (추가 된 경우 1, 추가되지 않음).
  • 구매 : 사용자가 구매를 완료했는지 여부 (완료의 경우 1 또는 완성되지 않은 경우 0).
  • Time_Spent : 사용자가 전자 상거래 플랫폼에서 소비 한 시간. 우리의 목표는 장바구니에 제품을 추가하고 거래를 완료하는지 분석하여 온라인 상점에서 사용자 방문 기간을 예측하는 것입니다.
 # 도서관 가져 오기
팬더를 PD로 가져옵니다
Numpy를 NP로 가져옵니다

# 합성 데이터를 생성합니다
def generate_synthetic_data (n_samples = 2000) :

    np.random.seed (42)
    adds_in_cart = np.random.randint (0, 2, n_samples)
    구매 = np.random.randint (0, 2, n_samples)
    time_spent = 3 2*구매 2.5*adde_in_cart 4*구매*adds_in_cart np.random.normal (0, 1, n_samples)
    pd.dataframe을 반환합니다 ({ '구매': 구매, 'adds_in_cart': adds_in_cart, 'time_spent': time_spent})

df = generate_synthetic_data ()
df.head ()
로그인 후 복사

산출:

상호 작용 용어 이해를위한 안내서

시뮬레이션 시나리오 : 전자 상거래 플랫폼의 사용자 동작

다음 단계로서 먼저 시장의 이러한 행동을 고려하여 상호 작용 효과에 대한 적용 범위없이 일반 최소 제곱 회귀 모델을 구축 할 것입니다. 우리의 가설은 다음과 같습니다. (가설 1) 각 조치가 별도로 취하는 웹 사이트에 소비 된 시간의 효과가 있습니다. 이제 우리는 카트에 제품을 추가하는 것과 구매 사이에 존재하는 상호 작용 용어를 포함하는 두 번째 모델을 구성합니다.

이를 통해 웹 사이트에 소요 된 시간에 따라 이러한 조치의 영향을 별도로 또는 결합하는 데 도움이됩니다. 이는 카트에 제품을 추가하는 사용자가 카트에 제품을 추가하고 구매를하는 사용자가 각 동작을 개별적으로 고려할 때 소비 된 시간보다 사이트에서 더 많은 시간을 보내는 지 확인하고자합니다.

상호 작용 용어가없는 모델

모델의 구성에 따라 다음과 같은 결과가 주목되었습니다.

  • 평균 제곱 오차 (MSE)가 2.11 인 상호 작용 용어가없는 모델은 Time_Spent의 분산의 대략 80% (테스트 R- 제곱) 및 82% (트레인 R- 제곱)를 차지합니다. 이는 Time_Spent 예측이 실제 Time_Spent에서 평균 2.11 제곱 단위임을 나타냅니다. 이 모델은 개선 될 수 있지만 합리적으로 정확합니다.
  • 또한 아래 플롯은 모델이 상당히 잘 작동한다는 것을 그래픽으로 나타냅니다. 특히 Time_spent의 높은 값을 캡처하는 측면에서 개선의 여지가 여전히 많습니다.
 # 도서관 가져 오기
sklearn.model_selection import train_test_split
sklearn.linear_model 가져 오기 LinearRegression
sklearn.metrics import mean_squared_error, r2_score
sm으로 statsmodels.api를 가져옵니다
sklearn.model_selection import train_test_split
matplotlib.pyplot을 plt로 가져옵니다

# 상호 작용 용어가없는 모델
x = df [[ '구매', 'added_in_cart']]]]
y = df [ 'time_spent']
x_train, x_test, y_train, y_test = train_test_split (x, y, test_size = 0.3, random_state = 42)

# 절편에 상수를 추가하십시오
x_train_const = sm.add_constant (x_train)
x_test_const = sm.add_constant (x_test)

model = sm.ols (y_train, x_train_const) .fit ()
y_pred = model.predict (x_test_const)

# 상호 작용 용어없이 모델의 메트릭을 계산합니다
Train_R2 = model.rsquared
test_r2 = r2_score (y_test, y_pred)
mse = mean_squared_error (y_test, y_pred)

print ( "상호 작용이없는 모델 :")
print ( '훈련 r-squared score (%) :', 라운드 (Train_R2 * 100, 4))
print ( 'test r-squared score (%) :', 라운드 (test_r2 * 100, 4))
print ( "MSE :", Round (MSE, 4))
print (model.summary ())


# 실제 대 예측을 플로팅하는 기능
def plot_actual_vs_predicted (y_test, y_pred, title) :

    plt.figure (figsize = (8, 4))
    plt.scatter (y_test, y_pred, edgecolors = (0, 0, 0))
    plt.plot ([y_test.min (), y_test.max ()], [y_test.min (), y_test.max ()], 'k-', lw = 2)
    plt.xlabel ( '실제')
    plt.ylabel ( '예측')
    plt.title (제목)
    plt.show ()

# 상호 작용 용어없이 플롯
plot_actual_vs_predicted (y_test, y_pred, '실제 대 예측 된 시간 (상호 작용 용어없이)')
로그인 후 복사

산출:

상호 작용 용어 이해를위한 안내서

상호 작용 용어 이해를위한 안내서

상호 작용 용어가있는 모델

  • 상호 작용 항에 대한 모델에 더 잘 맞는 상호 작용 항으로 산점도로 표시되며, 이는 예측 된 값이 실제 값에 실질적으로 더 가깝게 표시됩니다.
  • 이 모델은 높은 테스트 R- 제곱 값 (80.36% ~ 90.46%)으로 표시된 것처럼 상호 작용 항에 대한 Time_spent의 차이를 훨씬 더 많이 설명합니다.
  • 상호 작용 항에 대한 모델의 예측은 더 낮은 MSE (2.11 ~ 1.02)에 의해 입증 된 바와 같이 더 정확합니다.
  • 지점을 대각선으로, 특히 Time_Spent의 높은 값에 대해 점을 더 밀접하게 정렬하면 개선 된 적합성을 나타냅니다. 상호 작용 용어는 사용자 행동이 소비 된 시간의 양에 어떻게 영향을 미치는지 표현하는 데 도움이됩니다.
 # 상호 작용 용어 추가
df [ '구매 _added_in_cart'] = df [ '구매'] * df [ 'adds_in_cart']
x = df [[ '구매', 'added_in_cart', 'buyased_added_in_cart']]]]]
y = df [ 'time_spent']
x_train, x_test, y_train, y_test = train_test_split (x, y, test_size = 0.3, random_state = 42)

# 절편에 상수를 추가하십시오
x_train_const = sm.add_constant (x_train)
x_test_const = sm.add_constant (x_test)

model_with_interaction = sm.ols (y_train, x_train_const) .fit ()
y_pred_with_interaction = model_with_interaction.predict (x_test_const)

# 상호 작용 항으로 모델의 메트릭을 계산합니다
Train_R2_With_Interaction = model_with_interaction.rsquared
test_r2_with_interaction = r2_score (y_test, y_pred_with_interaction)
mse_with_interaction = mean_squared_error (y_test, y_pred_with_interaction)

print ( "\ n model with intercation term :")
print ( '훈련 r-squared score (%) :', Round (Train_R2_With_Interaction * 100, 4))
print ( 'test r-squared score (%) :', 라운드 (test_r2_with_interaction * 100, 4))
print ( "MSE :", Round (MSE_WITH_INteraction, 4))
print (model_with_interaction.summary ())


# 상호 작용 용어와 함께 플롯
plot_actual_vs_predicted (y_test, y_pred_with_interaction, '실제 대 예측 된 시간 (상호 작용 용어와 함께)')

# 인쇄 비교
print ( "\ n Comparison of Models :")
print ( "상호 작용 용어없는 r-squared :", Round (r2_score (y_test, y_pred)*100,4))
print ( "상호 작용 용어와 함께 R- 제곱 :", 라운드 (r2_score (y_test, y_pred_with_interaction)*100,4))
print ( "상호 작용이없는 MSE :", 라운드 (평균 _squared_error (y_test, y_pred), 4))
print ( "상호 작용이 포함 된 MSE :", Round (평균 _squared_error (y_test, y_pred_with_interaction), 4))
로그인 후 복사

산출:

상호 작용 용어 이해를위한 안내서

상호 작용 용어 이해를위한 안내서

모델 성능 비교

  • 상호 작용 항이없는 모델 예측은 파란색 점으로 표시됩니다. 실제 소비 값이 더 높으면이 점은 대각선에서 더 분산됩니다.
  • 상호 작용 항에 대한 모델 예측은 빨간색으로 표시됩니다. 상호 작용 항이있는 모델은보다 정확한 예측을 생성합니다. 특히 실제 소비 된 값이 더 높은 경우,이 지점은 대각선에 더 가깝기 때문입니다.
 # 상호 작용 용어가 있거나없는 모델을 비교하십시오

def plot_actual_vs_predicted_combined (y_test, y_pred1, y_pred2, title1, title2) :

    plt.figure (figsize = (10, 6))
    plt.scatter (y_test, y_pred1, edgecolors = 'blue', label = title1, alpha = 0.6)
    plt.scatter (y_test, y_pred2, edgecolors = 'red', label = title2, alpha = 0.6)
    plt.plot ([y_test.min (), y_test.max ()], [y_test.min (), y_test.max ()], 'k-', lw = 2)
    plt.xlabel ( '실제')
    plt.ylabel ( '예측')
    plt.title ( '실제 대 예측 된 사용자 시간 소비')
    plt.legend ()
    plt.show ()

plot_actual_vs_predicted_combined (y_test, y_pred, y_pred_with_interaction, '상호 작용 용어없는 모델', '상호 작용 용어와 모델')
로그인 후 복사

산출:

상호 작용 용어 이해를위한 안내서

결론

상호 작용 항에 대한 모델 성능의 개선은 때때로 모델에 상호 작용 항을 추가하면 중요성을 향상시킬 수 있음을 보여줍니다. 이 예는 상호 작용 용어가 주요 효과만으로는 명백하지 않은 추가 정보를 어떻게 캡처 할 수 있는지를 강조합니다. 실제로 회귀 모델에서 상호 작용 용어를 고려하면 더 정확하고 통찰력있는 예측으로 이어질 수 있습니다.

이 블로그에서는 먼저 전자 상거래 플랫폼에서 사용자 동작을 시뮬레이션하기 위해 합성 데이터 세트를 생성했습니다. 그런 다음 두 개의 회귀 모델을 구성했습니다. 하나는 상호 작용 용어가없고 하나는 상호 작용 용어가 있습니다. 성능을 비교함으로써 우리는 상호 작용 용어가 모델의 정확도에 미치는 영향을 입증했습니다.

Github의 전체 코드 및 리소스를 확인하십시오.

주요 테이크 아웃

  • 상호 작용 용어가있는 회귀 모델은 결합 된 효과를 캡처하여 둘 이상의 변수와 대상 변수 간의 관계를 더 잘 이해하는 데 도움이 될 수 있습니다.
  • 상호 작용 용어를 포함하면이 안내서에서 더 높은 R- 제곱 값과 더 낮은 MSE에 의해 입증 된 바와 같이, 모델 성능을 크게 향상시킬 수 있습니다.
  • 상호 작용 용어는 이론적 개념 일뿐 만 아니라 실제 시나리오에 적용될 수 있습니다.

자주 묻는 질문

Q1. 회귀 분석에서 상호 작용 항은 무엇입니까?

A. 둘 이상의 독립 변수를 곱하여 생성 된 변수입니다. 이들은 종속 변수에 대한 이러한 변수의 결합 효과를 캡처하는 데 사용됩니다. 이것은 데이터의 관계에 대한 미묘한 이해를 제공 할 수 있습니다.

Q2. 내 모델에서 상호 작용 용어를 언제 사용하는 것을 고려해야합니까?

A. 종속 변수에 대한 하나의 독립 변수의 영향이 다른 독립 변수의 수준에 따라 다르다고 의심 할 때이를 사용하는 것을 고려해야합니다. 예를 들어, 전자 상거래 플랫폼에 소요되는 시간에 항목을 카트에 추가하는 데 영향을 미치는 것은 사용자가 구매하는지 여부에 따라 다릅니다. 이 변수 사이에 상호 작용 항을 포함해야합니다.

Q3. 상호 작용 용어의 계수를 어떻게 해석합니까?

A. 상호 작용 항의 계수는 다른 독립 변수의 1 단위 변화에 대한 종속 변수에 대한 하나의 독립 변수의 효과의 변화를 나타냅니다. 예를 들어, 위의 예에서는 구매와 추가 _in_cart 사이의 상호 작용 용어가 있습니다. 계수는 구매가 이루어질 때 소요 된 시간에 카트에 항목을 추가하는 효과가 어떻게 변경 될 때, 우리에게 알려줍니다.

이 기사에 표시된 미디어는 분석 Vidhya가 소유하지 않으며 저자의 재량에 따라 사용됩니다.

위 내용은 상호 작용 용어 이해를위한 안내서의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

창의적인 프로젝트를위한 최고의 AI 아트 발전기 (무료 & amp; 유료) 창의적인 프로젝트를위한 최고의 AI 아트 발전기 (무료 & amp; 유료) Apr 02, 2025 pm 06:10 PM

이 기사는 최고의 AI 아트 생성기를 검토하여 자신의 기능, 창의적인 프로젝트에 대한 적합성 및 가치에 대해 논의합니다. Midjourney를 전문가에게 최고의 가치로 강조하고 고품질의 사용자 정의 가능한 예술에 Dall-E 2를 추천합니다.

Meta Llama 3.2- 분석 Vidhya를 시작합니다 Meta Llama 3.2- 분석 Vidhya를 시작합니다 Apr 11, 2025 pm 12:04 PM

메타의 라마 3.2 : 멀티 모달 및 모바일 AI의 도약 Meta는 최근 AI에서 강력한 비전 기능과 모바일 장치에 최적화 된 가벼운 텍스트 모델을 특징으로하는 AI의 상당한 발전 인 Llama 3.2를 공개했습니다. 성공을 바탕으로 o

최고의 AI 챗봇 비교 (Chatgpt, Gemini, Claude & amp; more) 최고의 AI 챗봇 비교 (Chatgpt, Gemini, Claude & amp; more) Apr 02, 2025 pm 06:09 PM

이 기사는 Chatgpt, Gemini 및 Claude와 같은 최고의 AI 챗봇을 비교하여 고유 한 기능, 사용자 정의 옵션 및 자연어 처리 및 신뢰성의 성능에 중점을 둡니다.

chatgpt 4 o를 사용할 수 있습니까? chatgpt 4 o를 사용할 수 있습니까? Mar 28, 2025 pm 05:29 PM

ChatGpt 4는 현재 이용 가능하고 널리 사용되며 ChatGpt 3.5와 같은 전임자와 비교하여 상황을 이해하고 일관된 응답을 생성하는 데 상당한 개선을 보여줍니다. 향후 개발에는보다 개인화 된 인터가 포함될 수 있습니다

컨텐츠 생성을 향상시키기 위해 AI를 쓰는 최고 AI 작문 컨텐츠 생성을 향상시키기 위해 AI를 쓰는 최고 AI 작문 Apr 02, 2025 pm 06:11 PM

이 기사는 Grammarly, Jasper, Copy.ai, Writesonic 및 Rytr와 같은 최고의 AI 작문 조수에 대해 논의하여 콘텐츠 제작을위한 독특한 기능에 중점을 둡니다. Jasper는 SEO 최적화가 뛰어나고 AI 도구는 톤 구성을 유지하는 데 도움이된다고 주장합니다.

AI 에이전트를 구축하기위한 상위 7 개의 에이전트 래그 시스템 AI 에이전트를 구축하기위한 상위 7 개의 에이전트 래그 시스템 Mar 31, 2025 pm 04:25 PM

2024는 콘텐츠 생성에 LLM을 사용하는 것에서 내부 작업을 이해하는 것으로 바뀌는 것을 목격했습니다. 이 탐사는 AI 요원의 발견으로 이어졌다 - 자율 시스템을 처리하는 과제와 최소한의 인간 개입으로 결정을 내렸다. buildin

최고의 AI 음성 생성기 선택 : 최고 옵션 검토 최고의 AI 음성 생성기 선택 : 최고 옵션 검토 Apr 02, 2025 pm 06:12 PM

이 기사는 Google Cloud, Amazon Polly, Microsoft Azure, IBM Watson 및 Destript와 같은 최고의 AI 음성 생성기를 검토하여 기능, 음성 품질 및 다양한 요구에 대한 적합성에 중점을 둡니다.

직원에게 AI 전략 판매 : Shopify CEO의 선언문 직원에게 AI 전략 판매 : Shopify CEO의 선언문 Apr 10, 2025 am 11:19 AM

Shopify CEO Tobi Lütke의 최근 메모는 AI 숙련도가 모든 직원에 대한 근본적인 기대를 대담하게 선언하여 회사 내에서 중요한 문화적 변화를 표시합니다. 이것은 도망가는 트렌드가 아닙니다. 그것은 p에 통합 된 새로운 운영 패러다임입니다

See all articles