0% found this document useful (0 votes)
227 views105 pages

Developing Neural Network Applications Using Labview

Developing Neural Network Applications using Labview Scribd Upload a Document Search books, presentations, business, academics. We're using Facebook to personalize your experience based on what your friends are sharing and the things you like.

Uploaded by

張成仲
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
227 views105 pages

Developing Neural Network Applications Using Labview

Developing Neural Network Applications using Labview Scribd Upload a Document Search books, presentations, business, academics. We're using Facebook to personalize your experience based on what your friends are sharing and the things you like.

Uploaded by

張成仲
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

12/5/4

Developing Neural Network Applications Using Labview

Scribd Upload a Document


Search books, presentations, business, academics... Search Documents

Explore

Documents
Books - Fiction Books - Non-fiction Health & Medicine Brochures/Catalogs Government Docs How-To Guides/Manuals Magazines/Newspapers Recipes/Menus School Work + all categories Featured Recent

People
Authors Students Researchers Publishers Government & Nonprofits Businesses Musicians Artists & Designers Teachers + all categories Most Followed Popular

We're using Facebook to personalize your experience. Learn MoreDisable View Public Profile My Documents My Collections My Shelf Messages Notifications Account Help Log Out

Welcome to Scribd - Where the world comes to read, discover, and share...
Were using Facebook to give you reading recommendations based on what your friends are sharing and the things you like. We've also made it easy to connect with your friends: you are now following your Facebook friends who are on Scribd, and they are following you! In the future you can access your account using your Facebook login and password. Learn moreNo thanks Some of your friends are already on Scribd:

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

1/105

12/5/4

Developing Neural Network Applications Using Labview

Graphene Coatings
Single Layer Graphene on SiO2 Wafer glass, PET, or your substrate
[Link]/CVD-grown-

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

2/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

3/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

4/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

5/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

6/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

7/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

8/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

9/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

10/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

11/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

12/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

13/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

14/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

15/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

16/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

17/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

18/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

19/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

20/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

21/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

22/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

23/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

24/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

25/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

26/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

27/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

28/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

29/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

30/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

31/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

32/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

33/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

34/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

35/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

36/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

37/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

38/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

39/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

40/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

41/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

42/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

43/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

44/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

45/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

46/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

47/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

48/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

49/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

50/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

51/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

52/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

53/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

54/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

55/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

56/105

12/5/4

Developing Neural Network Applications Using Labview

CHAPTER 4 AREAS OF APPLICATION

4.1 Pattern Classification

Pattern Classification is part of the much broader field called Pattern Recognition. Recognition basically has 2 parts

Feature Extraction Pattern Classification

In this thesis, the LabVIEW VIs have been developed for pattern classification applications, assuming that the data is already defined over feature space (feature extracted form).
[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

Classification is very important in numerous fields. A simple example is in a post

57/105

12/5/4

Developing Neural Network Applications Using Labview

Classification is very important in numerous fields. A simple example is in a post office where mail to be delivered needs to be sorted. If one has an automatic system in which a computer can recognize the zip code and sort the mail based on zip codes then it would make the work much more efficient. What is needed is a scanner which reads the data into the system. Then, the system can use an effective algorithm to differentiate and sort the mail. There are many other applications where one could make use of such an automated data classifier. There are many algorithms and techniques to classify data. In this thesis, LabVIEW VIs have been constructed for pattern classification applications that have a useful GUI and are very user-friendly. This chapter will discuss some statistical classification techniques followed by a practical neural net approach and other clustering algorithms to classify data.
65

of 115

54

Basically, a feature extracted data set could be of any dimension. In this thesis, a popular IRIS data set [11] has been used. This feature extracted data has been extensively used in the past and has been thoroughly analyzed. It is known that this data set consists of 4-dimensional vectors belonging to three classes. Out of the total of 150 vectors, each of the three classes consists of 50 vectors, each class defined by a cluster. The idea of classification is to form clusters of data from a pool of data points. The statistical distribution of this IRIS data set has been studied in the past. Essentially, one could split the data analysis into two types: Parametric and non-parametric. In the

parametric case, good prior knowledge is available about the data, such as the probability density function, a priori probabilities of occurrence for each class, and perhaps one or more moments for each class. For the non-parametric case, such knowledge is not assumed, but rather classification must be based on clustering. Next, Bayes theorem will be addressed, and then the discussion will continue with building classifiers.

4.1.1 Statistics of Classification

Thomas Bayes was a mathematician who developed a method to classify data into [Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

58/105

12/5/4

Developing Neural Network Applications Using Labview

Thomas Bayes was a mathematician who developed a method to classify data into clusters based on the probability theory known as maximum likelihood. A Bayes classifier is a mathematical model or classification system. Since there are 3 classes and 50 points per class, then the a priori probability of occurrence for a sample value (point) to be from any one of the 3 classes can be taken to be 1/3, or P(Ck) = 0.33, k = 1, 2, 3. These probabilities are assumed a priori. The probability of a feature vector x given that class Ck has occurred is denoted by P( x / Ck ) which is called the class conditional probability. These conditional probabilities must be assumed or have to be

55

calculated based on a set of rules. Then, let the probability of a particular pattern, x, occurring, independent of any class be denoted by P ( x ) . Then, according to Bayes theorem, the probability that pattern class Ck is the true class, given feature vector x is denoted by P(Ck / x ) , the posterior probability. This probability is related to P(x) and
P( x / Ck ) as follows, P(Ck / x ) = P( x / Ck ) P(Ck ) P( x )

The denominator is called the normalization factor that assures that, P(C1/x ) + P(C2 /x ) + P(C3/x ) = 1 Essentially the theorem assigns a membership value between 0 and 1 to a particular feature corresponding to its membership in each of the 3 classes. The class Cp, corresponding to the largest value of P(Ck / x ) , k = 1, 2, 3 for a given measured x is the winner, which means that x belongs to class Cp. For classification [3], the basic idea is to estimate the density value of a particular feature vector in a particular region of feature space. Using parametric techniques as applied to the IRIS flower data set; one can determine the conditional probability densities and assume a priori probabilities. Using these and Bayes theorem, one can determine the posterior probabilities for all of the three clusters. The highest value of the
[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

posterior probability P(C / x ) would be the winner, and x , then belongs to the cluster

59/105

12/5/4

Developing Neural Network Applications Using Labview

posterior probability P(Ck / x ) would be the winner, and x , then belongs to the cluster

with the highest value. This procedure is normally applied in statistical classification, and it is a very effective procedure. Suppose that the data distribution is unknown. Then, one will need to employ non-parametric algorithms to classify the input data points. However, with the data set

56

available, one can employ unsupervised algorithms that can automatically capture features from the data and cluster the data. In classifying patterns in feature space based on geometric properties, the general procedure is to construct boundaries to separate clusters; the more well-placed that the boundaries are, the better the classification in terms of reducing the associated error of misclassification. If these boundaries are poorly chosen, the misclassification error will increase. These boundaries can be defined mathematically by discriminant functions. In general, classification techniques are aimed at constructing these discriminant functions based on the input feature vectors.

4.1.2 Statistics and Neural Nets an Analogy

Now, consider how a neural net functions in the process of pattern classification. Normally the standard feed forward neural net uses a non-linear transfer function to map the input feature space to the output decision space. For example, in this thesis the sigmoid function has been used for different nets. Suppose the input feature vector is x and the weight vectors are denoted by w as before, then the dot product and summation is given by
net = x.w

Applying the sigmoid function to net gives the result


f (net ) =

1 1 + exp(net )

as the output of the neuron. This f (net ) is nothing but the posterior probability function
[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview 60/105

12/5/4

Developing Neural Network Applications Using Labview

that was earlier obtained using the Bayes theorem.

57

Consider a two-class problem with equal a priori probabilities of occurrence. Then, the net value that was calculated using the inputs and the weights is just the likelihood ratio of the class conditional probabilities expressed as,
p ( x / c1 ) net = p ( x / c ) 2

If this likelihood ratio is greater than 1 then the x belongs to class C1. If the likelihood ratios is lesser than 1 then x belongs to class C2. Thus the net input to a neuron is the class conditional probability p ( x / ck ) where k= 1, 2 and the output is the posterior probability P (Ck / x ) . Thus, the neural net can be considered to be an implementation of Bayes theorem by analogy. The sigmoid function is called the S-shaped function which compresses any input value onto a small range, (0, 1). The sigmoid activation function acts a discriminant function to classify data in feature space. Although the sigmoid function is non-linear, the decision boundary it creates is still linear. Geometrically speaking, there are many kinds of data to be classified. Some data sets can be linearly separable. But some data distributions cannot be linearly separated into clusters or classes. Well-known examples of data sets that are not linearly separable are the binary XOR data and the IRIS flower data. In the case addressed here in regard to the IRIS flower data, it has been confirmed that for the three clusters or defined pattern classes, two of the classes or clusters overlap.

58
[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview 61/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

62/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

63/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

64/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

65/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

66/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

67/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

68/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

69/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

70/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

71/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

72/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

73/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

74/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

75/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

76/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

77/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

78/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

79/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

80/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

81/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

82/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

83/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

84/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

85/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

86/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

87/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

88/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

89/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

90/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

91/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

92/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

93/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

94/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

95/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

96/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

97/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

98/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

99/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

100/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

101/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

102/105

12/5/4

Developing Neural Network Applications Using Labview

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

103/105

12/5/4

Developing Neural Network Applications Using Labview

Leave a Comment

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

104/105

12/5/4

Developing Neural Network Applications Using Labview

Submit Characters: 400

Submit Characters: ... Upload a Document


Search books, presentations, business, academics... Search Documents

Follow Us! [Link]/scribd [Link]/scribd [Link]/scribd About Press Blog Partners Scribd 101 Web Stuff Support FAQ Developers / API Jobs Terms Copyright Privacy Copyright 2012 Scribd Inc. Language: English

[Link]/doc/38040990/Developing-Neural-Network-Applications-Using-Labview

105/105

You might also like