Hướng dẫn Python

TRANG CHỦ Python Giới thiệu Python Python Bắt đầu Cú pháp Python Nhận xét Python Biến Python Các kiểu dữ liệu Python Số Python Đúc Python Chuỗi Python Python Booleans Toán tử Python Danh sách Python Python Tuples Bộ Python Từ điển Python Python Nếu ... Khác Python While Loops Python cho các vòng lặp Các hàm Python Python Lambda Mảng Python Các lớp / đối tượng Python Kế thừa Python Trình lặp lại Python Phạm vi Python Mô-đun Python Ngày trong Python Toán Python JSON Python Python RegEx Python PIP Python Thử ... Ngoại trừ Đầu vào của người dùng Python Định dạng chuỗi Python

Xử lý tập tin

Xử lý tệp Python Tệp đọc Python Viết / tạo tệp trong Python Xóa tệp trong Python

Mô-đun Python

Hướng dẫn NumPy Panda Walkthrough Hướng dẫn về Scipy

Python Matplotlib

Giới thiệu Matplotlib Matplotlib Bắt đầu Matplotlib Pyplot Matplotlib Plotting Điểm đánh dấu Matplotlib Dòng Matplotlib Nhãn Matplotlib Matplotlib Grid Matplotlib Subplots Matplotlib Scatter Matplotlib Bars Biểu đồ Matplotlib Biểu đồ bánh Matplotlib

Học máy

Bắt đầu Chế độ trung bình trung bình Độ lệch chuẩn Phân vị Phân phối dữ liệu Phân phối dữ liệu bình thường Lô phân tán Hồi quy tuyến tính Hồi quy đa thức Nhiều hồi quy Tỉ lệ Huấn luyện / Kiểm tra Cây quyết định

Python MySQL

MySQL Bắt đầu MySQL Tạo cơ sở dữ liệu MySQL Tạo bảng Chèn MySQL Lựa chọn MySQL MySQL ở đâu MySQL Đặt hàng bởi MySQL Delete Bảng thả MySQL Cập nhật MySQL Giới hạn MySQL Tham gia MySQL

Python MongoDB

MongoDB Bắt đầu MongoDB Tạo cơ sở dữ liệu MongoDB Tạo Bộ sưu tập Chèn MongoDB MongoDB Tìm Truy vấn MongoDB MongoDB sắp xếp MongoDB Xóa MongoDB Drop Collection Cập nhật MongoDB Giới hạn MongoDB

Tham khảo Python

Tổng quan về Python Các hàm tích hợp trong Python Phương thức chuỗi Python Phương thức danh sách Python Phương thức từ điển Python Phương thức Tuple trong Python Phương thức tập hợp Python Phương thức tệp Python Từ khóa Python Ngoại lệ Python Bảng chú giải thuật ngữ Python

Tham chiếu mô-đun

Mô-đun ngẫu nhiên Mô-đun yêu cầu Mô-đun thống kê Mô-đun Toán học Mô-đun cMath

Python Làm thế nào để

Xóa danh sách trùng lặp Đảo ngược một chuỗi Thêm hai số

Ví dụ Python

Ví dụ Python Trình biên dịch Python Bài tập Python Python Quiz Chứng chỉ Python

Học máy - Quy mô


Tính năng quy mô

Khi dữ liệu của bạn có các giá trị khác nhau và thậm chí là các đơn vị đo lường khác nhau, có thể khó so sánh chúng. Két là gì so với mét? Hay độ cao so với thời gian?

Câu trả lời cho vấn đề này là mở rộng quy mô. Chúng tôi có thể chia tỷ lệ dữ liệu thành các giá trị mới dễ so sánh hơn.

Hãy nhìn vào bảng dưới đây, nó là cùng một tập dữ liệu mà chúng ta đã sử dụng trong chương hồi quy bội , nhưng lần này cột thể tích chứa các giá trị tính bằng lít thay vì cm 3 (1,0 thay vì 1000).

Tệp chỉ dành cho mục đích thử nghiệm, bạn có thể tải xuống tại đây: Cars2.csv

Xe ô tô Mô hình Âm lượng Trọng lượng CO2
Toyota Aygo 1,0 790 99
Mitsubishi Ngôi sao vũ trụ 1,2 1160 95
Skoda Citigo 1,0 929 95
Fiat 500 0,9 865 90
Mini Cooper 1,5 1140 105
VW Hướng lên! 1,0 929 105
Skoda Fabia 1,4 1109 90
Mercedes Một lớp học 1,5 1365 92
Ford Fiesta 1,5 1112 98
Audi A1 1,6 1150 99
Huyndai I20 1.1 980 99
Suzuki Nhanh 1,3 990 101
Ford Fiesta 1,0 1112 99
Honda Civic 1,6 1252 94
Huyndai I30 1,6 1326 97
Opel Astra 1,6 1330 97
xe BMW 1 1,6 1365 99
Mazda 3 2,2 1280 104
Skoda Nhanh 1,6 1119 104
Ford Tiêu điểm 2.0 1328 105
Ford Mondeo 1,6 1584 94
Opel Phù hiệu 2.0 1428 99
Mercedes C-Class 2.1 1365 99
Skoda Octavia 1,6 1415 99
Volvo S60 2.0 1415 99
Mercedes CLA 1,5 1465 102
Audi A4 2.0 1490 104
Audi A6 2.0 1725 114
Volvo V70 1,6 1523 109
xe BMW 5 2.0 1705 114
Mercedes E-Class 2.1 1605 115
Volvo XC70 2.0 1746 117
Ford B-Max 1,6 1235 104
xe BMW 2 1,6 1390 108
Opel Zafira 1,6 1405 109
Mercedes SLK 2,5 1395 120

Có thể khó so sánh khối lượng 1.0 với khối lượng 790, nhưng nếu chúng ta chia cả hai thành các giá trị có thể so sánh được, chúng ta có thể dễ dàng thấy giá trị này bằng bao nhiêu so với giá trị kia.

Có nhiều phương pháp khác nhau để chia tỷ lệ dữ liệu, trong hướng dẫn này, chúng tôi sẽ sử dụng một phương pháp được gọi là chuẩn hóa.

Phương pháp tiêu chuẩn hóa sử dụng công thức này:

z = (x - u) / s

Đâu zlà giá trị mới, xlà giá trị gốc, ulà giá trị trung bình và slà độ lệch chuẩn.

Nếu bạn lấy cột trọng số từ tập dữ liệu ở trên, giá trị đầu tiên là 790 và giá trị được chia tỷ lệ sẽ là:

(790 - ) / = -2.1

Nếu bạn lấy cột khối lượng từ tập dữ liệu ở trên, giá trị đầu tiên là 1,0 và giá trị được chia tỷ lệ sẽ là:

(1.0 - ) / = -1.59

Bây giờ bạn có thể so sánh -2,1 với -1,59 thay vì so sánh 790 với 1,0.

Bạn không phải thực hiện việc này theo cách thủ công, mô-đun sklearn Python có một phương thức được gọi là phương thức StandardScaler() trả về một đối tượng Scaler với các phương thức để chuyển đổi tập dữ liệu.

Thí dụ

Chia tỷ lệ tất cả các giá trị trong cột Trọng lượng và Khối lượng:

import pandas
from sklearn import linear_model
from sklearn.preprocessing import StandardScaler
scale = StandardScaler()

df = pandas.read_csv("cars2.csv")

X = df[['Weight', 'Volume']]

scaledX = scale.fit_transform(X)

print(scaledX)

Kết quả:

Lưu ý rằng hai giá trị đầu tiên là -2,1 và -1,59, tương ứng với các phép tính của chúng tôi:

[[-2.10389253 -1.59336644]
 [-0.55407235 -1.07190106]
 [-1.52166278 -1.59336644]
 [-1.78973979 -1.85409913]
 [-0.63784641 -0.28970299]
 [-1.52166278 -1.59336644]
 [-0.76769621 -0.55043568]
 [ 0.3046118  -0.28970299]
 [-0.7551301  -0.28970299]
 [-0.59595938 -0.0289703 ]
 [-1.30803892 -1.33263375]
 [-1.26615189 -0.81116837]
 [-0.7551301  -1.59336644]
 [-0.16871166 -0.0289703 ]
 [ 0.14125238 -0.0289703 ]
 [ 0.15800719 -0.0289703 ]
 [ 0.3046118  -0.0289703 ]
 [-0.05142797  1.53542584]
 [-0.72580918 -0.0289703 ]
 [ 0.14962979  1.01396046]
 [ 1.2219378  -0.0289703 ]
 [ 0.5685001   1.01396046]
 [ 0.3046118   1.27469315]
 [ 0.51404696 -0.0289703 ]
 [ 0.51404696  1.01396046]
 [ 0.72348212 -0.28970299]
 [ 0.8281997   1.01396046]
 [ 1.81254495  1.01396046]
 [ 0.96642691 -0.0289703 ]
 [ 1.72877089  1.01396046]
 [ 1.30990057  1.27469315]
 [ 1.90050772  1.01396046]
 [-0.23991961 -0.0289703 ]
 [ 0.40932938 -0.0289703 ]
 [ 0.47215993 -0.0289703 ]
 [ 0.4302729   2.31762392]]


Dự đoán giá trị CO2

Nhiệm vụ trong chương Hồi quy bội là dự đoán lượng khí thải CO2 từ một chiếc ô tô khi bạn chỉ biết trọng lượng và thể tích của nó.

Khi tập dữ liệu được chia tỷ lệ, bạn sẽ phải sử dụng tỷ lệ khi bạn dự đoán các giá trị:

Thí dụ

Dự đoán lượng khí thải CO2 từ một chiếc ô tô 1,3 lít nặng 2300 kg:

import pandas
from sklearn import linear_model
from sklearn.preprocessing import StandardScaler
scale = StandardScaler()

df = pandas.read_csv("cars2.csv")

X = df[['Weight', 'Volume']]
y = df['CO2']

scaledX = scale.fit_transform(X)

regr = linear_model.LinearRegression()
regr.fit(scaledX, y)

scaled = scale.transform([[2300, 1.3]])

predictedCO2 = regr.predict([scaled[0]])
print(predictedCO2)

Kết quả:

[107.2087328]