Helpex - Trao đổi & giúp đỡ Đăng nhập

Dự đoán giá nhà ở bằng Google AutoML Table

Tổng quan về vấn đề

Dữ liệu dạng bảng khá phổ biến trong các vấn đề kinh doanh và kỹ thuật khác nhau. Máy học có thể được sử dụng để dự đoán các cột cụ thể của bảng mà chúng tôi quan tâm, sử dụng các cột khác làm tính năng đầu vào. Chúng tôi sẽ lấy một ví dụ về việc sử dụng dữ liệu bán nhà trong quá khứ để dự đoán giá bán cho những ngôi nhà được tung ra thị trường trong tương lai. Tập dữ liệu giá nhà từ Kaggle chứa dữ liệu như vậy cho Ames, Iowa. Nó chứa các cột dự đoán như diện tích nhà, tên khu vực lân cận, loại tòa nhà, kiểu nhà, tình trạng, năm bán gần đây nhất, v.v., trong tổng số 79 tính năng dự đoán như vậy. Một số tính năng này là phân loại trong khi các tính năng khác là số và mục tiêu của chúng tôi là dự đoán Giá bán (cột số) của những ngôi nhà sử dụng các tính năng này.

Tôi
LotArea
Khu vực lân cận
BldgType
Phong cách
Cond
YrBuilt
1stFlrSF
2ndFlrSF
Lò sưởi
YrSold
Giá bán
1
8450
CollgCr
1Fam
2Story
5
2003
856
854
0
2008
208500
2
9600
Veenker
1Fam
1Story
số 8
Năm 1976
1262
0
1
2007
181500
3
11250
CollgCr
1Fam
2Story
5
2001
920
866
1
2008
223500
4
9550
Crawfor
1Fam
2Story
5
1915
961
756
1
2006
140000
5
14260
NoRidge
1Fam
2Story
5
2000
1145
1053
1
2008
250000
6
14115
Mitchel
1Fam
1.5Fin
5
1993
796
566
0
2009
143000
7
10084
Đầu tiên
1Fam
1Story
5
2004
1694
0
1
2007
307000
số 8
10382
NWAmes
1Fam
2Story
6
Năm 1973
1107
983
2
2009
200000
9
6120
Phố cổ
1Fam
1.5Fin
5
1931
1022
752
2
2008
129900
10
7420
BrkSide
2fmCon
1.5Unf
6
1939
1077
0
2
2008
118000
11
11200
Sawyer
1Fam
1Story
5
1965
1040
0
0
2008
129500
12
11924
NridgHt
1Fam
2Story
5
2005
1182
1142
2
2006
345000
13
12968
Sawyer
1Fam
1Story
6
Năm 1962
912
0
0
2008
144000

Tổng quan về Bảng AutoML của Google

Google AutoML Tables cho phép đào tạo nhanh chóng và độ chính xác cao và lưu trữ sau đó các mô hình ML cho một vấn đề như vậy. Người dùng có thể nhập và trực quan hóa dữ liệu, đào tạo mô hình, đánh giá mô hình đó trên bộ thử nghiệm, lặp lại để cải thiện độ chính xác của mô hình và sau đó lưu trữ mô hình tốt nhất cho các dự đoán trực tuyến / ngoại tuyến. Tất cả các chức năng trên đều khả dụng như một dịch vụ mà người dùng không cần phải có chuyên môn về ML hoặc cài đặt phần cứng hoặc phần mềm.
Bảng AutoML có thể đào tạo cả mô hình hồi quy và phân loại tùy thuộc vào loại cột mà chúng tôi đang cố gắng dự đoán.

Thiết lập ban đầu

Trước tiên, chúng tôi đăng nhập vào tài khoản Google Cloud Platform (GCP) của mình (hoặc tạo tài khoản nếu chúng tôi chưa có) và tạo một dự án mới. Sau đó kích hoạt AutoML Tables bằng cách chọn 'Tables' và bật API như hình dưới đây.

Dự đoán giá nhà ở bằng Google AutoML Table Bảng" src="https://dz2cdn1.dzone.com/storage/temp/14570735-picture1.png"> Dự đoán giá nhà ở bằng Google AutoML Table

Nhập dữ liệu

Để nhập dữ liệu, chúng tôi chuyển đến tab Nhập và chọn loại nguồn, tức là bảng CSV hoặc BigQuery. Trong trường hợp của chúng tôi, chúng tôi sẽ tải lên 'train.csv' của tập dữ liệu giá nhà ở mà chúng tôi đã tải xuống trước đó. Nếu nhóm GCS đích tải lên chưa tồn tại, chúng tôi có thể tạo một nhóm vùng duy nhất, ví dụ: 'gs: // house_prices_dataset_1'. AutoML Tables sẽ nhập dữ liệu và tự động phân tích nó để xác thực nó và phát hiện các kiểu dữ liệu của các cột.

Dự đoán giá nhà ở bằng Google AutoML Table

Khám phá dữ liệu

Chúng tôi có thể khám phá lược đồ dữ liệu đã nhập sau khi quá trình nhập hoàn tất. AutoML sẽ hiển thị tên cột, kiểu dữ liệu (tức là danh mục, số hoặc văn bản), các giá trị bị thiếu và các giá trị riêng biệt cho mỗi cột. Chúng tôi nên đặt cột mục tiêu dự đoán và trong trường hợp của chúng tôi, chúng tôi sẽ dự đoán cột Giá bán. Để cho phép chúng tôi hiểu giá trị của từng tính năng riêng lẻ, nó cũng tạo ra điểm tương quan của từng cột với cột mục tiêu. Ngoài ra, chúng ta có thể khám phá sự phân bố của các giá trị trong mỗi cột.
Trong một số trường hợp, có thể loại dữ liệu của đối tượng địa lý bị phát hiện không chính xác là số khi nó thực sự được phân loại nếu giá trị danh mục là số thay vì văn bản, chẳng hạn như Năm bán. Chúng tôi có thể ghi đè loại trong trường hợp có những sai lầm như vậy.

Dự đoán giá nhà ở bằng Google AutoML Table


Đào tạo

Bây giờ chúng ta có thể chọn các cột đầu vào và một số dữ liệu và thông số huấn luyện nhất định. Trước tiên, chúng tôi xóa cột ID dưới dạng một đối tượng địa lý, vì đó là mã định danh duy nhất của hàng chứ không phải đối tượng địa lý. Sau đó, chúng tôi chỉ định phần tách tập dữ liệu huấn luyện, xác thực và thử nghiệm mà AutoML sẽ sử dụng trong quá trình huấn luyện. Điều này có thể được thiết lập để xảy ra tự động (ngẫu nhiên) hoặc chúng ta có thể chỉ định các hàng tập hợp Train / Validation / Test với một cột bổ sung. Tiếp theo, chúng ta có thể đặt xem có cột nào nên được coi là cột trọng số hay không. Điều này sẽ mang lại tầm quan trọng cao hơn cho các hàng nhất định và hữu ích nếu chúng ta muốn mô hình của mình chính xác hơn đối với một số tập hợp con dữ liệu nhất định, ví dụ: đối với một số loại nhà hoặc khu vực nhất định.

Trong các tính năng nâng cao, chúng tôi có thể chọn khoảng thời gian mà chúng tôi nên đào tạo mô hình. Trong trường hợp mô hình hội tụ sớm hơn, AutoML sẽ tự động ngừng đào tạo ('Dừng sớm') trước thời hạn quy định của chúng tôi. Vì tập dữ liệu của chúng tôi nhỏ, chúng tôi có thể chọn ngân sách chỉ trong 1 giờ.

Cuối cùng, chúng ta có thể chọn các hàm mục tiêu trong số:

  1. RMSE (Root Mean Square Error) - Hàm mục tiêu này được sử dụng khi độ lệch lớn hoặc độ lệch tương đối nhỏ trên các giá trị lớn cần quan trọng hơn.
  2. MAE (Mean Absolute Error) - Điều này tương tự như RMSE nhưng độ lệch lớn có ý nghĩa ít hơn một chút vì chúng tôi lấy chênh lệch tuyệt đối (L1) thay vì chênh lệch bình phương (L2) như trong RMSE.
  3. RMSLE (Root Mean Square Log Error) - Hàm mục tiêu này được sử dụng khi chúng ta muốn xử lý các độ lệch quy mô lớn và nhỏ như nhau vì chúng ta lấy nhật ký các dự đoán và sự thật cơ bản.

Dự đoán giá nhà ở bằng Google AutoML Table

Kiểm tra và kết quả

Việc đào tạo mô hình có thể mất từ ​​30 phút đến 20 giờ tùy thuộc vào ngân sách quy định và mức độ tập trung của đào tạo. Sau khi hoàn thành, chúng tôi có thể thấy kết quả của mô hình hồi quy của mình, nơi chúng tôi có thể dự đoán trong phạm vi 14% so với giá thực tế trung bình (MAPE) trên phần tách thử nghiệm của dữ liệu đào tạo của chúng tôi. Với nhiều dữ liệu đào tạo hơn, lỗi này có thể được giảm bớt.

Dự đoán giá nhà ở bằng Google AutoML Table

Chúng ta cũng có thể thấy điểm quan trọng cho từng tính năng. Chúng tôi thấy rằng 'Diện tích đất ở' là tính năng quan trọng nhất. Các tính năng hàng đầu khác là 'Diện tích lô đất,' 'Khu vực hiên nhà' ',' Diện tích tầng 1 ',' Chất lượng ngôi nhà ',' Năm xây dựng ',' Năm tu sửa ', v.v., khá trực quan và cho biết mô hình đang học hỏi các tính năng chính xác để dự đoán giá bán.

Dự đoán giá nhà ở bằng Google AutoML Table

Sự dự đoán

We can use this model in 3 modes for prediction on new data:

  1. Online prediction — In online mode, we can issue live requests to our model, e.g., from a production service. The model is hosted by AutoML which will replicate the model and deliver a high-availability and low-latency SLO.  For this mode, the model needs to be deployed.
  2. Batch prediction — In batch mode, the model can be run for one-off jobs by AutoML to predict over a bigger batch of data we already have. There is no need to deploy the model and is thus cheaper than online mode.
  3. Self-hosted — We can export a docker image of the model and host it on our own VMs and containers. In this mode, we will be responsible for the reliability and maintenance of the model. This mode is useful if the model needs to be used on-prem for predicting data that can not leave an on-prem environment or if the costs of using AutoML online/batch prediction are too high.

Dự đoán giá nhà ở bằng Google AutoML Table Dự đoán giá nhà ở bằng Google AutoML Table

Conclusion

To conclude, in this article, we showed how AutoML Tables is a great tool to train and host a good quality ML model for tabular data while requiring only minimal knowledge of ML/AI and no efforts for setting up training and hosting environments.

AutoML Tables take care of these requirements for you and provides you with 'Automatic ML.'

14 hữu ích 0 bình luận 4.9k xem chia sẻ

Có thể bạn quan tâm

loading