6

我正在一個項目上工作,我有一個用戶的關鍵筆劃時間數據的子集。這意味着用戶進行n次嘗試,我將在各種分類算法中使用這些記錄的嘗試時間數據,以便將來用戶嘗試驗證登錄過程是由用戶還是其他人完成的。 (只要我可以說,這是生物測定)爲分類問題生成假數據的最佳方法是什麼?

我有用戶登錄嘗試過程的3周不同時間着,當然這是無限數據的子集。

直到現在它是一個簡單的分類問題,我決定使用WEKA,但據我瞭解,我必須創建一些假數據來支持分類算法。用戶測得的嘗試次數爲1,假數據將爲0

我可以使用一些優化算法嗎?或者有什麼辦法來創建這個假數據來獲得最小的誤報?

謝謝

回答

5

有幾種不同的方法可以解決這個問題。

收集否定示例 - 一個簡單的解決方案是收集其他人的擊鍵計時數據,這些數據可能被用作反面示例。如果你想收集很大的樣本非常便宜,如約1000樣本約10美元,你可以使用像Amazon Mechanical Turk服務。

也就是說,你可以放在一起具有人樣序列的隨機密碼,輸入一個人的智力任務(HIT)。要獲取計時信息,您需要使用External Question,因爲常規問題的受限HTML不支持JavaScript。

使用生成模型 - 或者,您可以爲用戶的擊鍵行爲訓練生成概率模型。例如,您可以訓練一個Gaussian mixture model (GMM)到用戶在擊鍵之間的延遲。

這樣的模型給你的擊鍵定時信息的概率估計由特定用戶產生。然後,您只需設置時間信息應該有多大的可能性以便用戶進行身份驗證。

使用單類支持向量機 - 最後,1-class SVMs允許您僅使用正例對類支持向量機進行訓練。 To learn one-class SVMs in WEKA,如果您使用的是v3.6,請使用LibSVM封裝器。如果您使用的是最新的開發版本,則有weka.classifiers.meta.OneClassClassifier

+0

感謝您的回答Daniel.After我明白你的觀點後,我會在這裏發帖尋求幫助。 – berkay 2010-04-10 17:20:25

+0

當然,讓我知道是否有什麼應該詳細闡述。如果您確實找到了這個答案或其他方面的信息,那麼一定要對它們進行投票並選擇一個作爲問題的接受答案。 – dmcer 2010-04-11 00:35:49

相關問題