ABSTRACT
There are numerous studies have reported the effectiveness of example-based programming learning. However, less is explored recommending code examples with advanced Machine Learning-based models. In this work, we propose a new method to explore the semantic analytics between programming codes and the annotations. We hypothesize that these semantics analytics will capture mass amount of valuable information that can be used as features to build predictive models. We evaluated the proposed semantic analytics extraction method with multiple deep learning algorithms. Results showed that deep learning models outperformed other models and baseline in most cases. Further analysis indicated that in special cases, the proposed method outperformed deep learning models by restricting false-positive classifications.
- John R Anderson, C Franklin Boyle, Albert T Corbett, and Matthew W Lewis. 1990. Cognitive modeling and intelligent tutoring. Artificial intelligence 42, 1 (1990), 7--49. Google ScholarDigital Library
- Robert K Atkinson, Sharon J Derry, Alexander Renkl, and Donald Wortham. 2000. Learning from examples: Instructional principles from the worked examples research. Review of educational research 70, 2 (2000), 181--214.Google Scholar
- Cory J Butz, Shan Hua, and R Brien Maguire. 2004. A web-based intelligent tutoring system for computer programming. In Proceedings of the 2004 IEEE/WIC/ACM international conference on web intelligence. IEEE Computer Society, 159--165. Google ScholarDigital Library
- Anna Corazza, Valerio Maggio, and Giuseppe Scanniello. 2015. On the coherence between comments and implementations in source code. In Software Engineering and Advanced Applications (SEAA), 2015 41st Euromicro Conference on. IEEE, 76--83. Google ScholarDigital Library
- Starr Roxanne Hiltz and Barry Wellman. 1997. Asynchronous learning networks as a virtual classroom. Commun. ACM 40, 9 (1997), 44--49. Google ScholarDigital Library
- Matthew J Howard, Samir Gupta, Lori Pollock, and K Vijay-Shanker. 2013. Automatically mining software-based, semantically-similar words from comment-code mappings. In Proceedings of the 10th Working Conference on Mining Software Repositories. IEEE Press, 377--386. Google ScholarDigital Library
- I-Han Hsiao and Piyush Awasthi. 2015. Topic facet modeling: semantic visual analytics for online discussion forums. In Proceedings of the Fifth International Conference on Learning Analytics And Knowledge. ACM, 231--235. Google ScholarDigital Library
- I-Han Hsiao and Yi-Ling Lin. 2017. Enriching programming content semantics: An evaluation of visual analytics approach. Computers in Human Behavior 72 (2017), 771--782. Google ScholarDigital Library
- Wen Hua, Zhongyuan Wang, Haixun Wang, Kai Zheng, and Xiaofang Zhou. 2017. Understand short texts by harvesting and analyzing semantic knowledge. IEEE transactions on Knowledge and data Engineering 29, 3 (2017), 499--512. Google ScholarDigital Library
- Guolin Ke, Qi Meng, Thomas Finley, Taifeng Wang, Wei Chen, Weidong Ma, Qiwei Ye, and Tie-Yan Liu. 2017. Lightgbm: A highly efficient gradient boosting decision tree. In Advances in Neural Information Processing Systems. 3146--3154. Google ScholarDigital Library
- Päivi Kinnunen and Lauri Malmi. 2006. Why students drop out CS1 course?. In Proceedings of the second international workshop on Computing education research. ACM, 97--108. Google ScholarDigital Library
- Essi Lahtinen, Kirsti Ala-Mutka, and Hannu-Matti Järvinen. 2005. A study of the difficulties of novice programmers. Acm Sigcse Bulletin 37, 3 (2005), 14--18. Google ScholarDigital Library
- Yihan Lu and I-Han Hsiao. 2017. Personalized Information Seeking Assistant (PiSA): from programming information seeking to learning. Information Retrieval Journal 20, 5 (2017), 433--455. Google ScholarDigital Library
- Yihan Lu and I-Han Hsiao. 2018. Modeling Semantics between Programming Codes and Annotations. In Proceedings of the 29th on Hypertext and Social Media. ACM, 101--105. Google ScholarDigital Library
- Sze Yee Lye and Joyce Hwee Ling Koh. 2014. Review on teaching and learning of computational thinking through programming: What is next for K-12? Computers in Human Behavior 41 (2014), 51--61. Google ScholarDigital Library
- Valerio Maggio. 2015. Comments and Implementations---A Public Benchmark. (2015). http://www2.unibas.it/gscanniello/coherenceGoogle Scholar
- Chris Piech, Mehran Sahami, Daphne Koller, Steve Cooper, and Paulo Blikstein. 2012. Modeling how students learn to program. In Proceedings of the 43rd ACM technical symposium on Computer Science Education. ACM, 153--160. Google ScholarDigital Library
- Jan L Plass, Roxana Moreno, and Roland Brünken. 2010. Cognitive load theory. Cambridge University Press.Google Scholar
- Shashank Singh. 2017. CodeReco-A Semantic Java Method Recommender. Ph.D. Dissertation. Arizona State University.Google Scholar
- Lin Tan, Yuanyuan Zhou, and Yoann Padioleau. 2011. aComment: mining annotations from comments and code to detect interrupt related concurrency bugs. In Software Engineering (ICSE), 2011 33rd International Conference on. IEEE, 11--20. Google ScholarDigital Library
Recommendations
Big data analytics deep learning techniques and applications: A survey
Highlights- This paper provides an in-depth review of the latest deep learning methods for use in big data analytics.
- Explain the importance of deep learning, its taxonomy, and big data analytics techniques.
- Explores deep learning approaches ...
AbstractDeep learning (DL), as one of the most active machine learning research fields, has achieved great success in numerous scientific and technological disciplines, including speech recognition, image classification, language processing, big data ...
Deep learning, reinforcement learning, and world models
AbstractDeep learning (DL) and reinforcement learning (RL) methods seem to be a part of indispensable factors to achieve human-level or super-human AI systems. On the other hand, both DL and RL have strong connections with our brain functions ...
Novel Scalable Deep Learning Approaches for Big Data Analytics Applied to ECG Processing
Big data analytics and deep learning are nowadays two of the most active research areas in computer science. As the data is becoming bigger and bigger, deep learning has a very important role to play in data analytics, and big data technologies will ...
Comments