Hướng dẫn thao tác phân loại văn bản

Giao diện người dùng mẫu hiển thị một bài đánh giá tích cực về phim làm dữ liệu đầu vào và dữ liệu đầu ra là năm sao và một biểu tượng ngón tay cái hướng lên

Tác vụ Trình phân loại văn bản MediaPipe cho phép bạn phân loại văn bản thành một tập hợp các danh mục đã xác định, chẳng hạn như cảm xúc tích cực hoặc tiêu cực. Các danh mục được xác định trong quá trình huấn luyện mô hình. Tác vụ này hoạt động trên dữ liệu văn bản bằng mô hình học máy (ML) dưới dạng dữ liệu tĩnh và xuất ra danh sách các danh mục cũng như điểm xác suất của các danh mục đó.

Hãy dùng thử!

Bắt đầu

Bắt đầu sử dụng tác vụ này bằng cách làm theo một trong các hướng dẫn triển khai sau đây cho nền tảng bạn đang sử dụng:

Các hướng dẫn dành riêng cho nền tảng này sẽ hướng dẫn bạn cách triển khai cơ bản cho nhiệm vụ này, bao gồm cả mô hình được đề xuất và ví dụ về mã với các tuỳ chọn cấu hình được đề xuất.

Thông tin chi tiết về việc cần làm

Phần này mô tả các tính năng, dữ liệu đầu vào, dữ liệu đầu ra và tuỳ chọn cấu hình của tác vụ này.

Tính năng

  • Xử lý văn bản đầu vào – Hỗ trợ tạo mã thông báo ngoài biểu đồ cho các mô hình không có mã thông báo trong biểu đồ
  • Nhiều đầu phân loại – Mỗi đầu có thể sử dụng bộ danh mục riêng
  • Ngôn ngữ bản đồ nhãn – Đặt ngôn ngữ dùng cho tên hiển thị
  • Ngưỡng điểm – Lọc kết quả dựa trên điểm dự đoán
  • Kết quả phân loại top-k – Lọc số lượng kết quả phát hiện
  • Nhãn danh sách cho phép và danh sách từ chối – Chỉ định các danh mục đã phát hiện
Dữ liệu đầu vào của việc cần làm Kết quả của tác vụ
Trình phân loại văn bản chấp nhận loại dữ liệu đầu vào sau:
  • Chuỗi
Công cụ phân loại văn bản sẽ xuất ra một danh sách các danh mục chứa:
  • Chỉ mục danh mục: chỉ mục của danh mục trong đầu ra của mô hình
  • Điểm: điểm tin cậy cho danh mục này, được biểu thị dưới dạng xác suất từ 0 đến 1 dưới dạng giá trị dấu phẩy động.
  • Tên danh mục (không bắt buộc): tên của danh mục như được chỉ định trong siêu dữ liệu mô hình TensorFlow Lite, nếu có.
  • Tên hiển thị của danh mục (không bắt buộc): tên hiển thị của danh mục như được chỉ định trong Siêu dữ liệu mô hình TensorFlow Lite, bằng ngôn ngữ được chỉ định thông qua các tuỳ chọn ngôn ngữ của tên hiển thị (nếu có).

Các lựa chọn về cấu hình

Tác vụ này có các tuỳ chọn cấu hình sau:

Tên tuỳ chọn Mô tả Phạm vi giá trị Giá trị mặc định
displayNamesLocale Đặt ngôn ngữ của nhãn để sử dụng cho tên hiển thị được cung cấp trong siêu dữ liệu của mô hình tác vụ, nếu có. Mặc định là en đối với tiếng Anh. Bạn có thể thêm nhãn đã bản địa hoá vào siêu dữ liệu của mô hình tuỳ chỉnh bằng cách sử dụng API Trình ghi siêu dữ liệu TensorFlow Lite Mã ngôn ngữ vi
maxResults Đặt số lượng kết quả phân loại có điểm số cao nhất tối đa (không bắt buộc) để trả về. Nếu < 0, tất cả kết quả có sẵn sẽ được trả về. Bất kỳ số dương nào -1
scoreThreshold Đặt ngưỡng điểm số dự đoán sẽ ghi đè ngưỡng được cung cấp trong siêu dữ liệu mô hình (nếu có). Kết quả thấp hơn giá trị này sẽ bị từ chối. Bất kỳ float nào Chưa đặt
categoryAllowlist Đặt danh sách tên danh mục được phép (không bắt buộc). Nếu không trống, kết quả phân loại có tên danh mục không có trong tập hợp này sẽ bị lọc ra. Hệ thống sẽ bỏ qua tên danh mục trùng lặp hoặc không xác định. Tuỳ chọn này không thể dùng cùng với categoryDenylist và việc sử dụng cả hai sẽ dẫn đến lỗi. Chuỗi bất kỳ Chưa đặt
categoryDenylist Đặt danh sách tên danh mục không được phép (không bắt buộc). Nếu không trống, kết quả phân loại có tên danh mục nằm trong tập hợp này sẽ bị lọc ra. Hệ thống sẽ bỏ qua tên danh mục trùng lặp hoặc không xác định. Tuỳ chọn này tương đối độc lập với categoryAllowlist và việc sử dụng cả hai sẽ dẫn đến lỗi. Chuỗi bất kỳ Chưa đặt

Mô hình

Bạn có thể sử dụng Trình phân loại văn bản với nhiều mô hình học máy. Bắt đầu với mô hình mặc định, được đề xuất cho nền tảng mục tiêu của bạn khi bạn bắt đầu phát triển bằng tác vụ này. Các mô hình khác hiện có thường đánh đổi giữa hiệu suất, độ chính xác, độ phân giải và yêu cầu về tài nguyên, đồng thời trong một số trường hợp, bao gồm cả các tính năng bổ sung.

Các mô hình được huấn luyện trước được huấn luyện để phân tích cảm xúc và dự đoán liệu cảm xúc của văn bản đầu vào là tích cực hay tiêu cực. Các mô hình được huấn luyện trên tập dữ liệu SST-2 (Stanford Sentiment Treebank), bao gồm các bài đánh giá phim được gắn nhãn là tích cực hoặc tiêu cực. Xin lưu ý rằng các mô hình này chỉ hỗ trợ tiếng Anh. Vì các mô hình này được huấn luyện trên một tập dữ liệu về bài đánh giá phim, nên bạn có thể thấy chất lượng của văn bản về các chủ đề khác bị giảm.

Mô hình này sử dụng cấu trúc dựa trên BERT (cụ thể là mô hình MobileBERT) và được đề xuất vì độ chính xác cao. Tệp này chứa siêu dữ liệu cho phép tác vụ thực hiện việc tạo mã thông báo BERT ngoài biểu đồ.

Tên mẫu thiết bị Hình dạng đầu vào Loại lượng tử hoá Phiên bản
BERT-classifier [1x128],[1x128],[1x128] Dynamic range (Dải động) Mới nhất

Mô hình nhúng từ trung bình

Mô hình này sử dụng cấu trúc nhúng từ trung bình. Mô hình này có kích thước mô hình nhỏ hơn và độ trễ thấp hơn nhưng độ chính xác dự đoán thấp hơn so với bộ phân loại BERT. Việc tuỳ chỉnh mô hình này thông qua quá trình huấn luyện bổ sung cũng nhanh hơn so với việc huấn luyện bộ phân loại dựa trên BERT. Mô hình này chứa siêu dữ liệu cho phép tác vụ thực hiện việc tạo mã thông báo biểu thức chính quy ngoài biểu đồ.

Tên mẫu thiết bị Hình dạng đầu vào Loại lượng tử hoá Phiên bản
Dữ liệu nhúng từ trung bình 1 x 256 Không có (float32) Mới nhất

Điểm chuẩn tác vụ

Dưới đây là điểm chuẩn tác vụ cho toàn bộ quy trình dựa trên các mô hình được huấn luyện trước ở trên. Kết quả độ trễ là độ trễ trung bình trên Pixel 6 khi sử dụng CPU / GPU.

Tên mô hình Độ trễ CPU Độ trễ GPU
Nhúng từ trung bình 0,14 mili giây -
BERT-classifier 57,68 mili giây -

Mô hình tuỳ chỉnh

Bạn có thể sử dụng mô hình máy học tuỳ chỉnh với tác vụ này nếu muốn cải thiện hoặc thay đổi các chức năng của các mô hình được cung cấp. Bạn có thể sử dụng Trình tạo mô hình để sửa đổi các mô hình hiện có hoặc tạo mô hình bằng các công cụ như TensorFlow. Các mô hình tuỳ chỉnh dùng với MediaPipe phải ở định dạng TensorFlow Lite và phải bao gồm metadata cụ thể mô tả các thông số hoạt động của mô hình. Bạn nên cân nhắc sử dụng Trình tạo mô hình để sửa đổi các mô hình được cung cấp cho nhiệm vụ này trước khi tạo mô hình của riêng mình.