Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng

Cộng với hướng dẫn Python về đào tạo mô hình zip trên các bộ dữ liệu có dư thừa & nbsp; ZeroesZIP model on data sets having excess zeroes


Trong phần này, chúng tôi sẽ học cách xây dựng một mô hình hồi quy cho các bộ dữ liệu dựa trên số lượng trong đó biến phụ thuộc chứa phần dư của dữ liệu có giá trị bằng không.counts based datasets in which the dependent variable contains an excess of zero-valued data.

Đếm bộ dữ liệu là các bộ dữ liệu trong đó biến phụ thuộc là một sự kiện như:are ones where the dependent variable is an event such as:

  • Số lượng phương tiện đi qua một ngã tư mỗi giờ.
  • Số lần truy cập ER xảy ra mỗi tháng
  • Số lượng yêu cầu bảo hiểm xe cơ giới được nộp mỗi năm
  • Số lượng khiếm khuyết được tìm thấy trong một bảng mạch in được sản xuất hàng loạt.

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Tập dữ liệu chứa nhiều số không (hình ảnh bởi & nbsp; tác giả)

Nhiều hiện tượng trong thế giới thực tạo ra số lượng hầu như không phải lúc nào cũng bằng không. Ví dụ:

  • Số lần máy bị lỗi mỗi tháng
  • Số lượng ngoại hành tinh được phát hiện mỗi năm
  • Số lượng tỷ phú sống ở mọi thành phố trên thế giới.

Dữ liệu như vậy rất khó để đối phó với việc sử dụng các mô hình truyền thống cho các số lượng dữ liệu như Poisson, các mô hình hồi quy nhị thức âm hoặc nhị thức.Poisson, the Binomial or the Negative Binomial regression models.

Điều này là do các bộ dữ liệu như vậy chứa nhiều số lượng có giá trị bằng 0 so với những gì người ta mong đợi để quan sát bằng cách sử dụng phân phối xác suất mô hình truyền thống.contain more number of zero valued counts than what one would expect to observe using the traditional model’s probability distribution.

Ví dụ: nếu bạn cho rằng một hiện tượng tuân theo quy trình Poisson (5) sau đây, bạn sẽ thấy số 0 không quá 0,67% thời gian:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Một quy trình Poisson (5) sẽ tạo ra các số không trong khoảng 0,67% các quan sát (hình ảnh bởi & nbsp; tác giả)

Nếu bạn quan sát số 0 thường xuyên hơn thế, tập dữ liệu chứa phần dư của số 0.an excess of zeroes.

Nếu bạn sử dụng mô hình hồi quy Poisson hoặc Binomial hoặc NB tiêu chuẩn trên các bộ dữ liệu đó, nó có thể phù hợp và sẽ tạo ra các dự đoán chất lượng kém, bất kể bạn điều chỉnh các tham số của nó bao nhiêu.

Vì vậy, một người mô hình phải làm gì khi phải đối mặt với dữ liệu như vậy với số không vượt quá?


May mắn thay, có một cách để sửa đổi một mô hình số lượng tiêu chuẩn như Poisson hoặc nhị thức âm để giải thích cho sự hiện diện của các số không. Trong thực tế, có ít nhất hai cách để làm điều này. Một kỹ thuật được gọi là mô hình Hurdle và kỹ thuật thứ hai được biết đến là mô hình không bị ảnh hưởng.Hurdle model and the second technique is known the Zero-Inflated model.

Trong phần này, chúng tôi sẽ xem xét mô hình hồi quy không bị ảnh hưởng một số chi tiết. Cụ thể, chúng tôi sẽ tập trung vào mô hình hồi quy Poisson tăng lên bằng không, thường được gọi là mô hình ZIP.Zero Inflated Poisson regression model, often referred to as the ZIP model.

Cấu trúc của mô hình zip

Hãy cùng nhìn vào cấu trúc của một mô hình Poisson thông thường trước khi chúng ta thấy cấu trúc của nó được sửa đổi như thế nào để xử lý số lượng 0 dư thừa.

Hãy tưởng tượng một tập dữ liệu chứa n mẫu và biến hồi quy P trên mỗi mẫu. Do đó, các biến hồi quy x có thể được biểu diễn bằng một ma trận kích thước (n x p) và mỗi hàng x_i trong ma trận x là một vectơ có kích thước (1 x p) tương ứng với giá trị biến phụ thuộc y_i:X can be represented by a matrix of size (n x p) and each row x_i in the X matrix is a vector of size (1 x p) corresponding the dependent variable value y_i:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Một tập dữ liệu (y, x) trong ký hiệu ma trận (hình ảnh by & nbsp; tác giả)y, X) in matrix notation (Image by Author)

Nếu chúng ta cho rằng Y là biến ngẫu nhiên phân phối Poisson, chúng ta có thể xây dựng mô hình hồi quy Poisson cho bộ dữ liệu này. Mô hình Poisson được tạo thành từ hai phần:y is a Poisson distributed random variable, we can build a Poisson regression model for this data set. The Poisson model is made up of two parts:

  1. Một hàm khối xác suất Poisson (PMF) được ký hiệu là p (y_i = k) được sử dụng để tính xác suất quan sát các sự kiện K trong bất kỳ khoảng thời gian đơn vị nào với tỷ lệ sự kiện trung bình của λ sự kiện / thời gian đơn vị.Probability Mass Function (PMF) denoted as P(y_i=k) used to calculate the probability of observing k events in any unit interval given a mean event rate of λ events / unit time.
  2. Một hàm liên kết được sử dụng để thể hiện tốc độ trung bình λ là hàm của các biến hồi quy X.as a function of the regression variables X.

Điều này được minh họa trong hình dưới đây:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Chức năng khối lượng xác suất của mô hình hồi quy Poisson tiêu chuẩn (hình ảnh bởi & nbsp; tác giả)

Thông thường, chúng tôi giả định rằng có một số quy trình cơ bản đang tạo ra số lượng quan sát được theo Poisson PMF: P (y_i = k).

Trực giác đằng sau mô hình Poisson tăng lên bằng không là có một quy trình cơ bản thứ hai đang xác định liệu số đếm bằng 0 hay không. Khi số đếm được xác định là không khác, quy trình Poisson thông thường sẽ sử dụng để xác định giá trị khác không thực tế của nó dựa trên quy trình Poisson PoMF PMF.there is a second underlying process that is determining whether a count is zero or non-zero. Once a count is determined to be non-zero, the regular Poisson process takes over to determine its actual non-zero value based on the Poisson process’s PMF.

Do đó, mô hình hồi quy zip bao gồm ba phần:ZIP regression model consists three parts:

  1. Một pmf p (y_i = 0) được sử dụng để tính toán xác suất quan sát số không.
  2. Một pmf pf thứ hai (y_i = k) được sử dụng để tính toán xác suất quan sát các sự kiện k, cho rằng k> 0.
  3. Một hàm liên kết được sử dụng để thể hiện tốc độ trung bình λ là hàm của các biến hồi quy X.as a function of the regression variables X.

Điều này được minh họa trong hình dưới đây:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Chức năng khối lượng xác suất của mô hình hồi quy Poisson tiêu chuẩn (hình ảnh bởi & nbsp; tác giả)

Thông thường, chúng tôi giả định rằng có một số quy trình cơ bản đang tạo ra số lượng quan sát được theo Poisson PMF: P (y_i = k).x_i=[x_i1, x_i2, x_i3,…,x_ip].

Trực giác đằng sau mô hình Poisson tăng lên bằng không là có một quy trình cơ bản thứ hai đang xác định liệu số đếm bằng 0 hay không. Khi số đếm được xác định là không khác, quy trình Poisson thông thường sẽ sử dụng để xác định giá trị khác không thực tế của nó dựa trên quy trình Poisson PoMF PMF.(y_i, x_i) in the data set; .

Do đó, mô hình hồi quy zip bao gồm ba phần:

Một pmf p (y_i = 0) được sử dụng để tính toán xác suất quan sát số không.

Hãy tưởng tượng rằng bạn lấy 1000 quan sát của y_i, mỗi người có cùng một sự kết hợp của các giá trị biến hồi quy x_i = [x_i1, x_i2, x_i3, Hồi, x_ip]. Vì y_i là một biến ngẫu nhiên tuân theo phân phối Poisson, bạn có thể thấy một giá trị khác nhau của y_i trong mỗi một trong 1000 quan sát.same combination of regression variable values x_i=[x_i1, x_i2, x_i3,…,x_ip]. Since y_i is a random variable that follows the Poisson distribution, you may see a different value of y_i in each one of the 1000 observations.

Giả sử rằng trong số các giá trị 1000 y_i mà bạn quan sát, bạn quan sát 874 giá trị bằng không. Bạn xác định rằng trong số 874 giá trị 0 này, phân phối Poisson thông thường mà bạn đã giả sử cho Y_I, sẽ chỉ có thể giải thích tới 7 giá trị bằng không. Vì vậy, 867 giá trị bằng 0 còn lại là các quan sát vượt quá 0. Vì vậy, đối với hàng ith trong tập dữ liệu của bạn, ϕ_i = 867/1000 = 0.867.

Khi tập dữ liệu không có bất kỳ số 0 dư nào trong biến phụ thuộc, giá trị của ϕ hoạt động bằng 0 và PMF của mô hình ZIP sẽ giảm xuống PMF của mô hình Poisson tiêu chuẩn (bạn có thể dễ dàng xác minh điều này bằng cách cài đặt ϕ thành thành 0 trong PMF của mô hình zip).ϕ works out to be zero and the PMF of the ZIP model reduces to the PMF of the standard Poisson model (you can easily verify this by setting ϕ to 0 in the ZIP model’s PMF).

Làm thế nào để ước tính & nbsp;?

Vậy làm thế nào chúng ta có thể ước tính giá trị của ϕ_i?

Một cách ước tính đơn giản và thô thiển ϕ_i là bằng cách đặt mỗi ϕ_I theo tỷ lệ sau:ϕ_i to the following ratio:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Một cách đơn giản nhưng không chính xác để ước tính ϕ_i trong mô hình zip (hình ảnh by & nbsp; tác giả)ϕ_i in the ZIP model (Image by Author)

Có lẽ một cách tính thực tế hơn để tính toán ϕ_i là bằng cách ước tính nó như là một hàm của các biến hồi quy X. Điều này thường được thực hiện bằng cách chuyển đổi biến y thành biến ngẫu nhiên 0/1 Y là 0 và 1 trong tất cả các trường hợp khác. Sau đó, chúng tôi phù hợp với một mô hình hồi quy logistic trên y đã biến đổi. Sau đó, chúng tôi đào tạo mô hình hồi quy logistic trên tập dữ liệu [x, y,] và nó mang lại một vectơ xác suất được trang bị.X. This is usually done by transforming the y variable to a binary 0/1 random variable y’ (y_prime) which takes the value 0 if the underlying y is 0, and 1 in all other cases. Then we fit a Logistic regression model on the transformed y’. We then train the Logistic regression model on the data set [X, y’] and it yields a vector of fitted probabilities µ_fitted=[µ_1, µ_2, µ_3,…,µ_n], (because that’s what a Logistic regression model does).

Khi chúng tôi nhận được vectơ vectơ, chúng tôi chỉ cần đặt nó thành vectơ.µ_fitted vector, we simply set it to the vector ϕ.

Do đó, [ϕ_1 = Tiết_1, ϕ_2 = Phản_2, ϕ_3 = Phản_3, Tiết, ϕ_N = Phản_N].

Quá trình trên ước tính ϕis được minh họa dưới đây:ϕis illustrated below:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Trình tự đào tạo để ước tính tham số Zeros vượt quá trong mô hình zip (hình ảnh by & nbsp; tác giả)ϕ in a ZIP model (Image by Author)

Khi vectơ được ước tính, chúng tôi cắm nó vào các hàm xác suất của mô hình ZIP và sử dụng những gì được gọi là kỹ thuật ước tính khả năng tối đa (MLE) để đào tạo mô hình ZIP trên tập dữ liệu với số lượng vượt quá.ϕ vector is estimated, we plug it into the probability functions of the ZIP model and use what is known as the Maximum Likelihood Estimation (MLE) technique to train the ZIP model on the data set with excess counts.

Hình dưới đây minh họa chuỗi đào tạo của mô hình zip:ZIP model:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Trình tự đào tạo của mô hình zip (hình ảnh bởi & nbsp; tác giả)

Rất may, có nhiều gói thống kê tự động hóa toàn bộ quy trình ước tính này và sử dụng ước tính để đào tạo mô hình ZIP bằng kỹ thuật MLE trên bộ dữ liệu của bạn.ϕ and using the estimated ϕ to train the ZIP model using the MLE technique on your data set.

Trong phần còn lại của phần này, chúng tôi sẽ sử dụng thư viện Python Statsmodels để xây dựng và đào tạo mô hình zip trong một dòng mã duy nhất.


Cách đào tạo mô hình zip bằng cách sử dụng & nbsp; python

Trong hướng dẫn Python của chúng tôi về mô hình ZIP, chúng tôi sẽ sử dụng một bộ dữ liệu các chuyến đi cắm trại được thực hiện bởi 250 nhóm người:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Bộ dữ liệu Trips Trips (hình ảnh bởi & nbsp; tác giả)

Bộ dữ liệu có sẵn ở đây. Dưới đây là một vài tính năng nổi bật của bộ dữ liệu này:

  • Các trại viên có thể đã hoặc không thực hiện một số câu cá trong chuyến đi của họ.
  • Nếu một nhóm làm một số câu cá, họ sẽ bắt được không hoặc nhiều cá.
  • Chúng tôi muốn ước tính không chỉ có bao nhiêu con cá bị bắt (nếu có việc câu cá được thực hiện bởi một nhóm cắm trại), mà cả xác suất mà nhóm cắm trại bắt được bất kỳ con cá nào.

Do đó, có hai quy trình tạo dữ liệu riêng biệt liên quan:

  1. Một quy trình xác định liệu một nhóm cắm trại có được sử dụng trong một hoạt động đánh bắt thành công hay không: mô hình ZIP sẽ sử dụng nội bộ mô hình hồi quy logistic được giải thích trước đó để mô hình hóa quá trình nhị phân này.
  2. Một quy trình thứ hai xác định có bao nhiêu con cá bị bắt bởi một nhóm cắm trại, cho rằng có ít nhất một con cá bị bắt bởi nhóm: Mô hình ZIP sẽ sử dụng mô hình Poisson thông thường để mô hình hóa quá trình thứ hai này.

Các biến trong tập dữ liệu

Bộ dữ liệu Trips Trips chứa các biến sau:

FISH_COUNT: Số lượng cá bị bắt. Đây sẽ là biến phụ thuộc của chúng tôi y.The number of fish that were caught. This will be our dependent variable y.

Live_bait: Một biến nhị phân cho biết liệu mồi sống có được sử dụng hay không.A binary variable indicating whether live bait was used.

Camper: Liệu nhóm câu cá có sử dụng xe tải cắm trại hay không.Whether the fishing group used a camper van.

Người: Tổng số người trong nhóm đánh cá. Lưu ý rằng trong một số nhóm, không ai trong số họ có thể đã đánh bắt được.Total number of people in the fishing group. Note that in some groups, none of them may have fished.

Trẻ em: Số trẻ em trong nhóm cắm trại.The number of children in the camping group.

Dưới đây là phân phối tần số của biến Fish_Count phụ thuộc:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Phân phối tần số của FISH_COUNT (Hình ảnh bởi & nbsp; tác giả)

Như chúng ta có thể thấy, có thể có số 0 dư trong tập dữ liệu này. Chúng tôi sẽ đào tạo một mô hình zip trên bộ dữ liệu này để kiểm tra lý thuyết này và hy vọng đạt được sự phù hợp tốt hơn so với mô hình Poisson thông thường.

Mục tiêu hồi quy

Mục tiêu hồi quy của chúng tôi trên tập dữ liệu này như sau:

Dự đoán số lượng cá bị bắt (FISH_COUNT) bởi một nhóm cắm trại dựa trên các giá trị của các biến số Live_bait, Camper, người và trẻ em.

Chiến lược hồi quy

Chiến lược hồi quy của chúng tôi sẽ như sau:

  1. FISH_COUNT sẽ là biến phụ thuộc y và [live_bait, camper, người và trẻ em] sẽ là biến giải thích X.y, and [LIVE_BAIT, CAMPER, PERSONS and CHILDREN] will be the explanatory variables X.
  2. Chúng tôi sẽ sử dụng thư viện Python StatSmodels để đào tạo mô hình hồi quy zip trên tập dữ liệu (y, x).statsmodels library to train the ZIP regression model on the (y, X) data set.
  3. Chúng tôi sẽ đưa ra một số dự đoán bằng cách sử dụng mô hình ZIP trên tập dữ liệu thử nghiệm mà mô hình chưa từng thấy trong quá trình đào tạo.

Hãy bắt đầu bằng cách nhập tất cả các gói yêu cầu:

import pandas as pd
from patsy import dmatrices
import numpy as np
import statsmodels.api as sm
import matplotlib.pyplot as plt

Tiếp theo, chúng tôi sẽ tải dữ liệu cá được đặt vào bộ nhớ. Đây là liên kết đến tập dữ liệu:

df = pd.read_csv('fish.csv', header=0)

Hãy để in một vài hàng trên cùng của bộ dữ liệu:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
10 hàng hàng đầu của tập dữ liệu (hình ảnh bởi & nbsp; tác giả)

Hãy để Lừa cũng in ra phân phối tần số của các giá trị FISH_COUNT:

df.groupby('FISH_COUNT').count()

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Phân phối tần số của số lượng cá (hình ảnh bởi & nbsp; tác giả)

Tạo các bộ dữ liệu đào tạo và kiểm tra. Lưu ý rằng bây giờ, chúng tôi không thực hiện phân chia ngẫu nhiên phân tầng:

mask = np.random.rand(len(df)) < 0.8
df_train = df[mask]
df_test = df[~mask]
print('Training data set length='+str(len(df_train)))
print('Testing data set length='+str(len(df_test)))

>> Training data set length=196
>> Testing data set length=54

Thiết lập biểu thức hồi quy trong patsynotation. Chúng tôi đang nói với Patsy rằng Fish_Count là biến phụ thuộc của chúng tôi và nó phụ thuộc vào các biến hồi quy live_bait, người cắm trại, người và trẻ em:Patsynotation. We are telling Patsy that FISH_COUNT is our dependent variable y and it depends on the regression variables LIVE_BAIT, CAMPER, PERSONS and CHILDREN:

expr = 'FISH_COUNT ~ LIVE_BAIT  + CAMPER + CHILDREN + PERSONS'

Hãy để sử dụng Patsy để khắc các ma trận X và Y cho các bộ dữ liệu đào tạo và thử nghiệm.X and y matrices for the training and testing data sets.

y_train, X_train = dmatrices(expr, df_train, return_type='dataframe')
y_test, X_test = dmatrices(expr, df_test, return_type='dataframe')

Sử dụng lớp StatSmodels từ ZeroinflatedPoisson, hãy để xây dựng và đào tạo mô hình hồi quy zip trên bộ dữ liệu đào tạo.ZeroInflatedPoisson class, let’s build and train a ZIP regression model on the training data set.

Nhưng trước khi chúng tôi làm như vậy, hãy để tôi giải thích cách sử dụng hai tham số mà hàm tạo lớp lấy:

  • Lạm phát: Lớp mô hình ZeroinFlatedPoisson sẽ sử dụng bên trong mô hình logisticRegression để ước tính tham số. Do đó, chúng tôi đặt lạm phát tham số mô hình thành logit logit. Chúng tôi cũng có thể thử nghiệm việc thiết lập nó thành các hàm liên kết nhị thức khác như ‘probit.The ZeroInflatedPoisson model class will internally use a LogisticRegression model to estimate the parameter ϕ. Hence we set the model parameter inflation to ’logit’. We can also experiment with setting it to other Binomial link functions such as ‘probit’.
  • EXOG_INFL: Chúng tôi cũng muốn yêu cầu mô hình ZIP ước tính ϕ như là một hàm của cùng một bộ biến hồi quy như mô hình cha mẹ, cụ thể là: live_bait, camper, người và trẻ em. Do đó, chúng tôi đặt tham số exog_infl thành x_train. Nếu bạn chỉ muốn sử dụng một tập hợp con của x_train, bạn có thể làm như vậy hoặc bạn có thể đặt exog_infl thành một tập hợp các biến hồi quy hoàn toàn khác.We also want to ask the ZIP model to estimate ϕ as a function of the same set of regression variables as the parent model, namely: LIVE_BAIT, CAMPER, PERSONS and CHILDREN. Hence we set the parameter exog_infl to X_train. If you want to use only a subset of X_train, you can do so, or you can set exog_infl to an entirely different set of regression variables.

Dòng dưới đây xây dựng và đào tạo mô hình ZIP trên dữ liệu đào tạo của chúng tôi được đặt trong một dòng mã duy nhất.

zip_training_results = sm.ZeroInflatedPoisson(endog=y_train, exog=X_train, exog_infl=X_train, inflation='logit').fit()

In tóm tắt đào tạo:

print(zip_training_results.summary())

Dưới đây là bản tóm tắt đào tạo (tôi đã nhấn mạnh các yếu tố quan trọng trong đầu ra):

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Tóm tắt đào tạo về mô hình zip (hình ảnh bởi & nbsp; tác giả)

Diễn giải đầu ra đào tạo

Hộp màu xanh chứa thông tin về các biến mà mô hình hồi quy logistic lồng nhau đã được sử dụng để ước tính xác suất cho dù có bất kỳ con cá nào bị bắt bởi một nhóm cắm trại hay không.ϕof whether or not any fish were caught by a camping group.

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Các hệ số hồi quy, lỗi tiêu chuẩn và điểm Z từ mô hình ZIP được trang bị (hình ảnh BY & NBSP; tác giả)

Lưu ý rằng mô hình hồi quy logistic không tìm thấy các biến chặn, Live_bait và Camper hữu ích để ước tính. Các hệ số hồi quy của chúng được tìm thấy không có ý nghĩa thống kê ở mức độ tin cậy 95%, như được chỉ ra bởi các giá trị p tương ứng: Ổn dẻ_intercept = 0,425, & nbsp; ngưỡng lỗi).ϕ. Their regression coefficients were found to be NOT statistically significant at the 95% confidence level, as indicated by the respective p values:
inflate_Intercept=0.425
inflate_LIVE_BAIT=0.680 and 
inflate_CAMPER=0.240,
which are all greater than 0.05 (i.e. 5% error threshold).

Quan sát 1

Hai biến duy nhất mà mô hình hồi quy logistic được xác định là hữu ích để ước tính xác suất liệu bất kỳ con cá nào bị bắt có phải là trẻ em và người hay không.

Quan sát 2

Hệ số hồi quy của người là tiêu cực (bơm hơi_persons -1.2193) có nghĩa là khi số người trong nhóm cắm trại tăng lên, xác suất không có cá nào bị bắt bởi nhóm đó giảm. Điều này phù hợp với trực giác của chúng tôi.-1.2193) which means that as the number of people in the camping group increases, probability of no fish being caught by that group decreases. This is in line with our intuition.

Hộp màu đỏ chứa thông tin về các biến mà mô hình Poisson của cha mẹ được sử dụng để ước tính FISH_COUNT về điều kiện Fish_Count> 0.

Quan sát 3

Chúng ta có thể thấy rằng các hệ số cho tất cả 5 biến hồi quy có ý nghĩa thống kê ở mức độ tin cậy 99%, bằng chứng là giá trị p của chúng nhỏ hơn 0,01. Trên thực tế, giá trị P nhỏ hơn 0,001 cho cả 5 biến, do đó nó hiển thị là 0,000.

Quan sát 4

Hệ số cho trẻ em là tiêu cực (trẻ em -1.0810), có nghĩa là khi số lượng trẻ em trong nhóm cắm trại tăng lên, số lượng cá bị bắt bởi nhóm đó đi xuống!

Quan sát 5

Độ khả năng đăng nhập tối đa của mô hình này là -566.43. Giá trị này rất hữu ích để so sánh mức độ phù hợp của mô hình với mô hình khác.

Quan sát 6

Cuối cùng, lưu ý rằng thuật toán đào tạo của mô hình ZIP không thể hội tụ trên dữ liệu đào tạo được đặt như được chỉ ra bởi các điều sau đây:

Nếu nó đã hội tụ, có lẽ nó sẽ dẫn đến một sự phù hợp tốt hơn. Chúng ta có thể cố gắng khắc phục điều đó bằng cách chuyển theo tham số tối đa = 100 vào phương thức FIT ().


Sự dự đoán

Chúng tôi sẽ nhận được các dự đoán mô hình ZIP trên tập dữ liệu thử nghiệm và tính toán lỗi bình phương trung bình gốc W.R.T. Các giá trị thực tế:

zip_predictions = zip_training_results.predict(X_test,exog_infl=X_test)
predicted_counts=np.round(zip_predictions)
actual_counts = y_test[dep_var]
print('ZIP RMSE='+str(np.sqrt(np.sum(np.power(np.subtract(predicted_counts,actual_counts),2)))))

df = pd.read_csv('fish.csv', header=0)
0

Hãy để âm mưu dự đoán so với số lượng cá thực tế:

df = pd.read_csv('fish.csv', header=0)
1

Chúng tôi thấy cốt truyện sau:

Hướng dẫn zero-inflated poisson regression python - Trăn hồi quy poisson không bị thổi phồng
Dự đoán so với cá thực tế bị bắt (hình ảnh bởi & nbsp; tác giả)

Điều này hoàn thành cái nhìn của chúng tôi về mô hình hồi quy Poisson không bị ảnh hưởng.


Trích dẫn và bản quyền

Giấy tờ

Lambert, Diane. Hồi quy Poisson không bị ảnh hưởng, với một ứng dụng cho các khiếm khuyết trong sản xuất. Technometrics, tập. 34, không. 1, 1992, trang 1 trận14. JStor, www.jstor.org/stable/1269547.

Sách

Cameron A. C. và Trivingi P. K., Phân tích hồi quy dữ liệu đếm, phiên bản thứ hai, chuyên khảo của Hiệp hội kinh tế lượng số 53, Nhà xuất bản Đại học Cambridge, Cambridge, tháng 5 năm 2013.

Hình ảnh

Tất cả các hình ảnh là ngày Sachin bản quyền theo CC-by-NC-SA, trừ khi một nguồn và bản quyền khác được đề cập bên dưới hình ảnh.


Trước: Mô hình hồi quy Poisson tổng quát:The Generalized Poisson Regression Model

Tiếp theo: Phù hợp các mô hình hồi quy tuyến tính trên đếm dựa trên & NBSP; bộ dữ liệu:Fitting Linear Regression Models on Count Based Data Sets


UP: Bảng nội dungTable of Contents