Hồi quy logistic là một mô hình dùng cho phân loại nhị phân. Nó kết hợp các đặc trưng đầu vào thành một điểm tuyến tính, đưa điểm đó qua hàm sigmoid, rồi tạo ra một số nằm giữa 0011; theo mô hình đã được khớp, số này được diễn giải là xác suất ước lượng của lớp dương.

Dù có tên là "regression", hồi quy logistic thường được dùng để quyết định giữa hai lớp như đỗ/trượt, thư rác/không phải thư rác, hoặc vỡ nợ/không vỡ nợ. Từ "regression" ở đây nói đến công thức tuyến tính bên trong mô hình, không phải việc dự đoán một đầu ra liên tục.

Công thức hồi quy logistic trong một cái nhìn nhanh

Hồi quy logistic nhị phân sử dụng

p(y=1x)=σ(z),z=β0+β1x1++βnxnp(y=1 \mid x) = \sigma(z), \qquad z = \beta_0 + \beta_1 x_1 + \cdots + \beta_n x_n

với hàm sigmoid

σ(z)=11+ez\sigma(z) = \frac{1}{1 + e^{-z}}

Phần tuyến tính zz có thể là bất kỳ số thực nào. Hàm sigmoid nén giá trị đó vào khoảng (0,1)(0,1), nên đầu ra có thể được dùng như một ước lượng xác suất.

Vì sao hàm sigmoid quan trọng

Nếu bạn dùng trực tiếp điểm tuyến tính thô zz làm xác suất, bạn có thể nhận được những giá trị không thể xảy ra như 1.71.7 hoặc 0.4-0.4. Hàm sigmoid khắc phục điều đó bằng cách ánh xạ các điểm âm lớn về gần 00, các điểm dương lớn về gần 11, và các điểm gần 00 về gần 0.50.5.

Điều đó cho ta một cách diễn giải thực tế:

  • nếu zz rất âm, mô hình nghiêng về lớp 00
  • nếu zz gần 00, mô hình không chắc chắn
  • nếu zz rất dương, mô hình nghiêng về lớp 11

Đường cong dốc nhất gần z=0z=0. Vì vậy, một thay đổi nhỏ trong điểm số có thể làm xác suất thay đổi nhiều khi ở gần 0.50.5, nhưng thay đổi ít hơn nhiều khi xác suất đã gần 00 hoặc 11.

Ví dụ hồi quy logistic có tính toán

Giả sử một mô hình dùng một đặc trưng xx và có

z=7+0.1xz = -7 + 0.1x

Bạn có thể xem xx là điểm kiểm tra và y=1y=1 là "đỗ". Các hệ số ở đây chỉ là ví dụ để minh họa cơ chế hoạt động.

Nếu x=65x = 65, thì

z=7+0.1(65)=0.5z = -7 + 0.1(65) = -0.5

Vậy xác suất dự đoán là

p(y=1x=65)=σ(0.5)=11+e0.50.378p(y=1 \mid x=65) = \sigma(-0.5) = \frac{1}{1 + e^{0.5}} \approx 0.378

Nếu x=80x = 80, thì

z=7+0.1(80)=1z = -7 + 0.1(80) = 1

p(y=1x=80)=σ(1)=11+e10.731p(y=1 \mid x=80) = \sigma(1) = \frac{1}{1 + e^{-1}} \approx 0.731

Vì vậy, cùng một mô hình cho xác suất đỗ khoảng 37.8%37.8\% khi x=65x=65 và khoảng 73.1%73.1\% khi x=80x=80. Điểm số tăng thêm 1.51.5, nhưng đầu ra cuối cùng vẫn nằm giữa 0011 vì hàm sigmoid uốn kết quả thành một xác suất.

Nếu bây giờ bạn chọn ngưỡng 0.50.5, trường hợp thứ nhất được phân loại là lớp 00 và trường hợp thứ hai là lớp 11. Bước cuối cùng đó phụ thuộc vào ngưỡng. Bản thân ước lượng xác suất thì không.

Một mẹo ngắn gọn hữu ích: với ngưỡng 0.50.5, lớp sẽ đổi đúng tại thời điểm z=0z=0, vì σ(0)=0.5\sigma(0)=0.5.

Hồi quy logistic trở thành bộ phân loại như thế nào

Đầu ra của mô hình là một ước lượng xác suất. Quy tắc phân loại được thêm vào sau đó.

Ví dụ, với ngưỡng 0.50.5:

  • dự đoán lớp 11 nếu p(y=1x)0.5p(y=1 \mid x) \ge 0.5
  • dự đoán lớp 00 nếu p(y=1x)<0.5p(y=1 \mid x) < 0.5

Nhưng 0.50.5 không phải lúc nào cũng là ngưỡng đúng. Nếu false positive và false negative có chi phí khác nhau, hoặc nếu các lớp bị mất cân bằng mạnh, một ngưỡng khác có thể hoạt động tốt hơn.

Ý nghĩa của các hệ số

Dấu của một hệ số cho bạn biết hướng tác động lên điểm tuyến tính zz:

  • nếu βi>0\beta_i > 0, việc tăng xix_i sẽ làm tăng zz và có xu hướng làm tăng p(y=1x)p(y=1 \mid x)
  • nếu βi<0\beta_i < 0, việc tăng xix_i sẽ làm giảm zz và có xu hướng làm giảm p(y=1x)p(y=1 \mid x)

Phần đó khá trực tiếp. Điểm tinh tế là xác suất không thay đổi tuyến tính theo đặc trưng, vì đường cong sigmoid không phải là một đường thẳng.

Trong hồi quy logistic chuẩn, mô hình tuyến tính nằm trên thang log-odds:

log(p1p)=β0+β1x1++βnxn\log\left(\frac{p}{1-p}\right) = \beta_0 + \beta_1 x_1 + \cdots + \beta_n x_n

Điều này có nghĩa là mỗi lần một đặc trưng tăng thêm một đơn vị thì log-odds thay đổi tuyến tính, khi các đặc trưng khác được giữ cố định. Cách nói này chính xác hơn so với việc nói rằng xác suất thay đổi một lượng cố định.

Những lỗi thường gặp với hồi quy logistic

Xem đầu ra như một lớp được đảm bảo

Một dự đoán như 0.730.73 không có nghĩa là sự kiện chắc chắn sẽ xảy ra. Nó có nghĩa là mô hình gán xác suất ước lượng khoảng 73%73\% cho lớp dương với đầu vào đó.

Cho rằng ngưỡng bắt buộc phải là 0.50.5

0.50.5 là lựa chọn phổ biến, nhưng đó là một lựa chọn chứ không phải quy luật. Ngưỡng tốt nhất phụ thuộc vào ứng dụng.

Nghĩ rằng xác suất thay đổi tuyến tính

Điểm số zz là tuyến tính theo các đầu vào, nhưng xác suất thì không. Một thay đổi một đơn vị trong một đặc trưng có thể tạo ra tác động khác nhau khi ở gần p=0.5p=0.5 so với khi ở gần p=0.95p=0.95.

Quên rằng mô hình là nhị phân nếu không được mở rộng

Hồi quy logistic cơ bản xử lý hai lớp. Có các phiên bản đa lớp, nhưng đó là những phần mở rộng, không phải cùng một thiết lập nhị phân được viết theo cách khác.

Khi nào hồi quy logistic được sử dụng

Hồi quy logistic thường được dùng khi biến mục tiêu là có/không, chẳng hạn như phát hiện thư rác, có bệnh hay không, khách hàng rời bỏ, vỡ nợ khoản vay, hoặc kết quả đỗ/trượt.

Nó vẫn phổ biến vì đơn giản, nhanh và khá dễ diễn giải. Nó đặc biệt hữu ích khi bạn muốn có một bộ phân loại cơ sở, khi tập dữ liệu không quá lớn, hoặc khi bạn cần các xác suất ước lượng thay vì chỉ các nhãn cứng.

Một cách hình dung đơn giản

Hãy nghĩ về hồi quy logistic như một cỗ máy hai bước:

  1. Cộng dồn bằng chứng bằng một điểm tuyến tính.
  2. Chuyển điểm đó thành xác suất bằng hàm sigmoid.

Cách hình dung này là đủ để hiểu hầu hết các ví dụ nhập môn và để thấy vì sao hồi quy logistic nằm ở giao điểm giữa các mô hình tuyến tính và các bài toán phân loại.

Thử một bài toán hồi quy logistic tương tự

Hãy chọn một điểm số đơn giản như

z=3+0.5xz = -3 + 0.5x

Tính σ(z)\sigma(z) cho một vài giá trị của xx, chẳng hạn 22, 661010. Quan sát cách điểm tuyến tính thay đổi đều đặn trong khi xác suất uốn theo một đường cong hình chữ S. Sau đó thử một ngưỡng khác và xem khi nào lớp dự đoán thay đổi.

Cần trợ giúp giải bài?

Tải câu hỏi lên và nhận lời giải từng bước đã được xác minh trong vài giây.

Mở GPAI Solver →