我目前正在制作应用程序的原型,该应用程序应该能够与用户界面进行交互。

现在,每个用户界面都有一些通用元素,例如按钮,滚动条,输入字段等。

我想使用机器学习以某种方式“解释”此类用户界面,以后我可以将用户界面作为图像输入,然后让原型“试用”界面,含义,含义是,使用滚动条将一些文本输入输入字段等。

我知道这必须使用图像识别来完成,因为有许多不同的UI。

我对网站,具有打开的PDF的Adobe读取器特别感兴趣(又可以是一种表格等),并且带有打开文档的单词(同样可以包含表单等)。

现在,我的主要问题是,我可以使用该领域的研究,甚至是该过程的现有工具。

任何帮助都将受到赞赏:)

有帮助吗?

解决方案

我将尝试尝试反复的神经网络: http://karpathy.github.io/2015/05/21/rnn-effectives/. 。复发性神经网络可以输出可变长度的可变长度输入的序列。在您的情况下,当给定一个用户界面时,复发性神经网络可能会输出以下序列:单击按钮,选择字段,输入一些文本,命中输入。对于另一个接口,网络可能只输出:单击一个按钮,单击另一个按钮,仅此而已。这对您很有用,因为从接口到接口的序列和操作长度可能会发生很多变化。

您还可以尝试强化学习并构建具有目标的算法(在尽可能少的动作中达到最终页面)。该算法将从进行随机操作开始(例如单击相同的按钮一系列),然后随着时间的推移逐渐学习以采取适当的操作。如果您走那条路线,您可以像Alpha GO一样使用深度学习和蒙特卡洛树搜索(MCT)。

无论哪种情况,您都需要一个可以快速训练算法的框架,因为您可能必须经过许多迭代。 TensorFlow(https://www.tensorflow.org/)是一个选择(我最近开始使用它,因为它易于使用,我非常喜欢它)。 TensorFlow能够构建复发性神经网和深神经网。

许可以下: CC-BY-SA归因
scroll top