Everyone who has used the popular digital assistants like Apple’s Siri and Google’s Alexa has had experience with these systems breaking down if asked something strange or unexpected. Even though this is slowly changing, with these companies using machine learning to make their systems more robust, they are still good examples of an Expert System designed around responses based on pre-programmed combinations of data.
To create an Expert system, first, you need an expert. For example, you could have a Doctor note down every possible combination of symptoms in a large database, and then use a series of IF-THEN statements to diagnose a patient. This system works very well and is very accurate but comes with some core limitations.
1. You need an Expert, and your system is limited by the expert’s knowledge and experience.
2. The expert needs to note down every possible combination and if something gets missed, or is presented with something new, the system cannot adapt.
3. As the complexity of the problem and number of possible combinations increases, it becomes physically impossible to create a database manually, this is often referred to as a Combinatorial explosion.
Machine learning is a programming technique that is quickly becoming popular because it frees us from the above limitations. The idea is to write a relatively simple program that can build its own database of combinations based on certain defined outcomes. The program can then be trained, by evaluating the results, and over time learns and gets better at the task it was designed for. This technique closely matches how the human brain processes information and get better over time through practice. The only difference is that a program can run 24/7 and never gets tired, so the learning process is very fast.
The result is an algorithm that gets better over time, does not need an expert, and can cope with new situations that it has not faced before.
This opens up a whole new set of possibilities for applications that involve processing very large amounts of data that has many complex combinations. If your business does any of the following, machine learning algorithms will be very useful:
1. Data Analysis
2. Scientific Research
3. DNA Classification
4. Computer Vision and Object recognition
5. Medical Diagnosis
6. Financial Market Analysis.
7. Language Processing
9. Targeted Advertising
10. Recommendation systems
11. Sentiment Analysis
12. Search Engines
13. Robot Locomotion
15. Computer Networking
Silstone Group is dedicated to bringing the best of Machine Learning based Applications to our Clients as well as discovering new ways this technology can used.
Triman S. Bhullar
Visionary Entrepreneur, Elon Musk’s achievements in the last few years have been nothing short of extraordinary. Most of the companies he has Co-Founded are aimed at solving very real and specific problems using already existing solutions and augmenting them with the power of Software. The most notable of these is SpaceX which has completely revolutionized our approach to Space Travel by re-using the very expensive Booster Stage rocket, usually discarded, bringing the cost per launch down drastically. And Tesla Motors, that has completely Disrupted the Automobile industry by providing a very compelling, clean, quiet and high tech product that has panicked all big players in a traditionally difficult to infiltrate the market.
Tesla and SpaceX are first and foremost Technology companies. They bring Silicon Valley sensibilities to traditional monopolies, and have completely Disrupted these industries. The main strength of these companies lies in the way they have managed to leverage software and automation to do things that were simply not possible before. In this article, i am going to focus on One of the most Significant, of the many, innovative approaches adopted by Tesla, SpaceX and Elon Musk that has led to them becoming one of the fastest growing Startups in the World.
When Computers first started being used for scientific research in the 60’s, many of the founders believed that programming a computer would be humanly impossible due to the extreme complexity and need for absolute perfection. This led to the concept of Artificial Intelligence. The idea that we can just tell the computer what we want to do in normal human language which would then be interpreted by the computer, the necessary program automatically written, and the results achieved. Even though computing power has been increasing exponentially every year since then, and programming languages have been evolving into greater levels of abstraction, we are no closer to a perfect Artificial Intelligence than we were 50 years ago.
The main problem seems to lie not in computational power or technological limitations, but in how the human brain works.
Ask a hundred programmers to solve a problem and you will end up with a hundred correct solutions. For us humans, writing a program seems to come from a place we cannot fully comprehend. There is more intuition and feel involved in the process than most people realize, and it is for this reason that we cannot fully describe how we go about solving a problem. It is impossible to teach someone how to code, because even the best coders cannot describe how they do, what they do, and this is the biggest problem facing the creation of true AI. If we cannot properly describe to ourselves how we write code, how can we program a computer to?
Machine Learning is one solution to overcome this problem. If a program can grow and learn from its experiences like how a human does, perhaps we don’t need to worry about the intricacies of writing the code ourselves and have it evolve and grow over time like a baby grows into an adult. And this technique is what Tesla Motors used to teach their cars how to drive themselves.
All Tesla Cars come equipped with an array of sensors including Cameras, Infrared and Ultrasonic sensors, and a central processor that allows it to collect data from 360 degrees around it, process it, and make quick decisions. Tesla has demonstrated on numerous occasions that their Autopilot can actually be safer than a human driver in avoiding accidents. But, even though every Tesla Car since the first models has come equipped with all the hardware necessary to run autopilot, it has only been activated recently through a software update.
Every single car is continuously connected to a swarm network through Tesla’s partnership with Verizon and other service providers. The cars are continuously recording and transmitting driving data to a machine learning Algorithm that is continuously learning and evolving. Three years after the first cars rolled out, Tesla Announced, that with a software update every car will now have the self-driving capability. Using this technique, Tesla was able to achieve in a few years with a few core developers what would have otherwise taken an army of coders thousands of years. In fact, many Tesla owners are reporting that the autopilot system seems to be getting better every time they use it.
This Machine Learning based approach to coding represents a quantum leap in how software will be developed in the future and literally the sky is the limit for what can be possible when we are no longer limited to how much we can physically type.
-Triman S Bhullar