Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
55 views43 pages

Machine Learning Coursera

- Supervised learning problems include regression and classification tasks. Regression predicts continuous output values while classification predicts discrete output labels. - Unsupervised learning deals with unlabeled input data where the outputs are unknown clusters discovered through clustering algorithms. - Models are represented using parameters like theta (θ). Linear regression uses a hypothesis function h(x) = θ0 + θ1x to make predictions. - The cost function J(θ) measures error between predictions and labels. Gradient descent iteratively updates θ values to minimize J(θ) and find the optimal parameters.

Uploaded by

nhi thuy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as XLSX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
55 views43 pages

Machine Learning Coursera

- Supervised learning problems include regression and classification tasks. Regression predicts continuous output values while classification predicts discrete output labels. - Unsupervised learning deals with unlabeled input data where the outputs are unknown clusters discovered through clustering algorithms. - Models are represented using parameters like theta (θ). Linear regression uses a hypothesis function h(x) = θ0 + θ1x to make predictions. - The cost function J(θ) measures error between predictions and labels. Gradient descent iteratively updates θ values to minimize J(θ) and find the optimal parameters.

Uploaded by

nhi thuy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as XLSX, PDF, TXT or read online on Scribd
You are on page 1/ 43

Date Noi dung

### Supervised Learning


10:09 bai toan hoi quy: muc tieu la dung de du doan mot gia tri dau ra lien tuc

bai toan phan loai: muc tieu la de du doan gia tri dau ra roi rac ( co the hieu
dau ra la cac gia tri 0 va 1 ( neu co them gd1,gd2.. Thi cho them 2,3..)
dung Regression de xu ly du lieu tren do:

>> hoac co the hieu phan loai la bai toan : dua ra : "RIGHT ANSWER". Nhung
ket qua tra ve co la nhieu loai xac dinh. Vd: chan doan xem benh nha nay co
phai mac ung thu khong, neu mac thi gd1,gd2mgd3..
Du lieu dau vao biet duoc la loai du lieu nao, co the phan biet duoic , tu do dau
ra cung nhan bie truoc luon
Unsupervised Learning

du lieu ban dau dua vao co nhan giong nhau hoac la khong co nhan luon..
Nguoi dua data vao cung khong cho biet do la loai data nao ... Va dau ra du lieu
cung la ngau nhien va duoc gop lai theo tung nhom( cluster) va su dung thuat
toan cluster Algorithm

5ph40: coktail party Algorithm


Dung 2 nguoi noi vao 2 micro co am nhac o giua: dau ra Algorithm se co cach loc khac nhau:
Cach 1: se loai bo am nhac luon chi con nguoi noi. Cach 2: loai bo tieng nguoi chi con lai am nhac

>>> de lam viec loai bo am thanh nay ( thay vi phai lam viec phuc tap voi rat nhieu thu vien
>. Hoa ra chi can dung cooktail part agr voi chi 1 dong CODE ( phut 10)

Model Representation

ph2:30: cac notaion(kihieu) trong vi du:


m: number of training examples ( trong vidu nay la co 47 row( hang)

x's : "input" variables/features ( vd nay: la dien tich feet)


y's: "output" variables/"target" variables ( vs nay: la tung price)

training set>> dung thuat toan LA va Size ofhouse (x) >> hypothesis(H)( gia
thuyet) >> de dua ra ket qua la gia ban(y)

Ph6:50 : How do we represent H?


Co 2 cach viet H ( often hoac la short hand)
tai sao ta nen dung linear(tuyentinh) trong truong hop nay ( no fu hop voi
nhung truong hop phuc tap hon ma?/ may be: non-linear function as well?) boi
vi linear case nay la mot khoi don gian nen ta vi du mot cai don gian truoc de
sau do co nen tang lam phuc tap hon

Video: Cost Function


Hypothesis : h0(x) = 0o + 01x
Hypo tren co the duoc hieu la linear function dung de du doan
Ve ben phai la muc dich cua video nay voi cau hoi: lam sao de chon no?
chon 0o + 01x sao cho h0(x) gan voi y nhat cho muc dich training exmaple(x,y)
>> ta se co cong thuc tong quat trong video note 6ph10

day2 Cost Function - Intuition I


Voi mot vd moi duoc cho voi dataset (1,1)(2,2)( 3,3)
ta dung function hypothesis o tren se ra duoc 1 curvel ( duong cong) chu hok
fai straight line trong dieu kien fixed ()1

Muc tieu toi uu hoa cho thuat toan hoc tap la chung ta muon chon gia tri
theta>> day la ham muc tieu chua chung ta doi voi hoi quy tuyen tinh >> tim
gia tri nho nhat cua theta one
>> qua ben ho(x) ta cung thay khi ()=1 thi straightline dat tot nhat fit to data line well

Thongke: ho(x) se do thi dung de kiem dinh cuoi cung: do cung la noi cung cap
do lech h de tinh toan ham cost function J() ./ J() sau khi duoc tinh toan se cho
ra 1 cuvel tu do ta se tim diem min cua J se cho tuong ung voi x =? >>> ta dung
x de suy ra ho(x) nao la fit best

Cost Function - Intuition II


Neu co 2 gia tri theta0 va theta1 co day du chu hok phai theta 0=0 nhu video
tren thi >>J luc nay se la hinh thai 3 chieu >> de hieu cho de thi se tuong trung
nhu cac hinh elipse dong tam >>> mua tieu cung la tim J minimize de xac dinh
Hyp ben trai tot nhat

Gradient Descent:(giamdo
doc) thuat toan tim diem
minimize
gradient Descent:hok chi su dung trong hoi quy tuyen tinh ma trong tat cac linh
vuc cua machine learning (tai 0ph05) cung nhu nhieu function khac chu khong
chi la cost function J cho linear

ph1,34: co the co n tham so chu hok phai chi co 2.. Nhung vi su ngan gon nen
chi dung 2 tham so xuyen suot , chu co the dung gradient de xu ly n tham so la
binh thuong

ph5,47: vi tri start chi can khac 1 xi thoi la ket qua minimize tra ve cua
gradient co the da khac xa nhau roi >> bai sau se giai quyet van de nay

10ph40: cach update dong thoi dung : va cach update dong thoi sai

Gradient Descent Intuition


Gia su ta chi co 1 parameteer giong nhu vidu Cost function

ta co cong thuc theta : voi alpha duoc thay bang d >> tai sao d lai thay the cho
alpha duoc???>> d duoc hieu nhu 1 ki hieu cua dao ham , voi purpose cua bai
nay thi 2 khai niem nay duoc hieu la 1( thuc su d la 1ki thuat trong tinh toan>>
hoc ve toan se hieu ro hon)

Gradient Descent For Linear


Regression
ph2:57 trong video nay : de hieu ki thi xem clip ben canh>>> phut 30
Hoac xem text tiep theo khi het video co huong dan cu the tung buoc

4ph25: xem cach thuat toan nay hoat dong nhu the nao?
8phh40: BATCH: name chi moi buoc cua thuat toan >>> dung de doc theo quy dinh chung

day3 Matrices and Vectors

7ph25: co 2 kieu danh index trong vector( vector: la ma tran co n hang va 1 cot
duy nhat): index bat dau tu 1 va index bd =0: tuy thuoc vao ngon ngu su dung
trong ML , index=0 su dung de dang hon. Nhung trong vd nay se dung index one
Matrix Multiplication
Properties
ph00:02

Phép nhân ma trận thực sự hữu ích, vì bạn có thể gói nhiều phép tính vào chỉ
một phép toán nhân ma trận. Nhưng bạn nên cẩn thận về cách bạn sử dụng
chúng.

0ph44: commutative: thuoc tinh giao hoan la su dung trong phep nhan la se
dao nguoc thu tu >>> dieu nay khong dung trong matrix multipli

2ph37: tinh chat thu 2 trong phep nhan matrix:

the associative property of real number multiplication:


Và đây được gọi là thuộc tính kết hợp của phép nhân số thực: A*B*C = (A*B)*C
=A*(B*C)

4:64: identity matrix: ma tran don vi: la ma tran co number one keo dai theo
duong cheo, con lai tat ca vi tri khac la number zero >>> no co tinh chat hoan
vi : A*I=I*A =A (I : la ma tran don vi co tinh chat I n*n ( m*m:hang va cot bang
nhau)

Inverse and Transpose


nghich dao va chuyen vi
trong khong gian so thuc co the thuc hien nghich dao : 6 .1/6 =1: 1/6 la nghich
dao cua 6) :
Nhung khong phai tat ca moi so deu co nghich dao : vd: Zero >> chung ta ap
dung vao trong matrix co the nghich dao duoc hok?
>> chi co square matrix moi co the nghich dao duoc ( m*n*

Vì vậy, làm thế nào tôi tìm thấy nghịch đảo này hoặc làm thế nào tôi nghĩ ra
nghịch đảo này ở đây >>Nó chỉ ra rằng đôi khi bạn có thể tính toán đảo ngược
bằng tay nhưng hầu như không ai làm điều đó ngày nay. Và hóa ra có một phần
mềm số rất tốt để lấy ma trận và tính toán nghịch đảo của nó
7ph40: transpose matrix : A >> AT

A ij =Bji voi B=A(T)

Multiple Features : nhieu tinh


nang
voi vd ma ta thuc hien truoc day chi co 1 features X( dien tich) va dung X do de
du doan price of house voi gia thuyet Hypo (h)

Gradient Descent for Multiple


Variables
Trong video này, chúng ta hãy nói về cách phù hợp với các tham số của giả
thuyết đó. Đặc biệt, hãy nói về cách sử dụng gradient descent cho hồi quy tuyến
tính với nhiều tính năng

Bản thân phương trình giảm dần gradient thường có cùng dạng; chúng tôi chỉ
cần lặp lại nó cho các tính năng 'n' của chúng tôi:

Gradient Descent in Practice I -


Feature Scaling
Trong video này và video sau video này, tôi muốn cho bạn biết về một số thủ
thuật thực tế để làm cho gradient descent hoạt động tốt. Trong video này, tôi
muốn nói với bạn về một ý tưởng được gọi là Feature Scaling :quy mo tính
năng.

1ph49: voi vdu x1 (0-2000 )va x2 (1-5)trong bai thi cost func la hinh elip rat
lech vi co x1 rat lon >> gradient co the mat rat nhieu time de tim diem
minimum
3ph45: ta lay moi tinh nang xap xi trong range sau: -1<= xi <=+1

Vì vậy, thông báo mang về nhà đừng lo lắng nếu các tính năng của bạn
không chính xác trên cùng một tỷ lệ hoặc chính xác trong cùng một phạm
vi giá trị. Nhưng miễn là tất cả chúng đều đủ gần với dải dốc này, nó sẽ
hoạt động ổn

5:45: mean normalization: chuan hoa trung binh

Gradient Descent in Practice II


- Learning Rate
Trong video này, tôi muốn cung cấp cho bạn các mẹo thiết thực hơn để làm cho
gradient descent hoạt động hiệu quả. Các ý tưởng trong video này sẽ xoay
quanh tỷ lệ học tập alpha.

1ph34: truc hoanh la so vong lap lai cua descent : cu sau bn vong lap lai do thi
ta lai co duoc gia tri J(theta)

5ph30: viec gradient tang dan len thuong la do diem start off gan ngay
minimum va ta su dung learning rate qua lon >> no over shoot
5ph57: J (theta) chay len va xuong va len va xuong chu hok giam dan deu dan

Features and Polynomial


Regression : tinh nang va hoi
quy da thuc

Trong video này, tôi muốn cho bạn biết một chút về lựa chọn các tính năng mà
bạn có và cách bạn có thể có được các thuật toán học tập khác nhau, đôi khi là
những thuật toán rất mạnh mẽ bằng cách chọn các tính năng phù hợp. Và đặc
biệt tôi cũng muốn nói với bạn về hồi quy đa thức cho phép bạn sử dụng máy
móc của hồi quy tuyến tính để phù hợp với các hàm rất phức tạp, thậm chí rất
phi tuyến tính.

Bai nay >> chung ta se lua chon hinh dang do thi( cach lua chon do thi thi xem
vi du trong link ben phai>>) de tu do lua chon ham phu hop nhat ( trong bai
nay: can bac hai, binh phuong, bac ba

07:20:00 >>>
Normal Equation: binh phuong

5ph41: cong thuc de tinh toan theta de co ham chi phi minimize

11ph12: co can du dung scale feature khi dung normal equation hok?

11ph53:

Cuối cùng, bạn nên sử dụng gradient descent ở đâu và khi nào bạn nên sử dụng
phương pháp phương trình bình thường. Dưới đây là một số ưu điểm và nhược
điểm của chúng

Tóm lại, miễn là số lượng đối tượng không quá lớn, phương trình bình thường
cho chúng ta một phương pháp thay thế tuyệt vời để giải tham số theta.

Chúng ta sẽ thấy rằng những thuật toán đó thực sự ... Phương pháp phương trình
bình thường thực sự không hoạt động đối với những thuật toán học phức tạp
hơn đó, và, chúng ta sẽ phải sử dụng đến gradient descent cho những thuật toán
đó. Vì vậy, gradient descent là một thuật toán rất hữu ích cần biết. Hồi quy
tuyến tính sẽ có một số lượng lớn các tính năng và đối với một số thuật toán
khác mà chúng ta sẽ thấy trong khóa học này, bởi vì, đối với chúng, phương
pháp phương trình bình thường không áp dụng và không hoạt động. Nhưng đối
với mô hình hồi quy tuyến tính cụ thể này, phương trình bình thường có thể
cung cấp cho bạn một phương án thay thế

Phát video bắt đầu lúc: 16: 7 và theo dõi bản ghi 16: 07

có thể nhanh hơn nhiều so với giảm độ dốc. Vì vậy, tùy thuộc vào chi tiết của
thuật toán của bạn, tùy thuộc vào chi tiết của vấn đề và số lượng tính năng mà
bạn có, cả hai thuật toán này đều đáng được biết đến.
Normal Equation
Noninvertibility:Phương trình
bình thường không khả biến

Trong video này, tôi muốn nói về phương trình Bình thường và tính không
nghịch đảo. Đây là một khái niệm có phần nâng cao hơn, nhưng đó là điều mà
tôi thường được hỏi về. Và vì vậy tôi muốn nói nó ở đây và giải quyết nó ở đây.
Nhưng đây là một khái niệm có phần cao cấp hơn, vì vậy hãy thoải mái xem xét
vật liệu tùy chọn này.

0ph40:Một được gọi là pinv, và cái kia được gọi là inv. Và sự khác biệt
giữa hai điều này là một chút kỹ thuật. Một cái được gọi là giả nghịch
đảo, một cái được gọi là nghịch đảo. Nhưng bạn có thể chỉ ra bằng toán
học rằng miễn là bạn sử dụng hàm pinv thì hàm này sẽ thực sự tính
toán giá trị dữ liệu mà bạn muốn ngay cả khi X chuyển vị X là không thể
đảo ngược

5ph

If X^TXXTX is noninvertible, the common causes might be having :


Redundant features, where two features are very closely related (i.e. they are linearly dependent)
Too many features (e.g. m ≤ n). In this case, delete some features or use "regularization" (to be explain
Solutions to the above problems include deleting a feature that is linearly dependent with another or deletin

Working on and Submitting


Programming Assignments
Basic Operations: cac hoat
dong co ban cua octave
bạn có thể làm cho các thuật toán học tập của mình hoạt động nhanh hơn trong
Octave. Về tổng thể, bạn sẽ tiết kiệm được rất nhiều thời gian bằng cách đầu
tiên phát triển các thuật toán trong Octave >> sau do trien khai tren cac ngon
ngu khac

9ph15 : in ra mot day so voi start /step /stop

Xem chi tiet ve OCTAVE tai >>>>>>>>>>>>>>>>>>


tat OCTAVE
tim duong dan hien tai cua Octave
chuyen den duong dan voi file

Moving Data Around

0ph58:

8:00": how to save asnd load data


8:40:how to manipulate data: Bây giờ chúng ta hãy nói một chút về cách thao
tác dữ liệu.

15ph:
Bạn biết đấy, bạn tải và lưu vectơ và ma trận, tải và lưu dữ liệu, ghép các ma
trận lại với nhau để tạo ra các ma trận lớn hơn, lập chỉ mục hoặc chọn các
phần tử cụ thể trên ma trận.

Computing on Data

Trong video này, tôi muốn hướng dẫn bạn cách thực hiện các thao tác
tính toán trên dữ liệu. Và sau này, chúng tôi sẽ sử dụng các nguồn hoạt
động tính toán này để triển khai các thuật toán học tập của chúng tôi.

1ph :>>

1ph59
https://www.academia.edu/43553377/NH%E1%BA%ACP_M
%C3%94N_GNU_OCTAVE_VERSION_5_2_0

So sanh cac elemtn cua 1 matrix voi 1 so>>> 5ph10


>> co the so sanh cac elemtn cua 2 mat trix voi nhau duoc luon

find index element 1 matrix < 1 so number


>> cung co the lam tuong tu so sanh 2 matrix voi nhau

Tao mot matrix vuong nhanh gon bang ham magic>>> 6ph40 : chi dung ham
magic khi lam demo thoi

lenh nhanh tat ca cac element trong matrix

lenh giam element xuong thanh inter

lenh tang ele len inter

thay the cac phan tu trong matrix bang gia tri mong muon max
bien mot matrix thanh vector

tong cua 1 matric tinh theo column

tinh tong theo row

Hien thi matran don vi (identity matrix)

Nhan 1 matric voi matrix don vi nhung chi lay phan cheo thoi , con lai la swipe
het 11ph03

tinh sum cua cac column trong matrix vua duoc tao >> se cho ra 1 vec tor

tinh sum cua vector D vua duoc tao ra luon

tim ma tran dao nguoc ( inverte matrix)


khi nhan A va ma tran dao nguoc cua A se cho ra ma tran don vi

Ghi chú : + Không thể thực hiện phép tính a*b ( a, b là hai vectơ hàng cùng
size ) ,Octave sẽ báo error ( toán tử * được dành riêng cho phép nhân ma trận )
.Thay vào đó :

+ Sử dụng phép nhân mảng , kí hiệu .* (dấu chấm trước dấu sao) , c = a .*b , sẽ
trả về một vectơ cùng size với a,b và

Có thể tạo vectơ cột bằng cách tạo vectơ hàng trước , sau đó dùng phép
chuyển vị ( transpose ) bằng cách đặt dấu nháy ‘ bên cạnh tên biến :

Vector khong dung dau . >> chi co matric dung dau .


Vector dung dau ' + ma trixcung dung dau ' nhung matrix hok the
dung phep nhan voi chuyen vi duoc
ma tran chuyen vi A >> A' . Vector chuyen vi b >> b'

Ma tran: Phép tính mảng yêu cầu các toán hạng là các mảng cùng size . Phép
tính nhân , chia, lũy thừa mảng được thực hiện giữa các phần tử có cùng vị trí
. Kết quả trả về là một mảng cùng size.

Plotting Data
May mắn thay, Octave có các công cụ rất đơn giản để tạo ra nhiều lô khác nhau
và khi tôi sử dụng các thuật toán học tập, tôi thấy rằng việc lập biểu đồ dữ liệu,
lập biểu đồ thuật toán học tập, v.v. thường là một phần quan trọng trong cách
tôi lấy ý tưởng để cải thiện các thuật toán và video này, tôi muốn cho bạn xem
một số công cụ Octave này để vẽ và hiển thị dữ liệu của bạn.

2ph15: cach ve 2 bieu do trung voi nhau

luu thanh file anh png 3ph50

tao 2 figue de bieu dien 2 graph khac nhau

Tao 2 graph khac nhau cung trong 1 figure

Tao mau sac trong figure lay vdu matrix magic

hien colormap cua magic/eye

Octave co the put multi command on a same line

Control Statements: for, while,


if statement: cau lenh dieu
khien
Trong video này, tôi muốn cho bạn biết cách viết câu lệnh điều khiển cho các
chương trình Octave của bạn, vì vậy những thứ như câu lệnh "for", "while" và
"if" cũng như cách xác định và sử dụng các hàm.

cau truc vong lap for

cach thu 2 tuong tu

hien ra element

Cau truc vong lap While( chu y la phai co i+=1 : neu hok no chay mai)

ket hop cau lenh break voi while

ket hop cau lenh voi else if

Cach chuyen duong dan nang cao de ngay ca khi octave dang chay tren 1
duong dan nao do thi vantim duoc file minh can mien la go dung ten

7ph50:cho phép bạn xác định các hàm trả về nhiều giá trị hoặc nhiều đối số.
12ph50: video hướng dẫn quãng tám cuối cùng, tôi muốn cho bạn biết về
vectơ hóa, đó là một ý tưởng về cách làm cho các chương trình quãng tám của
bạn chạy nhanh hơn nhiều.

Vectorization

3ph54 :Su khac nhau giau vectorize va khong vectorize

6ph24: ach trien khai vectorize trong gradient descent cua linear

Classification: phan loai


Trong phần này và một số video tiếp theo, tôi muốn bắt đầu nói về các vấn đề
phân loại, trong đó giá trị của biến y mà bạn muốn dự đoán. Chúng tôi sẽ phát
triển một thuật toán gọi là hồi quy logistic, là một trong những thuật toán học
tập phổ biến nhất và được sử dụng rộng rãi nhất hiện nay.

So don't be confused by that logistic regression is actually a


classification 
algorithm  7ph40

Phân loại
Để tìm cách phân loại, một phương pháp là sử dụng hồi quy tuyến tính và ánh
xạ tất cả các dự đoán lớn hơn 0,5 là 1 và tất cả nhỏ hơn 0,5 là 0. Tuy nhiên,
phương pháp này không hoạt động tốt vì phân loại không thực sự là một hàm
tuyến tính.
Hypothesis
RepresentationTrình bày giả
thuyết
Hãy bắt đầu nói về hồi quy logistic. Trong video này, tôi muốn cho bạn thấy
cách trình bày giả thuyết.

0ph46: logistic reg: la them g vao: g(thetaT x) Voi g duoc dinh nghia la sigmoid
function, or the logistic function

2ph10: hinh dang cua sigmoid func duoi dang bieu do

3ph24: Here's how I'm going to interpret the output of my hypothesis(Đây là


cách tôi sẽ giải thích đầu ra của giả thuyết của tôi,)

6:55

Và tôi muốn nói với bạn về một thứ gọi là ranh giới quyết định. Và chúng ta sẽ
cùng nhau xem xét một số hình dung để cố gắng hiểu rõ hơn về chức năng giả
thuyết của hồi quy logistic thực sự trông như thế nào.

Decision BoundaryRanh giới


quyết định
vd

11:02

1.phan biet mot cai: la du doan san pham ban ra sau 3 thang >> bai toan hoi quy
2.nhan dinh xem khach hang co bi hack hay hok: phan loai ( khong /co)

Vd: nhom ban be tren facebook, nhom cac customer theo phan
khuc thi truong khach hang khac nhau de ban hang hieu qua
hon( chung ta khong biet duoc phan khuc kh 1, phkh2... Chung ta de
thuat toan tu clus). Vu tru...

co cach loc khac nhau:


ng nguoi chi con lai am nhac

p voi rat nhieu thu vien

https://www.coursera.org/learn/machine-learning/lecture/db3jS/model-representation

1 row se la 1 single training example (x,y)

( x(mu i), y(mu i) se la thu 1 training example Mu i


o day khong phai la exponentiation( luy thua) >>> no chi la index
tuong ung voi x va y ma thoi tuong ung voi i th row

hypothesis : la map ( con duong) de di tu x den y


hoi quy tuyen tinh trong vd nay chi co 1 bien (x) .Vi the model
nayduoc goi la don bien hoi quy tuyen tinh

>> tai 10ph35: gia tri nho nhat cua theta1 la tai x=1
to data line well

Ta se tuong tuong cac hinh elipse khi qua khoi duong do se la mot
mat phang >> 3 diem ma trong 1 line ma vd chon se la nhu nhau

Con voi cac diem ben trong thi voi moi diem day doi thi se co hinh
thai hypo khac >> muc tieu la phai tien ve tam de dat minimize>>
bai sau se hoc cach tim dieu nay mot cach auto bang thuat toan

https://www.coursera.org/learn/machine-learning/lecture/8SpIM/gradient-descent
dau tien se bat dau voi cac du doan ban dau cho theta0 va 1( hok quan trong no la gi>> cu chon bat ki gia tri nao minh muo

https://www.coursera.org/learn/machine-learning/lecture/GFFPB/gradient-descent-intuition

https://www.coursera.org/learn/machine-learning/lecture/kCvQc/gradient-descent-for-linear-regression

https://www.youtube.com/watch?v=4b4MUYve_U8&list=PLoROMvodv4rMiGQp3WXShtMGgzqpfVfbU&index=2

Bai tap luc9:00 : voi specific choices (j0,j1) thi se khong co local optimum ma chi co globl optiumum >>> chi co 1 optimum d
theo quy dinh chung

https://www.coursera.org/learn/machine-learning/lecture/38jIT/

g index one
>>khong dung tinh chat giao hoan trong matrix multi
a*b # b*a
vd:1ph20: ta thu cho 2 matrix lam phep nhan truoc va sau khi dao nguoc se co ket qua khac nhau

matricx co tinh chat nhan nhu vay va se tra ve result nhu nhau

https://www.coursera.org/learn/machine-learning/lecture/FuSWY/inverse-and-transpose

A.A-1 = A-1.A = I ( identity matrix)

>> ta dung octave de tinh ma tran nghich dao rat nhanh : A=


[] >> nghich dao : pinv(A) : ta se thay cac vi tri khac ngoai
duong cheo co gia tri rat nhoo >> suy bien
>> ta co the go lenh chuyen vi trong octave

Vì vậy, bây giờ hy vọng bạn đã biết cách cộng và


trừ ma trận cũng như nhân chúng và bạn cũng
biết cách, định nghĩa về nghịch đảo và chuyển vị
của ma trận là gì và đây là những phép toán
chính được sử dụng trong đại số tuyến tính cho
khóa học này.

https://www.coursera.org/learn/machine-learning/lecture/Z9DKX/gradient-descent-for-multiple-variables

nếu bạn triển khai thuật toán được viết ở đây thì bạn có một triển
khai hồi quy tuyến tính hoạt động với nhiều tính năng.

}repeat until convergence:{θj:=θj−α1m∑i=1m(hθ(x(i))


−y(i))⋅x(i)jf or j := 0...n

https://www.coursera.org/learn/machine-learning/lecture/xx3Da/gradient-descent-in-practice-i-feature-scaling

nếu bạn đảm bảo rằng các tính năng có cùng quy mô, theo đó tôi
muốn nói rằng hãy đảm bảo rằng các tính năng khác nhau có các
phạm vi giá trị tương tự,

Trong các cài đặt này, một điều hữu ích cần làm là mở rộng các
tính năng.
>> nhung neu ta co cac features nam ngoai doan nay nhung du gan
-1,1 thi cung duoc vd: -2<= x2 <=0.5 0<=x1 <=3( Con neu la
-100<= x3<=100 hoac la - 0.00001<= x4<= 0.00001 : la khong duoc
vi qua lon hoac qua nho so voi -1 va 1)

Những người khác nhau có các quy tắc ngón tay cái khác nhau: co
the la pham vi -3<= x <= 3 hoac -1/3 <= x <= 1/3 van Ok )

xi:=sixi−μi
​ ​ ​ ​

if x_ixi represents housing prices with a range of 100 to 2000


and a mean value of 1000, then, xi=price -1000 / 1900



.
Và tỷ lệ tính năng không cần phải quá chính xác, để làm cho gradient
descent chạy nhanh hơn rất nhiều.

https://www.coursera.org/learn/machine-learning/lecture/3iawu/gradient-descent-in-practice-ii-learning-rate

>> neu gradient xu ly dung' thi J(theta) se giam dan qua moi vong
lap (iteration)

>> chu y: số lần lặp lại gradient descent cần để hội tụ cho một ứng
dụng vật lý có thể khác nhau rất nhiều, vì vậy có thể đối với một ứng
dụng, gradient descent có thể hội tụ chỉ sau ba mươi lần lặp. Đối với
một ứng dụng khác, quá trình giảm độ dốc có thể mất 3.000 lần lặp,
đối với một thuật toán học tập khác, có thể mất 3 triệu lần lặp

>> the fix is usually just to use a smaller value of alpha


các nhà toán học đã chỉ ra rằng nếu tốc độ học alpha của bạn đủ nhỏ,
thì J (theta) sẽ giảm trên mọi sự lặp lại. Vì vậy, nếu điều này không
xảy ra có thể có nghĩa là alpha quá lớn, bạn nên đặt nó nhỏ hơn.
Nhưng tất nhiên, bạn cũng không muốn tỷ lệ học tập của mình quá
nhỏ vì nếu bạn làm như vậy thì gradient giảm dần có thể hội tụ
chậm.

Vì vậy, những gì tôi sẽ làm là thử một loạt các giá trị cho đến khi tôi
tìm thấy một giá trị quá nhỏ và đảm bảo rằng tôi đã tìm thấy một giá
trị quá lớn. Và sau đó tôi sẽ cố gắng chọn giá trị lớn nhất có thể,
hoặc chỉ một giá trị nhỏ hơn một chút so với giá trị hợp lý lớn nhất
mà tôi tìm thấy. Và khi tôi làm điều đó thường chỉ mang lại cho tôi
một tỷ lệ học tập tốt cho vấn đề của tôi. : 0.001 -0.003-0.01 -0.03
-0.1-0.3-1 ...

https://www.coursera.org/learn/machine-learning/lecture/Rqgfz/features-and-polynomial-regression

Đó là mặt tiền x chiều sâu vì đây là diện tích đất mà tôi sở hữu và
sau đó tôi có thể chọn giả thuyết của mình là chỉ sử dụng một đối
tượng địa lý là diện tích đất của tôi, phải không? Bởi vì bạn biết diện
tích của một hình chữ nhật, là tích của chiều dài của kích thước Vì
vậy, tùy thuộc vào thông tin chi tiết mà bạn có thể có về một vấn đề
cụ thể, thay vì chỉ lấy các tính năng [xx] mà chúng ta đã bắt đầu, đôi
khi bằng cách xác định các tính năng mới, bạn thực sự có thể nhận
được một mô hình tốt hơn.

http://estudy.edu.vn/course/lesson/hinh-dang-do-thi-mot-so-ham-so-co-ban-ttop7vcwiqtsmxyd4il4hadsjp
https://toanhoc247.com/nhan-dang-do-thi-ham-so-a8399.html#:~:text=C%C3%A1c%20d%E1%BA%A1ng%20%C4%91%E1

Sau đó trong lớp học này, chúng ta sẽ nói về một số thuật toán đã tự
động chọn những tính năng nào được sử dụng, vì vậy bạn có thể có
một thuật toán xem xét dữ liệu và tự động chọn cho bạn xem bạn
muốn phù hợp với hàm bậc hai hay hàm bậc ba, hoặc thứ gì khác.
https://www.coursera.org/learn/machine-learning/lecture/2DKxQ/normal-equation

Nếu bạn đang sử dụng phương pháp phương trình thông thường này
thì việc chia tỷ lệ đối tượng không thực sự cần thiết và thực sự ổn
nếu, giả sử, một số đối tượng X một nằm trong khoảng từ 0 đến một
và một số đối tượng X hai nằm trong khoảng từ 0 đến một nghìn và
một số đối tượng x ba phạm vi từ 0 đến 10 đến trừ năm và nếu bạn
đang sử dụng phương pháp phương trình bình thường thì điều này
không sao và không cần thực hiện chia tỷ lệ đối tượng, mặc dù tất
nhiên nếu bạn đang sử dụng gradient descent thì việc chia tỷ lệ đối
tượng vẫn rất quan trọng .

Vì vậy, nếu n lớn thì tôi có thể thường sử dụng gradient descent vì
chúng tôi không muốn trả hết số tiền này trong q thời gian. Nhưng,
nếu n tương đối nhỏ, thì phương trình bình thường có thể cung cấp
cho bạn cách tốt hơn để giải các tham số

Nhung: the nao la nho va lon : n<=100 thi may tinh co the tinh duoc . N=1000 thi cham

Tuy nhiên, đối với tôi, thường là khoảng mười nghìn mà tôi có thể
bắt đầu cân nhắc chuyển sang chuyển sang gradient giảm dần
https://www.coursera.org/learn/machine-learning/lecture/zSiE6/normal-equation-noninvertibility

Vấn đề hoặc vấn đề x chuyển vị x không thể đảo ngược nên rất hiếm khi xảy ra.

trước tiên tôi sẽ suy nghĩ về các tính năng của mình và kiểm tra xem
có cái nào là thừa hay không. Và nếu vậy thì hãy tiếp tục xóa các
tính năng thừa cho đến khi chúng không còn thừa nữa. Và nếu các
tính năng của bạn không thừa, tôi sẽ kiểm tra xem liệu tôi có thể có
quá nhiều tính năng hay không. Và nếu đúng như vậy, tôi sẽ xóa một
số tính năng nếu tôi có thể chịu sử dụng ít tính năng hơn hoặc nếu
không, tôi sẽ xem xét sử dụng chính quy.

ated (i.e. they are linearly dependent)


atures or use "regularization" (to be explained in a later lesson).
is linearly dependent with another or deleting one or more features when there are too many features.

https://www.coursera.org/learn/machine-learning/lecture/Lt2Mx/working-on-and-submitting-programming-assignments
https://www.coursera.org/learn/machine-learning/lecture/9fHfl/basic-operations

ph4: cac lenh co ban cua phep toan logic :true false
chan viec in ra bang ;
v= 1:0.1:2 # v se chay tu 1 den 2 voi step la 0.1

https://www.academia.edu/43553377/NH%E1%BA%ACP_M%C3%94N_GNU_OCTAVE_VERSION_5_2_0
quit / exit
pwd
cd ''

https://www.coursera.org/learn/machine-learning/lecture/SZJIc/moving-data-around

size cua matrix lai tra ve mot matrix


A= [1 2; 3 4 ; 5 6 ]
sz= size(A)
size(sz) # tra ve mot matrix 1 2

size(A,1) # number of row


size(A,2) # number of coulums

V=[1 2 3 4] # vector V
length(V) # tra ve size of longest dmension

pwd # duong dan den thu muc octave dang chay


cd 'Desktop' # chuyen duong dan ra dekstop

ls # hien cac thu muc tren dektop ra

who # xem tat ca cac bien hien dang nam trong bo nho cua Octave

whos # hien detail

clear A # xoa di A trong bo nho

J= I(1:3) # lay 3 vi tri dau tien cua ma tran I J = 1 0 0

clear # clear every vasriable

save thunghiemdautiendocduoc.txt J -ascii # luu duoi dang text


A=[1 2 ; 3 4; 5 6]
A(3,2) # xac dinh element bang index : hang thu 3 cot thu 2 la 6

A(2,:) # lay tat ca element in second row

A(:,2) # lay tat ca element in second columns

A([1 3],:) # lay tat ca element cua row thu 1 va row thu 3

A = [A,[100;101;102],[200;201;202]] # append them column vector moi vao ben phai

A(:) #put all element of A into a singler vector


A= [1 2; 3 4; 5 6]
B= [11 12; 13 14 ; 15 16]
C= [A B] # tao nen mot matrix moi chua ca 2 matric A va B ben
trong chu hok fai cong no lai

C=[A;B] # xap xep no theo matrix A roi den B

https://www.coursera.org/learn/machine-learning/lecture/Y6uuC/computing-on-data

A*B
error: operator *: nonconformant arguments (op1 is 3x2, op2 is 3x2)

nhung neu : A.*B


nó sẽ lấy từng phần tử của A và nhân nó với các phần tử tương ứng B

A^2
error: for x^y, only square matrix arguments are permitted and one argument must be scalar.
Use .^ for elementwise power.
>>> nhung neu
A.^2 # OK

1./A # give the element wise inverse of A


log (x) Hàm lôrarit tu nhien

exp (x) Ham mu e


x
e = 2,718128...

abs (x) Hàm lay gia tri tuyet doi

-v # dao nguoc dau cua tat ca element

v+ ones(length(v),1) # tang them 1 don vi cho moi element cya


vector v . 1: chi tao ra 1 column

v+ones(3,1) # cong 2 ma tran voi nhau

A' # transpose chuyen vi

val= max(a) # gia tri lon nhat trong matrix a

a=[1 15 2 0.5]
a<3 : so sanh cac element cua a xem co nho hon 3 khong va tri ve boolean

a=[1 15 2 0.5]
find(a<3) # tim index cac ele <3 trong matrix a

A=magic(3) # goi ra mot matrix 3*3 voi cac so nam trong khoang (1
den 3*3)

[r,c] =find(A>=7) # r la row , c la columns : tim cac element namn tren row va
column thoa man dieu kien >=7

sum(a) # tong cua matrix a

n=[1 2 3 4]
prod(n) # nhan tat ca cac elemtn
c= [1.6 5.7 6.8 7.9]
floor(c) # lenh giam gia tri ele xuong inter
ceil(c) # tang gia tri len inter

max(A,2) # thay the cac ele nho hon 2 thanh 2 het


max(A,[],1) # tim cac ele max trong moi column va chuyen thanh
vector 1*n ( n la column)
max(A,[],2) # lay trong cac row va chuyen thanh vector n*1

max(max(A)) # tim ele max trong A


A(:) # turn A thanh vector

A= [1 2; 3 4; 5 6]
sum(A,1) # tinh tong cua cac column va hien thanh vector 1*n
sum(A,2) # tinh tong cua cac row va hien thanh vector n*1

eye(3)

A=magic(3)
A.*eye(3) # SE HIEN ra matrix chi co duong cheo con lai la 0 het
D=A.*eye(3)
sum(D)
sum(sum(D))

pinv(A) : ma tran dao nguuoc cua ma tran A


A*pinv(A) #se thanh ma tran don vi

c = a.*b % [ 2 4 6] .* [1 6 2] >>>>> c = 2 24 12

v = [2 5 9] ; % tạo vectơ hàng >> v = v' % thực hiện phép chuyển vị


dùng dấu nháy ‘
Có thể viết gộp lại thành : >> v = [2 5 9]’

A'*B > error

Có A (m ,n) , B (m ,n) là hai ma trận cùng size . Phép nhân mảng : C =


A .* B  C(i,j) = A(i,j) * B(i,j) , i,j Phép chia mảng bên phải : C = A ./ B
 C(i,j) = A(i,j) / B(i,j) , i, j Phép chia mảng bên trái : C = A .\ B  C(i,j)
= B(i,j) / A(i,j) hoặc A(i,j) \ B(i,j) ,i, j Phép lũy thừa mảng : C = 2.^A 
C (i,j) = 2^A(i,j) , i, j C = A.^B  C(i,j) = A(i,j)^B(i,j) , i, j Xem them trong file pdf octave trang 39

https://www.coursera.org/learn/machine-learning/lecture/I7gx3/plotting-data
y2=cos(2*pi*t);
y1=sin(2*pi*t);
plot(t,y1);
hold on;
plot(t,y2);

>> xlabel('time')
>> ylabel('value')
>> legend('sin','cos')
>> title('my plot octave')
cd 'C:\Users\AT\Desktop';print -dpng 'my plot octave.png'

close # dong plot lai


>> figure(1);plot(t,y1);
>> figure(2);plot(t,y2);

subplot(1,2,1);plot(t,y1)
>> subplot(1,2,2);plot(t,y2)

axis([0.5 1 -1 1]) # thiet lap xaxis range va yaxis ranbge


help axis : neu muon tim hieu ki hon ve axis
A=magic(5)
imagesc(A)

imagesc(A), colorbar(),colormap gray # hien len bang gray


>> imagesc(A), colorbar() # hien len bang clor

imagesc(magic(15)), colorbar()
imagesc(eye(4)),colorbar()
a=1,b=2,c=3 # put nhieu command tren 1 line

https://www.coursera.org/learn/machine-learning/lecture/LRQnl/control-statements-for-while-if-statement
v=zeros(10,1)
for i=1:10,
v(i)=2^i;
end;

indices= 1:10;
for i = indices,
v(i)=2^i;
end;

disp(i) #display element i

i=1;
while i<=5,
v(i) =100;
i+=1;
end;

while true,
v(i)=999;
i+=1;
if i==7,
break;
end;
end;

if v(1)==1,
disp('the value is one');
elseif v(1)==2,
disp('the value is two');
else,
disp('the value is not one or two');
end;
the value is two

addpath('C:\Users\AT\Desktop') # them duong dan de tim file


>> ngay ca khi ta dang o duong dan khac thi ta van tim duoc file
theo duong dan o tren vua them vao
https://www.coursera.org/learn/machine-learning/lecture/WnQWH/vectorization

so sanh su khac va giong nhau cua vecto va hok co vector voi


truong hop : unvecto: prediction cuoi cung se la h(x) ben tren
cung ben trai >> prdic ( hay h(x) se la tong cua vong loop for tu
j=1 den n+1). Cot vector theta ben phai tren cung ( boi vi ap
dung trong matlab la index bat dau tu 1 nen theta cung bat dau
tu 1 va X cung bat dau tu 1( o tren la viet thieu )>>> vong lap
for bat dau tu 1 den n+1 trong matlab ( tuong duong tu 0 den
n) Vectorizesd: những gì dòng mã bên phải này sẽ làm là, nó
sẽ sử dụng các quy trình đại số tuyến tính số được tối ưu hóa
cao của Octaves để tính tích bên trong này giữa hai vectơ,
theta và X, và không chỉ việc triển khai vectơ đơn giản hơn mà
nó còn chạy hiệu quả hơn nhiều.

https://www.coursera.org/learn/machine-learning/lecture/wlPeP/classification
https://www.coursera.org/learn/machine-learning/lecture/RJXfB/hypothesis-representation

bat dau gan nhu o 0 sau do cat truc tung va den 1 la gan nhu di
ngang

hθ(x)=P(y=1|x;θ)=1−P(y=0|x;θ) P(y=0|x;θ)+P(y=1|
x;θ)=1

https://www.coursera.org/learn/machine-learning/lecture/WuL1H/decision-boundary
chon bat ki gia tri nao minh muon)

near-regression

MGgzqpfVfbU&index=2

ptiumum >>> chi co 1 optimum duy nhat nen kok lo lang co nhieu optimum da dam do doc
multiple-variables

actice-i-feature-scaling
actice-ii-learning-rate
al-regression

tsmxyd4il4hadsjp
%E1%BA%A1ng%20%C4%91%E1%BB%93%20th%E1%BB%8B%20th%C6%B0%E1%BB%9Dng,%C4%91%E1%BB%99%20th%E1%BB%8B%
tting-programming-assignments
RSION_5_2_0
pdf octave trang 39
-while-if-statement
B%99%20th%E1%BB%8B%20h%C3%A0m%20ph%C3%A2n%20th%E1%BB%A9c.

You might also like