You are on page 1of 3

Giới thiệu

Chúng ta sẽ bắt đầu với một cái nhìn tổng quan về cách các machine learning models hoạt động như thế nào và chúng
được sử dụng như thế nào. Điều này có thể cảm thấy cơ bản nếu bạn đã thực hiện model thống kê hoặc machine learning
trước đây. Đừng lo, chúng tôi sẽ sớm tiến hành xây dựng các model mạnh mẽ.
Khóa học sẽ giúp bạn xây dựng các model cho kịch bản sau:
Anh em họ của bạn đã kiếm được hàng triệu đô la đầu cơ vào bất động sản. Anh ấy được đề nghị trở thành đối tác kinh
doanh với bạn vì bạn quan tâm đến khoa học dữ liệu. Anh ta sẽ cung cấp tiền, và bạn sẽ cung cấp các model dự đoán có
bao nhiêu ngôi nhà đáng giá.
Bạn hỏi người anh em họ của bạn như thế nào anh ta dự đoán giá trị bất động sản trong quá khứ. và anh ấy nói đó chỉ là
trực giác. Nhưng nhiều câu hỏi tiết lộ rằng ông đã xác định các model giá từ những ngôi nhà mà ông đã thấy trong quá
khứ, và ông sử dụng những model đó để đưa ra dự đoán cho những ngôi nhà mới mà ông đang cân nhắc.
Machine learning cũng hoạt động theo cùng một cách. Chúng ta sẽ bắt đầu với một model gọi là Decision tree. Có những
model fancier cung cấp cho các dự đoán chính xác hơn. Nhưng decision tree là dễ hiểu, và chúng là khối xây dựng cơ bản
cho một số model tốt nhất trong khoa học dữ liệu.
Để đơn giản, chúng ta sẽ bắt đầu với decision tree đơn giản nhất có thể.

Nó chia nhà thành hai loại. Giá dự đoán cho bất kỳ ngôi nhà nào đang được xem xét là giá trung bình lịch sử của các ngôi
nhà trong cùng một danh mục.
Chúng tôi sử dụng dữ liệu để quyết định cách chia nhà thành hai nhóm và sau đó lại xác định giá dự đoán trong mỗi
nhóm. Bước này để thu thập các mẫu từ dữ liệu được gọi là sắp xếp phù hợp (fitting) hoặc đào tạo (training) model. Dữ
liệu được sử dụng để phù hợp với model được gọi là dữ liệu đào tạo (training data).
Chi tiết về cách model phù hợp (fit) (ví dụ: cách phân chia dữ liệu) đủ phức tạp để chúng tôi sẽ lưu model sau này. Sau
khi model đã được phù hợp, bạn có thể áp dụng nó vào dữ liệu mới để dự đoán (predict) giá của ngôi nhà bổ sung.
Cải thiện decision tree
Lựa chọn nào trong số hai quyết định sau đây có nhiều khả năng là kết quả của việc lắp ghép dữ liệu đào tạo bất động
sản?
Decision tree bên trái (Decision Tree 1) có thể có ý nghĩa hơn, bởi vì nó nắm bắt được thực tế rằng những ngôi nhà có
nhiều phòng ngủ có xu hướng bán với giá cao hơn so với những ngôi nhà có ít phòng ngủ hơn. Điểm yếu lớn nhất của
model này là nó không nắm bắt được hầu hết các yếu tố ảnh hưởng đến giá nhà, như số lượng phòng tắm, kích thước lô, vị
trí, v.v.
Bạn có thể nắm bắt nhiều yếu tố hơn bằng cách sử dụng cây có nhiều "phân tách" hơn. Chúng được gọi là cây "sâu hơn".
Decision tree cũng xem xét tổng kích thước của lô của mỗi ngôi nhà có thể trông giống như sau:

Bạn dự đoán giá của bất kỳ ngôi nhà nào bằng cách truy tìm decision tree, luôn chọn đường tương ứng với đặc điểm của
ngôi nhà đó. Giá dự đoán cho ngôi nhà là ở dưới cùng của cây. Điểm ở phía dưới, nơi chúng tôi đưa ra dự đoán được gọi
là lá.(leaf)
Các phần tách và giá trị tại các lá sẽ được xác định bởi dữ liệu, vì vậy đã đến lúc bạn kiểm tra dữ liệu bạn sẽ làm việc.
Sử dụng Pandas để làm quen với dữ liệu của bạn
Bước đầu tiên trong bất kỳ dự án machine learning nào là tự làm quen với dữ liệu. Bạn sẽ sử dụng thư viện Pandas cho
việc này. Pandas là công cụ dữ liệu chính mà các nhà khoa học sử dụng để khám phá và thao tác dữ liệu. Hầu hết mọi
người viết tắt pandas trong mã của họ là pd. Chúng tôi làm điều này với lệnh
import pandas as pd
Phần quan trọng nhất của thư viện Pandas là DataFrame. Một DataFrame chứa loại dữ liệu bạn có thể nghĩ đến như một
bảng (table). Điều này tương tự như một trang tính trong Excel, hoặc một bảng trong cơ sở dữ liệu SQL.
Pandas có phương pháp mạnh mẽ cho hầu hết mọi thứ bạn sẽ muốn làm với loại dữ liệu này.
Ví dụ, chúng tôi sẽ xem xét dữ liệu về giá nhà ở Melbourne, Úc. Trong các bài tập thực hành, bạn sẽ áp dụng các quy trình
tương tự cho tập dữ liệu mới, có giá nhà tại Iowa.
Dữ liệu ví dụ (Melbourne) có tại đường dẫn data
Chúng tôi tải và khám phá dữ liệu bằng các lệnh sau:
# save filepath to variable for easier access
melbourne_file_path = '../input/melbourne-housing-snapshot/melb_data.csv'
# read the data and store data in DataFrame titled melbourne_data
melbourne_data = pd.read_csv(melbourne_file_path)
# print a summary of the data in Melbourne data
melbourne_data.describe()
# lưu filepath thành biến để truy cập dễ dàng hơn
# đọc dữ liệu và lưu trữ dữ liệu trong DataFrame có tiêu đề
# in tóm tắt dữ liệu trong dữ liệu ở Melbourne
Diễn giải mô tả dữ liệu
Kết quả hiển thị 8 số cho mỗi cột trong tập dữ liệu gốc của bạn. Số đầu tiên, số lượng, cho biết có bao nhiêu hàng có giá
trị không bị thiếu.
Thiếu giá trị phát sinh vì nhiều lý do. Ví dụ, kích thước của phòng ngủ thứ 2 sẽ không được thu thập khi khảo sát một ngôi
nhà 1 phòng ngủ. Chúng tôi sẽ quay trở lại chủ đề về dữ liệu bị thiếu.
Giá trị thứ hai là giá trị trung bình, là giá trị trung bình. Theo đó, std là độ lệch chuẩn, đo lường cách phân bổ số lượng các
giá trị.
Để giải thích các giá trị min, 25%, 50%, 75% và max, hãy tưởng tượng sắp xếp từng cột từ giá trị thấp nhất đến cao nhất.
Giá trị đầu tiên (nhỏ nhất) là min. Nếu bạn đi một phần tư thông qua danh sách, bạn sẽ tìm thấy một số lớn hơn 25% giá
trị và nhỏ hơn 75% giá trị. Đó là giá trị 25% (phát âm là "phần trăm 25"). Các phân vị thứ 50 và 75 được định nghĩa một
cách triệt để, và giá trị tối đa là số lớn nhất.

You might also like