论文标题

通过机器学习预测开发人员的IDE命令

Predicting Developers' IDE Commands with Machine Learning

论文作者

Bulmer, Tyson, Montgomery, Lloyd, Damian, Daniela

论文摘要

当开发人员编写代码时,他们通常会集中精力,并且有些人称为流程。摆脱这种流程可能会导致开发人员失去自己的思路,并必须从一开始就开始思考过程。这种思想丧失可能是由于中断而有时会引起的IDE相互作用。预测功能已在用户应用程序中利用,以加快加载时间,例如在Google Chrome的浏览器中具有称为“预测网络操作”的功能。这将预订用户最有可能单击的网页页面。这减轻了加载时间可能引入的中断。在本文中,我们试图迈出预测IDE中用户命令的第一步。我们使用3000多个开发人员会议的MSR 2018挑战数据和超过1000万次记录的事件,分析和清洁数据要分解为事件系列,然后可以将其用于训练包括神经网络在内的各种机器学习模型,以预测用户引起的命令。我们最高的性能模型能够获得5个交叉验证预测精度为64%。

When a developer is writing code they are usually focused and in a state-of-mind which some refer to as flow. Breaking out of this flow can cause the developer to lose their train of thought and have to start their thought process from the beginning. This loss of thought can be caused by interruptions and sometimes slow IDE interactions. Predictive functionality has been harnessed in user applications to speed up load times, such as in Google Chrome's browser which has a feature called "Predicting Network Actions". This will pre-load web-pages that the user is most likely to click through. This mitigates the interruption that load times can introduce. In this paper we seek to make the first step towards predicting user commands in the IDE. Using the MSR 2018 Challenge Data of over 3000 developer session and over 10 million recorded events, we analyze and cleanse the data to be parsed into event series, which can then be used to train a variety of machine learning models, including a neural network, to predict user induced commands. Our highest performing model is able to obtain a 5 cross-fold validation prediction accuracy of 64%.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源