Neural Networks

What are Neural Networks?

Artificial Intelligence applications are a type of computer program that is able to replicate human learning and/or intelligence. A subset of which is Deep Learning, and Artificial Neural Networks (ANN’s) would be a primary example.

As the “neural” part of their name suggests, Neural Networks are brain-inspired systems that are intended to replicate the way that we humans learn. As you can imagine, this is a loose analogy of how brains operate with no direct correlation to the actual biochemical makeup of our own minds. Nonetheless, they do exhibit some similar characteristics and help tackle problems that conventional rule-based programming either struggles with or simply cannot resolve.

How do Neural Networks differ from conventional programming

If you’re unsure how Neural Networks differ from the normal type of procedural programming, you’re not alone – I like to think of a single cell as a mini spreadsheet, having a set of input values, that when added together can send a value to another set of cells and act as their input.

Cells are linked together in layers, with the output from one cell forming the input to multiple other cells. In fact, it’s not uncommon for millions of cells to be used within a single network and having many millions of interconnecting links between each of the cells forming a mega spreadsheet that no human could possibly look at and understand – yet they work and produce very accurate results. They often outclass human experts in many specialist fields.

Creating a network doesn’t involve conditional rules, loops and abstract data structures written by a human programmer, but requires the network to be shown large sets of labelled data and (usually) told what each line of data represents; for example ‘this is a cancer cell’, ‘this is a dog’, ‘this is normal operating data’ etc.

Training the network involves passing data into it, comparing the predicted outcome with the expected one and making minor adjustments to the internal settings if a discrepancy is found. This process is repeated for a number of iterations until either an optimal level of accuracy has been achieved or training is showing no improvement and the ‘programmer’ needs to relook at the way the network has been configured, make changes, and re-run the data training process. Before eventually a ‘model’ is produced that can be used in a production environment and used to evaluate new data.

What is Deep Learning best used for

As mentioned above, a Neural Network is used to compare data against examples of what it has been shown previously. A recognition task can take the form of a financial risk assessment, to tell you if the photo is your or your friend Sue, if the X-ray is showing signs of breast cancer or if the data coming in from a production line is showing normal signs of behaviour and nothing is about to break.

When they work well

A Neural Network requires lots and lots of data to be able to function. Too little data and the system doesn’t perform very well, too much of one type of data and it begins to generalise or ‘over fit’ to use the industry term. In short, they’re good at finding patterns in large data sets, whether this be images, tabular, speech or facial recognition. All of which is converted into a format the network can understand and use for training purposes.

Practical applications

  • Medical image identification and classification
    If shown enough images of breast cancer scans a network can help identify these from newly presented images. A human doctor takes years to train, a Neural Network ‘advisor’ can be rolled out in days.
  • Facial recognition
    Most of you are probably familiar with how Facebook can recognise individual faces from a photo. This is a Neural Network being trained on the facial characteristics of individuals you have already labelled from your friend’s list.
  • Preventative maintenance
    Knowing when something is going wrong in advance of a failure finds uses in many industries, but primarily in a production line environment where a motor failure can result in a production stoppage, spoiled items and delayed delivery times for clients. That’s outside of the financial cost of a failure. A network trained to recognise what a ‘normal’ pattern of behaviour looks like, vibrations, heat signatures, power usage etc. will be able to spot when something is changing and alert an engineer before the system reaches the point of failure.

Further questions

If you’d like to know if Neural Networks would help solve your business problems, please get in touch and have a chat.

Phone or drop in. We’d love to talk to you!

We are open Monday to Friday, 9am to 5pm.
Call us on 01257 429217 Or fill in the form underneath.

Thank you for your message. It has been sent.
There was an error trying to send your message. Please try again later.