Bài tập kỹ thuật dự báo hồi quy logistic

Đã đăng vào thg 9 18, 2020 2:41 CH 8 phút đọc

1. Giới thiệu

  • Trong bài viết này, chúng ta sẽ thảo luận các khái niệm Logistic Regression và xem nó có thể giúp chúng ta xử lý các vấn đề thế nào.
  • Logistic Regression là 1 thuật toán phân loại được dùng để gán các đối tượng cho 1 tập hợp giá trị rời rạc [như 0, 1, 2, ...]. Một ví dụ điển hình là phân loại Email, gồm có email công việc, email gia đình, email spam, ... Giao dịch trực tuyến có là an toàn hay không an toàn, khối u lành tính hay ác tình. Thuật toán trên dùng hàm sigmoid logistic để đưa ra đánh giá theo xác suất. Ví dụ: Khối u này 80% là lành tính, giao dịch này 90% là gian lận, ...

2. Đặt vấn đề

3. Hàm sigmoid

  • Giờ phải tìm xác suất cho vay của 1 hồ sơ, đương nhiên là giá trị trong đoạn [0, 1] rồi. Hàm mà luôn có giá trị trong đoạn [0, 1], liên tục mà lại dễ sử dụng thì đó là hàm sigmoid.
  • Nhận xét:
  • Hàm liên tục và luôn đưa ra giá trị trong khoảng [0, 1]

  • Có đạo hàm tại mọi điểm nên có thể dùng gradient descent

4. Thiết lập bài toán

Về cơ bản thì chúng ta sẽ có các bước sau cho 1 bài toán Machine learning:

  • Thiết lập model
  • Thiết lập hàm mất mát Loss Function
  • Tìm tham số bằng việc tối ưu loss function
  • Dự đoán dữ liệu mới dựa vào loss function mới tìm được

4.1 Model

4.2 Loss Function - Hàm mất mát

  • Bây giờ chúng ta cần 1 hàm để đánh giá độ tốt của model [tức làm dự đoán].
  • Ta có nhận xét như sau: + Nếu hồ sơ thứ i là cho vay, tức
    \= 1 thì ta mong muốn
    càng gần 1 càng tốt hay model dự đoán xác suất cho hồ sơ thứ i vay càng cao càng tốt. + Nếu hồ sơ thứ i là không cho vay, tức
    \= 0 thì ta mong muốn
    càng gần 0 càng tốt hay model dự đoán xác suất cho hồ sơ thứ i vay càng thấp càng tốt.
  • Với mỗi điểm [
    ,
    ], ta gọi hàm loss function
    [Trong Machine learning, Deep leaning thì chúng ta hiểu log là ln nhé]
  • Thử đánh giá hàm L nhé. Nếu
    . Đây là đồ thị hàm loss trong trường hợp
    \= 1
  • Nhận xét: + Hàm L giảm từ 0 đến 1 + Khi model dự đoán
    \= 1, tức giá trị dự đoán gần với giá trị thật
    thì L nhỏ, xấp xỉ 0. + Khi model dự đoán
    \= 0, tức giá trị dự đoán ngược lại với giá trị thật
    thì L rất lớn.
  • Ngược lại, nếu
    , ta có đồ thị sau
  • Nhận xét: + Hàm L tăng từ 0 đến 1 + Khi model dự đoán
    gần 0, tức giá trị dự đoán gần với giá trị thật
    thì L nhỏ, xấp xỉ 0. + Khi model dự đoán
    gần 1, tức giá trị dự đoán ngược lại với giá trị thật
    thì L rất lớn => Hàm L nhỏ khi giá trị model gần với giá trị thật và rất lớn khi model dự đoán sai, hay nói cách khác L càng nhỏ thì model dự đoán càng gần với giá trị thật. => Bài toán toán quy về tìm giá trị nhỏ nhất của L.
  • Ta có hàm mất mát trên tất cả bộ dữ liệu như sau:

4.3 Tính đạo hàm phức tạp bằng kỹ thuật Chain Rule

4.4 Áp dụng gradient descent

4.5 Biểu diễn bằng ma trận

4.6 Xây dựng đường thẳng phân chia

5. Ứng dụng

  • Dự đoán email có phải spam hay không
  • Dự đoán giao dịch ngân hàng là gian lận hay không
  • Dự đoán khối u lành hay ác tính
  • Dự đoán khoản vay có trả được không
  • Dự đoán khoản đầu tư vào start-up có sinh lãi hay không.
    Nguồn Towards Datascience, Deep learning cơ bản

All rights reserved

Chủ Đề