在过去的几周里,我一直在尝试开发一种在我的应用程序中合成类似人类的鼠标移动的方法。起初,我使用了简单的方法,如多项式和样条插值,然而即使加入了一些噪声,结果仍然不够像人类的移动。
为了解决这个问题,我一直在研究如何将机器学习算法应用于真实的人类鼠标移动生物特征,以通过学习记录的真实人类移动来合成鼠标移动。用户将编译一个记录的移动档案,用于训练程序以进行合成目的。
我已经搜索了几周,并阅读了几篇关于应用逆向生物特征生成鼠标动态的文章,例如Inverse Biometrics for Mouse Dynamics;然而,它们往往专注于从随机生成的动态中生成现实的时间,而我希望能从特定的A到B生成路径。此外,我仍然需要实际生成一条路径,而不仅仅是测量一个动态。
有没有人能给一些建议帮助一个新手?
目前,测试是通过记录移动并由我和其他几位开发者观看回放来进行的。理想情况下,移动应该能够欺骗自动生物特征分类器,以及一个真实的、活生生的、会呼吸的智人。
回答:
首先,我猜你会记录从A到B的人类鼠标移动。因为否则,尝试为这种移动合成模型对我来说似乎是不可能的。
其次,如何测量偏离“直接”路径的偏差,也许与时间有关。我实际上怀疑不同角度、路径长度等的移动看起来不同,但也许你可以先尝试一个标准化的模型,你可以根据需要拉伸(在空间和时间上)和旋转它。
第三,学习。最简单的方法是只拥有一系列真实的移动(如上所述的形式),并从该集合中抽样。评估这看起来如何。如果你真的想要一个概率模型,那么你必须评估适合什么样的模型。仅仅用从训练集中学习的参数模糊直接路径的高斯噪声就足够了吗?还是一些(正弦)波状的偏差?还是为“接近按钮”和“最终校正”分开建模。菲茨定律可能对评估有用。