It is important to know why machine learning matters so that you know the intrinsic value of the field and of methods and open questions in the field.
Like knowing your why, knowing the value of the field can be used as a powerful filter of information and help you focus on those methods that actually deliver on the promise that the field makes.
machine learning matters because it provides methods that can create solutions to complex problems. The promise that machine learning makes is that it provides tools to generate a solution to complex problems, faster, more accurately and more scalable than we could program a solution manually.
Writing programs in a computer can be summarized as automating procedures on input data to create output artifacts. Almost always, they are linear, procedural and logical. A traditional program is written in a programming language to some specification, and it has properties like:
- You know or can control the inputs to the program
- You can specify how the program will achieve its goal
- You can map out what decisions the program will make and under what conditions it makes them
- You can test your program and be confident that because the inputs and outputs are known and all conditions have been exercised the program will achieve its goal
There are some problems that you can represent in a computer that you cannot write a traditional program to solve. They resist a procedural and logical solution. They have properties such as:
- The scope of all possible inputs is not known beforehand
- You cannot specify how to achieve the goal of the program, only what that goal is
- You cannot map out all the decisions the program will need to make to achieve its goal
- You can collect sample input data for the program
Problems like this resist traditional programmed solutions because manually specifying a solution would require a disproportionate amount of resources.
You are probably a programmer, and you might be an experienced programmer. This might sound very odd, even unbelievable. As programmers, we believe as long as we can define what a program needs to do, we are confident we can define how a program can achieve that goal. This is not always the case.