The rate of technological advancements has grown exponentially in the last decades. They happen more frequently and have more impact on any industry than ever before. Some have claimed that the Fourth Industrial Revolution (Industry 4.0) is close; a trend towards automation and data exchange in manufacturing technologies and processes which include cyber-physical systems (CPS), IoT, industrial internet of things, cloud computing, cognitive computing, and artificial intelligence.
The engineering sector is among those that will be impacted most by these developments. As an engineer it’s important to keep up to date with the new developments and recognize new opportunities. One of the most prominent developing technologies that is expected to play a large part in Industry 4.0 is Machine Learning (ML). This advanced technology creates opportunities for engineers in automation, data, and more. But what does machine learning entail exactly? And how can it benefit the advanced engineering sector? In this article, I answer these questions and show how Amoria Bond can help you find your next engineering challenge.
What is machine learning?
Machine learning is the name for the technology that is used to “train” machines, or more specifically, to build adaptable software that is created by utilizing large amounts of data. It is often seen as a part of artificial intelligence (AI), and ML systems are sometimes called AI, but it’s more accurate to describe it as a subset of AI.
What makes machine learning unique is that it operates on a large amount of information and data, learning from that data without being programmed explicitly. By feeding certain data to an algorithm, the algorithm “learns” from that data. In short, machine learning is the use of algorithms and statistical models to effectively perform a specific task without using explicit instructions.
The end result is a system that takes a big part of human action out of the decision-making process. The system learns, adapts, and improves. This creates unique opportunities for automation and digitization of processes that become faster and more efficient, autonomously tackling overwhelmingly large tasks, and removing burdensome tasks of monotonous work. But, it’s challenging. The systems consist of thousands of algorithms that require diverse skill sets to create.
How does a machine “learn”?
Creating ML systems is not easy. In this section I’ll use a very simple example to showcase what it takes to create a ML system. What if you want to create an algorithm that can distinguish between cats and dogs, a system that can see any image of a cat or dog and recognize which is which? In order to distinguish between cats and dogs, the algorithm needs to “learn” to distinguish between the visual differences between cats and dogs. Even though it only requires being able to distinguish between two parameters, a cat or a dog, it still requires an advanced algorithm that requires a lot of data for its development, more specifically: labelled data.
We cannot talk about machine learning without speaking about big data, one of the most important aspects of machine learning algorithms. Any machine learning system requires a huge amount of data.
To continue with the example of cats and the dogs, you’d need a huge amount of data with cats and dogs; images and videos, that have been categorised and labelled. Labelled data has both the input and output parameters in a completely machine-readable pattern, but it requires human input. This means that humans have labelled the data and assigned the right label of a cat or a dog to an image or video. The ML algorithm will “learn” from this data and eventually be able to distinguish between cats and dogs itself when an unlabeled image is fed into the system. This process of annotating or labelling that data to train a ML system is known as supervised learning.
A downside of this method is that it still requires human input in labelling the data, and the dataset needs to be quite large. Secondly, the labelled data needs to be accurate. Imagine that 25% of the cat images have been wrongly labelled as dogs, the system can start to wrongly recognize some cats as dogs. Thirdly, most companies don’t have the manpower to label big datasets.
One way to go about getting labelled data, is using platforms like Amazon’s Mechanical Turk, where data labelling tasks can be posted and a workforce will label that data from home in exchange for a small fee. Other companies use different methods.
There’s a good chance that in the last couple of days a captcha task popped up when you were browsing the internet. Did you get one where you have to click on images of buses or trains? If so, without you knowing you’ve been labelling data. They’re using people’s captcha input to train an ML algorithm, having people label images of buses, trains, etc. It’s a quite ingenious way to get millions of labelled data for free.
At this point you might think, I thought the benefit of ML systems is that it lowers human interaction and increases automatisation, but this system still requires a lot of human input. Yes, a lot of human input is needed for labelled data, but when the system has been created the tasks that it will complete will no longer need human input and has huge potential for automatisation. Even though the data needs to be labelled accurately for this method to work, supervised learning is extremely powerful when used in the right circumstance and can create very advanced machine learning systems. It’s used quite frequently in our everyday lives, for example in facial recognition programs.
Furthermore, there are other ways to train ML systems.
Unsupervised and reinforcement learning.
As explained, machine learning algorithms have the ability to improve themselves through training. Not all machine learning algorithms require labelled data. Another route to take is to use unlabeled data. Unlabeled data only has one or none of the parameters in a machine-readable form.
The benefit of using unlabeled data, is that you don’t require the human labor to label the data and that usually means a larger dataset can be used, but the downside is that it requires more complex solutions to process the data. Using various programming techniques, machine learning algorithms are able to process large amounts of data and extract useful information. Instead of a defined and set problem statement, these algorithms can adapt to the data by dynamically changing hidden structures and offering more post-deployment development. This is known as unsupervised learning. The downside is that these systems are complex and have to be built impeccably to avoid the system connecting the wrong dots.
Lastly, there is reinforced learning. It features an algorithm that improves upon itself and learns from new situations using a trial-and-error method. Favourable outputs are encouraged or ‘reinforced’, and non-favourable outputs are discouraged. These systems still require some human input, but less than supervised learning. The system is fed a large amount of data and connects the dots itself, similar to unsupervised learning. In every iteration of the algorithm, the output result is given to the interpreter, a human, who decides whether the outcome is favourable or not.
In case the program finds the correct solution, the interpreter reinforces the solution by providing a reward to the algorithm. If the outcome is not favourable, the algorithm is forced to reiterate until it finds a better result. Usually, the system goes through a huge amount of data and is often fed the same data again, going through many rounds before the favoured results are reached.
Machine learning advancements in the engineering sector and the role of the engineer.
Now that you have a better understanding of ML systems, how do they influence the engineering sector? Machine learning has started to play an important role in engineering. It allows engineers to create easier and faster workflows and it extends deeply into data management, mitigating the challenges of big data and simplifying big data management and monitoring.
Automobile manufacturers have been using robots on the production line for many years. At first they completed simple engineering tasks, but now they can handle precision moves for the most intricate parts of the process. ML systems make these smart production lines and complex manufacturing tasks more efficient while requiring less human intervention.
Many design and simulation tasks can also be made easier with ML as they make it possible to explore design and weight-saving options that weren't ever possible before. With the help of innovative designs, engineers can survey options like never before.
Finally, ML systems can be used to break down barriers between departments and help to effectively manage data and gain insights from it. They can provide automation for low-value tasks and discover patterns in data, freeing up engineers to perform higher-value tasks.
Some engineers have expressed concern on automatization and the potential that their role can be made obsolete. However, in a study Stanford University found that there's nothing imminent about the threat to jobs, and even when or if we get there, it will be balanced out by the increased capabilities technology offers. And a report from the University of Oxford states that science and engineering professions are the least threatened by and will experience great benefits from artificial intelligence tools.
Engineers can prepare for Industry 4.0 by adapting the latest tools available and to learn how to work with these new systems, utilizing machines and robots. Artificial intelligence and machine learning will become a major aspect of advanced engineering, they will help manage engineering data more efficiently and will be an essential component of engineering's future. The sooner it's adopted and adapted; the sooner engineering will be able to capitalize on the advantages of the technology.
How do you get exciting projects as an engineer?
As 360-degree recruitment consultants, we at Amoria Bond are not just specialist service providers for companies and HR professionals. We also explicitly advise and place candidates in new projects and permanent positions - even in hard-to-reach positions in top companies in the industry. Our focus is not only on the placement process but much more on your wishes and requirements. We take care of many other services for you, such as interview preps or salary negotiations.
Your skills could be in demand like never before - take advantage of this opportunity and contact my team and me if you are looking for a new, exciting position in the embedded software sector. If you have any questions, we will be happy to help.