Vì chỉ có một câu trả lời và thời hạn tiền thưởng sắp đến, tôi nghĩ tôi nên thêm câu trả lời cơ sở để tiền thưởng không được tự động trao cho câu trả lời không vượt quá những gì trong câu hỏi.
Bước đầu tiên rõ ràng là sử dụng bộ tweet gốc của bạn và theo tất cả các liên kết in_reply_to_status_id
để tạo nhiều biểu đồ tuần hoàn theo hướng. Những mối quan hệ này bạn có thể chắc chắn gần 100%. (Bạn nên theo các liên kết ngay cả thông qua các tweet không có trong tập hợp ban đầu, thêm các liên kết đó vào tập hợp các cập nhật trạng thái mà bạn đang xem xét.)
Ngoài bước dễ dàng đó, người ta phải làm việc với " đề cập đến ". Không giống như trong luồng email, không có gì hữu ích như dòng tiêu đề mà một người có thể khớp - đây là chắc chắn là sẽ rất dễ xảy ra lỗi. Cách tiếp cận tôi sẽ thực hiện là tạo một vector đặc trưng cho mọi mối quan hệ có thể có giữa các ID trạng thái có thể được biểu diễn bằng các đề cập trong tweet đó và sau đó đào tạo một trình phân loại để đoán tùy chọn tốt nhất, bao gồm tùy chọn "không trả lời".
Để tìm ra "mọi mối quan hệ có thể có" bit, hãy bắt đầu bằng cách xem xét mọi cập nhật trạng thái đề cập đến một hoặc nhiều người dùng khác và không chứa in_reply_to_status_id
. Giả sử một ví dụ về một trong những tweet là:
@a @b no it isn't lol RT @c Yes, absolutely. /cc @stephenfry
... bạn sẽ tạo ra một vector đặc trưng cho mối quan hệ giữa bản cập nhật này và tất cả các bản cập nhật với một ngày trước đó trong các thời hạn của @a
, @b
, @c
và @stephenfry
cho tuần cuối cùng (giả sử) và một giữa bản cập nhật đó và bản cập nhật "không trả lời" đặc biệt. Sau đó, bạn phải tạo một vector đặc trưng - bạn có thể thêm vào bất kỳ điều gì bạn muốn, nhưng ít nhất tôi cũng khuyên bạn nên thêm:
- Thời gian trôi qua giữa hai bản cập nhật - có lẽ là câu trả lời có nhiều khả năng cập nhật gần đây.
- Tỷ lệ thông qua tweet về các từ mà đề cập đến xảy ra. ví dụ. nếu đây là từ đầu tiên, đây sẽ là điểm 0 và đó có thể là khả năng biểu thị câu trả lời nhiều hơn đề cập sau trong bản cập nhật.
- Số lượng người theo dõi của người dùng được đề cập - những người nổi tiếng có lẽ có nhiều khả năng được đề cập đến spam hơn.
- Độ dài của chuỗi con chung dài nhất giữa các bản cập nhật, có thể cho biết trích dẫn trực tiếp.
- Được đề cập trước bởi "/ cc" hoặc các ký hiệu khác cho biết rằng đây không phải là câu trả lời trực tiếp cho người đó?
- Tỷ lệ
following/followed
cho tác giả của bản cập nhật gốc.
- , vv
- , vv
Càng những ai có thể đưa ra tốt hơn, kể từ khi phân loại sẽ chỉ sử dụng những người mà bật ra có ích. Tôi khuyên bạn nên thử một trình phân loại random forest, được triển khai thuận tiện trong Weka.
Tiếp theo cần tập huấn luyện. Điều này có thể là nhỏ lúc đầu - chỉ đủ để có được một dịch vụ xác định các cuộc hội thoại lên và chạy. Với dịch vụ cơ bản này, người dùng sẽ phải thêm một giao diện đẹp để sửa các bản cập nhật không khớp hoặc được liên kết sai, để người dùng có thể sửa chúng. Sử dụng dữ liệu này người ta có thể xây dựng một tập huấn luyện lớn hơn và một trình phân loại chính xác hơn.
... mà có thể là điển hình về mức độ bài giảng trên Twitter;)
Một RT không phải là một câu trả lời, đó là một "retweet". Nó chỉ có nghĩa là bạn đang lặp lại những gì người khác nói, theo sau là một ghi công. –
Theo kinh nghiệm của tôi, nó được sử dụng cho cả hai. Mọi người thường sử dụng định dạng " RT <@name>" cho câu trả lời của họ. –
user85509