A Deep Learning Approach to Identifying Source Code in Images and Video

J. Ott, Abigail Atchison, Paul Harnack, Adrienne Bergh, Erik J. Linstead
{"title":"A Deep Learning Approach to Identifying Source Code in Images and Video","authors":"J. Ott, Abigail Atchison, Paul Harnack, Adrienne Bergh, Erik J. Linstead","doi":"10.1145/3196398.3196402","DOIUrl":null,"url":null,"abstract":"While substantial progress has been made in mining code on an Internet scale, efforts to date have been overwhelmingly focused on data sets where source code is represented natively as text. Large volumes of source code available online and embedded in technical videos have remained largely unexplored, due in part to the complexity of extraction when code is represented with images. Existing approaches to code extraction and indexing in this environment rely heavily on computationally intense optical character recognition. To improve the ease and efficiency of identifying this embedded code, as well as identifying similar code examples, we develop a deep learning solution based on convolutional neural networks and autoencoders. Focusing on Java for proof of concept, our technique is able to identify the presence of typeset and handwritten source code in thousands of video images with 85.6%-98.6% accuracy based on syntactic and contextual features learned through deep architectures. When combined with traditional approaches, this provides a more scalable basis for video indexing that can be incorporated into existing software search and mining tools.","PeriodicalId":6639,"journal":{"name":"2018 IEEE/ACM 15th International Conference on Mining Software Repositories (MSR)","volume":"266 1","pages":"376-386"},"PeriodicalIF":0.0000,"publicationDate":"2018-05-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"46","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2018 IEEE/ACM 15th International Conference on Mining Software Repositories (MSR)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3196398.3196402","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 46

Abstract

While substantial progress has been made in mining code on an Internet scale, efforts to date have been overwhelmingly focused on data sets where source code is represented natively as text. Large volumes of source code available online and embedded in technical videos have remained largely unexplored, due in part to the complexity of extraction when code is represented with images. Existing approaches to code extraction and indexing in this environment rely heavily on computationally intense optical character recognition. To improve the ease and efficiency of identifying this embedded code, as well as identifying similar code examples, we develop a deep learning solution based on convolutional neural networks and autoencoders. Focusing on Java for proof of concept, our technique is able to identify the presence of typeset and handwritten source code in thousands of video images with 85.6%-98.6% accuracy based on syntactic and contextual features learned through deep architectures. When combined with traditional approaches, this provides a more scalable basis for video indexing that can be incorporated into existing software search and mining tools.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
识别图像和视频中源代码的深度学习方法
虽然在互联网规模的代码挖掘方面已经取得了实质性进展,但迄今为止的努力主要集中在源代码以文本形式表示的数据集上。大量可用的在线源代码和嵌入在技术视频中的源代码在很大程度上仍未被开发,部分原因是当代码用图像表示时提取的复杂性。在这种环境中,现有的代码提取和索引方法严重依赖于计算密集型的光学字符识别。为了提高识别这种嵌入式代码以及识别类似代码示例的便利性和效率,我们开发了基于卷积神经网络和自编码器的深度学习解决方案。专注于Java的概念验证,我们的技术能够基于通过深度架构学习的语法和上下文特征,在数千个视频图像中识别排版和手写源代码的存在,准确率为85.6%-98.6%。当与传统方法结合使用时,它为视频索引提供了一个更可扩展的基础,可以将其合并到现有的软件搜索和挖掘工具中。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Detecting and Characterizing Developer Behavior Following Opportunistic Reuse of Code Snippets from the Web The Open-Closed Principle of Modern Machine Learning Frameworks Prevalence of Confusing Code in Software Projects: Atoms of Confusion in the Wild Large-Scale Analysis of the Co-commit Patterns of the Active Developers in GitHub's Top Repositories Structured Information on State and Evolution of Dockerfiles on GitHub
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1