Tập dữ liệu: Đặc điểm dữ liệu

Tập dữ liệu là tập hợp ví dụ.

Nhiều tập dữ liệu lưu trữ dữ liệu trong bảng (lưới), ví dụ: giá trị được phân tách bằng dấu phẩy (CSV) hoặc trực tiếp từ bảng tính hoặc bảng cơ sở dữ liệu. Bảng là định dạng đầu vào trực quan cho máy mô hình học tập. Bạn có thể hình dung mỗi hàng của bảng làm ví dụ và mỗi cột dưới dạng tính năng hoặc nhãn tiềm năng. Tuy nhiên, tập dữ liệu cũng có thể bắt nguồn từ các định dạng khác, bao gồm tệp nhật ký và vùng đệm giao thức.

Bất kể định dạng là gì, mô hình ML chỉ hiệu quả bằng dữ liệu mà nó huấn luyện. Phần này tìm hiểu các đặc điểm chính của dữ liệu.

Các loại dữ liệu

Một tập dữ liệu có thể chứa nhiều loại dữ liệu, bao gồm nhưng chắc chắn là không giới hạn ở:

  • được trình bày trong phần riêng biệt đơn_vị
  • dữ liệu phân loại, được đề cập trong phần phân loại đơn_vị
  • ngôn ngữ của con người, bao gồm cả từ và câu riêng lẻ, cho đến toàn bộ tài liệu văn bản
  • đa phương tiện (như hình ảnh, video và tệp âm thanh)
  • kết quả đầu ra từ các hệ thống học máy khác
  • vectơ nhúng, tức là được đề cập trong một bài sau

Các kiểu dữ liệu trước đó có thể được chia nhỏ hơn nữa. Các học phần tiếp theo trong khoá học này (ví dụ: bài viết Danh mục Mô-đun Dữ liệu – chi tiết và phân loại các loại dữ liệu này thành con.

Số lượng dữ liệu

Theo quy tắc chung, mô hình của bạn nên huấn luyện theo ít nhất một lệnh lớn hơn (hoặc hai) ví dụ hơn tham số có thể huấn luyện. Tuy nhiên, tốt các mô hình thường huấn luyện trên nhiều ví dụ hơn thế.

Các mô hình được huấn luyện trên các tập dữ liệu lớn với ít tính năng thường hoạt động tốt hơn các mô hình được huấn luyện trên các tập dữ liệu nhỏ với rất nhiều tính năng. Google đã từng rất thành công trong việc huấn luyện các mô hình đơn giản về tập dữ liệu lớn.

Các tập dữ liệu khác nhau cho các chương trình học máy khác nhau có thể đòi hỏi rất nhiều số lượng ví dụ khác nhau để xây dựng một mô hình hữu ích. Đối với một số người dùng tương đối các vấn đề đơn giản, bạn có thể chỉ cần vài chục ví dụ là đủ. Đối với các vấn đề khác, một nghìn tỷ ví dụ có thể là chưa đủ.

Một tập dữ liệu nhỏ có thể nhận được kết quả tốt nếu bạn đang điều chỉnh một mô hình hiện có đã được huấn luyện về số lượng lớn dữ liệu từ cùng một giản đồ.

Chất lượng và độ tin cậy của dữ liệu

Mọi người đều thích chất lượng cao thay vì chất lượng thấp, nhưng chất lượng là mơ hồ là một khái niệm có thể được định nghĩa theo nhiều cách. Khoá học này xác định chất lượng trên thực tế:

Tập dữ liệu chất lượng cao giúp mô hình của bạn đạt được mục tiêu. Tập dữ liệu chất lượng thấp sẽ cản trở mô hình của bạn hoàn thành mục tiêu.

Một tập dữ liệu có chất lượng cao thường cũng đáng tin cậy. Độ tin cậy là mức độ mà bạn có thể tin tưởng dữ liệu của mình. Một mô hình được huấn luyện dựa trên một tập dữ liệu đáng tin cậy có nhiều khả năng mang lại kết quả hữu ích hơn so với mô hình được huấn luyện dựa trên dữ liệu không đáng tin cậy.

Trong quá trình đo lường độ tin cậy, bạn phải xác định:

  • Lỗi nhãn phổ biến như thế nào? Ví dụ: nếu dữ liệu của bạn là do con người gắn nhãn, người đánh giá của bạn có thường xuyên mắc lỗi không?
  • Các tính năng của bạn có bị nhiễu không? Tức là tạo giá trị trong các tính năng của bạn có lỗi không? Thực tế, bạn không thể xoá hoàn toàn tập dữ liệu tất cả các yếu tố gây nhiễu. Một chút tiếng ồn là bình thường; Ví dụ: đo lường GPS của bất kỳ vị trí luôn biến động một chút, hằng tuần.
  • Dữ liệu có được lọc đúng cách cho vấn đề của bạn không? Ví dụ: tập dữ liệu của bạn có nên bao gồm các cụm từ tìm kiếm từ bot không? Nếu bạn xây dựng một hệ thống phát hiện tin nhắn rác, thì nhiều khả năng câu trả lời là có. Tuy nhiên, nếu bạn đang cố gắng cải thiện kết quả tìm kiếm cho con người thì không.

Sau đây là các nguyên nhân phổ biến dẫn đến dữ liệu không đáng tin cậy trong các tập dữ liệu:

  • Các giá trị đã bỏ qua. Ví dụ: một người quên nhập giá trị cho tuổi của nhà báo.
  • Ví dụ trùng lặp. Ví dụ: một máy chủ tải lên nhầm hai lần.
  • Giá trị tính năng không hợp lệ. Ví dụ: ai đó đã nhập thêm một chữ số hoặc nhiệt kế bị bỏ ngoài trời.
  • Nhãn không hợp lệ. Ví dụ: một người gắn nhãn nhầm ảnh của cây sồi làm cây phong.
  • Phần dữ liệu không hợp lệ. Ví dụ: một tính năng nào đó rất đáng tin cậy, ngoại trừ ngày hôm đó khi mạng liên tục gặp sự cố.

Bạn nên sử dụng tính năng tự động hoá để gắn cờ những dữ liệu không đáng tin cậy. Ví dụ: phương thức kiểm thử đơn vị nhằm xác định hoặc dựa vào giản đồ dữ liệu chính thức bên ngoài gắn cờ cho các giá trị nằm ngoài phạm vi đã xác định.

Ví dụ đầy đủ so với chưa hoàn chỉnh

Trong một thế giới hoàn hảo, mỗi ví dụ đều hoàn chỉnh; tức là mỗi ví dụ chứa một giá trị cho mỗi tính năng.

Hình 1. Một ví dụ chứa các giá trị cho cả 5
       các tính năng AI mới.
Hình 1. Một ví dụ hoàn chỉnh.

 

Thật không may, các ví dụ thực tế thường không đầy đủ, có nghĩa là lúc thiếu ít nhất một giá trị tính năng.

Hình 2. Ví dụ về giá trị của 4/5 giá trị
            các tính năng AI mới. Một đối tượng được đánh dấu là bị thiếu.
Hình 2. Ví dụ chưa đầy đủ.

 

Không huấn luyện mô hình dựa trên các ví dụ chưa hoàn chỉnh. Thay vào đó, hãy sửa hoặc loại bỏ ví dụ chưa đầy đủ bằng cách thực hiện một trong các thao tác sau:

  • Xoá các ví dụ chưa hoàn chỉnh.
  • Thiếu giá trị Impute; tức là chuyển đổi ví dụ chưa hoàn chỉnh thành một ví dụ hoàn chỉnh bằng cách cung cấp các suy đoán có cơ sở cho các giá trị bị thiếu.
Hình 3. Một tập dữ liệu chứa ba ví dụ, trong đó có hai ví dụ
            ví dụ chưa đầy đủ. Ai đó đã xử lý hai URL chưa hoàn chỉnh này
            ví dụ từ tập dữ liệu.
Hình 3. Đang xoá các ví dụ chưa hoàn chỉnh khỏi tập dữ liệu.

 

Hình 4. Một tập dữ liệu chứa ba ví dụ, trong đó có hai ví dụ
            ví dụ chưa đầy đủ chứa dữ liệu bị thiếu. Thực thể nào đó (con người
            hoặc phần mềm tính toán) có các giá trị đã áp dụng thay thế cho
            thiếu dữ liệu.
Hình 4. Nhập giá trị còn thiếu cho các ví dụ chưa hoàn chỉnh.

 

Nếu tập dữ liệu có đủ ví dụ hoàn chỉnh để huấn luyện một mô hình hữu ích, thì hãy cân nhắc xoá những ví dụ chưa hoàn chỉnh. Tương tự, nếu chỉ một đối tượng thiếu một lượng dữ liệu đáng kể và một tính năng có thể không giúp gì cho mô hình được nhiều, thì bạn nên xoá tính năng đó từ đầu vào của mô hình và xem chất lượng bị mất đi bao nhiêu gỡ bỏ. Thật tuyệt nếu mô hình chỉ hoạt động hoặc gần như hoạt động khi không có mô hình đó. Ngược lại, nếu bạn không có đủ ví dụ hoàn chỉnh để huấn luyện một mô hình hữu ích, thì bạn có thể cân nhắc việc nhập các giá trị còn thiếu.

Bạn có thể xoá các ví dụ vô ích hoặc thừa, nhưng không nên xoá ví dụ quan trọng. Thật không may, có thể khó phân biệt giữa các ví dụ vô ích và hữu ích. Nếu bạn không thể quyết định xem để xóa hoặc đề xuất, hãy xem xét xây dựng hai tập dữ liệu: một tập dữ liệu được hình thành bằng cách xoá các ví dụ chưa đầy đủ và các ví dụ khác bằng cách áp dụng. Sau đó, xác định tập dữ liệu nào sẽ huấn luyện mô hình tốt hơn.


Một thuật toán phổ biến là sử dụng giá trị trung bình hoặc trung vị làm giá trị được gán. Do đó, khi bạn biểu diễn một đối tượng bằng số bằng Điểm Z, sau đó là giá trị được gán thường là 0 (vì 0 thường là điểm Z trung bình).

Bài tập: Kiểm tra kiến thức

Dưới đây là hai cột của tập dữ liệu được sắp xếp theo Timestamp.

Dấu thời gian Nhiệt độ
8 tháng 6 năm 2023 09:00 12
Ngày 8 tháng 6 năm 2023 10:00 18
Ngày 8 tháng 6 năm 2023 11:00 bị thiếu
Ngày 8 tháng 6 năm 2023 12:00 24
Ngày 8 tháng 6 năm 2023 13:00 38

Giá trị nào sau đây là giá trị hợp lý để đề xuất cho giá trị Nhiệt độ bị thiếu?

23
Có thể. 23 là giá trị trung bình của các giá trị liền kề (12, 18, 24 và 38). Tuy nhiên, chúng tôi không nhìn thấy phần còn lại của tập dữ liệu nên có thể rằng 23 sẽ là một ngoại lệ vào 11:00 vào những ngày khác.
31
Không có khả năng. Phần giới hạn của tập dữ liệu mà chúng ta có thể thấy đề xuất rằng 31 là quá cao so với Nhiệt độ 11 giờ. Tuy nhiên, chúng tôi không thể chắc chắn nếu không dựa vào sự suy luận dựa vào một số lượng lớn hơn ví dụ.
51
Rất khó có thể xảy ra. 51 cao hơn nhiều giá trị bạn thấy (và do đó, cao hơn nhiều so với giá trị trung bình).