6

Tôi đang làm việc trên một dự án và tôi có một tập con dữ liệu thời gian đột quỵ của người dùng. Điều này có nghĩa là người dùng thực hiện n lần thử và tôi sẽ sử dụng dữ liệu thời gian cố gắng đã ghi trong các loại thuật toán phân loại khác nhau xác minh rằng quá trình đăng nhập được thực hiện bởi người dùng hoặc một người khác. (Đơn giản là tôi có thể nói rằng đây là sinh trắc học)cách tốt nhất để tạo dữ liệu giả cho vấn đề phân loại là gì?

Tôi có 3 lần khác nhau của quá trình đăng nhập người dùng đăng nhập, ofcourse đây là tập con của dữ liệu vô hạn.

cho đến bây giờ nó là một vấn đề phân loại dễ dàng, tôi quyết định sử dụng WEKA nhưng theo như tôi hiểu tôi phải tạo một số dữ liệu giả để nuôi thuật toán phân loại.Kết quả đo của người dùng sẽ là 1 và dữ liệu giả sẽ là 0 .

tôi có thể sử dụng một số thuật toán tối ưu hóa không? hoặc là có cách nào để tạo ra dữ liệu giả này để có được tối thiểu dương tính giả?

Cảm ơn

Trả lời

5

Có một vài cách khác nhau để bạn có thể tiếp cận việc này.

Thu thập các ví dụ tiêu cực - Một giải pháp dễ dàng là chỉ thu thập dữ liệu thời gian gõ phím từ những người khác có thể được sử dụng làm ví dụ tiêu cực. Nếu bạn muốn thu thập một mẫu lớn rất rẻ, như trong khoảng 1000 mẫu với giá khoảng 10 đô la, bạn có thể sử dụng một dịch vụ như Amazon Mechanical Turk.

Tức là, bạn có thể đặt cùng một nhiệm vụ tình báo con người (HIT) để mọi người nhập mật khẩu ngẫu nhiên như chuỗi. Để có được thông tin về thời gian bạn cần sử dụng External Question, vì HTML bị hạn chế cho các câu hỏi thông thường không hỗ trợ JavaScript.

Sử dụng mô hình sinh sản - Ngoài ra, bạn có thể đào tạo mô hình xác suất sinh ra cho hành vi gõ phím của người dùng. Ví dụ: bạn có thể đào tạo một Gaussian mixture model (GMM) đến sự chậm trễ của người dùng giữa các lần nhấn phím.

Mô hình như vậy sẽ cung cấp cho bạn ước tính xác suất thông tin thời gian gõ phím được tạo bởi một người dùng cụ thể. Sau đó, bạn chỉ cần thiết lập ngưỡng có khả năng thông tin thời gian phải được xác thực để người dùng được xác thực.

Sử dụng SVM 1 lớp - Cuối cùng, 1-class SVMs cho phép bạn huấn luyện SVM như trình phân loại chỉ sử dụng các ví dụ tích cực. To learn one-class SVMs in WEKA, sử dụng trình bao bọc LibSVM nếu bạn đang sử dụng v3.6. Nếu bạn đang sử dụng phiên bản dành cho nhà phát triển cạnh chảy máu, có weka.classifiers.meta.OneClassClassifier.

+0

cảm ơn câu trả lời Daniel. Sau khi tôi hiểu được điểm của bạn, tôi sẽ đăng bài ở đây để được trợ giúp. – berkay

+0

Chắc chắn, hãy cho tôi biết nếu có bất cứ điều gì cần được xây dựng. Nếu bạn tìm thấy câu trả lời này hoặc những câu trả lời khác hữu ích hoặc mang tính thông tin, hãy chắc chắn bỏ phiếu cho họ và chọn một câu trả lời cho câu hỏi được chấp nhận. – dmcer

Các vấn đề liên quan