Einführung
Interaktionsbegriffe werden in die Regressionsmodellierung aufgenommen, um den Effekt von zwei oder mehr unabh?ngigen Variablen in der abh?ngigen Variablen zu erfassen. Manchmal ist es nicht nur die einfache Beziehung zwischen den Kontrollvariablen und der untersuchten Zielvariablen, sondern in diesen Momenten k?nnen Interaktionsbegriffe sehr hilfreich sein. Diese sind auch nützlich, wenn die Beziehung zwischen einer unabh?ngigen Variablen und der abh?ngigen Variablen auf der Ebene einer anderen unabh?ngigen Variablen bedingt ist.
Dies impliziert natürlich, dass der Effekt eines Pr?diktors auf die Antwortvariable vom Niveau eines anderen Pr?diktors abh?ngt. In diesem Blog untersuchen wir die Idee der Interaktionsbegriffe durch ein simuliertes Szenario: Vorhersage immer wieder, wie viel Zeit die Benutzer für einen E-Commerce-Kanal mit ihrem früheren Verhalten ausgeben würden.
Lernziele
- Verstehen Sie, wie Interaktionsbegriffe die Vorhersagekraft von Regressionsmodellen verbessern.
- Lernen Sie, Interaktionsbegriffe in eine Regressionsanalyse zu erstellen und zu integrieren.
- Analysieren Sie die Auswirkungen von Interaktionsbegriffen auf die Modellgenauigkeit anhand eines praktischen Beispiels.
- Visualisieren und interpretieren Sie die Auswirkungen von Interaktionsbegriffen auf vorhergesagte Ergebnisse.
- Gewinnen Sie Einblicke in wann und warum Interaktionsbegriffe in realen Szenarien anwenden.
Dieser Artikel wurde als Teil des Data Science -Blogathons ver?ffentlicht.
Inhaltsverzeichnis
- Einführung
- Verst?ndnis der Grundlagen der Interaktionsbegriffe
- Wie beeinflussen die Interaktionsbegriffe Regressionskoeffizienten?
- Simuliertes Szenario: Benutzerverhalten auf einer E-Commerce-Plattform
- Modell ohne Interaktionsbegriff
- Modell mit einem Interaktionsbegriff
- Vergleich der Modellleistung
- Abschluss
- H?ufig gestellte Fragen
Verst?ndnis der Grundlagen der Interaktionsbegriffe
Im wirklichen Leben stellen wir nicht fest, dass eine Variable isoliert der anderen isoliert funktioniert und daher die realen Modelle viel komplexer sind als die, die wir in Klassen studieren. Beispielsweise unterscheidet sich die Auswirkung der Endbenutzernavigationsaktionen wie das Hinzufügen von Elementen in der Zeit auf der Zeit, die auf einer E-Commerce-Plattform aufgewendet wird, wenn der Benutzer das Element einem Wagen hinzufügt und kauft. Durch das Hinzufügen von Interaktionsbegriffen als Variablen zu einem Regressionsmodell erm?glicht es daher, diese Schnittstellen anzuerkennen und daher die Fitness des Modells für den Zweck zu verbessern, um die der beobachteten Daten zugrunde liegenden Muster zu erkl?ren und/oder zukünftige Werte der abh?ngigen Variablen vorherzusagen.
Mathematische Darstellung
Betrachten wir ein lineares Regressionsmodell mit zwei unabh?ngigen Variablen, X1 und X2:
Y = β0 β1 x1 β2 x2 ?,,
Wenn y die abh?ngige Variable ist, sind β0 das Intercept, β1 und β2 die Koeffizienten für die unabh?ngigen Variablen x1 bzw. x2 und ? iS den Fehlerbegriff.
Hinzufügen eines Interaktionsbegriffs
Um einen Interaktionsbegriff zwischen X1 und X2 einzuschlie?en, führen wir eine neue Variable x1?x2 ein:
Y = β0 β1x1 β2x2 β3 (x1oge) ?,,
Wo β3 den Wechselwirkungseffekt zwischen X1 und X2 repr?sentiert. Der Begriff x1oge x2is das Produkt der beiden unabh?ngigen Variablen.
Wie beeinflussen die Interaktionsbegriffe Regressionskoeffizienten?
- β0: Der Abfang, der den erwarteten Wert von y darstellt, wenn alle unabh?ngigen Variablen Null sind.
- β1: Die Wirkung von x1 auf y, wenn x2 Null ist.
- β2: Die Wirkung von x2 auf y, wenn x1 Null ist.
- β3: Die ?nderung der Wirkung von x1 auf y für eine Ein-Einheiten-?nderung in X2 oder ?quivalent die ?nderung des Effekts von x2 auf y für eine Ein-Einheit-?nderung in X1.
Beispiel: Benutzeraktivit?t und Zeit verbracht
Erstellen wir zun?chst einen simulierten Datensatz, um das Benutzerverhalten in einem Online -Shop darzustellen. Die Daten bestehen aus:
- adata_in_cart: Gibt an, ob ein Benutzer seinen Wagen Produkte hinzugefügt hat (1 zum Hinzufügen und 0, um nicht hinzuzufügen).
- Gekauft: Ob der Benutzer einen Kauf abgeschlossen hat oder nicht (1 für die Fertigstellung oder 0 für die Nichtabschreibung).
- TIME_SPENT: Die Zeit, die ein Benutzer auf einer E-Commerce-Plattform ausgegeben hat. Unser Ziel ist es, die Dauer des Besuchs eines Benutzers in einem Online -Shop vorherzusagen, indem Sie analysieren, ob sie Produkte in den Wagen hinzufügen und eine Transaktion abschlie?en.
# Bibliotheken importieren Pandas als PD importieren Numph als NP importieren # Synthetische Daten generieren Def generate_synthetic_data (n_samples = 2000): np.random.seed (42) adata_in_cart = np.random.randint (0, 2, n_samples) gekauft = np.random.randint (0, 2, n_samples) TIME_SPENT = 3 2*gekauft 2.5*adated_in_cart 4*gekauft*adata_in_cart np.random.normal (0, 1, n_samples) return pd.dataframe ({'gekauft': gekauft, 'adatin_in_cart': adatis_in_cart, 'Time_Spent': Time_Spent}) df = generate_synthetic_data () df.head ()
Ausgabe:
Simuliertes Szenario: Benutzerverhalten auf einer E-Commerce-Plattform
Als n?chster Schritt werden wir zun?chst ein gew?hnliches Regressionsmodell für die kleinste Quadratmeter erstellen, unter Berücksichtigung dieser Aktionen des Marktes, jedoch ohne Abdeckung ihrer Interaktionseffekte. Unsere Hypothesen sind wie folgt: (Hypothese 1) Es wirkt sich auf die Zeit auf der Website aus, auf der jede Aktion separat ergriffen wird. Jetzt werden wir dann ein zweites Modell erstellen, das den Interaktionsbegriff enth?lt, der zwischen dem Hinzufügen von Produkten in den Warenkorb und einem Kauf besteht.
Dies wird uns helfen, die Auswirkungen dieser Aktionen separat oder kombiniert in der auf der Website aufgewendeten Zeit zu begegnen. Dies deutet darauf hin, dass wir herausfinden m?chten, ob Benutzer, die beide Produkte in den Warenkorb hinzufügen, herausfinden und mehr Zeit auf der Website verbringen als die Zeit, in der jedes Verhalten einzeln betrachtet wird.
Modell ohne Interaktionsbegriff
Nach der Konstruktion des Modells wurden die folgenden Ergebnisse festgestellt:
- Mit einem mittleren quadratischen Fehler (MSE) von 2,11 macht das Modell ohne Interaktionsbegriff rund 80% (Test R-Quadrat) und 82% (Zug-R-Quadrat) der Varianz in der Time_pent aus. Dies zeigt an, dass Time_Spent -Vorhersagen im Durchschnitt 2,11 quadratische Einheiten von der tats?chlichen Time_Spent abgeben. Obwohl dieses Modell verbessert werden kann, ist es einigerma?en genau.
- Darüber hinaus zeigt das folgende Diagramm grafisch an, dass das Modell zwar ziemlich gut funktioniert. Es gibt immer noch viel Raum für Verbesserungen, insbesondere in Bezug auf die Erfassung h?herer Zeitwerte von Time_Pent.
# Bibliotheken importieren Aus sklearn.model_selection importieren train_test_split Aus sklearn.linear_model importieren Sie linearRegression von sklearn.metrics import Mean_squared_error, r2_score statsmodels.api als SM importieren Aus sklearn.model_selection importieren train_test_split matplotlib.pyplot als pLT importieren # Modell ohne Interaktionsbegriff X = df [['gekauft', 'adata_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) # Fügen Sie eine Konstante für den Abfang hinzu 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) # Metriken für das Modell ohne Interaktionsbegriff berechnen train_r2 = model.rsquared test_r2 = r2_score (y_test, y_pred) MSE = Mean_Squared_error (y_test, y_pred) print ("Modell ohne Interaktionsbegriff:") print ('Training R-Quadrat-Score (%):', rund (train_r2 * 100, 4)) print ('test r-quadratische Punktzahl (%):', rund (test_r2 * 100, 4)) print ("mse:", rund (mse, 4)) print (model.summary ()) # Funktion zum Zeichnen der tats?chlichen VS -vorhergesagten Funktionen Def Plot_actual_vs_Predict (y_test, y_pred, Titel): PLT.Figure (AbbSize = (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) pt.xlabel ('tats?chlich') Plt.ylabel ('vorhergesagt') PLT.TITLE (Titel) Plt.Show () # Diagramm ohne Interaktionsbegriff plot_actual_vs_predict (y_test, y_pred, 'tats?chliche VS -vorhergesagte Zeit (ohne Interaktionsbegriff)'))
Ausgabe:
Modell mit einem Interaktionsbegriff
- Eine bessere Passform für das Modell mit dem Interaktionsterm wird durch das Streudiagramm mit dem Interaktionsterm angezeigt, wodurch vorhergesagte Werte wesentlich n?her an den tats?chlichen Werten angezeigt werden.
- Das Modell erkl?rt viel mehr von der Varianz im Time_Spent mit dem Interaktionsterm, wie der h?here Test-R-Quadrat-Wert (von 80,36% auf 90,46%) zeigt.
- Die Vorhersagen des Modells mit dem Interaktionsterm sind genauer, wie die untere MSE (von 2.11 bis 1,02) zeigt.
- Die engere Ausrichtung der Punkte auf die diagonale Linie, insbesondere für h?here Werte von Time_Pent, zeigt eine verbesserte Anpassung an. Der Interaktionsbegriff hilft beim Ausdruck, wie Benutzeraktionen gemeinsam die Zeitspanne beeinflussen.
# Interaktionsbegriff hinzufügen df ['pasted_added_in_cart'] = df ['gekauft'] * df ['adatis_in_cart'] X = df [['gekauft', 'adatis_in_cart', 'pasted_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) # Fügen Sie eine Konstante für den Abfang hinzu 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) # Berechnen Sie Metriken für das Modell mit Interaktionsbegriff 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 ("\ nmodel mit Interaktionsbegriff:") print ('Training R-Squared Score (%):', rund (train_r2_with_interaction * 100, 4)) print ('test r-quadratische Punktzahl (%):', rund (test_r2_with_interaction * 100, 4)) print ("mse:", rund (mse_with_interaction, 4)) print (model_with_interaction.summary ()) # Diagramm mit Interaktionsbegriff plot_actual_vs_predict (y_test, y_pred_with_interaction, 'tats?chliche vs vorhergesagte Zeit (mit Interaktionsbegriff)')) # Druckvergleich print ("\ nComparison von Modellen:") print ("R-Quadrat ohne Interaktionsbegriff:", rund (r2_score (y_test, y_pred)*100,4)) print ("R-Squared mit Interaktionsbegriff:", rund (r2_score (y_test, y_pred_with_interaction)*100,4)) print ("MSE ohne Interaktionsbegriff:", rund (Mean_Squared_error (y_test, y_pred), 4)) print ("MSE mit Interaktionsbegriff:", rund (Mean_Squared_error (y_test, y_pred_with_interaction), 4)))
Ausgabe:
Vergleich der Modellleistung
- Die Modellvorhersagen ohne den Interaktionsterm werden durch die blauen Punkte dargestellt. Wenn die tats?chlichen Zeitwerte h?her sind, sind diese Punkte mehr von der diagonalen Linie verteilt.
- Die Modellvorhersagen mit dem Interaktionsterm werden durch die roten Punkte dargestellt. Das Modell mit dem Interaktionsterm erzeugt genauere Vorhersagen. Insbesondere für h?here tats?chliche Zeitwerte, da diese Punkte n?her an der diagonalen Linie liegen.
# Vergleichen Sie das Modell mit und ohne Interaktionsbegriff Def Plot_actual_vs_Predicted_comBIed (y_test, y_prred1, y_pred2, title1, title2): Plt.Figure (AbbSize = (10, 6)) PLT.Scatter (y_test, y_prred1, EdgeColors = 'Blue', Label = Titel1, Alpha = 0,6) PLT.Scatter (y_test, y_prred2, edgecolors = 'rot', label = title2, alpha = 0,6) plt.plot ([y_test.min (), y_test.max ()], [y_test.min (), y_test.max ()], 'k-', lw = 2) pt.xlabel ('tats?chlich') Plt.ylabel ('vorhergesagt') PLT.TITLE ('tats?chliche VS -vorhergesagte Benutzerzeit)) Plt.Legend () Plt.Show () plot_actual_vs_predicted_comboed (y_test, y_pred, y_pred_with_interaction, 'modell ohne Interaktionsbegriff', Modell mit Interaktionsbegriff ')
Ausgabe:
Abschluss
Die Verbesserung der Leistung des Modells mit dem Interaktionsterm zeigt, dass das Hinzufügen von Interaktionsbegriffen zu Ihrem Modell seine Bedeutung manchmal verbessern kann. In diesem Beispiel wird hervorgehoben, wie Interaktionsbegriffe zus?tzliche Informationen erfassen k?nnen, die allein aus den Haupteffekten nicht ersichtlich sind. In der Praxis kann die Berücksichtigung von Interaktionsbegriffen in Regressionsmodellen m?glicherweise zu genaueren und aufschlussreicheren Vorhersagen führen.
In diesem Blog haben wir zun?chst einen synthetischen Datensatz generiert, um das Benutzerverhalten auf einer E-Commerce-Plattform zu simulieren. Wir haben dann zwei Regressionsmodelle erstellt: eine ohne Interaktionsbegriffe und eine mit Interaktionsbegriffen. Durch den Vergleich ihrer Leistung haben wir den signifikanten Einfluss der Interaktionsbegriffe auf die Genauigkeit des Modells gezeigt.
Schauen Sie sich den vollst?ndigen Code und die Ressourcen auf GitHub an.
Key Takeaways
- Regressionsmodelle mit Interaktionsbegriffen k?nnen dazu beitragen, die Beziehungen zwischen zwei oder mehr Variablen und der Zielvariablen besser zu verstehen, indem sie ihre kombinierten Effekte erfassen.
- Das Einbeziehen von Interaktionsbegriffen kann die Modellleistung erheblich verbessern, was durch h?here R-Quadrat-Werte und niedrigere MSE in diesem Leitfaden belegt wird.
- Interaktionsbegriffe sind nicht nur theoretische Konzepte, sondern k?nnen auch auf reale Szenarien angewendet werden.
H?ufig gestellte Fragen
Q1. Was sind Interaktionsbegriffe in der Regressionsanalyse?A. Sie sind Variablen, die durch Multiplizieren von zwei oder mehr unabh?ngigen Variablen erzeugt wurden. Sie werden verwendet, um den kombinierten Effekt dieser Variablen auf die abh?ngige Variable zu erfassen. Dies kann ein differenzierteres Verst?ndnis der Beziehungen in den Daten erm?glichen.
Q2. Wann sollte ich in Betracht ziehen, Interaktionsbegriffe in meinem Modell zu verwenden?A. Sie sollten in Betracht ziehen, wenn Sie vermuten, dass der Effekt einer unabh?ngigen Variablen auf die abh?ngige Variable von der Ebene einer anderen unabh?ngigen Variablen abh?ngt. Wenn Sie beispielsweise der Ansicht sind, dass die Auswirkungen des Hinzufügens von Artikeln in den Wagen auf die Zeit, die auf einer E-Commerce-Plattform aufgewendet wurde, abh?ngt, ob der Benutzer einen Kauf t?tigt. Sie sollten einen Interaktionsbegriff zwischen diesen Variablen einfügen.
Q3. Wie interpretiere ich die Koeffizienten der Interaktionsbegriffe?A. Der Koeffizient eines Interaktionsterms repr?sentiert die ?nderung des Effekts einer unabh?ngigen Variablen auf die abh?ngige Variable für eine ?nderung eines Einheiten in einer anderen unabh?ngigen Variablen. In unserem obigen Beispiel haben wir beispielsweise einen Interaktionsbegriff zwischen gekauftem und adated_in_cart, der Koeffizient zeigt uns, wie sich die Auswirkung des Hinzufügens von Elementen in den Wagen zu ?nderenden ?nderungen beim Kauf ver?ndert.
Die in diesem Artikel gezeigten Medien sind nicht im Besitz von Analytics Vidhya und werden nach Ermessen des Autors verwendet.
Das obige ist der detaillierte Inhalt vonEin Leitfaden zum Verst?ndnis der Interaktionsbegriffe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen





Das Investieren boomt, aber Kapital allein reicht nicht aus. Mit zunehmender Bewertungen und Verblassen der Unterscheidungskraft müssen Investoren in AI-fokussierten Risikokonstrumentfonds eine wichtige Entscheidung treffen: Kaufen, Bau oder Partner, um einen Vorteil zu erlangen? Hier erfahren Sie, wie Sie jede Option bewerten - und PR

Reden wir darüber. Diese Analyse eines innovativen KI -Durchbruchs ist Teil meiner laufenden Forbes -S?ulenberichterstattung über die neueste in der KI, einschlie?lich der Identifizierung und Erkl?rung verschiedener wirksamer KI -Komplexit?ten (siehe Link hier). Auf dem Weg zu Agi und

Erinnern Sie sich an die Flut chinesischer Open-Source-Modelle, die die Genai-Industrie Anfang dieses Jahres gest?rt haben? W?hrend Deepseek die meisten Schlagzeilen machte, war Kimi K1.5 einer der herausragenden Namen in der Liste. Und das Modell war ziemlich cool.

Reden wir darüber. Diese Analyse eines innovativen KI -Durchbruchs ist Teil meiner laufenden Forbes -S?ulenberichterstattung über die neueste in der KI, einschlie?lich der Identifizierung und Erkl?rung verschiedener wirksamer KI -Komplexit?ten (siehe Link hier). Für diejenigen Leser, die h

Bis Mitte 2025 heizt sich das KI ?Wettret“ auf, und Xai und Anthropic haben beide ihre Flaggschiff-Modelle GROK 4 und Claude 4 ver?ffentlicht. Diese beiden Modelle befinden

Wenn Sie beispielsweise einem Modell eine Frage wie: "Was macht (x) Person bei (x) Firma?" M?glicherweise sehen Sie eine Argumentationskette, die ungef?hr so ??aussieht, vorausgesetzt, das System wei?, wie man die erforderlichen Informationen abgerufen: Details zum CO finden

Der Senat stimmte am Dienstagmorgen mit 99: 1 für die T?tung des Moratoriums nach einem Aufruhr in letzter Minute von Interessenvertretungsgruppen, Gesetzgebern und Zehntausenden von Amerikanern, die es als gef?hrliche überreichung ansah. Sie blieben nicht ruhig. Der Senat h?rte zu.

Klinische Studien sind ein enormer Engpass in der Arzneimittelentwicklung, und Kim und Reddy glaubten, dass die AI-f?hige Software, die sie bei PI Health gebaut hatten, dazu beitragen k?nnte, sie schneller und billiger zu machen, indem sie den Pool potenziell berechtigter Patienten erweitert. Aber die
