Prachi Saraph, Mark Last, and Abraham Kandel. Introduction Black-Box Testing Apply an Input Observe the corresponding output Compare Observed output with.

Slides:



Advertisements
Similar presentations
Slides from: Doug Gray, David Poole
Advertisements

NEURAL NETWORKS Backpropagation Algorithm
Learning in Neural and Belief Networks - Feed Forward Neural Network 2001 년 3 월 28 일 안순길.
DECISION TREES. Decision trees  One possible representation for hypotheses.
Ch. Eick: More on Machine Learning & Neural Networks Different Forms of Learning: –Learning agent receives feedback with respect to its actions (e.g. using.
Neural Networks  A neural network is a network of simulated neurons that can be used to recognize instances of patterns. NNs learn by searching through.
Decision Tree Approach in Data Mining
Introduction to Training and Learning in Neural Networks n CS/PY 399 Lab Presentation # 4 n February 1, 2001 n Mount Union College.
CSCI 347 / CS 4206: Data Mining Module 07: Implementations Topic 03: Linear Models.
Machine Learning Neural Networks
Simple Neural Nets For Pattern Classification
Pattern Classification All materials in these slides were taken from Pattern Classification (2nd ed) by R. O. Duda, P. E. Hart and D. G. Stork, John Wiley.
Neural Networks Basic concepts ArchitectureOperation.
1 Application of Metamorphic Testing to Supervised Classifiers Xiaoyuan Xie, Tsong Yueh Chen Swinburne University of Technology Christian Murphy, Gail.
1 Learning to Detect Objects in Images via a Sparse, Part-Based Representation S. Agarwal, A. Awan and D. Roth IEEE Transactions on Pattern Analysis and.
Chapter 5 NEURAL NETWORKS
Three kinds of learning
Rewiring – Review, Quantitative Analysis and Applications Matthew Tang Wai Chung CUHK CSE MPhil 10/11/2003.
Chapter 6: Multilayer Neural Networks
Parameterizing Random Test Data According to Equivalence Classes Chris Murphy, Gail Kaiser, Marta Arias Columbia University.
October 14, 2010Neural Networks Lecture 12: Backpropagation Examples 1 Example I: Predicting the Weather We decide (or experimentally determine) to use.
Hazırlayan NEURAL NETWORKS Radial Basis Function Networks I PROF. DR. YUSUF OYSAL.
CSCI 347 / CS 4206: Data Mining Module 04: Algorithms Topic 06: Regression.
Radial Basis Function Networks
Face Recognition Using Neural Networks Presented By: Hadis Mohseni Leila Taghavi Atefeh Mirsafian.
Attention Deficit Hyperactivity Disorder (ADHD) Student Classification Using Genetic Algorithm and Artificial Neural Network S. Yenaeng 1, S. Saelee 2.
Presented by: Kamakhaya Argulewar Guided by: Prof. Shweta V. Jain
Class Specification Implementation Graph By: Njume Njinimbam Chi-Chang Sun.
Biointelligence Laboratory, Seoul National University
A Shaft Sensorless Control for PMSM Using Direct Neural Network Adaptive Observer Authors: Guo Qingding Luo Ruifu Wang Limei IEEE IECON 22 nd International.
Cascade Correlation Architecture and Learning Algorithm for Neural Networks.
Multimedia Network Security Lab. On STUT Adaptive Weighting Color Palette Image Speaker:Jiin-Chiou Cheng Date:99/12/16.
Chapter 9 Neural Network.
11 CSE 4705 Artificial Intelligence Jinbo Bi Department of Computer Science & Engineering
Introduction to Artificial Neural Network Models Angshuman Saha Image Source: ww.physiol.ucl.ac.uk/fedwards/ ca1%20neuron.jpg.
Pattern Classification All materials in these slides were taken from Pattern Classification (2nd ed) by R. O. Duda, P. E. Hart and D. G. Stork, John Wiley.
NEURAL NETWORKS FOR DATA MINING
Chapter 7 Neural Networks in Data Mining Automatic Model Building (Machine Learning) Artificial Intelligence.
COMPARISON OF IMAGE ANALYSIS FOR THAI HANDWRITTEN CHARACTER RECOGNITION Olarik Surinta, chatklaw Jareanpon Department of Management Information System.
Data Mining Practical Machine Learning Tools and Techniques Chapter 4: Algorithms: The Basic Methods Section 4.6: Linear Models Rodney Nielsen Many of.
Gap filling of eddy fluxes with artificial neural networks
Dünaamiliste süsteemide modelleerimine Identification for control in a non- linear system world Eduard Petlenkov, Automaatikainstituut, 2013.
ANFIS (Adaptive Network Fuzzy Inference system)
A Simulated-annealing-based Approach for Simultaneous Parameter Optimization and Feature Selection of Back-Propagation Networks (BPN) Shih-Wei Lin, Tsung-Yuan.
Intro. ANN & Fuzzy Systems Lecture 14. MLP (VI): Model Selection.
Neural Network Basics Anns are analytical systems that address problems whose solutions have not been explicitly formulated Structure in which multiple.
1 Lecture 6 Neural Network Training. 2 Neural Network Training Network training is basic to establishing the functional relationship between the inputs.
Introduction to Neural Networks Introduction to Neural Networks Applied to OCR and Speech Recognition An actual neuron A crude model of a neuron Computational.
Today’s Topics Read: Chapters 7, 8, and 9 on Logical Representation and Reasoning HW3 due at 11:55pm THURS (ditto for your Nannon Tourney Entry) Recipe.
Neural Networks Teacher: Elena Marchiori R4.47 Assistant: Kees Jong S2.22
Image Source: ww.physiol.ucl.ac.uk/fedwards/ ca1%20neuron.jpg
Improving Support Vector Machine through Parameter Optimized Rujiang Bai, Junhua Liao Shandong University of Technology Library Zibo , China { brj,
Chapter 8: Adaptive Networks
Hazırlayan NEURAL NETWORKS Backpropagation Network PROF. DR. YUSUF OYSAL.
Neural Networks Vladimir Pleskonjić 3188/ /20 Vladimir Pleskonjić General Feedforward neural networks Inputs are numeric features Outputs are in.
Learning Photographic Global Tonal Adjustment with a Database of Input / Output Image Pairs.
Example Apply hierarchical clustering with d min to below data where c=3. Nearest neighbor clustering d min d max will form elongated clusters!
Essential components of the implementation are:  Formation of the network and weight initialization routine  Pixel analysis of images for symbol detection.
Kim HS Introduction considering that the amount of MRI data to analyze in present-day clinical trials is often on the order of hundreds or.
Supervised Learning – Network is presented with the input and the desired output. – Uses a set of inputs for which the desired outputs results / classes.
Chapter 11 – Neural Nets © Galit Shmueli and Peter Bruce 2010 Data Mining for Business Intelligence Shmueli, Patel & Bruce.
An Evolutionary Algorithm for Neural Network Learning using Direct Encoding Paul Batchis Department of Computer Science Rutgers University.
Data Mining: Concepts and Techniques1 Prediction Prediction vs. classification Classification predicts categorical class label Prediction predicts continuous-valued.
Introduction to Software Testing (2nd edition) Chapter 5 Criteria-Based Test Design Paul Ammann & Jeff Offutt
A Document-Level Sentiment Analysis Approach Using Artificial Neural Network and Sentiment Lexicons Yan Zhu.
Machine Learning Supervised Learning Classification and Regression
Discriminative Frequent Pattern Analysis for Effective Classification
Structure of a typical back-propagated multilayered perceptron used in this study. Structure of a typical back-propagated multilayered perceptron used.
Machine Learning.
Presentation transcript:

Prachi Saraph, Mark Last, and Abraham Kandel

Introduction Black-Box Testing Apply an Input Observe the corresponding output Compare Observed output with expected Large Number of Inputs  Huge number of Test Cases

Introduction Choose most important test cases and removing the redundant ones How? Manual Automatic

Input-Output Analysis Identifies the input attributes which affect the value of a particular output Concentrates on relationships between inputs and outputs

Machine Learning Approaches NN-based mechanism for identification of test cases that are likely to find faults C. Anderson et al., 1995 NN is used to detect faults in mutated versions of software (Regression Testing) M. Vanmali, 2002 IFN is used to identify I-O relationships M. Last et al., 2003

Neural Networks – Background Supervised Learning Learn weights on each edge (Synapse) to get a general model of mapping between inputs and outputs based on training data

Neural Network based Testing NN Construction and Training Pruning and Feature Ranking Rule Extraction Test Case Generation

Phase I : NN Construction and Training 3-Layer Feed Forward Network using EBP Obtaining Training Set: Randomize input values Feed them into the original software Storing output generated NN Construction and Training

Phase II (a) : NN Pruning Less important connections  Lower Weights Pruning: Remove edges with lower weights as long as the predictive accuracy after removing a link stays within the acceptable limits Pruning and Feature Ranking

Phase II (b) : Feature Ranking Method 1 (Sorting): Sort inputs according to the product {weights from input layer to hidden layer * Corresponding weights from hidden layer to output layer} Method 2 (Pruning): Apply pruning method until all edges are removed Note the order in which input nodes get all their nodes removed Pruning and Feature Ranking

Phase III : Rule Extraction Express I-O relations pertained by pruning as if-then rules Use clustering to discretize hidden unit activation values Link Inputs to outputs through discretized hidden values Rule Extraction

Phase IV : Test Case Generation After the completion of the pruning phase the possible data values of the attributes are used as equivalence classes to build test cases Test Case Generation

Case Study: Employment Application Approval System AttributeLegendType Application ID NumberUIDNone DegreeB.sc. / M.sc. / PhDInput Years of Experience0 – 10Input Years out of College0 – 10Input CertificationYes / NoInput Employment History0 – 10Input Immigration StatusCitizen / Permanent Resident / Work Permit Input Number of References0 – 3Input Employment ApprovalYes / NoOutput Full TimeYes / NoOutput Part TimeYes / NoOutput

Case Study: Employment Application Approval System Random numbers were generated in the range of every input The inputs were fed to the application code, which produced the outputs The size of a training data set and a test data set was 1000 examples

Case Study: Employment Application Approval System The cycle of training, pruning and rule-extraction was run on a training data set at least ten times Two stopping criteria: Upper limit on number of training epochs (1500) Minimum accuracy on training data (set to 97%) The total number of test cases can be calculated by taking a Cartesian product of the corresponding data values. (58,080)

Results After Pruning Phase, The links retained in the network for output of ‘Full Time’ corresponded to two inputs: years of experience employment history Number of test cases needed for this output = |years of experience| * |employment history| = 11 *10 = 110 For the other two outputs, 120 test cases were needed Total Number = 230 vs 58,080  Huge Reduction

Rule Extraction Phase By clustering hidden unit activation levels and determining ranges of inputs that can generate each level, the following was found: Values 4 – 10 for the input attribute ‘ years of experience’ resulted in activation value of 1 while the rest of the values resulted in activation value of -1 Values 6 – 10 for the input attribute ‘Employment History’ generated activation value of 1 and the rest generated a value of -1

Results For this output ‘Full Time’ the following rule is generated: If (years of experiencM) and (employment histop=6) Employment Hours: Full Time=Yes (1) Else Employment Hours: Full Time=No (0) By investigating the code, the accuracy of this rule turned out to be 100%

Test cases after rule-extraction phase By investigating previous extracted rules, We can build two equivalence classes for each of the two influential inputs Years of experience 1 : [0-3] Years of experience 2 : [4-10] Employment history 1: [1-5] Employment history 2: [6-10] Each equivalence class can be represented by one value

Yet More Test case Reduction Thus, to cover combinations of these two input attributes, we need 4 test cases for this output instead of previous 110 By repeating the procedure for each of the other outputs, we get 10 test cases for the whole application Those 10 test cases carry some redundancies, so applying some minimization algorithm can further reduce them to 4 test cases!!

Drawbacks Generating and running random test cases to create the training set incurs some overhead that wasn’t addressed properly in the paper The method they propose for generating the training set implicitly assumes that you have a fault-free version of the program (which is not always the case) The authors didn’t actually give a basis or an experimental framework for choosing the NN learning or pruning parameters

Digging Deeper Although the authors didn’t mention it explicitly, their approach is mainly useful in regression testing Another idea is to utilize this approach in Oracle generation out of the specifications of the program (By providing I-O pairs that are valid under specifications as he training set)

Questions ?

Thank You