Quy trình 3 bước trong Machine Learning và hàm chi phí

Bài viết được sự cho phép của tác giả Kien Dang Chung

Video trong bài viết

Trong Phần 1: Dự đoán doanh thu phim với Hồi quy tuyến tính, chúng ta đã được làm quen với Machine Learning và thuật toán Hồi quy tuyến tính (Linear Regression). Các bài học ở phần 1 mới chỉ mang tính chất giới thiệu, để bạn đọc có thể hiểu sơ lược xem Machine Learning là gì? khi áp dụng vào các bài toán thực tế nó đem lại kết quả ra sao?

  9 hiểu lầm "ngớ ngẩn" về machine learning
  Chia sẻ cơ bản sử dụng machine learning để giải quyết bài toán.

Quy trình 3 bước trong Machine Learning

Bạn có nhớ trong bài toán dự đoán doanh thu bằng Linear Regression chúng ta đã sử dụng thuật toán được cài đặt sẵn trong thư viện Scikit-learn. Nhưng chúng ta không đi sâu vào Machine learning diễn ra như thế nào?

Theo hoạt động học tập thông thường, chúng ta cần đưa dữ liệu vào máy tính và nó có thể trả lời các câu hỏi của chúng ta. Cách máy tính học là chúng nhìn ra các mối quan hệ trong dữ liệu. Quay lại với Linear Regression, chúng ta tìm hiểu xem máy đã học như thế nào?

Trước hết, chúng ta cùng đến với quy trình 3 bước trong Machine Learning và sau đó sẽ áp dụng vào một thuật toán cụ thể.

Quy trình 3 bước trong Machine Learning và hàm chi phí

  • Bước 1: Đưa ra dự đoán (đưa ra một giá trị bất kỳ đầu tiên).
  • Bước 2: Tính toán các sai lệch dựa trên dự đoán và dữ liệu đầu vào
  • Bước 3: Máy học, điều chỉnh dự đoán ban đầu và quay về với bước 1.

Phần tiếp theo có liên quan đến Phần 1: Dự đoán doanh thu phim với Linear Regression, bạn nên xem phần 1 trước khi bắt đầu bài viết này vì có rất nhiều thông tin liên quan.

Quay lại với bài toán dự đoán bằng Linear Regression, chương trình cần học và đưa ra các giá thị θ0θ0 và θ1θ1 tối ưu. Bước 1, nó sẽ dự đoán giá trị θ0θ0 và θ1θ1 ví dụ θ00θ00 và θ01θ10. Sau đó, tại bước 2, nó thực hiện tính toán sai lệch. Ở đây, trong thuật toán Linear Regression chúng ta sử dụng Tổng bình phương độ lệch để làm tiêu chí đánh giá xem dự đoán ở bước 1 là đã đúng hay chưa?

TngBìnhPhươngĐLch(RSS)=(y(1)hθ(x(1)))2+(y(2)hθ(x(2)))2+...+(y(n)hθ(x(n)))2=i=nn(y(i)hθ(x(i)))2TổngBìnhPhươngĐộLệch(RSS)=(y(1)−hθ(x(1)))2+(y(2)−hθ(x(2)))2+…+(y(n)−hθ(x(n)))2=∑i=nn(y(i)−hθ(x(i)))2

Với đường thẳng cần dự đoán là:

hθ(x)=θ0+θ1xhθ(x)=θ0+θ1x

Trong đó, θ0θ0 là điểm cắt với trục y, θ1θ1 là độ dốc của đường thẳng. x(i)x(i)y(i)y(i) là ngân sách và doanh thu của phim ii trong tập dữ liệu ban đầu.

Ở bước thứ 3, nó so sánh RSS của lần tính toán trước với lần tính toán này xem cái nào tốt hơn, nếu đã đủ tốt với một độ chính xác yêu cầu, máy tính dừng lại, nếu chưa nó điều chỉnh các giá trị dự đoán θ0θ0 và θ1θ1 và quay lại bước 1.

Chúng ta đã coi RSS là độ lớn sai lệch tính toán trong Linear Regression. Một phần rất rộng trong Machine Learning là tối ưu hóa để tìm ra các giá trị nhỏ nhất, ví dụ như ở bài toán trên chúng ta cần tìm RSS nhỏ nhất và như vậy với θ0θ0 và θ1θ1 có được, chúng ta có được đường thẳng nói lên mối quan hệ giữa ngân sách và doanh thu phim. Trong Machine learning các hàm này gọi là hàm chi phí (cost function) hoặc hàm mất mát (lost function).

Có thể bạn chưa thật sự hiểu về quy trình 3 bước trong machine learning này nhưng cũng đừng lo lắng, khi bắt đầu vào thiết kế thuật toán và viết code Python bạn sẽ hiểu thôi. Tôi đảm bảo đấy.

Bài viết gốc được đăng tải tại allaravel.com

Có thể bạn quan tâm:

Xem thêm Việc làm Developer hấp dẫn trên TopDev