Tiền xử lý dữ liệu đề cập đến việc làm sạch dữ liệu, loại bỏ dữ liệu không hợp lệ, nhiễu, thay thế dữ liệu bằng các giá trị có liên quan, v.v.
Điều này không phải lúc nào cũng có nghĩa là dữ liệu văn bản; nó cũng có thể là hình ảnh hoặc xử lý video. Đây là một bước quan trọng trong quy trình học máy.
Xử lý trước dữ liệu về cơ bản đề cập đến nhiệm vụ thu thập tất cả dữ liệu (được thu thập từ nhiều tài nguyên khác nhau hoặc một tài nguyên duy nhất) vào một định dạng chung hoặc thành các tập dữ liệu thống nhất (tùy thuộc vào loại dữ liệu).
Điều này được thực hiện để thuật toán học tập có thể học hỏi từ tập dữ liệu này và đưa ra các kết quả phù hợp với độ chính xác cao. Vì dữ liệu trong thế giới thực không bao giờ là lý tưởng, nên có khả năng dữ liệu bị thiếu ô, lỗi, giá trị ngoại lai, sự khác biệt trong các cột, v.v.
Đôi khi, hình ảnh có thể không được căn chỉnh chính xác, hoặc có thể không rõ ràng hoặc có thể có kích thước rất lớn. Mục tiêu của quá trình xử lý trước là loại bỏ những sai lệch và sai sót này. Xử lý trước dữ liệu không phải là một nhiệm vụ đơn lẻ mà là một tập hợp các tác vụ được thực hiện từng bước.
Đầu ra của một bước trở thành đầu vào cho bước tiếp theo, v.v.
Hãy để chúng tôi lấy ví dụ về việc chuyển đổi các giá trị số thành các giá trị Boolean -
Ví dụ
import numpy as np from sklearn import preprocessing input_data = np.array([[34.78, 31.9, -65.5],[-16.5, 2.45, -83.5],[0.5, -87.98, 45.62], [5.9, 2.38, -55.82]]) data_binarized = preprocessing.Binarizer(threshold=0.5).transform(input_data) print("\Values converted from numeric to Boolean :\n", data_binarized)
Đầu ra
Values converted from numeric to Boolean : [[1. 1. 0.] [0. 1. 0.] [0. 0. 1.] [1. 1. 0.]]
Giải thích
- Các gói bắt buộc đã được nhập.
- Dữ liệu đầu vào được tạo bằng thư viện Numpy.
- Hàm "Binarizer" có trong lớp "tiền xử lý" của sklearn được sử dụng để chuyển đổi các giá trị số thành các giá trị Boolean.
- Các giá trị boolean về cơ bản chỉ đề cập đến 1 và 0.
- Dữ liệu đã chuyển đổi này được in trên bảng điều khiển.