Slide bài giảng môn Phát triển hệ thống thông minh nội dung chương 2: Học máy và hệ thống thông minh

Slide bài giảng môn Phát triển hệ thống thông minh nội dung chương 2: Học máy và hệ thống thông minh của Học viện Công nghệ Bưu chính Viễn thông với những kiến thức và thông tin bổ ích giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học vào thực tiễn cuộc sống. Mời bạn đọc đón xem!

lOMoARcPSD|10435767
Chương 2:
Hc máy và
H thng thông minh
Ni dung
Hc máy c in
Hc sâu
Đánh giá mô hình
H thng da trên hc máy
lOMoARcPSD|10435767
Notebook và thư viện Scikit-learn
H thng da trên hc máy
H thng da trên hc máy
Các gii thut học máy “quan sát” các ví dụ v người dung ã
làm: các mu trong d liu train.
Hc máy giúp cân bng d liu khác nhau u vào và tối ưu
hóa cho nhiu loi yêu cu khác nhau u ra.
Hc máy có th cá nhân hóa các quy tc cho từng người dùng.
Hc máy cn d liệu ược ghi li các tình huống mà người dùng
ã tri qua và kết qu h ã nhận ược.
lOMoARcPSD|10435767
H thng da trên hc máy
H thng da trên hc máy
Các kết qu ược ghi nhn bao gm c kết qu tt và kết qu
xu.
D liu ghi nhn có th mi hoặc cũ, tùy theo mong muốn
của người dùng.
Hc máy có th ược dùng cho mt chức năng hoặc tt c các
chức năng của h thng.
Kết qu thu ược t hc máy có th có sai lm.
lOMoARcPSD|10435767
H thng da trên hc máy
H thng da trên hc máy
tools-you-need-
1aa750778d33&psig=AOvVaw2eKydS64bcSikUlFSh2i7H&ust=1665111484696000&source=images&cd=v
f e&ved=0CAsQjRxqFwoTCLD585XOyvoCFQAAAAAdAAAAABAD
https://www.google.com/url?sa=i&url=https%3A%2F%2Ftowardsdatascience.com%2Fthe-only-3-ml-
lOMoARcPSD|10435767
H thng da trên hc máy
Thư viện scikit-learn
Scikit-learn là một thư viện mã ngun m Machine Learning
viết bng Python.
Scikit-learn hin thc nhiu thut toán máy hc t các thut
toán cơ bản cho ến các thut toán phc tạp như DecisonTree,
Naive Bayes, K-Nearest Neighbor (KNN),
Support Vector Machine (SVM), Artificial Nerual Network
(ANN) …
http://scikit-learn.org/
lOMoARcPSD|10435767
H thng da trên hc máy
Thư viện scikit-learn
Numpy: Gói thư viện x lý dãy s và ma trn nhiu chiu.
SciPy: Gói các hàm tính toán logic khoa hc.
Matplotlib: Biu din d liệu dưới dng th 2 chiu, 3 chiu.
IPython: Notebook dùng tương tác trực quan vi Python.
SymPy: Gói thư viện các kí t toán hc.
Pandas: X lý, phân tích d liệu dưới dng bng
Thư viện scikit-learn
Gii thiu:
Scikit-learn là một thư viện mã ngun m Machine Learning
viết bng Python.
lOMoARcPSD|10435767
Scikit-learn hin thc nhiu thut toán hc máy, t các thut
toán cơ bản cho ến các thut toán phc tạp như DecisonTree,
Naive Bayes, K-Nearest Neighbor (KNN),
Support Vector Machine (SVM), Artificial Nerual Network
(ANN) …
http://scikit-learn.org/
Thư vin scikit-learn
Numpy
Cài t: pip install numpy
numpy.random.randn, numpy.random.randint
lOMoARcPSD|10435767
Dùng gói này to d liu s Hi quy
(repgression):
Thư viện scikit-learn
Numpy
Cài t: pip install numpy
numpy.random.randn, numpy.random.randint
import numpy as np
rng = np.random.RandomState(0)
n_samples, n_features = 5, 5
X = rng.randn(n_samples,
n_features) y =
rng.randn(n_samples)
lOMoARcPSD|10435767
Dùng gói này to d liu s Phân loi
(classification):
Thư viện scikit-learn
Scipy
SciPy là thư viện mã ngun m vi các công c khoa hc cho
Python.
import numpy as np
rng = np.random.RandomState(0)
n_samples, n_features = 5, 5
X = rng.randn(n_samples,
n_features) y = rng.randint(0, 2,
n_samples)
lOMoARcPSD|10435767
Cài t: pip install scipy
SciPy ph thuộc vào thư vin NumPy và nó tp hp nhiu cp cao
li vi nhau thành mt gói duy nht. SciPy cung cp các mô- un cho:
Nhp/xut file (file input/output)
Tối ưu hóa (optimization)
Đại s tuyến tính (linear algebra)
Biến i Fouries (Fourier transforms)
X lý tín hiu (signal processing)
Thư viện scikit-learn
Scipy - Linear algebra
SciPy ược tối ưu hóa cho khả năng tính toán i s tuyến tính nhanh.
Lp ma trận ược khi to bng lnh SciPy mat là cách viết tt thun tin cho
ma trn.
lOMoARcPSD|10435767
A = matrix('1.0 2.0; 3.0 4.0') print(A)
’’’’’’
[[ 1. 2.]
[ 3. 4.]]
Thư viện scikit-learn
Scipy - Linear algebra
Nghch o ma trn
lOMoARcPSD|10435767
Thư viện scikit-learn
Scipy - Linear algebra
Gii h phương trình
lOMoARcPSD|10435767
Thư viện scikit-learn
Scipy - Linear algebra
Tính Determinant (det) ca ma trn
lOMoARcPSD|10435767
lOMoARcPSD|10435767
Thư viện scikit-learn
Scipy - Linear algebra
Hi quy tuyến tính
lOMoARcPSD|10435767
Thư viện
scikit-learn
Scipy - Linear
algebra
Hi quy
tuyến tính
lOMoARcPSD|10435767
Thư viện scikit-learn
Simpy
Gói toán hc dạng tượng trưng (symbolic)
Cài t: pip install sympy
x,y = symbols('x y') # khai báo
a = 2*xy
a + y
expand(a**3) # khai trin
factor(x**3+3*x**2+3*x+1) # phân tích thành nhân t
simplify(x**2-y**2-(x+y)*(x-y)) # ơn giản hóa
lOMoARcPSD|10435767
Thư viện scikit-learn
Simpy - Gói toán hc dạng tượng trưng (symbolic) Phép
thay thế (substitution):
lOMoARcPSD|10435767
Thư viện scikit-learn
Simpy
Gói toán hc dạng tượng trưng (symbolic) Phép
thay thế (substitution):
Thư viện scikit-learn
Simpy
Gói toán hc dạng tượng trưng (symbolic)
ng giác (trig)
lOMoARcPSD|10435767
Thư viện scikit-learn
Pandas Cài
t:
pip install pandas
Chuyn các mng numpy thành dataframe Có th thc
hin toàn b quy trình phân tích d liu S dng:
import pandas as pd
Hoc
lOMoARcPSD|10435767
from pandas import DataFrame, Series
Thư viện scikit-learn
Pandas - Series:
ối tượng ging như mảng mt chiu cha mt mng d liu (ca
bt k kiu d liu NumPy nào) và mt mng nhãn d liệu ược liên
kết, ược gi là ch mc (index).
lOMoARcPSD|10435767
Thư viện scikit-learn
Pandas - Series:
Truy xut riêng phn giá tr bng lnh: .values
obj[2] # -6
obj[[0, 1, 3]]
Truy xut riêng phn ch s bng lnh: .index
lOMoARcPSD|10435767
Thư viện scikit-learn
Pandas - DataFrame:
Cu trúc d liu dng bng, giống như bảng tính, cha mt tp các
cột ược sp xếp.
có th cha nhiu kiu d liu khác nhau (s, chui, v.v.) Có c ch
mc hàng và ct.
Có th ược coi là mt 'dict of Series'
lOMoARcPSD|10435767
Thư viện scikit-learn
Pandas - DataFrame:
Mt ct trong DataFrame có th
ược truy xut theo tên gi hoặc như
mt thuc tính thuc tính
print(frame[‘state’])
print(frame.state)
Thư viện scikit-
learn
Pandas - DataFrame:
lOMoARcPSD|10435767
Mt hàng trong DataFrame có th ược truy xut bng index
print(DataFrame(frame, index = [2]))
Truy xut tng phn t trong DataFrame: da theo ct/ch s
print(frame[‘state’][3])
lOMoARcPSD|10435767
Thư viện scikit-learn
lOMoARcPSD|10435767
Thư viện scikit-learn
Pandas - DataFrame:
Chuyn i dòng ct (ma trn chuyn v)
Pandas - DataFrame:
lOMoARcPSD|10435767
Đọc d liu t các ngun khác và to DataFrame
pd.read_csv(…)
pd.read_excel(…) pd.read_html(…)
pd.read_table(…)
pd.read_clipboard()
lOMoARcPSD|10435767
Thư viện scikit-learn
lOMoARcPSD|10435767
Thư viện scikit-learn
lOMoARcPSD|10435767
Thư viện scikit-learn
lOMoARcPSD|10435767
Thư viện scikit-learn
S dụng thư viện scikit-learn
Ví d v dùng scikit-learn nhn dng ký s 0-9 viết tay
https://scikit-learn.org/stable/auto_examples/classification/plot_digits_classification.html#sphx-glr-autoexamples-classification-
plot-digits-classification-py
lOMoARcPSD|10435767
Thư viện scikit-learn
S dụng thư viện scikit-learn
Ví d v dùng scikit-learn nhn dng ký s 0-9 viết tay
https://scikit-learn.org/stable/auto_examples/classification/plot_digits_classification.html#sphx-glr-autoexamples-classification-
plot-digits-classification-py
lOMoARcPSD|10435767
Thư viện scikit-learn
S dụng thư viện scikit-learn
Làm phng các hình nh,
chuyn tng mng 2-D các
trn (8, 8) thành ma trn
(64,).
n_features tng s pixel
trong mi hình nh.
hun luyn tp test cho
lOMoARcPSD|10435767
Thư viện scikit-learn
S dụng thư viện scikit-learn
Biu din 4 mu th u tiên và hin th giá tr ch s d oán ca
chúng trong tiêu .
lOMoARcPSD|10435767
Thư viện scikit-learn
S dụng thư viện
scikit-learn
function:~sklearn
.metrics.classific
ation_report:
xây dng mt báo
cáo văn bản hin
th các ch s phân
loi chính.
lOMoARcPSD|10435767
Thư viện scikit-learn
S dụng thư viện scikit-learn
V ma trn nhm ln <confusion_matrix> ca các giá tr ch s
thc và giá tr ch s d đoán.
lOMoARcPSD|10435767
Thư viện scikit-learn
S dụng thư viện Scikit-learn
Phân loại văn bản bng SVM
Tính ặc trưng văn bản da trên tn sut t
Các t xut hin nhiu lần trong văn bản thì s quan trng
hơn các từ xut hin ít ln
Các t xuất trong ít văn bản thì có tính phân biệt văn bản
cao hơn từ xut hin nhiu.
Thư viện scikit-learn
Tính ặc trưng văn bản da trên tn sut t
Tn sut t (term frequency)
lOMoARcPSD|10435767
Tn sut ca m't t w trong văn bản d, ký hiu TF(w,d), là s ln
xut hin ca t w trong van bn d.
Tn suất văn bn (document frequency)
Tn suất văn bản ca mt t w, ký hiu DF(w), là s ợng văn
bn mà t w có xut hin.
Nghch o ca tn suất văn bản (inverse document frequyency)
ca mt t w, ký hiu IDF(w) ược cho bi công thc:
Thư viện scikit-learn
Tính ặc trưng văn bản da trên tn sut t
Tn sut TF-IDF (term ducoment frequency)
Kết hp hai loi tn sut thc th và tn suất văn bản:
lOMoARcPSD|10435767
Thư viện scikit-learn
Tính ặc trưng văn bản da trên tn sut t
Ch s TF(w) ca mt t w cao khi t ó xut hin nhiu ln
trong văn bản. Tc là, ni dung của nó trong văn bản có giá tr
cao.
Ch s IDF(w) ca mt t w cao nếu t ó xut hin trong mt
s ít văn bản. Tc là t ó có giá tr phân biệt văn bản cao.
Các t có giá tr TF-IDF(w,d) cao s ặc trưng cho một văn bản.
Thư viện scikit-learn
D liu
Chn oán bnh theo các triu chng.
S bệnh ược chn oán (nhãn văn bản):
lOMoARcPSD|10435767
Bnh h huyết áp: 149 mu
Bnh viêm ường rut: 125 mu
Chưa xác nh: 589 mu
Thư viện scikit-learn
D liu
lOMoARcPSD|10435767
lOMoARcPSD|10435767
Thư viện scikit-learn
lOMoARcPSD|10435767
Thư viện scikit-learn
Đọc d liu t file Excel
lOMoARcPSD|10435767
Thư viện scikit-learn
X lý d liu và thiết lp tham s cho gii thut
Thư viện scikit-learn
Thc hin th nghim trên d liu test và kết qu
Th nghim
lOMoARcPSD|10435767
Kết qu
Thư viện scikit-learn
Thc hin quá trình hun luyện và lưu lại mô hình
Mô hình lưu lại s dng cho ng dng mà không cn hun luyn
li
lOMoARcPSD|10435767
Notebook
Notebook:
Google colab là mt tin ích ca google, là mt dch v trên
cloud, min phí.
Colab không yêu cu thiết lp phc tp. Các notebook mà ta
to có th ược các thành viên trong nhóm chnh sa ng thi
- theo cách tương tự như ta chỉnh sa tài liu trong Google
docs.
lOMoARcPSD|10435767
Ưu iểm ln nht là Colab h tr hu hết các thư viện hc máy
ph biến và có th d dàng khi cài t một thư viện mi.
Notebook
lOMoARcPSD|10435767
Notebook
Notebook:
Kết ni Colab vi Google Drive
Notebook
Notebook:
Viết và thc thi mã bng Python
To / Ti lên / Chia s các file notebook
lOMoARcPSD|10435767
Import/ save notebook vào Google Drive
Import các notebooks t GitHub
Tích hp sn PyTorch, TensorFlow, Keras, OpenCV
Dch v cloud min phí vi GPU min phí, có th nâng cp
GPU bng cách s dng GPU tr phí.
Notebook
Notebook:
Để s dng Colaboratory, ta phi có tài khon Google và sau ó
truy cp Colaboratory bng tài khon ó. Nếu không, hu hết các
tính năng của Colaboratory s không hot ng.
lOMoARcPSD|10435767
Để to mt file goole colab u tiên ta truy cp vào foder trên
google driver nơi ta muốn to file colab sau ó ta nhn chut
phi sau ó chn vào tùy chọn “Colaboratory”:
Notebook
Notebook:
lOMoARcPSD|10435767
To
Notebook trên Colab
Tạo thư mục trên Google Drive
lOMoARcPSD|10435767
Notebook
Notebook:
Chn dung GPU:
Chọn “runtime”
Chọn “change runtime
type”
Chọn “GPU” từ mc
“hardware accelerator”
lOMoARcPSD|10435767
Notebook
Notebook:
M li hoc to mi mt notebook
lOMoARcPSD|10435767
Notebook
| 1/55

Preview text:

lOMoARcPSD| 10435767 Chương 2: Học máy và Hệ thống thông minh Nội dung Học máy cổ iển Học sâu Đánh giá mô hình
Hệ thống dựa trên học máy lOMoARcPSD| 10435767
Notebook và thư viện Scikit-learn
Hệ thống dựa trên học máy
Hệ thống dựa trên học máy
Các giải thuật học máy “quan sát” các ví dụ về người dung ã
làm: các mẫu trong dữ liệu train.
Học máy giúp cân bằng dữ liệu khác nhau ở ầu vào và tối ưu
hóa cho nhiều loại yêu cầu khác nhau ở ầu ra.
Học máy có thể cá nhân hóa các quy tắc cho từng người dùng.
Học máy cần dữ liệu ược ghi lại các tình huống mà người dùng
ã trải qua và kết quả họ ã nhận ược. lOMoARcPSD| 10435767
Hệ thống dựa trên học máy
Hệ thống dựa trên học máy
Các kết quả ược ghi nhận bao gồm cả kết quả tốt và kết quả xấu.
Dữ liệu ghi nhận có thể mới hoặc cũ, tùy theo mong muốn của người dùng.
Học máy có thể ược dùng cho một chức năng hoặc tất cả các
chức năng của hệ thống.
Kết quả thu ược từ học máy có thể có sai lầm. lOMoARcPSD| 10435767
Hệ thống dựa trên học máy
Hệ thống dựa trên học máy
https://www.google.com/url?sa=i&url=https%3A%2F%2Ftowardsdatascience.com%2Fthe-only-3-ml- tools-you-need-
1aa750778d33&psig=AOvVaw2eKydS64bcSikUlFSh2i7H&ust=1665111484696000&source=images&cd=v
f e&ved=0CAsQjRxqFwoTCLD585XOyvoCFQAAAAAdAAAAABAD lOMoARcPSD| 10435767
Hệ thống dựa trên học máy Thư viện scikit-learn
Scikit-learn là một thư viện mã nguồn mở Machine Learning viết bằng Python.
Scikit-learn hiện thực nhiều thuật toán máy học từ các thuật
toán cơ bản cho ến các thuật toán phức tạp như DecisonTree,
Naive Bayes, K-Nearest Neighbor (KNN),
Support Vector Machine (SVM), Artificial Nerual Network (ANN) … http://scikit-learn.org/ lOMoARcPSD| 10435767
Hệ thống dựa trên học máy Thư viện scikit-learn
Numpy: Gói thư viện xử lý dãy số và ma trận nhiều chiều.
SciPy: Gói các hàm tính toán logic khoa học.
Matplotlib: Biểu diễn dữ liệu dưới dạng ồ thị 2 chiều, 3 chiều.
IPython: Notebook dùng ể tương tác trực quan với Python.
SymPy: Gói thư viện các kí tự toán học.
Pandas: Xử lý, phân tích dữ liệu dưới dạng bảng Thư viện scikit-learn Giới thiệu:
Scikit-learn là một thư viện mã nguồn mở Machine Learning viết bằng Python. lOMoARcPSD| 10435767
Scikit-learn hiện thực nhiều thuật toán học máy, từ các thuật
toán cơ bản cho ến các thuật toán phức tạp như DecisonTree,
Naive Bayes, K-Nearest Neighbor (KNN),
Support Vector Machine (SVM), Artificial Nerual Network (ANN) … http://scikit-learn.org/ Thư viện scikit-learn Numpy Cài ặt: pip install numpy
numpy.random.randn, numpy.random.randint lOMoARcPSD| 10435767 Dùng gói này
ể tạo dữ liệu số Hồi quy (repgression): import numpy as np
Thư viện scikit-learn rng = np.random.RandomState(0) n_samples, n_features = 5, 5 X = rng.randn(n_samples, Numpy n_features) y = Cài ặt: pip install numpy rng.randn(n_samples)
numpy.random.randn, numpy.random.randint lOMoARcPSD| 10435767 Dùng gói này
ể tạo dữ liệu số Phân loại (classification): import numpy as np
rng = np.random.RandomState(0) n_samples, n_features = 5, 5 X = rng.randn(n_samples,
n_features) y = rng.randint(0, 2, n_samples) Thư viện scikit-learn Scipy
SciPy là thư viện mã nguồn mở với các công cụ khoa học cho Python. lOMoARcPSD| 10435767 Cài ặt: pip install scipy
SciPy phụ thuộc vào thư viện NumPy và nó tập hợp nhiều cấp cao
lại với nhau thành một gói duy nhất. SciPy cung cấp các mô- un cho:
Nhập/xuất file (file input/output)
Tối ưu hóa (optimization)
Đại số tuyến tính (linear algebra)
Biến ổi Fouries (Fourier transforms)
Xử lý tín hiệu (signal processing) … Thư viện scikit-learn Scipy - Linear algebra
SciPy ược tối ưu hóa cho khả năng tính toán ại số tuyến tính nhanh.
Lớp ma trận ược khởi tạo bằng lệnh SciPy mat là cách viết tắt thuận tiện cho ma trận. lOMoARcPSD| 10435767
A = matrix('1.0 2.0; 3.0 4.0') print(A) ’’’’’’ [[ 1. 2.] [ 3. 4.]] Thư viện scikit-learn Scipy - Linear algebra Nghịch ảo ma trận lOMoARcPSD| 10435767 Thư viện scikit-learn Scipy - Linear algebra Giải hệ phương trình lOMoARcPSD| 10435767 Thư viện scikit-learn Scipy - Linear algebra
Tính Determinant (det) của ma trận lOMoARcPSD| 10435767 lOMoARcPSD| 10435767 Thư viện scikit-learn Scipy - Linear algebra Hồi quy tuyến tính lOMoARcPSD| 10435767 Thư viện scikit-learn Scipy - Linear algebra Hồi quy tuyến tính lOMoARcPSD| 10435767 Thư viện scikit-learn Simpy
Gói toán học dạng tượng trưng (symbolic) Cài ặt: pip install sympy
x,y = symbols('x y') # khai báo a = 2*x+y a + y expand(a**3) # khai triển
factor(x**3+3*x**2+3*x+1) # phân tích thành nhân tử
simplify(x**2-y**2-(x+y)*(x-y)) # ơn giản hóa lOMoARcPSD| 10435767 Thư viện scikit-learn
Simpy - Gói toán học dạng tượng trưng (symbolic) Phép thay thế (substitution): lOMoARcPSD| 10435767 Thư viện scikit-learn Simpy
Gói toán học dạng tượng trưng (symbolic) Phép thay thế (substitution): Thư viện scikit-learn Simpy
Gói toán học dạng tượng trưng (symbolic) Lượng giác (trig) lOMoARcPSD| 10435767 Thư viện scikit-learn Pandas Cài ặt: pip install pandas
Chuyển các mảng numpy thành dataframe Có thể thực
hiện toàn bộ quy trình phân tích dữ liệu Sử dụng: import pandas as pd Hoặc lOMoARcPSD| 10435767
from pandas import DataFrame, Series Thư viện scikit-learn Pandas - Series:
Là ối tượng giống như mảng một chiều chứa một mảng dữ liệu (của
bất kỳ kiểu dữ liệu NumPy nào) và một mảng nhãn dữ liệu ược liên
kết, ược gọi là chỉ mục (index). lOMoARcPSD| 10435767 Thư viện scikit-learn Pandas - Series:
Truy xuất riêng phần giá trị bằng lệnh: .values obj[2] # -6 obj[[0, 1, 3]]
Truy xuất riêng phần chỉ số bằng lệnh: .index lOMoARcPSD| 10435767 Thư viện scikit-learn Pandas - DataFrame:
Cấu trúc dữ liệu dạng bảng, giống như bảng tính, chứa một tập các cột ược sắp xếp.
có thể chứa nhiều kiểu dữ liệu khác nhau (số, chuỗi, v.v.) Có cả chỉ mục hàng và cột.
Có thể ược coi là một 'dict of Series' lOMoARcPSD| 10435767 Thư viện scikit-learn Pandas - DataFrame:
Một cột trong DataFrame có thể
ược truy xuất theo tên gọi hoặc như
một thuộc tính thuộc tính print(frame[‘state’]) print(frame.state) Thư viện scikit- learn Pandas - DataFrame: lOMoARcPSD| 10435767
Một hàng trong DataFrame có thể ược truy xuất bằng index
print(DataFrame(frame, index = [2]))
Truy xuất từng phần tử trong DataFrame: dựa theo cột/chỉ số print(frame[‘state’][3]) lOMoARcPSD| 10435767 Thư viện scikit-learn lOMoARcPSD| 10435767 Thư viện scikit-learn Pandas - DataFrame: Chuyển
ổi dòng – cột (ma trận chuyển vị) Pandas - DataFrame: lOMoARcPSD| 10435767
Đọc dữ liệu từ các nguồn khác và tạo DataFrame pd.read_csv(…)
pd.read_excel(…) pd.read_html(…) pd.read_table(…) pd.read_clipboard() lOMoARcPSD| 10435767 Thư viện scikit-learn lOMoARcPSD| 10435767 Thư viện scikit-learn lOMoARcPSD| 10435767 Thư viện scikit-learn lOMoARcPSD| 10435767 Thư viện scikit-learn
Sử dụng thư viện scikit-learn
Ví dụ về dùng scikit-learn nhận dạng ký số 0-9 viết tay
https://scikit-learn.org/stable/auto_examples/classification/plot_digits_classification.html#sphx-glr-autoexamples-classification- plot-digits-classification-py lOMoARcPSD| 10435767 Thư viện scikit-learn
Sử dụng thư viện scikit-learn
Ví dụ về dùng scikit-learn nhận dạng ký số 0-9 viết tay
https://scikit-learn.org/stable/auto_examples/classification/plot_digits_classification.html#sphx-glr-autoexamples-classification- plot-digits-classification-py lOMoARcPSD| 10435767 Thư viện scikit-learn
Sử dụng thư viện scikit-learn
Làm phẳng các hình ảnh,
chuyển từng mảng 2-D các
trận (8, 8) thành ma trận (64,).
n_features là tổng số pixel trong mỗi hình ảnh.
huấn luyện và tập test cho lOMoARcPSD| 10435767 Thư viện scikit-learn
Sử dụng thư viện scikit-learn
Biểu diễn 4 mẫu thử ầu tiên và hiển thị giá trị chữ số dự oán của chúng trong tiêu ề. lOMoARcPSD| 10435767 Thư viện scikit-learn Sử dụng thư viện scikit-learn function:~sklearn .metrics.classific ation_report: xây dựng một báo cáo văn bản hiển thị các chỉ số phân loại chính. lOMoARcPSD| 10435767 Thư viện scikit-learn
Sử dụng thư viện scikit-learn
Vẽ ma trận nhầm lẫn của các giá trị chữ số
thực và giá trị chữ số dự đoán. lOMoARcPSD| 10435767 Thư viện scikit-learn
Sử dụng thư viện Scikit-learn
Phân loại văn bản bằng SVM
Tính ặc trưng văn bản dựa trên tần suất từ
Các từ xuất hiện nhiều lần trong văn bản thì sẽ quan trọng
hơn các từ xuất hiện ít lần
Các từ xuất trong ít văn bản thì có tính phân biệt văn bản
cao hơn từ xuất hiện nhiều. Thư viện scikit-learn Tính
ặc trưng văn bản dựa trên tần suất từ
Tần suất từ (term frequency) lOMoARcPSD| 10435767
Tần suất của mộ't từ w trong văn bản d, ký hiệu TF(w,d), là số lần
xuất hiện của từ w trong van bản d.
Tần suất văn bản (document frequency)
Tần suất văn bản của một từ w, ký hiệu DF(w), là số lượng văn
bản mà từ w có xuất hiện.
Nghịch ảo của tần suất văn bản (inverse document frequyency)
của một từ w, ký hiệu IDF(w) ược cho bởi công thức: Thư viện scikit-learn Tính
ặc trưng văn bản dựa trên tần suất từ
Tần suất TF-IDF (term ducoment frequency)
Kết hợp hai loại tần suất thực thể và tần suất văn bản: lOMoARcPSD| 10435767 Thư viện scikit-learn Tính
ặc trưng văn bản dựa trên tần suất từ
Chỉ số TF(w) của một từ w cao khi từ ó xuất hiện nhiều lần
trong văn bản. Tức là, nội dung của nó trong văn bản có giá trị cao.
Chỉ số IDF(w) của một từ w cao nếu từ ó xuất hiện trong một
số ít văn bản. Tức là từ ó có giá trị phân biệt văn bản cao.
Các từ có giá trị TF-IDF(w,d) cao sẽ ặc trưng cho một văn bản. Thư viện scikit-learn Dữ liệu
Chẩn oán bệnh theo các triệu chứng.
Số bệnh ược chẩn oán (nhãn văn bản): lOMoARcPSD| 10435767
Bệnh hạ huyết áp: 149 mẫu
Bệnh viêm ường ruột: 125 mẫu Chưa xác ịnh: 589 mẫu Thư viện scikit-learn Dữ liệu lOMoARcPSD| 10435767 lOMoARcPSD| 10435767 Thư viện scikit-learn lOMoARcPSD| 10435767 Thư viện scikit-learn
Đọc dữ liệu từ file Excel lOMoARcPSD| 10435767 Thư viện scikit-learn
Xử lý dữ liệu và thiết lập tham số cho giải thuật Thư viện scikit-learn
Thực hiện thử nghiệm trên dữ liệu test và kết quả Thử nghiệm lOMoARcPSD| 10435767 Kết quả Thư viện scikit-learn
Thực hiện quá trình huấn luyện và lưu lại mô hình Mô hình lưu lại
ể sử dụng cho ứng dụng mà không cần huấn luyện lại lOMoARcPSD| 10435767 Notebook Notebook:
Google colab là một tiện ích của google, là một dịch vụ trên cloud, miễn phí.
Colab không yêu cầu thiết lập phức tạp. Các notebook mà ta
tạo có thể ược các thành viên trong nhóm chỉnh sửa ồng thời
- theo cách tương tự như ta chỉnh sửa tài liệu trong Google docs. lOMoARcPSD| 10435767
Ưu iểm lớn nhất là Colab hỗ trợ hầu hết các thư viện học máy
phổ biến và có thể dễ dàng khi cài ặt một thư viện mới. Notebook lOMoARcPSD| 10435767 Notebook Notebook:
Kết nối Colab với Google Drive Notebook Notebook:
Viết và thực thi mã bằng Python
Tạo / Tải lên / Chia sẻ các file notebook lOMoARcPSD| 10435767
Import/ save notebook vào Google Drive
Import các notebooks từ GitHub
Tích hợp sẵn PyTorch, TensorFlow, Keras, OpenCV
Dịch vụ cloud miễn phí với GPU miễn phí, có thể nâng cấp
GPU bằng cách sử dụng GPU trả phí. Notebook Notebook:
Để sử dụng Colaboratory, ta phải có tài khoản Google và sau ó
truy cập Colaboratory bằng tài khoản ó. Nếu không, hầu hết các
tính năng của Colaboratory sẽ không hoạt ộng. lOMoARcPSD| 10435767
Để tạo một file goole colab ầu tiên ta truy cập vào foder trên
google driver nơi ta muốn tạo file colab sau ó ta nhấn chuột
phải sau ó chọn vào tùy chọn “Colaboratory”: Notebook Notebook: lOMoARcPSD| 10435767 Tạo Notebook trên Colab
Tạo thư mục trên Google Drive lOMoARcPSD| 10435767 Notebook Notebook: Chọn dung GPU: Chọn “runtime” Chọn “change runtime type” Chọn “GPU” từ mục “hardware accelerator” lOMoARcPSD| 10435767 Notebook Notebook:
Mở lại hoặc tạo mới một notebook lOMoARcPSD| 10435767 Notebook