You are on page 1of 2

Khi mà các bạn biết đc cách hoạt động bên trong của những thuật toán khi mà bạn

gặp
1 vấn đề nhanh chóng
+Chọn đc thuật toán phù hợp.
+Có thể khắc phục sửa lỗi.Bằng cách điều chỉnh các tham số đưa vào.
+GD (gradient descent) là một thuật toán đa dụng bất kì một vấn đề nào 1 bài toán
nào mà các bạn cần tìm cực trị của 1 hàm số là mình đều có thể
dùng hết nó được sử dụng thành công trong deep learning.

*Train Linear Regression models


Có 2 cách để train cái model
+Use "closed-form" equation.
+Use a local search approach called Gradient Descent(GD).

Mọi model machine learning phải cần ít nhất là 2 function này mà các bạn phải
training sử dụng được model đó.
*Hypothesis function of LR (công dụng của hàm này dùng để mô tả dữ liệu)
Vd: Bạn có đống dữ liệu như nãy đường thẳng là cái đường mô tả dữ liệu cái phương
trình của nó là cái hàm Hypothesis nếu
bạn nắm hàm đó trong tay thì bạn có thể lấy hàm đó làm prediction (dự đoán).Hàm này
mô tả dữ liệu bây giờ mình có thể hỏi cái
đống dữ liệu của mình thì mình có thể suy ra được cái hàm mô tả khuynh hướng dữ
liệu mình có thể hỏi nó là với giá trị feature
bằng bao nhiêu đây thì giá nhà hay giá vàng là bn.

Đối với mỗi model khác nhau thì Hypothesis này thì có phương trình khác nhau.Phương
trình hiện tại là của model Linear Regression
Linear là một đường thẳng.

*Muốn nhân 2 ma trận thì phải có số hàng B = số cột A


A * B = C
(2,3) (3,4) (2,4)

*Cost function tóm lại hàm này đo hoạt động cái model mình nó coi mình sử dụng bộ
tham số đó (bộ paramater đó) chạy trên dữ liệu
sai số nó nhiều hay là nó ít sai số nó ra bao nhiêu đó là công việc của cost
function.

Cái mình cần là tìm cái bội số 0 (fitter này) để nó minimizes (cực tiểu hoá ) cost
function.Vì là sai số nên muốn càng nhỏ
càng tốt bằng 0 là càng tốt nếu ko bằng 0 đc thì phải nhỏ nhất hay nói cách khác là
tìm cực trị cho hàm J.

*Tìm cực trị cho hàm


PP1:Normal Equation
Muốn tìm cực trị của thằng này lấy đạo hàm của nó và cho đạo hàm bằng 0 giải ra tìm
cực trị (như phổ thông).
*Ưu điểm lập trình rất là dễ.
*Nhược điểm vì trong thuật toán nó có nghịch đảo ma trận (n+1,n+1) nếu dữ liệu mình
là dữ liệu lớn thì tốn nhiều thời gian phức tạp.

*Trong trường hợp dữ liệu của mình có nhiều feature thì phương pháp Normal Equation
thì nó thua có thể chạy tràn bộ nhớ luôn tìm ma trận
nghịch đảo khi mà kích thước ma trận mà nó lớn thì việc tìm ma trận nghịch đảo nó
đòi hỏi số có độ chính xác rất là cao.Nếu ko đủ độ chính xác
nó có thể ko tìm thấy ma trận luôn .Trong trường hợp có nhiều feature như vậy nó
chạy ko hiệu quả về mặt lý thuyết luôn luôn chạy đc thực tế
có thể chạy rất lâu và ko ra luôn.Người ta dùng phương pháp khác là Gradient
descent.
PP2:Gradient descent
Muốn tìm cực trị trên các hàm.

Đầu tiên khởi tạo giá trị ngẫu nhiên cho fitter.
Lần cập nhật tiếp theo tiếp tục tăng fitter lên nữa khi mà tăng đến điểm cực tiểu
thì dừng ko tăng nữa.
Khởi tạo bên ngược lại thì nó giảm khởi tạo bên nào thì nó cũng dẫn đến điểm cực
trị.

Ưu điểm trong này ko có phép nghịch đảo ma trận vì vậy nó nhanh hơn Normal Equation
rất là nhiều nếu bạn có nhiều feature

You might also like