This summarizes some ideas on trained fuzzy learning.
Learning and Problem Solving
In my first tutoring class that I held to economics students on mathematics, I wanted to have a direct discussion on how individuals think about mathematics and what mental representations they use to solve specific problems. This is important, because every mathematical problem requires the right mindset.
For example, if you have to show the equivalence of algebraic expressions by applying a set of axioms (e.g. associativity, etc.), you will ultimately fail if you try to think arithmetically. You just have to think in logic. If you have to simplify an algebraic expression, you are usually not aware of the many types of optimizers you are looking at. It can mean you reduce the number of operators, or you reduce the computational complexity or you look for a “nice representation” of the equation. The only way you will know what “simplify” means is by looking at the answers of the practice questions and you can infer what the author means by “simplify”. It is never mentioned anywhere, but you can assume that the exam will apply the same “logic” to what “simplify” means. It makes no sense to grind about the meaning of simplify, you just have to induce the meaning from the sample questions.
My inspiration for this was a report called the Harvard Zero project on education that said most students fail in problems because they do not understand the problem. And once told what the problem is, they are able to solve it. So how can students learn as quickly the boundary conditions of any problem and speed up the learning time needed to solve the problems presented?
The same question is posed to hackers who want to learn how to hack a computer system -> By applying a set of tests and techniques. For lawyers solving a legal case -> By applying a set of tests and techniques. For puzzle solvers, chess players, etc. It is all a matter of representation of the problem and operating the representation in a fitting manner.
Learning and Problem Solving
I started my teaching class with a very simple problem. Namely, I gave them a touple of numbers. (1,3), (4,7), (9,2) and asked them to calculate the area. I gave them 20 seconds to solve the problem without any guidance. Of course, nobody gave an answer.
Then I explained: You are asked about an area. So this is a geometric problem. It is a geometric problem of a 2 dimensional plane, because it is an area. What is a 2-dimensional area? Yes, a sheet of paper.
What do you know from your high school years about geometry and a sheet of paper? Yes, you can draw a X and Y axis, 90° ancle between both. So why do you not draw a graph on your paper?
Now that you have a sheet of paper with a graph. Why don’t you draw 10 points in the X and Y axis? And if you did so, why do you not put dots at the coordinates of the above “touples”. Do you think this would violate the conditions of the exercise? Nobody said so. All drew 3 dots and a triangle.
Now they all found the right representation of the problem and some started to wonder how to calculate the area. Again, they did not seem to have full presence of their mind. So I said: What do you know about area equivalences of triangles if you move one particular point? Somebody raised the hand and said: “If you move the point adjacent to the longest side in parallel to it to any other point, the area is equivalent.” True. So now all they had to do is have someone in the group raise his hand and say “Well, we could move the point to get a 90° angle. Then we can multiple the shortest edge by the adjacent edge that we used as a reference and divide it by two.”
Can you now calculate it in your head? “Yes.” Was the answer.
Correct. “What did we learn?” I asked. Someone said “It was all about finding the right representation.” Correct. But how did they get the right representation? “You told us.” I said “Yes. I gave you hints. And everyone of you gave a clue and insight on the different steps.”
So I explained them that any problem that anyone in their career will present to them will be inspired by some source in the literature. And if they think about problems in the real world, any problem they can think of, they can only think about it, because there is a problem that is worthy to solve. Any such problem has many different faces and likely someone somewhere had this problem before and wrote about it. In other words: I was just an example of what they find if they start looking for solutions: the world presents the answers, always. And then I concluded that because it was a set of them who lead to the understanding of the problem by the entire group, that they just witnesses swarm intelligence.
So if you want to be successful at any point in your career, you need to find the best representations of the problems you are facing. You do not invent them, but you find them. And you do not find them on your own, but collaborating with others that have a similar problem. Dividing the search algorithm into a group of people is always faster at finding the optimal solution. In university, their peers are all having the same problem. They all search for it. And if they collaborate, each and everyone will have the best possible solution and the easiest or most intuitive represensation ready when he faces an exam or scientific problem. Life is about collecting knowledge about such fundamentally intuitive representations, working with them, mapping problems to them and doing so jointly. That is science.
We reran the exercise and now 40% finished in time. And I said: “The remaining 60% either did not have a ruler and were not prepared. Or they used their brains too much. This is an exercise about time. You know the algorithm that solves the problem. Now you have to become extremely fast at executing this algorithm. You do not need an exact graph painted. You need to know the precision level you need to find the right dot given the shifting of one point. And then you need to be able to run basic multiplication and division with limited precision. That is all about exercise.
Applications to AI
Now for A.I. to do exactly the same, any problem entered into a computer problem is not to simply map it to Tensor flow and run the algorithm. But you rather feed meta information to the algorithm such as precision, and the type of problem. And you have it not only train the neural network. But also finding among many solving algorithms the one that can solve it quickest. So you need an algorithm that learns not only the parameters for one solution — path, but that learns to randomly map a problem into a different problem might yield a result that in the end can be transformed into the solution space and yields the correct result given precision constraints.
Most algorithms I see today focus on training a program on one solution path given the constraints of the inputs and problems. A more general AI should be able to randomize different representations and solution paths and determine over time when to apply which solution path.
Back to the maths class
The benefit of this experiment in my classes was that I didn’t have to explain the problems or run through example calculations. My students came into class and talked about what they learned about the problem. Which representations they tried to use to become faster. They as a group decided to learn from each other and adopted the best algorithms for any type of problem. And we turned our attention to something even more valuable: Applications.
Linear Algebra problems we used to model price competition among drug dealers in the streets of Hollywood with many celebrities running drug cartels. That was not only allowing us to discuss where else they can apply these techniques in real life. It also lead to a lot of laughs, strengthened the team spirit and bonding. Everyone seemed to use his creativity in coming up with new use cases, new culprits and how we were hacking the competition by finding the right model to optimally solve the market problem.