Tôi đang cố gắng sử dụng CNN (mạng nơ ron tích chập) để phân loại tài liệu. CNN cho văn bản ngắn / câu đã được nghiên cứu trong nhiều bài báo. Tuy nhiên, dường như không có bài báo nào sử dụng CNN cho văn bản hoặc tài liệu dài.
Vấn đề của tôi là có quá nhiều tính năng từ một tài liệu. Trong tập dữ liệu của tôi, mỗi tài liệu có hơn 1000 mã thông báo / từ. Để cung cấp từng ví dụ cho CNN, tôi chuyển đổi từng tài liệu thành ma trận bằng cách sử dụng word2vec hoặc găng tay dẫn đến một ma trận lớn. Đối với mỗi ma trận, chiều cao là chiều dài của tài liệu và chiều rộng là kích thước của vectơ nhúng từ. Tập dữ liệu của tôi có hơn 9000 ví dụ và phải mất rất nhiều thời gian để đào tạo mạng (cả tuần), điều này gây khó khăn cho việc tinh chỉnh các tham số.
Một phương pháp trích xuất tính năng khác là sử dụng một vectơ nóng cho mỗi từ, nhưng điều này sẽ tạo ra ma trận rất thưa thớt. Và tất nhiên, phương pháp này thậm chí còn mất nhiều thời gian để đào tạo hơn phương pháp trước đó.
Vì vậy, có một phương pháp tốt hơn để trích xuất các tính năng mà không tạo ra ma trận đầu vào lớn?
Và làm thế nào chúng ta nên xử lý chiều dài thay đổi của tài liệu? Hiện tại, tôi thêm các chuỗi đặc biệt để làm cho tài liệu có cùng độ dài, nhưng tôi không nghĩ đó là một giải pháp tốt.