Bạn đang xem : chương trình học máy trong python

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2020

Bạn có muốn thực hiện học máy bằng Python, nhưng bạn gặp khó khăn khi bắt đầu?

Trong bài đăng này, bạn sẽ hoàn thành dự án máy học đầu tiên của mình bằng Python.

Trong hướng dẫn từng bước này, bạn sẽ:

  1. Tải xuống và cài đặt Python SciPy và nhận gói hữu ích nhất cho việc học máy bằng Python.
  2. Tải tập dữ liệu và hiểu cấu trúc của tập dữ liệu đó bằng cách sử dụng tóm tắt thống kê và hình ảnh hóa dữ liệu.
  3. Tạo 6 mô hình học máy, chọn mô hình tốt nhất và xây dựng niềm tin rằng độ chính xác là đáng tin cậy.

Nếu bạn là người mới bắt đầu học máy và đang muốn bắt đầu sử dụng Python, thì hướng dẫn này được thiết kế dành cho bạn.

Bắt đầu dự án của bạn với cuốn sách mới của tôi Kỹ năng học máy với Python , bao gồm hướng dẫn từng bước và tệp mã nguồn Python cho tất cả các ví dụ. < / p>

Hãy bắt đầu!

  • Cập nhật tháng 1/2017 : Đã cập nhật để phản ánh các thay đổi đối với API scikit-learning trong phiên bản 0.18.
  • Cập nhật tháng 3 năm 2017 : Đã thêm các liên kết để giúp thiết lập môi trường Python của bạn.
  • Cập nhật tháng 4 năm 2018 : Đã thêm một số liên kết hữu ích về tính ngẫu nhiên và dự đoán.
  • Cập nhật tháng 9 năm 2018 : Đã thêm liên kết vào phiên bản tập dữ liệu được lưu trữ của riêng tôi.
  • Cập nhật tháng 2/2019 : Đã cập nhật cho sklearn v0.20, các lô cũng được cập nhật.
  • Cập nhật tháng 10 năm 2019 : Đã thêm liên kết vào cuối các hướng dẫn bổ sung để tiếp tục.
  • Cập nhật tháng 11 năm 2019 : Đã thêm các ví dụ mã đầy đủ cho từng phần.
  • Cập nhật tháng 12 năm 2019 : Các ví dụ cập nhật để loại bỏ cảnh báo do các thay đổi API trong v0.22.
  • Cập nhật tháng 1/2020 : Đã cập nhật để xóa đoạn mã cho dây thử nghiệm.

Dự án học máy đầu tiên của bạn bằng Python Step-By-Step

Làm cách nào để bạn bắt đầu Học máy bằng Python?

Cách tốt nhất để học máy học là thiết kế và hoàn thành các dự án nhỏ.

Python có thể đáng sợ khi bắt đầu

Python là một ngôn ngữ thông dịch phổ biến và mạnh mẽ. Không giống như R, Python là một ngôn ngữ và nền tảng hoàn chỉnh mà bạn có thể sử dụng cho cả nghiên cứu và phát triển cũng như phát triển hệ thống sản xuất.

Ngoài ra còn có rất nhiều mô-đun và thư viện để lựa chọn, cung cấp nhiều cách để thực hiện từng tác vụ. Nó có thể cảm thấy choáng ngợp.

Cách tốt nhất để bắt đầu sử dụng Python cho học máy là hoàn thành một dự án.

  • Nó sẽ buộc bạn phải cài đặt và khởi động trình thông dịch Python (ít nhất là).
  • Nó sẽ giúp bạn có cái nhìn tổng thể về cách thực hiện một dự án nhỏ.
  • Nó sẽ mang lại cho bạn sự tự tin, có thể tiếp tục các dự án nhỏ của riêng bạn.

Người mới bắt đầu cần một dự án nhỏ từ đầu đến cuối

Sách và khóa học gây khó chịu. Họ cung cấp cho bạn rất nhiều công thức và đoạn trích, nhưng bạn sẽ không bao giờ biết được tất cả chúng phù hợp với nhau như thế nào.

Khi bạn đang áp dụng công nghệ máy học cho tập dữ liệu của riêng mình, bạn đang thực hiện một dự án.

Một dự án máy học có thể không tuyến tính, nhưng nó có một số bước nổi tiếng:

  1. Xác định vấn đề.
  2. Chuẩn bị dữ liệu.
  3. Đánh giá các thuật toán.
  4. Cải thiện kết quả.
  5. Kết quả hiện tại.

Cách tốt nhất để thực sự hiểu rõ về một nền tảng hoặc công cụ mới là làm việc từ đầu đến cuối của một dự án học máy và bao gồm các bước chính. Cụ thể là từ tải dữ liệu, tóm tắt dữ liệu, đánh giá thuật toán và đưa ra một số dự đoán.

Nếu bạn có thể làm điều đó, bạn có một mẫu mà bạn có thể sử dụng trên tập dữ liệu sau tập dữ liệu. Bạn có thể lấp đầy những khoảng trống chẳng hạn như chuẩn bị thêm dữ liệu và cải thiện các nhiệm vụ kết quả sau này, khi bạn đã tự tin hơn.

Hello World of Machine Learning

Dự án nhỏ tốt nhất để bắt đầu trên một công cụ mới là phân loại hoa diên vĩ (ví dụ: tập dữ liệu về hoa diên vĩ ).

Đây là một dự án tốt vì nó được hiểu rất rõ.

  • Các thuộc tính là số nên bạn phải tìm ra cách tải và xử lý dữ liệu.
  • Đây là một vấn đề về phân loại, cho phép bạn thực hành với một loại thuật toán học có giám sát dễ dàng hơn.
  • Đây là một vấn đề phân loại nhiều lớp (nhiều danh nghĩa) có thể yêu cầu một số xử lý chuyên biệt.
  • Nó chỉ có 4 thuộc tính và 150 hàng, có nghĩa là nó nhỏ và dễ dàng vừa với bộ nhớ (và một màn hình hoặc trang A4).
  • Tất cả các thuộc tính số đều có cùng đơn vị và cùng tỷ lệ, không yêu cầu bất kỳ biến đổi hoặc tỷ lệ đặc biệt nào để bắt đầu.

Hãy bắt đầu với dự án máy học hello world của bạn bằng Python.

Học máy bằng Python: Hướng dẫn từng bước
(bắt đầu tại đây)

Trong phần này, chúng ta sẽ thông qua một dự án máy học nhỏ từ đầu đến cuối.

Dưới đây là tổng quan về những gì chúng tôi sẽ trình bày:

  1. Cài đặt nền tảng Python và SciPy.
  2. Đang tải tập dữ liệu.
  3. Tóm tắt tập dữ liệu.
  4. Hình dung tập dữ liệu.
  5. Đánh giá một số thuật toán.
  6. Đưa ra một số dự đoán.

Hãy dành thời gian của bạn. Làm việc qua từng bước.

Cố gắng tự nhập các lệnh hoặc sao chép và dán các lệnh để tăng tốc độ.

Nếu bạn có bất kỳ câu hỏi nào, vui lòng để lại bình luận ở cuối bài đăng.

Cần trợ giúp về Học máy bằng Python?

Tham gia khóa học email miễn phí kéo dài 2 tuần của tôi và khám phá quá trình chuẩn bị dữ liệu, thuật toán và hơn thế nữa (kèm theo mã).

Nhấp để đăng ký ngay bây giờ và cũng nhận được phiên bản Ebook PDF miễn phí của khóa học.

Bắt đầu khóa học nhỏ MIỄN PHÍ của bạn ngay bây giờ!

1. Tải xuống, cài đặt và khởi động Python SciPy

Cài đặt nền tảng Python và SciPy trên hệ thống của bạn nếu chưa có.

Tôi không muốn trình bày quá chi tiết về vấn đề này, vì những người khác đã có. Điều này đã khá đơn giản, đặc biệt nếu bạn là một nhà phát triển. Nếu bạn cần trợ giúp, hãy đặt câu hỏi trong phần bình luận.

1.1 Cài đặt Thư viện SciPy

Hướng dẫn này giả định phiên bản Python 2.7 hoặc 3.6+.

Có 5 thư viện chính mà bạn cần cài đặt. Dưới đây là danh sách các thư viện Python SciPy cần thiết cho hướng dẫn này:

  • scipy
  • numpy
  • matplotlib
  • gấu trúc
  • sklearn

Có nhiều cách để cài đặt các thư viện này. Lời khuyên tốt nhất của tôi là chọn một phương pháp sau đó nhất quán trong việc cài đặt từng thư viện.

Trang cài đặt scipy cung cấp các hướng dẫn tuyệt vời để cài đặt các thư viện ở trên trên nhiều nền tảng khác nhau, chẳng hạn như Linux, mac OS X và Windows. Nếu bạn có bất kỳ nghi ngờ hoặc thắc mắc nào, hãy tham khảo hướng dẫn này, hàng nghìn người đã làm theo.

  • Trên Mac OS X, bạn có thể sử dụng macport để cài đặt Python 3.6 và các thư viện này. Để biết thêm thông tin về macports, hãy xem trang chủ .
  • Trên Linux, bạn có thể sử dụng trình quản lý gói của mình, chẳng hạn như yum trên Fedora để cài đặt RPM.

Nếu bạn đang sử dụng Windows hoặc bạn không tự tin, tôi khuyên bạn nên cài đặt phiên bản miễn phí của Anaconda , bao gồm mọi thứ bạn cần.

Lưu ý : Hướng dẫn này giả định rằng bạn đã cài đặt scikit-learning phiên bản 0.20 trở lên.

Cần thêm trợ giúp? Xem một trong những hướng dẫn sau:

1.2 Khởi động Python và kiểm tra các phiên bản

Bạn nên đảm bảo rằng môi trường Python của bạn đã được cài đặt thành công và đang hoạt động như mong đợi.

Tập lệnh bên dưới sẽ giúp bạn kiểm tra môi trường của mình. Nó nhập từng thư viện cần thiết trong hướng dẫn này và in phiên bản.

Mở một dòng lệnh và khởi động trình thông dịch python:

1

con trăn

Tôi khuyên bạn nên làm việc trực tiếp trong trình thông dịch hoặc viết các tập lệnh của bạn và chạy chúng trên dòng lệnh thay vì các trình chỉnh sửa lớn và IDE. Hãy đơn giản hóa mọi thứ và tập trung vào máy học chứ không phải chuỗi công cụ.

Nhập hoặc sao chép và dán tập lệnh sau:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

# Kiểm tra phiên bản của thư viện

# Phiên bản Python

nhập

sys

print

(

‘Python : {} ‘

.

format

(< / p>

sys

.

phiên bản

)

)

# scipy

import

scipy

print

(

‘scipy: {}’

.

format

(

scipy

.

__ version__

)

)

# numpy

nhập

numpy

print

(

‘numpy: {}’

.

format

(

numpy < / p>

.

__ version__

)

)

# matplotlib

import < / p>

matplotlib

print

(

‘matplotlib: {}’

.

format

(

matplotlib

.

__ version__

)

)

# gấu trúc

import

gấu trúc

print

(

‘pandas: {}’

.

format

(

gấu trúc < / p>

.

__ version__

)

)

# scikit-learning

nhập khẩu

sklearn

print

(

‘sklearn: {}’

.

format

(

sklearn

.

__ version__

)

)

Đây là kết quả tôi nhận được trên máy trạm OS X của mình:

1

2

3

4

5

6

7

Python: 3.6.11 (mặc định, ngày 29 tháng 6 năm 2020, 13:22:26)

[GCC 4.2.1 Tương thích Apple LLVM 9.1.0 (clang-902.0.39.2)]

scipy: 1.5.2

numpy: 1.19.1

matplotlib: 3.3.0

gấu trúc: 1.1.0

sklearn: 0.23.2

So sánh kết quả ở trên với các phiên bản của bạn.

Tốt nhất, các phiên bản của bạn phải phù hợp hoặc mới hơn. Các API không thay đổi nhanh chóng, vì vậy đừng quá lo lắng nếu bạn chậm một vài phiên bản, Mọi thứ trong hướng dẫn này rất có thể vẫn hoạt động với bạn.

Nếu bạn gặp lỗi, hãy dừng lại. Bây giờ là lúc để sửa chữa nó.

Nếu bạn không thể chạy tập lệnh trên một cách rõ ràng, bạn sẽ không thể hoàn thành hướng dẫn này.

Lời khuyên tốt nhất của tôi là tìm kiếm thông báo lỗi của bạn trên Google hoặc đăng câu hỏi trên Stack Exchange .

2. Tải dữ liệu

Chúng tôi sẽ sử dụng tập dữ liệu về hoa iris. Tập dữ liệu này nổi tiếng vì nó được hầu hết mọi người sử dụng làm tập dữ liệu “chào thế giới” trong học máy và thống kê.

Tập dữ liệu chứa 150 quan sát về hoa iris. Có bốn cột đo các bông hoa theo đơn vị cm. Cột thứ năm là loài hoa được quan sát. Tất cả những bông hoa quan sát được thuộc về một trong ba loài.

Bạn có thể tìm hiểu thêm về tập dữ liệu này trên Wikipedia .

Trong bước này, chúng tôi sẽ tải dữ liệu mống mắt từ URL tệp CSV.

2.1 Nhập thư viện

Đầu tiên, hãy nhập tất cả các mô-đun, chức năng và đối tượng mà chúng ta sẽ sử dụng trong hướng dẫn này.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

# Tải thư viện

from

pandas

nhập

read_csv

từ

gấu trúc

.

vẽ biểu đồ

nhập

scatter_matrix

< / p>

từ

matplotlib

nhập

pyplot

từ

sklearn

.

model_selection

nhập

train_test_split

từ < / p>

sklearn

.

model_selection

nhập

cross_val_score

từ

sklearn

.

model_selection

import

StratifiedKFold

< p class = "crayon-line crayon-sọc-line" id = "urvanov-cú pháp-highlighter-62b229ba2ed82921319714-8">

từ

sklearn

.

số liệu

nhập

phân loại_repo rt

từ

sklearn

.

số liệu

nhập

repeat_matrix

từ

sklearn

.

số liệu

nhập

precision_score

từ

sklearn

.

linear_model

nhập

< p class = "crayon-e"> LogisticRegression

từ

sklearn

.

cây

nhập

DecisionTreeClassifier

from

sklearn

.

hàng xóm

nhập

KNeighborsClassifier

từ

sklearn

. < / p>

phân biệt_phân biệt

nhập

Phân tích tuyến tính

từ

sklearn

.

na_bayes

nhập

GaussianNB

từ

sklearn

.

< p class = "crayon-e"> svm

nhập

SVC

.

.

.

Mọi thứ sẽ tải mà không có lỗi. Nếu bạn gặp lỗi, hãy dừng lại. Bạn cần một môi trường SciPy làm việc trước khi tiếp tục. Xem lời khuyên ở trên về cách thiết lập môi trường của bạn.

2.2 Tải tập dữ liệu

Chúng tôi có thể tải dữ liệu trực tiếp từ kho lưu trữ Học máy UCI.

Chúng tôi đang sử dụng gấu trúc để tải dữ liệu. Chúng tôi cũng sẽ sử dụng gấu trúc bên cạnh để khám phá dữ liệu bằng cả thống kê mô tả và hình ảnh hóa dữ liệu.

Lưu ý rằng chúng tôi đang chỉ định tên của từng cột khi tải dữ liệu. Điều này sẽ hữu ích sau này khi chúng ta khám phá dữ liệu.

1

2

3

4

5

.

. < / p>

.

# Tải tập dữ liệu

url

=

“https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”

tên

=

[

‘sepal-length’

,

‘sepal-width’

,

‘wing-length’

,

‘wing-width’

,

‘class’

]

tập dữ liệu

=

read_csv

(

url

,

tên

=

tên

)

Tập dữ liệu sẽ tải mà không xảy ra sự cố.

Nếu bạn gặp sự cố mạng, bạn có thể tải tệp iris.csv xuống thư mục làm việc của mình và tải tệp đó bằng phương pháp tương tự, thay đổi URL thành tên tệp cục bộ.

3. Tóm tắt tập dữ liệu

Bây giờ đã đến lúc xem xét dữ liệu.

Trong bước này, chúng ta sẽ xem xét dữ liệu theo một số cách khác nhau:

  1. Kích thước của tập dữ liệu.
  2. Xem xét chính dữ liệu.
  3. Tóm tắt thống kê về tất cả các thuộc tính.
  4. Phân tích dữ liệu theo biến lớp.

Đừng lo lắng, mỗi lần xem dữ liệu là một lệnh. Đây là những lệnh hữu ích mà bạn có thể sử dụng lặp đi lặp lại trong các dự án trong tương lai.

3.1 Kích thước của tập dữ liệu

Chúng ta có thể nhanh chóng biết được dữ liệu có bao nhiêu trường hợp (hàng) và bao nhiêu thuộc tính (cột) với thuộc tính shape.

1

2

3

.

. < / p>

.

# shape

print

(

tập dữ liệu

. < / p>

shape

)

Bạn sẽ thấy 150 trường hợp và 5 thuộc tính:

1

(150, 5)

3.2 Xem qua dữ liệu

Thực sự cũng nên xem xét dữ liệu của bạn.

1

2

3

.

. < / p>

.

# head

print

(

tập dữ liệu

. < / p>

head

(

20

)

)

Bạn sẽ thấy 20 hàng đầu tiên của dữ liệu:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

sepal-length sepal-width wing-length wing-width class

0 5,1 3,5 1,4 0,2 Iris-setosa

1 4,9 3,0 1,4 0,2 Iris-setosa

2 4,7 3,2 1,3 0,2 Iris- setosa

3 4,6 3,1 1,5 0,2 Iris-setosa

4 5,0 3,6 1,4 0,2 Iris-setosa

5 5,4 3,9 1,7 0,4 Iris-setosa

6 4,6 3,4 1,4 0,3 Iris-setosa

7 5,0 3,4 1,5 0,2 Iris-setosa

8 4,4 2,9 1,4 0,2 Iris-setosa

9 4,9 3,1 1,5 0,1 Iris-setosa

10 5,4 3,7 1,5 0,2 Iris-setosa

11 4,8 3,4 1,6 0,2 Iris-setosa

12 4,8 3,0 1,4 0,1 Iris-setosa

13 4,3 3,0 1,1 0,1 Iris-setosa < / p>

14 5,8 4,0 1,2 0,2 ​​Iris-setosa

15 5,7 4,4 1,5 0,4 Iris-setosa

16 5,4 3,9 1,3 0,4 Iris-setosa

17 5,1 3,5 1,4 0,3 Iris-setosa

18 5,7 3,8 1,7 0,3 Iris-setosa

19 5,1 3,8 1,5 0,3 Iris-setosa

3.3 Tóm tắt thống kê

Bây giờ chúng ta có thể xem qua bản tóm tắt của từng thuộc tính.

Điều này bao gồm số lượng, giá trị trung bình, giá trị tối thiểu và tối đa cũng như một số phân vị.

1

2

3

.

. < / p>

.

# des description

print

(

tập dữ liệu

. < / p>

mô tả

(

)

)

Chúng ta có thể thấy rằng tất cả các giá trị số đều có cùng tỷ lệ (cm) và các phạm vi tương tự từ 0 đến 8 cm.

1

2

3

4

5

6

7

8

9

sepal-length sepal-width wing-length wing-width

số đếm 150.000000 150.000000 150.000000 150.000000

nghĩa là 5.843333 3.054000 3.758667 1.198667

std 0.828066 0.433594 1.764420 0.763161

tối thiểu 4.300000 2.000000 1.000000 0.100000

25% 5.100000 2.800000 1.600000 0.300000

50% 5.800000 3.000000 4.350000 1.300000

75 % 6.400000 3.300000 5.100000 1.800000

tối đa 7.900000 4.400000 6.900000 2.500000

3.4 Phân phối theo lớp

Bây giờ chúng ta hãy xem xét số lượng trường hợp (hàng) thuộc về mỗi lớp. Chúng ta có thể xem đây là một con số tuyệt đối.

1

2

3

.

. < / p>

.

# phân phối lớp

print

(

tập dữ liệu

.

groupby

(

‘class’

)

.

size

(

)

)

Chúng ta có thể thấy rằng mỗi lớp có cùng số lượng bản sao (50 hoặc 33% tập dữ liệu).

1

2

3

4

class

Iris-setosa 50

Iris-versicolor 50

Iris-virginica 50

3.5 Ví dụ đầy đủ

Để tham khảo, chúng tôi có thể liên kết tất cả các phần tử trước đó với nhau thành một tập lệnh duy nhất.

Ví dụ đầy đủ được liệt kê bên dưới.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

# tóm tắt dữ liệu

from

pandas < / p>

nhập

đọc

_

csv < / p>

# Tải tập dữ liệu

url

=

“https: // raw. githubusercontent.com/jbrownlee/Datasets/master/iris.csv”

tên

=

< / p>

[

‘sepal-length’

,

‘sepal-width’

,

‘wing-length’

,

‘wing-width’

,

‘class’

]

tập dữ liệu

=

read_csv

(

url

,

tên

=

tên

)

# shape

print

(

tập dữ liệu

.

shape

)

# head

in

(

tập dữ liệu

.

head

(

20

)

)

< / p>

# mô tả

print

(

tập dữ liệu

.

mô tả

< p class = "crayon-sy"> (

)

)

# phân phối lớp

print

(

tập dữ liệu

.

groupby

(

‘class’

)

.

size

(

)

)

4. Trực quan hóa dữ liệu

Bây giờ chúng tôi có ý tưởng cơ bản về dữ liệu. Chúng tôi cần mở rộng điều đó bằng một số hình ảnh hóa.

Chúng ta sẽ xem xét hai loại âm mưu:

  1. Các âm mưu đơn biến để hiểu rõ hơn về từng thuộc tính.
  2. Biểu đồ đa biến để hiểu rõ hơn về mối quan hệ giữa các thuộc tính.

4.1 Các lô đơn biến

Chúng tôi bắt đầu với một số biểu đồ đơn biến, tức là các biểu đồ của từng biến riêng lẻ.

Cho rằng các biến đầu vào là số, chúng tôi có thể tạo các ô dạng hộp và ô râu của mỗi biến.

1

2

3

4

.

. < / p>

.

# ô và râu ria

tập dữ liệu

.

âm mưu

(

kind

=

‘box’ < / p>

,

ô con

=

Đúng

,

bố cục

=

(

2

,

2

)

,

sharex

=

Sai < / p>

,

sharey

=

Sai

)

pyplot

.

hiển thị

(

)

< / p>

Điều này cho chúng ta một ý tưởng rõ ràng hơn nhiều về sự phân bổ của các thuộc tính đầu vào:

Ô và ô Whisker cho mỗi biến đầu vào cho tập dữ liệu hoa Iris

Chúng tôi cũng có thể tạo biểu đồ của từng biến đầu vào để có ý tưởng về phân phối.

1

2

3

4

.

. < / p>

.

# biểu đồ

tập dữ liệu

.

hist

(< / p>

)

pyplot

.

hiển thị

(

)

Có vẻ như hai trong số các biến đầu vào có phân phối Gaussian. Điều này rất hữu ích cần lưu ý vì chúng ta có thể sử dụng các thuật toán có thể khai thác giả định này.

Các ô biểu đồ cho mỗi biến đầu vào cho tập dữ liệu hoa Iris

4.2 Lô đa biến

Bây giờ chúng ta có thể xem xét sự tương tác giữa các biến.

Đầu tiên, hãy xem biểu đồ phân tán của tất cả các cặp thuộc tính. Điều này có thể hữu ích để phát hiện mối quan hệ có cấu trúc giữa các biến đầu vào.

1

2

3

4

.

. < / p>

.

# ma trận biểu đồ phân tán

scatter_matrix

(

tập dữ liệu

)

pyplot

.

hiển thị

(

)

Lưu ý việc nhóm theo đường chéo của một số cặp thuộc tính. Điều này cho thấy mối tương quan cao và mối quan hệ có thể dự đoán được.

Lô ma trận phân tán cho mỗi biến đầu vào cho tập dữ liệu hoa Iris

4.3 Hoàn chỉnh Ví dụ

Để tham khảo, chúng tôi có thể liên kết tất cả các phần tử trước đó với nhau thành một tập lệnh duy nhất.

Ví dụ đầy đủ được liệt kê bên dưới.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

# trực quan hóa dữ liệu

from

pandas < / p>

nhập

read_csv

từ

gấu trúc

.

vẽ biểu đồ

nhập

scatter_matrix

từ

matplotlib

nhập

pyplot

# Tải tập dữ liệu

url

=

” https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv “

tên

=

[

‘sepal-length’

,

‘sepal-width’

,

‘wing-length’

,

‘wing-width’

,

‘class’

]

tập dữ liệu

=

read_csv

(

url

,

tên

=

tên

)

# ô và râu ria

tập dữ liệu

.

âm mưu

(

loại

=

‘box’

,

< p class = "crayon-h">

ô con

=

Đúng

,

bố cục

=

(

2

,

2

)

,

sharex

=

Sai

,

sharey

=

Sai

)

pyplot

.

hiển thị

(

)

# biểu đồ

tập dữ liệu

.

lịch sử

< p class = "crayon-sy"> (

)

pyplot

.

hiển thị

(

)

# ma trận biểu đồ phân tán

scatter_matrix

(

tập dữ liệu

)

pyplot

.

hiển thị

(

)

5. Đánh giá một số thuật toán

Bây giờ, đã đến lúc tạo một số mô hình dữ liệu và ước tính độ chính xác của chúng trên dữ liệu không nhìn thấy.

Đây là những gì chúng ta sẽ đề cập trong bước này:

  1. Tách ra một tập dữ liệu xác thực.
  2. Thiết lập dây kiểm tra để sử dụng xác thực chéo 10 lần.
  3. Xây dựng nhiều mô hình khác nhau để dự đoán các loài từ các phép đo hoa
  4. Chọn mô hình tốt nhất.

5.1 Tạo tập dữ liệu xác thực

Chúng tôi cần biết rằng mô hình chúng tôi tạo ra là tốt.

Sau đó, chúng tôi sẽ sử dụng các phương pháp thống kê để ước tính độ chính xác của các mô hình mà chúng tôi tạo trên dữ liệu không nhìn thấy. Chúng tôi cũng muốn có một ước tính cụ thể hơn về độ chính xác của mô hình tốt nhất trên dữ liệu không nhìn thấy bằng cách đánh giá mô hình đó trên dữ liệu thực tế không nhìn thấy.

Nghĩa là, chúng tôi sẽ giữ lại một số dữ liệu mà các thuật toán sẽ không nhìn thấy và chúng tôi sẽ sử dụng dữ liệu này để có được ý tưởng thứ hai và độc lập về độ chính xác của mô hình tốt nhất có thể thực sự như thế nào.

Chúng tôi sẽ chia tập dữ liệu đã tải thành hai, 80% trong số đó chúng tôi sẽ sử dụng để đào tạo, đánh giá và lựa chọn trong số các mô hình của mình và 20% chúng tôi sẽ giữ lại làm tập dữ liệu xác thực.

1

2

3

4

5

6

.

. < / p>

.

# Tập dữ liệu xác thực phân tách

mảng

=

tập dữ liệu

.

giá trị

X

=

mảng

[

:

,

0

:

4

]

y

=

mảng

[

:

,

< p class = "crayon-cn"> 4

]

X_train

,

X_validation

,

< p class = "crayon-v"> Y_train

,

Y_validation

=

train_test_split

(

X

,

y

,

test_size

=

< p class = "crayon-cn"> 0,20

,

random_state

=

1

) < / p>

Giờ đây, bạn có dữ liệu đào tạo trong X_train và Y_train để chuẩn bị mô hình cũng như bộ X_validation và Y_validation mà chúng tôi có thể sử dụng sau này.

Lưu ý rằng chúng tôi đã sử dụng một lát python để chọn các cột trong mảng NumPy. Nếu điều này là mới với bạn, bạn có thể muốn xem bài đăng này:

5.2 Khai thác thử nghiệm

Chúng tôi sẽ sử dụng xác thực chéo 10 lần phân tầng để ước tính độ chính xác của mô hình.

Điều này sẽ chia bộ dữ liệu của chúng tôi thành 10 phần, đào tạo trên 9 và kiểm tra trên 1 và lặp lại cho tất cả các kết hợp của các phần tách kiểm tra đào tạo.

Phân tầng có nghĩa là mỗi phần gấp hoặc phần tách của tập dữ liệu sẽ nhằm mục đích có cùng phân phối ví dụ theo lớp như tồn tại trong toàn bộ tập dữ liệu đào tạo.

Để biết thêm về kỹ thuật xác thực chéo k-lần, hãy xem hướng dẫn:

Chúng tôi đặt hạt giống ngẫu nhiên thông qua đối số random_state thành một số cố định để đảm bảo rằng mỗi thuật toán được đánh giá trên cùng một phần của tập dữ liệu đào tạo.

Hạt giống ngẫu nhiên cụ thể không quan trọng, hãy tìm hiểu thêm về trình tạo số ngẫu nhiên giả tại đây:

Chúng tôi đang sử dụng số liệu về ‘độ chính xác’ để đánh giá các mô hình.

Đây là tỷ lệ giữa số trường hợp được dự đoán chính xác chia cho tổng số trường hợp trong tập dữ liệu nhân với 100 để đưa ra tỷ lệ phần trăm (ví dụ: chính xác 95%). Chúng tôi sẽ sử dụng biến số điểm khi chạy xây dựng và đánh giá từng mô hình tiếp theo.

5.3 Xây dựng mô hình

Chúng tôi không biết thuật toán nào sẽ tốt cho vấn đề này hoặc sử dụng cấu hình nào.

Chúng tôi lấy ý tưởng từ các biểu đồ rằng một số lớp có thể phân tách tuyến tính một phần theo một số chiều, vì vậy, chúng tôi mong đợi kết quả nhìn chung tốt.

Hãy thử nghiệm 6 thuật toán khác nhau:

  • Hồi quy logistic (LR)
  • Phân tích Phân biệt Tuyến tính (LDA)
  • K-Nearest Neighbors (KNN).
  • Cây phân loại và cây hồi quy (CART).
  • Gaussian Naive Bayes (NB).
  • Hỗ trợ Máy Véc tơ (SVM).

Đây là sự kết hợp tốt giữa các thuật toán tuyến tính đơn giản (LR và LDA), phi tuyến tính (KNN, CART, NB và SVM).

Hãy xây dựng và đánh giá các mô hình của chúng tôi:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

.

. < / p>

.

# Thuật toán Kiểm tra Điểm

mô hình

=

< / p>

[

]

mô hình

.

nối thêm

(

(

‘LR’

,

LogisticRegression

(

bộ giải

=

‘liblinear’

,

multi_class

=

‘ovr’

)

)

)

mô hình

.

nối thêm

(

(

‘LDA ‘

,

LinearDiscriminantAnalysis

< p class = "crayon-sy"> (

)

)

)

mô hình

.

chắp thêm

(

(

‘KNN’

,

KNeighborsClassifier

(

)

)

)

mô hình

.

nối thêm

(

(

‘GIỎ HÀNG’

,

DecisionTreeClassifier

(

)

)

)

mô hình

.

chắp thêm

(

(

‘NB’

,

GaussianNB

(

)

)

)

kiểu

.

nối thêm

(

(

‘SVM’

,

SVC

(

gamma

=

‘auto’

)

)

)

# đánh giá lần lượt từng mô hình

kết quả

=

[

] < / p>

tên

=

[

]

cho

tên

,

người mẫu

người mẫu

:

kfold

=

StratifiedKFold

(

n_splits

=

10

,

random_state

=

1

,

xáo trộn

=

Đúng

)

cv_results

=

cross_val_score

(

mô hình

,

X_train

< p class = "crayon-sy">,

Y_train

,

cv

=

kfold

,

ghi điểm

=

‘precision’

)

kết quả

.

nối thêm

(

cv_results

)

tên

.

nối thêm

(

tên

) < / p>

print

(

‘% s:% f ( % f) ‘

%

(

tên

,

cv_results

.

có nghĩa là

(

)

,

cv_results

.

std

(

)

)

)

5.4 Chọn kiểu máy tốt nhất

Hiện chúng tôi có 6 mô hình và ước tính độ chính xác cho mỗi mô hình. Chúng tôi cần so sánh các mô hình với nhau và chọn chính xác nhất.

Chạy ví dụ trên, chúng tôi nhận được các kết quả thô sau:

1

2

3

4

5

6

LR: 0.960897 (0.052113)

LDA: 0,973974 (0,040110)

KNN: 0,957191 (0,043263)

GIỎ HÀNG: 0,957191 (0,043263)

NB: 0,948858 (0,056322)

SVM: 0,983974 (0,032083)

Lưu ý : Kết quả của bạn có thể khác nhau đưa ra bản chất ngẫu nhiên của thuật toán hoặc thủ tục đánh giá hoặc sự khác biệt về độ chính xác số. Cân nhắc chạy ví dụ một vài lần và so sánh kết quả trung bình.

Bạn đã nhận được những điểm số nào?
Đăng kết quả của bạn trong phần bình luận bên dưới.

Trong trường hợp này, chúng ta có thể thấy rằng có vẻ như Máy hỗ trợ vectơ (SVM) có điểm chính xác ước tính lớn nhất vào khoảng 0,98 hoặc 98%.

Chúng tôi cũng có thể tạo biểu đồ kết quả đánh giá mô hình và so sánh mức chênh lệch và độ chính xác trung bình của từng mô hình. Có một tập hợp các thước đo độ chính xác cho mỗi thuật toán vì mỗi thuật toán được đánh giá 10 lần (thông qua xác nhận chéo 10 lần).

Một cách hữu ích để so sánh các mẫu kết quả cho mỗi thuật toán là tạo một hộp và biểu đồ râu ria cho mỗi phân phối và so sánh các phân phối.

1

2

3

4

5

.

. < / p>

.

# So sánh các thuật toán

pyplot

.

boxplot

(

kết quả

,

nhãn

=

tên

)

pyplot

.

title

(

‘So sánh thuật toán’

)

pyplot

.

hiển thị

(

)

Chúng ta có thể thấy rằng ô và đồ thị râu bị bóp méo ở đầu phạm vi, với nhiều đánh giá đạt độ chính xác 100% và một số đánh giá giảm xuống độ chính xác cao 80%.

Box and Whisker Plot so sánh các thuật toán học máy trên tập dữ liệu Iris Flowers

5.5 Hoàn thành Ví dụ

Để tham khảo, chúng tôi có thể liên kết tất cả các phần tử trước đó với nhau thành một tập lệnh duy nhất.

Ví dụ đầy đủ được liệt kê bên dưới.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30 < / p>

31

32

33 < / p>

34

35

36

37

38

39

40

41

42

# thuật toán so sánh

từ

gấu trúc

nhập

read_csv

từ

matplotlib

nhập

pyplot

từ

sklearn

.

model_selection

nhập

train_test_split

từ

sklearn

.

model_selection

nhập

cross_val_score

từ

sklearn

.

model_selection

import

StratifiedKFold

< p class = "crayon-line" id = "urvanov-cú pháp-highlighter-62b229ba2ed97878557599-7">

từ

sklearn

.

linear_model

nhập

LogisticRegression

từ

sklearn

.

cây

import

DecisionTreeClassifier

từ

sklearn

.

hàng xóm

nhập

KNeighborsClassifier

từ

sklearn

.

racminant_analysis

import

LinearDiscriminantAnalysis

từ

sklearn

.

secure_bayes

import

GaussianNB

< p class = "crayon-e"> từ

sklearn

.

svm

nhập

SVC

# Tải tập dữ liệu

url

=

“https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”

tên

< / p>

=

[

‘sepal-length’

,

‘sepal-width’

,

‘wing-length’

,

‘wing-width’

,

‘ lớp ‘

]

tập dữ liệu

=

read_csv

(

url

,

tên

=

tên

)

# Tập dữ liệu xác thực phân tách

mảng

=

tập dữ liệu

.

giá trị

X

=

mảng

[

:

, < / p>

0

:

4

]

y

=

< / p>

mảng

[

:

,

4

]

X_train

,

X_validation

,

Y_train

,

Y_validation

=

train_test_split

(

X

,

y

,

test_size

=

< p class = "crayon-cn"> 0,20

,

random_state

=

1

, < / p>

xáo trộn

=

Đúng

)

# Thuật toán kiểm tra điểm

người mẫu

=

[

]

kiểu

.

nối thêm

(

(

‘LR’

,

LogisticRegression

(

bộ giải

=

‘liblinear’

,

< p class = "crayon-h">

multi_class

=

‘ovr’

)

)

)

mô hình

.

nối thêm

(

(

‘LDA’

,

LinearDiscriminantAnalysis

(

)

)

)

mô hình

.

nối thêm

(

(

‘KNN ‘

,

KNeighborsClassifier

< p class = "crayon-sy"> (

)

)

)

kiểu

.

nối thêm

(

(

‘GIỎ HÀNG’

,

DecisionTreeClassifier

(

)

)

)

mô hình

.

< p class = "crayon-e"> chắp thêm

(

(

‘NB’

,

GaussianNB

(

)

)

)

mô hình

.

chắp thêm

(

(

‘SVM’

,

< p class = "crayon-h">

SVC

(

gamma

=

‘auto’

)

)

)

# đánh giá lần lượt từng mô hình

kết quả

=

[

]

tên

=

< p class = "crayon-sy"> [

]

cho

tên

,

model

in

người mẫu

:

kfold

=

StratifiedKFold

(

n_splits

=

10

,

random_state

=

1

,

xáo trộn

=

Đúng

)

cv_results

=

cross_val_score

(

kiểu

,

X_train

,

Y_train

,

cv

=

kfold

,

ghi điểm

=

‘precision’

)

< p class = "crayon-line crayon-sọc-line" id = "urvanov-cú pháp-highlighter-62b229ba2ed97878557599-36">

kết quả

.

nối thêm

(

cv_results

)

tên

.

< p class = "crayon-e"> thêm

(

tên

)

print

(

‘% s:% f (% f) ‘

%

< / p>

(

tên

,

cv_results

.

nghĩa là

(

)

,

cv_results

.

std

(

)

)

)

# So sánh các thuật toán

pyplot

. < / p>

boxplot

(

kết quả

,

nhãn

=

tên

)

pyplot

.

title

(

‘So sánh thuật toán’

)

pyplot

.

hiển thị

(

)

6. Đưa ra dự đoán

Chúng tôi phải chọn một thuật toán để sử dụng để đưa ra dự đoán.

Các kết quả trong phần trước cho thấy SVM có lẽ là mô hình chính xác nhất. Chúng tôi sẽ sử dụng mô hình này làm mô hình cuối cùng của mình.

Bây giờ chúng tôi muốn có ý tưởng về độ chính xác của mô hình trên bộ xác thực của chúng tôi.

Điều này sẽ giúp chúng tôi kiểm tra lần cuối độc lập về độ chính xác của mô hình tốt nhất. Bạn nên lưu giữ bộ xác thực đề phòng trường hợp bạn mắc lỗi trong quá trình đào tạo, chẳng hạn như trang bị quá nhiều cho bộ đào tạo hoặc rò rỉ dữ liệu. Cả hai vấn đề này sẽ dẫn đến một kết quả quá lạc quan.

6.1 Đưa ra dự đoán

Chúng tôi có thể điều chỉnh mô hình trên toàn bộ tập dữ liệu đào tạo và đưa ra dự đoán trên tập dữ liệu xác thực.

1

2

3

4

5

.

. < / p>

.

# Đưa ra dự đoán trên tập dữ liệu xác thực

kiểu mẫu

=

SVC

(

gamma

=

‘auto’

)

kiểu

.

vừa vặn

(

X_train

,

Y_train

)

dự đoán

=

model

.

dự đoán

(

X_validation

)

Bạn cũng có thể muốn đưa ra dự đoán cho các hàng dữ liệu. Để biết ví dụ về cách làm điều đó, hãy xem hướng dẫn:

Bạn cũng có thể muốn lưu mô hình vào tệp và tải mô hình sau để đưa ra dự đoán về dữ liệu mới. Để biết ví dụ về cách thực hiện việc này, hãy xem hướng dẫn:

6.2 Đánh giá các dự đoán

Chúng tôi có thể đánh giá các dự đoán bằng cách so sánh chúng với kết quả mong đợi trong tập hợp xác thực, sau đó tính toán độ chính xác của phân loại, cũng như ma trận nhầm lẫn và báo cáo phân loại.

1

2

3

4

5

.

. < / p>

.

.

# Đánh giá dự đoán

print

(

precision_score

(

Y_validation

,

< p class = "crayon-h">

dự đoán

)

)

print

(

repeat_matrix

(

Y_validation

,

dự đoán

)

)

print

< p class = "crayon-sy"> (

analysis_report

(

Y_validation

,

dự đoán < / p>

)

)

Chúng tôi có thể thấy rằng độ chính xác là 0,966 hoặc khoảng 96% trên tập dữ liệu tạm dừng.

Ma trận nhầm lẫn cung cấp một dấu hiệu về các lỗi đã mắc phải.

Cuối cùng, báo cáo phân loại cung cấp bảng phân tích của từng loại theo độ chính xác, thu hồi, điểm f1 và hỗ trợ hiển thị kết quả xuất sắc (tập dữ liệu xác thực được cấp là nhỏ).

1

2

3

4

5

6

7

8

9

10

11

12

13

0.9666666666666667

[[11 0 0]

[0 12 1]

[0 0 6]]

hỗ trợ điểm f1 gọi lại chính xác

Iris-setosa 1,00 1,00 1,00 11

Iris-versicolor 1,00 0,92 0,96 13

Iris-virginica 0,86 1,00 0,92 6

độ chính xác 0,97 30

trung bình macro 0,95 0,97 0,96 30

trung bình có trọng số 0,97 0,97 0,97 30

6.3 Ví dụ đầy đủ

Để tham khảo, chúng tôi có thể liên kết tất cả các phần tử trước đó với nhau thành một tập lệnh duy nhất.

Ví dụ đầy đủ được liệt kê bên dưới.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

# đưa ra dự đoán

từ

gấu trúc

nhập

read_csv

từ

sklearn

.

model_selection

nhập

train_test_split

< / p>

từ

sklearn

.

số liệu

nhập

phân loại_report

từ

sklearn

.

số liệu

nhập

repeat_matrix

từ

sklearn

.

số liệu

nhập < / p>

precision_score

từ

sklearn

.

svm

nhập

SVC

# Tải tập dữ liệu

url

=

“https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”

tên

=

[

‘sepal-length’

,

‘ sepal-width ‘

,

‘ cánh hoa- chiều dài ‘

,

‘ wing-width ‘

,

‘class’

]

tập dữ liệu

=

read_csv

(

url

,

tên

=

tên

)

# Bộ dữ liệu xác thực phân tách

mảng

=

tập dữ liệu

.

giá trị

X

=

< p class = "crayon-t"> mảng

[

:

,

0

:

4

]

y

=

< p class = "crayon-t"> mảng

[

:

,

4

]

X_train

,

X_validation

,

Y_train

,

< / p>

Y_validation

=

train_test_split

(

X

,

y

,

test_size

=

0,20

,

random_state

=

1

)

# Đưa ra dự đoán trên tập dữ liệu xác thực

kiểu mẫu

=

SVC

< p class = "crayon-sy"> (

gamma

=

‘auto’

)

kiểu mẫu

.

vừa vặn

(

X_train

,

Y_train

)

dự đoán

=

mô hình

.

dự đoán

(

X_validation

)

< / p>

# Đánh giá dự đoán

print

(

precision_score

(

Y_validation

,

dự đoán

)

)

print

(

nhầm lẫn_matrix

(

Y_validation

,

dự đoán

)

) < / p>

(

phân loại_report

(

Y_validation

,

dự đoán

)

)

Bạn có thể học máy bằng Python

Làm việc thông qua hướng dẫn ở trên. Bạn sẽ mất tối đa từ 5 đến 10 phút!

Bạn không cần phải hiểu mọi thứ . (ít nhất là không phải lúc này) Mục tiêu của bạn là chạy từ đầu đến cuối hướng dẫn và nhận được kết quả. Bạn không cần phải hiểu mọi thứ trong lần vượt qua đầu tiên. Liệt kê các câu hỏi của bạn khi bạn tiếp tục. Sử dụng nhiều cú pháp trợ giúp help (“FunctionName”) trong Python để tìm hiểu về tất cả các hàm mà bạn đang sử dụng.

Bạn không cần biết cách hoạt động của các thuật toán . Điều quan trọng là phải biết về các hạn chế và cách định cấu hình các thuật toán học máy. Nhưng việc học về các thuật toán có thể đến muộn hơn. Bạn cần phải xây dựng kiến ​​thức thuật toán này từ từ trong một khoảng thời gian dài. Hôm nay, hãy bắt đầu bằng cách làm quen với nền tảng này.

Bạn không cần phải là một lập trình viên Python . Cú pháp của ngôn ngữ Python có thể trực quan nếu bạn chưa quen với nó. Cũng giống như các ngôn ngữ khác, tập trung vào các lệnh gọi hàm (ví dụ: hàm ()) và các phép gán (ví dụ: a = “b”). Điều này sẽ giúp bạn có được hầu hết các con đường. Bạn là một nhà phát triển, bạn biết cách tiếp thu kiến ​​thức cơ bản của một ngôn ngữ thật nhanh. Chỉ cần bắt đầu và đi sâu vào chi tiết sau.

Bạn không cần phải là chuyên gia máy học . Bạn có thể tìm hiểu về những lợi ích và hạn chế của các thuật toán khác nhau sau này, đồng thời có rất nhiều bài đăng mà bạn có thể đọc sau này để tìm hiểu về các bước của một dự án máy học và tầm quan trọng của việc đánh giá độ chính xác bằng cách sử dụng xác thực chéo.

Còn các bước khác trong dự án máy học thì sao. Chúng tôi không trình bày tất cả các bước trong một dự án học máy vì đây là dự án đầu tiên của bạn và chúng tôi cần tập trung vào các bước chính. Cụ thể là tải dữ liệu, xem xét dữ liệu, đánh giá một số thuật toán và đưa ra một số dự đoán. Trong các hướng dẫn sau, chúng ta có thể xem xét các nhiệm vụ chuẩn bị dữ liệu và cải thiện kết quả khác.

Tóm tắt

Trong bài đăng này, bạn đã khám phá từng bước cách hoàn thành dự án máy học đầu tiên của mình bằng Python.

Bạn phát hiện ra rằng việc hoàn thành một dự án nhỏ từ đầu đến cuối từ tải dữ liệu đến đưa ra dự đoán là cách tốt nhất để làm quen với một nền tảng mới.

Bước tiếp theo của bạn

Bạn có làm qua hướng dẫn này không?

  1. Làm việc thông qua hướng dẫn ở trên.
  2. Liệt kê bất kỳ câu hỏi nào bạn có.
  3. Tìm kiếm hoặc nghiên cứu câu trả lời.
  4. Hãy nhớ rằng, bạn có thể sử dụng trợ giúp (“Tên hàm”) trong Python để nhận trợ giúp về bất kỳ hàm nào.

Bạn có câu hỏi?
Đăng nó trong phần bình luận bên dưới.

Hướng dẫn khác?

Muốn tiếp tục rèn luyện kỹ năng học máy của mình, hãy xem một số hướng dẫn sau:

Khám phá Học máy nhanh bằng Python!

Phát triển mô hình của riêng bạn trong vài phút

… chỉ với một vài dòng mã scikit-learning

Tìm hiểu cách thực hiện trong Ebook mới của tôi:
Học máy thành thạo với Python

Bao gồm hướng dẫn tự học dự án từ đầu đến cuối như:
Đang tải dữ liệu, hình ảnh hóa, mô hình hóa, điều chỉnh và hơn thế nữa …

Cuối cùng là Mang Học máy lên
Dự án của riêng bạn

Bỏ qua Học viện. Chỉ là kết quả.

Xem Nội dung bên trong


Xem thêm những thông tin liên quan đến chủ đề chương trình học máy trong python

Lập Trình Cơ Bản PYTHON Tự Học Cho Người Mới Bắt Đầu

alt

  • Tác giả: Dũng Lại Lập Trình
  • Ngày đăng: 2020-05-12
  • Đánh giá: 4 ⭐ ( 4941 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hướng dẫn tự viết chương trình Python từ đâu và sử dụng Terminal trên Window mad Mac. Clip này phù hợp cho các bạn chưa biết gì về lập trình.

    Xin chào các bạn mình là Dũng Lại Lập Trình, hiện tại mình đang sống và làm việc tại Úc, mình từng là một học sinh chuyên toán tại THPT Hà Nội – Amsterdam, sau lớp 12 mình bắt đầu du học ngành khoa học dữ liệu tại đại học Swinburne, Australia. Sau 3 năm đại học, mình nhận học bổng Tiến Sĩ và tiếp tục công việc nghiên cứu tại viện nghiên cứu trí tuệ nhân tạo và ứng dụng A2I2 tại Úc, đồng thời làm việc tại 3 trường đại học là Deakin, Monash, và Swinburne.

    Thông tin các lớp học lập trình cơ bản cho người mới bắt đầu: http://dunglailaptrinh.com
    👨‍🏫 1. Lập Trình Web cơ Bản
    👨‍🏫 2. Toán Logic – Toán tư duy cơ bản
    👨‍🏫 3. Lập Trình Python Cơ Bản đến Nâng cao
    👨‍🏫 4. Lập Trình Game Cơ Bản
    👨‍🏫 5. Lập trình Data Science – Phân tích dữ liệu Cơ Bản
    👨‍🏫 6. Lập Trình AI – Trí Tuệ Nhân Tạo Cơ Bản

    Trong Clip này mình sẽ hướng dẫn:

    _ Một số thuật ngữ tiếng Anh ngành lập trình
    _ Cài đặt Python mới nhất trên Mac và Window
    _ Sử dụng Terminal thành thạo để di chuyển và chạy chương trình
    _ Cài đặt và sử dụng Text Editor phổ biến Sublime Text
    _ Viết chương trình đổi tiền USD sang VND
    _ Chạy Hello World bằng 7 ngôn ngữ Python, Ruby, Golang, C, Java, C++, Pascal
    _ Cách đổi 2 biến bằng biến phụ thứ 3

    Thuật ngữ tiếng anh đã giải thích:

    Path, Directory, Folder, Extension, String, Datatype, Integer, Interpreter, Compiler, Variable, Assign, Assignment Statement, Concatenate, Multiply, Multiplication, Define, Convert, Quotation, Double Quotation Marks, Colons, Print, Save, IDE, Integrated Development Environment, Text Editor, Right Click, File, Terminal
    —-

    Facebook Page: https://www.facebook.com/dunglailaptrinh
    Instagram: https://www.instagram.com/dunglailaptrinh
    Group hỏi đáp lập trình: https://www.facebook.com/groups/dunglailaptrinh
    Tiktok làm toán: https://tiktok.com/@dunglailaptrinh
    Facebook cá nhân: https://www.facebook.com/dung.lai.733

    CẢM ƠN CÁC BẠN RẤT NHIỀU !!!!! Love you !!!!

    dunglailaptrinh

Chương trình Học viện công nghệ BKACAD

  • Tác giả: www.bkacad.edu.vn
  • Đánh giá: 4 ⭐ ( 4057 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: | Chương trình Học viện công nghệ BKACAD

Tìm hiểu và thực hành về số trong Python

  • Tác giả: t3h.edu.vn
  • Đánh giá: 4 ⭐ ( 1991 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong bài viết ngày hôm nay, bạn sẽ tìm hiểu về các con số trong Python, cách tạo các số nguyên, số thực, làm tròn số trong Python.

Hướng dẫn học lập trình python cho người mới học

  • Tác giả: stanford.com.vn
  • Đánh giá: 4 ⭐ ( 9354 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Học Python ở đâu? Top 4 web bạn nên học Python trong mùa dịch 2021

  • Tác giả: aptech.fpt.edu.vn
  • Đánh giá: 4 ⭐ ( 3180 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Lập trình Python cơ bản với IoT

  • Tác giả: deviot.vn
  • Đánh giá: 4 ⭐ ( 9748 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Khóa học giúp nắm được các kiến thức cơ bản về ngôn ngữ Python và 1 vài ứng dụng nhỏ với IoT

Python: Hướng dẫn học máy (Machine Learning – ML) trong Python

  • Tác giả: v1study.com
  • Đánh giá: 3 ⭐ ( 9771 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Cách thay đổi tên cột trong SQL Server: Giải thích cho người mới bắt đầu - sửa đổi tên cột trong sql

By ads_php