Predicting vulnerable software components through deep neural network - Pang, Yulei; Xue, Xiaozhen; Wang, Huaying (ACM, 2017)
Vulnerabilities need to be detected and removed from software. Although previous studies demonstrated the usefulness of employing prediction techniques in deciding about vulnerabilities of software components, the improvement of effectiveness of these prediction techniques is still a grand challenging research question. This paper employed a technique based on a deep neural network with rectifier linear units trained with stochastic gradient descent method and batch normalization, for predicting vulnerable software components. The features are defined as continuous sequences of tokens in source code files. Besides, a statistical feature selection algorithm is then employed to reduce the feature and search space. We evaluated the proposed technique based on some Java Android applications, and the results demonstrated that the proposed technique could predict vulnerable classes, i.e., software components, with high precision, accuracy and recall.
Keywords: Android; Android (operating system); Android applications; Application programs; Communication channels (information theory); Computer software; Continuous sequences; Deep learning; Deep neural networks; Education; Forecasting; Java programming language; Network security; Neural network; Neural networks; Prediction techniques; Research questions; Software component; Statistical features; Stochastic gradient descent method; Stochastic systems; Vulnerability prediction; deep learning; dept.mat; neural network; vulnerability prediction

Diversity and anxiety: A case study on collaborative testing - Pang, Yulei; Mugno, Raymond; Xue, Xiaozhen (Institute of Electrical and Electronics Engineers Inc., 2015)
In order to reduce students' test anxiety, collaborative testing was suggested as an evaluation strategy. However, few studies have focused on testing group construction, especially when an important factor, i.e., group diversity is taken into consideration. In this paper we conducted a case study to assess the association between group diversity and test anxiety in collaborative testing. The results observed may indicate that: 1) around 20% of students suffered from test anxiety to some extent in either an individual test or a collaborative test; 2) collaborative testing could alleviate test anxiety, whereas the effect is not statistically significant; 3) there exists a moderate positive correlation between group diversity and test anxiety in collaborative testing. The results of the study may suggest limiting group diversity in collaborative testing in order to alleviate test anxiety. © 2015 IEEE.
Keywords: Collaborative testing; Evaluation strategies; Group diversity; Positive correlations; Students; Testing; collaborative testing; dept.mat; group diversity; test anxiety

Fault localizations through feature selections - Pang, Yulei; Xue, Xiaozhen; Namin, Akbar Siami (International Journal of Software Engineering and Knowledge Engineering, 2017)
We introduce a novel application of feature ranking methods to the fault localization problem. We envision the problem of localizing causes of failures as instances of ranking program's elements where elements are conceptualized as features. In this paper, we define features as program's statements. However, in its fine-grained definition, the idea of program's features can refer to any traits of programs. This paper proposes feature ranking-based algorithms. The algorithms analyze execution traces of both passing and failing test cases, and extract the bug signatures from the failing test cases. The proposed procedure extracts possible combinations of program's elements when executed together from bug signatures. The feature ranking-based algorithms then order statements according to the suspiciousness of the combinations. When viewed as sequences, the combination of program's elements produced and traced in bug signatures can be utilized to reason about the common longest subsequence. The common longest subsequence of bug signatures represents the common statements executed by all failing test cases and thus provides a means for identifying statements that contain possible faults. Our evaluation indicates that the proposed feature-based fault localization outperforms existing fault localization ranking schemes. © 2017 World Scientific Publishing Company.
Keywords: Artificial intelligence; Computer debugging; Execution trace; Fault localization; Feature ranking; Feature-based; Fine grained; Learning systems; Novel applications; Software engineering; Test case; debugging; dept.mat; feature ranking methods; machine learning

Predicting vulnerable software components through n-gram analysis and statistical feature selection - Pang, Yulei; Xue, Xiaozhen; Namin, Akbar Siami (Institute of Electrical and Electronics Engineers Inc., 2015)
Vulnerabilities need to be detected and removed from software. Although previous studies demonstrated the usefulness of employing prediction techniques in deciding about vulnerabilities of software components, the accuracy and improvement of effectiveness of these prediction techniques is still a grand challenging research question. This paper proposes a hybrid technique based on combining N-gram analysis and feature selection algorithms for predicting vulnerable software components where features are defined as continuous sequences of token in source code files, i.e., Java class file. Machine learning-based feature selection algorithms are then employed to reduce the feature and search space. We evaluated the proposed technique based on some Java Android applications, and the results demonstrated that the proposed technique could predict vulnerable classes, i.e., software components, with high precision, accuracy and recall. © 2015 IEEE.
Keywords: Android applications; Application programs; Artificial intelligence; Computer software; Continuous sequences; Feature extraction; Feature selection; Feature selection algorithm; Forecasting; Java programming language; Learning systems; N-gram; N-grams; Prediction techniques; Research questions; Statistical features; Vulnerability prediction; Wilcoxon test; dept.mat

Feature selections for effectively localizing faulty events in GUI applications - Xue, Xiaozhen; Pang, Yulei; Namin, Akbar Siami (Institute of Electrical and Electronics Engineers Inc., 2014)
Due to the complex causality of failure and the special characteristics of test cases, the faults in GUI (Graphic User Interface) applications are difficult to localize. This paper adapts feature selection algorithms to localize GUI-related faults in a given program. Features are defined as the subsequences of events executed. By employing statistical feature ranking techniques, the events can be ranked by the suspiciousness of events being responsible to exhibit faulty behavior. The features defined in a given source code implementing (event handle) the underlying event are then ranked in suspiciousness order. The evaluation of the proposed technique based on some open source Java projects verified the effectiveness of this feature selection based fault localization technique for GUI applications. © 2014 IEEE.
Keywords: Artificial intelligence; Fault localization; Feature extraction; Feature selection algorithm; GUI; GUI applications; Graphic user interface; Graphical user interfaces; Java programming language; Learning systems; Open source software; Open sources; Source codes; Statistical features; Test case; User interfaces; dept.mat; faults localization; feature selection

Early identification of vulnerable software components via ensemble learning - Pang, Yulei; Xue, Xiaozhen; Namin, Akbar Siami (Institute of Electrical and Electronics Engineers Inc., 2016)
Software components, which are vulnerable to being exploited, need to be identified and patched. Employing any prevention techniques designed for the purpose of detecting vulnerable software components in early stages can reduce the expenses associated with the software testing process significantly and thus help building a more reliable and robust software system. Although previous studies have demonstrated the effectiveness of adapting prediction techniques in vulnerability detection, the feasibility of those techniques is limited mainly because of insufficient training data sets. This paper proposes a prediction technique targeting at early identification of potentially vulnerable software components. In the proposed scheme, the potentially vulnerable components are viewed as mislabeled data that may contain true but not yet observed vulnerabilities. The proposed hybrid technique combines the supports vector machine algorithm and ensemble learning strategy to better identify potential vulnerable components. The proposed vulnerability detection scheme is evaluated using some Java Android applications. The results demonstrated that the proposed hybrid technique could identify potentially vulnerable classes with high precision and relatively acceptable accuracy and recall.
Keywords: Android applications; Artificial intelligence; Ensemble learning; Learning systems; Machine components; Mislabeled data; Prediction techniques; Prevention techniques; Software component; Software testing; Support vector machine; Support vector machines; Vulnerability; Vulnerability detection; dept.mat

Constructing collaborative learning groups with maximum diversity requirements - Pang, Yulei; Mugno, Raymond; Xue, Xiaozhen; Wang, Huaying (Institute of Electrical and Electronics Engineers Inc., 2015)
Due to the considerable advantages of collaborative learning, group work is widely used in tertiary institutions. Previous studies demonstrated that group diversity had positive influence on group work achievement. Therefore, an interesting question that arises is how to achieve maximum group diversity effectively and automatically, especially when the features to be considered are numerous and the number of students is large. In this paper we apply a multi-start algorithm composed by a greedy constructive and strategic oscillation improvement to group students. We evaluated the technique based on a small-scale case study. The results observed indicate that the multi-start algorithm-based grouping model is feasible. It improved the overall and average students diversity within group significantly, and it also enhanced students' collaborative learning outcomes compared to random grouping model. However, we did not find any evidence on monotonic positive relationship between diversity and students' learning outcomes. © 2015 IEEE.
Keywords: Collaborative learning; Education; Engineering education; Group diversity; Grouping model; Learning outcome; Multi-start algorithm; Multistart; Random grouping; Strategic oscillations; Students; Tertiary institutions; dept.mat

A clustering-based grouping model for enhancing collaborative learning - Pang, Yulei; Xiao, Feiya; Wang, Huaying; Xue, Xiaozhen (Institute of Electrical and Electronics Engineers Inc., 2014)
Group work is widely used in tertiary institutions due to the considerable advantages of collaborative learning. Previous studies indicated that the group diversity had positive influence on the group work achievement. Therefore, how to achieve diversity within a group effectively and automatically is an interesting question. In this paper we propose a novel clustering-based grouping model. The proposed technique first employs balanced K-means algorithm to divide the students into several size-balanced clusters, such that the students within the same cluster are more similar (in some sense) to each other than to those in other clusters, then adopts one-sample-each-cluster strategy to construct the groups. We evaluated the proposed technique based on two small-scale case studies. The result observed may indicate that the clustering-based grouping model is feasible and effective. © 2014 IEEE.
Keywords: Artificial intelligence; Case-studies; Collaborative learning; Group diversity; Grouping model; K-means; Learning systems; Novel clustering; Tertiary institutions; balanced K-means; collaborative learning; dept.mat; group diversity; k-Means algorithm

A predator–prey interaction from micro to macro perspectives - Wang, Huaying; Pang, Yulei; Zhang, Luona; Martin, Clyde F (Nonlinear Dynamics, 2015)
This paper deals with predator–prey dynamics in individual and population perspectives. First, we build a discrete Markov model on predator–prey interactions in individual perspective. By shortening the time gap, from discrete time to continuous time, and increasing the number of individuals to infinity, a continuity equation on the predator–prey interactions is derived in a large population regime. Then, with the leading items of the continuity equation, that is the mean-field equation, following the approximate model, which entails qualitative analysis, we can obtain an asymptotically stable closed orbit or simply put, the parameter conditions where equilibrium point exists. These qualitative conclusions are the performance of individual microscopic interactions on macro-level groups, or can be treated as one component of microscopic models of various random statistical average results.This paper explored the accuracy and operability of the model constructed on individual level, which differs from traditional method, constructing population model directly via differential equations and difference equations. Therefore, by operating variables and data from individual behavior, it is probable for us to construct more accurate models for population dynamic. © 2014, Springer Science+Business Media Dordrecht (outside the USA).
Keywords: Asymptotically stable; Continuity equation; Continuity equations; Continuous time systems; Difference equations; Differential equations; Discrete Markov model; Individual interaction; Macro-level groups; Markov processes; Microscopic interaction; Parameter conditions; Population statistics; Predator prey systems; Qualitative analysis; Stable limit cycle; dept.mat

Predicting students' graduation outcomes through support vector machines - Pang, Yulei; Judd, Nicolas; O'Brien, Joseph; Ben-Avie, Michael (2017 IEEE Frontiers in Education Conference (FIE), 2017)
Low graduation rate is a significant and growing problem in U.S. higher education systems. Although previous studies have demonstrated the usefulness of building statistical models for predicting students' graduation outcomes, advanced machine learning models promise to improve the effectiveness of these models, and hone in on the “difference that makes a difference” not only on the group level, but also on the level of the individual student. In this paper we propose an ensemble support vector machines based model for predicting students' graduation. Up to about 100 features, including a set of psychological-educational factors, were employed to construct the predicting model. We evaluated the proposed model using data taken from a state university's longitudinal, cohort data sets from the incoming classes of students from 2011-2012 (n=350). The experimental results demonstrated the effectiveness of the model, with considerable accuracy, precision, and recall. This paper presents the results of analysis that were conducted in order to gauge the predictive capability of a machine learning algorithm to predict on-time graduation that took into consideration students' learning and development.
Keywords: Artificial intelligence; Education computing; Forecasting; Graduation outcome; Graduation rates; Group level; Higher education; Higher education system; Kernel; Learning algorithms; Learning systems; Machine learning; Machine learning algorithms; Machine learning models; Measurement; Predicting models; Predictive capabilities; Predictive models; Seminars; Students; Support vector machine; Support vector machines; advanced machine learning models; dept.mat; ensemble support vector machines; further education; graduation outcome; higher education; higher education systems; learning (artificial intelligence); low graduation rate; machine learning; on-time graduation; psychological-educational factors; statistical analysis; statistical models; support vector machine; support vector machines

Coverage-based lossy node localization for wireless sensor networks - Bao, Forrest Sheng; Pang, Yulei; Zhou, Wujun; Jiang, Wu; Yang, Yinfei; Liu, Yang; Qian, Chen (IEEE Sensors Journal, 2016)
To ensure the function of wireless sensor networks (WSNs), nodes that fail to forward packets must be localized efficiently and then fixed or replaced promptly. The state-of-the-art work frames lossy node localization in WSNs as an optimal sequential testing problem guided by end-to-end data. It combines both the active and passive measurements to minimize the testing cost and the number of iterations. However, this hybrid approach has many limitations. Inspired by the success of coverage-based software debugging, and the similarity between software debugging and lossy node localization, we propose a coverage-based lossy node detection for WSNs. Supported by established statistic theories, this approach greatly boosts the performance. Experiments on randomly generated networks and deployed networks show that the proposed algorithm can significantly reduce testing cost and number of iterations, which are the two optimization goals of previous work. We expect to use this approach for other diagnostic problems in WSNs. © 2001-2012 IEEE.
Keywords: Chi-square test; Chi-square tests; Diagnostic problem; Lossy node localization; Lossy nodes; Network diagnosis; Number of iterations; Optimal sequential; Passive measurements; Program debugging; Sensor nodes; Statistical tests; Wireless sensor network (WSNs); Wireless sensor networks; dept.mat; network diagnosis; wireless sensor network