Giới thiệu chung
Chủ đề. Phân loại một ngôn ngữ được mã hóa
Công ty khởi nghiệp của bạn chuyên xây dựng các giải pháp AI cho các khách hàng phải xử lý việc phân loại khối lượng lớn văn bản trong công việc hàng ngày của họ. Dựa vào các dữ liệu được gắn nhãn được khách hàng cung cấp và các bộ mã hóa đa ngôn ngữ, bạn có thể nhanh chóng xây dựng mô hình phân loại cho khách hàng.
Một trong những khách hàng lớn nhất của bạn, tổ chức V, đưa ra một yêu cầu đặc biệt: phân loại 1 khối lượng các văn bản có tính chất đặc biệt quan trọng và nội dung của các văn bản đó đã được mã hóa. Nghĩa là mỗi từ trong văn bản sẽ được thay bằng token - một số nguyên dương duy nhất.
Dữ liệu do tổ chức V cung cấp bao gồm một tập dữ liệu được gắn nhãn nhỏ để phân loại văn bản và một kho văn bản lớn hơn đã được mã hóa vì họ không thể tiết lộ nội dung của các văn bản này cho 1 bên thứ ba. Ngoài ra, dữ liệu còn có danh sách các từ gần nghĩa cho một tập các từ được chọn ngẫu nhiên.
Thách thức của bạn giờ đây là xây dựng một mô hình phân loại ngôn ngữ mà không được biết về nội dung của nó. Bạn không nên lãng phí bất kỳ nỗ lực nào vào việc cố gắng giải mã dữ liệu - điều này sẽ không giúp bạn xây dựng một bộ phân loại tốt hơn và nó sẽ khiến bạn gặp rắc rối với tổ chức V.
Nhiệm vụ.
Nhiệm vụ của bạn là xây dựng trình phân loại văn bản tốt nhất cho ngôn ngữ X mà bạn có thể, với các ràng buộc sau:
Trình phân loại phải đào tạo trong vòng chưa đầy 4 giờ bằng cách sử dụng GPU L4 vì tài nguyên tính toán của công ty còn hạn chế.
Trình phân loại phải thực hiện suy luận trên 500 mẫu dữ liệu ngẫu nhiên bất kỳ trong vòng chưa đầy 5 phút. Điều này thể hiện sự hiệu quả của mô hình và để lại ấn tượng cho khách hàng.
Dữ liệu. Dữ liệu gồm 5 tập như sau:
- Unlabeled Dataset (unlabel.pkl) Các văn bản đã được mã hóa không gắn nhãn.
- Similar-Words Dataset (similar.txt) gồm 100 dòng. Mỗi dòng gồm một token mẫu và ba token gần nghĩa nhất so với token mẫu (sắp xếp theo thứ tự giảm dần). Cụ thể với (token-1, token-2, token-3, token-4), token-1 sẽ giống nhất với token-2.
- Labeled Dataset (train.pkl): Dữ liệu có gắn nhãn phân loại gồm các đoạn văn bản ngắn đã được mã hóa và nhãn phân loại tương ứng. Có 3 lớp phân loại được gắn nhãn là 0, 1, 2.
- Public testset: (test_input.pkl) Tập dữ liệu kiểm thử công khai, được sử dụng để các đội đánh giá hiệu quả của mô hình mà họ đã huấn luyện.
- Private testset: Đây là tập dữ liệu BTC sẽ dùng để đánh giá độ tốt các model của các đội.
Các tập dữ liệu dành cho các đội thi được chia sẻ qua đường LINK NÀY.
Hướng dẫn nộp kết quả. (chi tiết xem tại phần Submission)
- Không được chỉnh sửa file kết quả do mô hình của đội sinh ra dưới bất kỳ hình thức nào (bao gồm public test lẫn private test) để nộp cho BTC.
- Giai đoạn sơ khảo (public test): mỗi đội được phép nộp tối đa 2 lần mỗi ngày. Trong giai đoạn chung kết (private test) được phép nộp tối đa 5 lần mỗi ngày.
- Các đội lọt vào vòng chung kết bắt buộc phải nộp file mã nguồn notebook (đuôi .ipynb), trong đó có đầy đủ các bước cài đặt môi trường, xử lý dữ liệu, huấn luyện mô hình,... theo đúng thứ tự để BTC có thể reproduce lại được kết quả đã nộp.
- Mã nguồn của các đội cần tuân thủ chặt chẽ định dạng dữ liệu đầu vào và kết quả trả ra để BTC sẽ chạy mã nguồn của các đội, đánh giá chất lượng (dựa trên các tiêu chí tối ưu đề ra) của kết quả đầu ra và xếp hạng.
Tiêu chí đánh giá. F1 Score được sử dụng để đánh giá mô hình. F1 càng cao thì mô hình càng tốt (chi tiết xem tại phần Evaluation)
Quy định. Các đội được phép sử dụng các mô hình pre-trained nhưng phải chỉ rõ cho BTC các mô hình pre-trained mà đội sử dụng.
Các mô hình pre-trained phải là mô hình có số lượng tham số không vượt quá 200,000,000.
Tiêu chí đánh giá
F1 Score được sử dụng để đánh giá mô hình. F1 càng cao thì mô hình càng tốt.
F1 Score được tính theo công thức:
Thể lệ cuộc thi
Điều 1. Mục đích của cuộc thi
- Đẩy mạnh ứng dụng AI vào trong mọi hoạt động, trong mọi lĩnh vực, giúp nâng cao hiệu quả SXKD các đơn vị trong Tập đoàn.
- Tìm kiếm các điển hình tiên tiến trong lĩnh vực CNTT nói chung và AI nói riêng, thúc đẩy tinh thần làm chủ, đột phá, tiên phong dẫn dắt về công nghệ AI và ứng dụng AI trong hoạt động SXKD.
- Duy trì sân chơi công nghệ thu hút số lượng lớn CBNV tham gia, tăng cường trao đổi, hợp tác, chia sẻ kiến thức và kinh nghiệm về ứng dụng AI, cộng hưởng giá trị, nâng cao tinh thần đoàn kết cho CBNV Tập đoàn.
Điều 2. Hình thức thi – đối tượng
- Hình thức: Trực tuyến trên nền tảng AIHUB.ML.
- Đối tượng dự thi: CBNV toàn Tập đoàn, tổ chức theo đội thi với số lượng tối đa 03 người/đội.
Điều 3. Nội dung đề thi, thời gian thi, thể lệ nộp bài và đánh giá kết quả thi
1. Nội dung đề thi
- Đề thi được xây dựng theo 03 tác vụ thuộc ba lĩnh vựckhác nhau:
- Tác vụ 1: Học máy (ML)
- Tác vụ 2: Thị giác máy tính (CV)
- Tác vụ 3: Xử lý ngôn ngữ tự nhiên (NLP)
2. Thời gian thi
- Thời hạn thành lập đội hoặc sáp nhập nhóm: 28/10/2024 – 06/11/2024.
- Vòng thi mở (public test): 28/10/2024 – 18/11/2024.
- Vòng thi đóng (private test): 19/11/2024 - 20/11/2024.
3. Thể lệ nộp bài
- Giai đoạn 1: 2 bài / ngày / đội
- Giai đoạn 2: 5 bài / đội
-
Nội dung bài dự thi sẽ bị vô hiệu nếu toàn bộ hoặc một phần không đọc được, không đầy đủ, bị hư hỏng, bị thay đổi, giả mạo, có được thông qua các phương tiện gian lận hoặc trễ hạn. Ban tổ chức cuộc thi có quyền loại bất kỳ người dự thi nào gửi bài không tuân thủ tất cả các yêu cầu.
4. Đánh giá kết quả
Kết quả thi được đánh giá dựa trên bảng xếp hạng (được chấm tự động) và các tiêu chí của cuộc thi (các đánh giá định lượng thủ công, các đánh giá định tính theo các chỉ số do BTC đưa ra) cùng các xác định về việc tuân thủ quy chế thi của các đội thi.
Điều 4. Điều kiện tham dự và thành lập/sáp nhập nhóm
- Mỗi cá nhân tham gia phải tạo một tài khoản AIHUB.ML để gửi giải pháp cho cuộc thi. Mỗi cá nhân chỉ được cấp phép duy nhất một tài khoản.
- Các cá nhân tham gia được phép thành lập đội với số lượng không quá 03 thành viên. Một cá nhân không thể tham gia vào nhiều hơn một đội. Mỗi thành viên trong đội phải là một cá nhân duy nhất sử dụng một tài khoản AIHUB.ML riêng biệt.
- Việc hợp nhất đội thi được cho phép và có thể được thực hiện bởi trưởng nhóm, với điều kiện tổng số lần nộp bài của đội hợp nhất phải nhỏ hơn hoặc bằng số lần nộp bài tối đa cho phép tại thời điểm hợp nhất (số lần nộp bài tối đa bằng số lần nộp bài mỗi ngày nhân với số ngày cuộc thi đã diễn ra). Yêu cầu hợp nhất đội thi sẽ không được phép sau “Thời hạn sáp nhập nhóm”.
- BTC không cung cấp bất kỳ hỗ trợ nào liên quan đến việc hợp nhất đội thi.
Điều 5. Yêu cầu và điều kiện đảm bảo đối với các cá nhân và đội tham gia thi
1. Yêu cầu và điều kiện đảm bảo chung
- Mỗi cá nhân chỉ được nộp bài từ một tài khoản AIHUB.ML duy nhất.
- Bằng cách gửi kết quả cho cuộc thi, các cá nhân tham gia đồng thuận việc công khai điểm số của mình tại các sự kiện liên quan của cuộc thi và trong các giấy tờ, thủ tục liên quan, theo quyết định của BTC.
- Các cá nhân tham gia đảm bảo không có các hành vi gian lận, lừa dối hoặc các hành vi tham dự không công bằng khác trong cuộc thi.
- Các cá nhân tham gia đảm bảo tuân thủ các luật và quy định hiện hành, trong đó bao gồm nhưng không giới hạn về quyền sở hữu trí tuệ của bên thứ ba đối với chương trình do cá nhân phát triển trong quá trình diễn ra cuộc thi; luật và quy định hiện hành liên quan đến quyền riêng tư và bảo vệ dữ liệu.
- Các cá nhân tham gia phải cung cấp mã nguồn của các bài dự thi cũng như các dữ liệu được tạo ra khi có yêu cầu của BTC, cho phép BTC sử dụng với bất kỳ mục đích nào mà không cần phê duyệt thêm.
2. Yêu cầu liên quan Dữ liệu
Bằng cách tải xuống hoặc truy cập dữ liệu do BTC cuộc thi cung cấp theo bất kỳ cách nào, người thi đồng ý với các điều khoản sau:
- Người thi không được sử dụng dữ liệu khác ngoài các tập dữ liệu được cho phép bởi Ban tổ chức. Chi tiết về các tập dữ liệu được phép sử dụng sẽ được quy định cụ thể trong thuyết minh của từng Bảng. .
- Người thi không phân phối dữ liệu ngoại trừ mục đích phi thương mại và nghiên cứu học thuật.
- Người thi không phân phối, sao chép, tái sản xuất, tiết lộ, chuyển nhượng, cấp phép phụ, nhúng, lưu trữ, chuyển nhượng, bán, giao dịch hoặc bán lại bất kỳ phần nào của dữ liệu do BTC cuộc thi cung cấp cho bất kỳ bên thứ ba nào vì bất kỳ mục đích nào.
- Người thi không được phép sử dụng dữ liệu để giám sát, phân tích hoặc nghiên cứu nhằm cô lập một nhóm cá nhân hoặc bất kỳ cá nhân đơn lẻ nào vì bất kỳ mục đích bất hợp pháp hoặc phân biệt đối xử nào.
- Người thi hoàn toàn chịu trách nhiệm về việc sử dụng dữ liệu của mình, đồng thời chịu trách nhiệm bảo vệ và bồi thường cho BTC cuộc thi, chống lại bất kỳ khiếu nại phát sinh nào từ việc sử dụng dữ liệu của người thi.
Điều 6. Xử lý các trường hợp vi phạm
Đội thi có thành viên vi phạm các nội dung đã nêu trong Điều 5 sẽ bị xử phạt như sau:
- Gửi thông báo về hành vi của CBNV vi phạm về cho đơn vị chủ quản, yêu cầu đơn vị xem xét về việc hạ bậc KI Quý và năm của cá nhân.
- Trừ điểm thi đua lĩnh vực Công nghệ thông tin của đơn vị.
- Hủy bỏ kết quả thi.
Định dạng của dữ liệu
Đội thi cần xuất kết ra file .txt. Tên file là predictions.txt
Mỗi dòng của tệp kết quả .txt sẽ biểu diễn cho một đoạn văn bản và nhãn ứng với văn bản đó. Định dạng như sau:
'3275 1193 3271 411 3271 79 817 302 3292 14 ' 1
'238 3283 2151 425 1328 373 ' 2
...
Ý nghĩa:
- Đoạn văn bản '3275 1193 3271 411 3271 79 817 302 3292 14 ' có nhãn 1
- Đoạn văn bản '238 3283 2151 425 1328 373 ' có nhãn 2
Lưu ý: Nén file kết quả predictions.txt vào file .zip (Ví dụ: prediction.zip) và nộp lên hệ thống. Các file kết quả trong file .zip không được nằm trong thư mục cha nào.