【问题标题】:what is the best way to generate fake data for classification problem?为分类问题生成假数据的最佳方法是什么?
【发布时间】:2011-02-06 09:26:49
【问题描述】:

我正在做一个项目,我有一个用户击键时间数据的子集。这意味着用户进行了 n 次尝试,我将在各种分类算法中使用这些记录的尝试时间数据,以供将来的用户尝试使用验证登录过程是由用户或其他人完成的。 (我只能说这是生物识别技术)

我有 3 次不同的用户登录尝试过程,当然这是无限数据的子集。

直到现在这是一个简单的分类问题,我决定使用 WEKA,但据我了解,我必须创建一些假数据来提供分类算法。用户的测量尝试将为 1,假数据将为 0。

我可以使用一些优化算法吗?或者有什么方法可以创建这些虚假数据来获得最少的误报?

谢谢

【问题讨论】:

    标签: machine-learning classification pattern-recognition biometrics weka


    【解决方案1】:

    有几种不同的方法可以解决这个问题。

    收集负面示例 - 一种简单的解决方案是从其他人那里收集可用作负面示例的击键时间数据。如果您想要非常便宜地收集大量样本,例如大约 10 美元的 1000 个样本,您可以使用Amazon Mechanical Turk 之类的服务。

    也就是说,您可以将人类智能任务 (HIT) 放在一起,让人们输入随机密码,如序列。要获取时间信息,您需要使用External Question,因为常规问题的受限 HTML 不支持 JavaScript。

    使用生成模型 - 或者,您可以针对用户的击键行为训练生成概率模型。例如,您可以训练Gaussian mixture model (GMM) 来了解用户击键之间的延迟。

    这样的模型将为您提供特定用户生成的击键时间信息的概率估计。然后,您只需设置时间信息的可能性阈值,以便用户通过身份验证。

    使用 1 类 SVM - 最后,1-class SVMs 允许您仅使用正例来训练类似 SVM 的分类器。 To learn one-class SVMs in WEKA,如果您使用的是 v3.6,请使用 LibSVM 包装器。如果您使用的是最前沿的开发者版本,则有weka.classifiers.meta.OneClassClassifier

    【讨论】:

    • 感谢Daniel的回答。在我理解你的观点后,我会在这里发帖寻求帮助。
    • 当然可以,如果有什么需要详细说明的,请告诉我。如果您确实发现此答案或其他答案对您有所帮助或提供信息,请务必对其进行投票并选择一个作为该问题的可接受答案。
    猜你喜欢
    • 2020-11-21
    • 2010-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-09
    • 1970-01-01
    • 2012-03-04
    相关资源
    最近更新 更多