Home Page -------------------
[Home Page] - [Reviews Main]
-------------------

Book Review
Practical Neural Network Recipes in C++ by T Masters
Recommended
ISBN: 0-12-479040-2       Publisher: Academic Press       Pages: 492 pages+disk       Price: £?
Categories:   neural    
Reviewed by Gary Thompson in C Vu 7-6 (Sep 1995)
Phenomena that defy simple analysis seem to abound in our world and yet there are lots of programmers out there who have a need to use such data. Unfortunately conventional computer analysis methods seem to an inherently poor tools for solving many of these problems. Neural networks provide a promising solutions to some of these problems and can be used to estimate functions, classify data, find functions in noisy data, and predict future trends in noisy data. Not surprisingly there is a downside. Choosing the correct neural network and training it in a manner which ensures the correct classification of real data is a complex process.

The book kicks off with an overview of the uses of neural networks, and their various forms which is intended for someone who has no experience of neural networks but knows how to program in C. The aim is admirably achieved by surveying a number of uses of networks in simple signal processing, function estimation etc. Throughout this section and the other sections of the book the author is very good at pointing out traps and pitfalls for the unwary. However, this does raise the point of whether it is possible to learn how to make a good neural network without a competent human tutor avaialable. I fear not in most cases. Later sections of the book deal with ways of avoiding local minima (ie simulated annealing, and genetic algorithms), the varieties of networks available, how to design at training set and how to train a network, and how to access a networks effectiveness statistically.

I should mention that the subject material is relatively mathematical and though this book is certainly not heavy reading for the trained mathematician, it will exercise those with a less than rounded mathematical training. WhatUs more, once in a while it uses relatively obscure words without fully defining what they mean. Presumably if you have post A-level maths experience this would be OK, but otherwise it can be a bit troublesome. Overall the book is not an academic treatise, it is lighter than that, an over-view for the undergraduate/graduate level would be a better description. Access to an academic library while reading and using the book is recommended as the author cites freely from the literature.

Overall the book is readable without being offensively chatty, and the large numbers of diagrams and examples really help. It definitely a very practical book with lots of empirical information on what to do and why. The book is not over filled with program listings and comes with a 5.25" disk with the program listings on it, this is excellent as it makes the book long on information and ideas, and low on noise content.

I have some misgivings about the code provided by the author, the classes feel like relatively naive objects, and are quite monolithic, with relatively shallow single inheritance hierarchies, no operator overloading, and a large number of free functions present. Overall the effect is more like an Object Pascal program rather than C++ in it's present form. Especially heinous is the use of large numbers of #defines in the code which should obviously be consts.

Overall I enjoyed the book and it covers its subject area well, but if you do not have a mathematical background you may find it pitched at too high a level. I do, however, think that many people would read this book and decide that their hearts are too faint to take the plunge into neural nets due to the pitfalls present. Access to an academic library is a prerequisite to getting the most out of the books which will limit its audience some what. I feel the code needs a major overall before it can really be classed as C++ as opposed to a form of C+/-. Overall I give the book an ambivalent thumbs up.


Other Authors with the same surname

Masters
Advanced Algorithms for Neural Networks A C++ Sourcebook by T. Masters [Recommended]  (Reviewed Nov 1995)
C: An Introduction with Advanced Applications by David Masters  (Reviewed Jan 1992)
Signal & Image Processing with Neural Networks by Masters [Recommended]  (Reviewed Sep 1995)


Last Update - 13 May 2001.

To link to this review, please use the URL: http://www.accu.org/bookreviews/public/reviews/p/p001016.htm

Copyright © The Association of C & C++ Users 1998-2000. All rights reserved.

Mirrored from http://www.accu.org/