## Theory of Knowledge and the Thinking Machine

### tl,dr

I created an interactive lesson called Thinking Machine for use with a talk I gave to the IB theory of knowledge class, which is currently on a unit studying mathematics.

The lesson made good use of the Meteor Blaze library as well as the Desmos Graphing Calculator API. Big thanks to Eli and Jason from Desmos for helping me with putting it together.

I was asked by a colleague if I was interested in speaking to the IB theory of knowledge class during the mathematics unit. I barely let him finish his request before I started talking about what I was interested in sharing with them.

If you read this blog, you know that I’m fascinated by the intersection of computers and mathematical thinking. If you don’t, now you do. More specifically, I spend a great deal of time contemplating the connections between mathematics and programming. I believe that computers can serve as a stepping stone between students understanding of arithmetic and the abstract idea of a variable.

The fact that computers do precisely what their programmers make them do is a good thing. We can forget this easily, however, in our world that has computers doing fairly sophisticated things behind the scenes. The fact that Siri can understand what we say, and then do what we ask, is impressive. The extent to which the computer knows what it is doing is up for debate. It’s pretty hard to argue though that computers aren’t doing similar types of reasoning processes that humans do in going about their day.

Here’s what I did with the class:

I began by talking about myself as a mathematical thinker. Contrary to what many of them might think, I don’t spend my time going around the world looking for equations to solve. I don’t seek out calculations for fun. In fact, I actively dislike making calculations. What I really enjoy is finding interesting problems to solve. I get a great deal of satisfaction and a greater understanding of the world through doing so.

What does this process involve? I make observations of the world. I look for situations, ideas, and images that interest me. I ask questions about what I see, and then use my understanding of the world, including knowledge in the realm of mathematics, to construct possible answers. As a mathematical and scientific thinker, this process of gathering evidence, making predictions using a model, testing them, and then adjusting those models is in my blood.

I then set the students loose to do an activity I created called Thinking Machine. I styled it after the amazing lessons that the Desmos team puts together, and used their tools to create it. More on that later. Check it out, and come back when you’re done.

The activity begins with a first step asks students make a prediction of a mathematical rule created by the computer. The rule is never complicated – always a linear function. When the student enters the correct rule, the computer says to move on.

The next step is to turn the tables on the student – the computer will guess a rule (limited to linear, quadratic, cubic, or exponential functions) based on three sets of inputs and outputs that the student provides. Beyond those three inputs, the student should only answer ‘yes’ or ‘no’ to the guesses that the computer provides.

The computer learns by adjusting its model based on the responses. Once the certainty is above a certain level, the computer gives its guess of the rule, and shows the process it went through of using the student’s feedback to make its decision. When I did this with the class, more than half of the class had their guesses correctly determined. I’ve since tweaked this to make it more reliable.

After this, we had a discussion about whether or not the computer was thinking. We talked about what it means for a computer to have knowledge of a problem at hand. Where did that knowledge come from? How does it know what is true, and what is not? How does this relate to learning mathematics? What elements of thinking are distinctly human? Creativity came up a couple times as being one of these elements.

This was a perfect segue to this video about the IBM computer Watson learning to be a chef:

Few were able to really explain this away as being uncreative, but they weren’t willing to claim that Watson was thinking here.

Another example was this video from the Google Deep Thinking lab:

I finished by leading a conversation about data collection and what it signifies. We talked about some basic concepts of machine learning, learning sets, and some basic ideas about how this compared to humans learning and thinking. One of my closing points was that one’s experience is a data set that the brain uses to make decisions. If computers are able to use data in a similar way, it’s hard to argue that they aren’t thinking in some way.

Students had some great comments questions along the way. One asked if I thought we were approaching the singularity. It was a lot of fun to get the students thinking this way, especially in a different context than in my IB Math and Physics classes. Building this also has me thinking about other projects for the future. There is no need to invent a graphing library on your own, especially for use in an activity used with students – Desmos definitely has it all covered.

### Technical Details

I built Thinking Machine using Bootstrap, the Meteor Blaze template engine, jQuery, and the Desmos API. I’m especially thankful to Eli Luberoff and Jason Merrill from Desmos who helped me with using the features. I used the APIto do two things:

• Parse the user’s rule and check it against the computer’s rule using some test values
• Graph the user’s input and output data, perform regressions, and give the regression parameters

The whole process of using Desmos here was pretty smooth, and is just one more reason why they rock.

The learning algorithm is fairly simple. As described (though much more briefly) in the activity, the algorithm first assumes that the four regressions of the data are equally likely in an array called isThisRight. When the user clicks ‘yes’ for a given input and output, the weighting factor in the associated element of the array is doubled, and then the array is normalized so that the probabilities add to 1.

The selected input/output is replaced by a prediction from a model that is selected according to the weights of the four models – higher weights mean a model is more likely to be selected. For example, if the quadratic model is higher than the other three, a prediction from the quadratic model is more likely to be added to the list of four. This is why the guesses for a given model appear more frequently when it has been given a ‘yes’ response.

Initially I felt that asking the user for three inputs was a bit cheap. It only takes two points to define a line or an exponential regression, and three for a quadratic regression. I could have written a big switch statement to check if data was linear or exponential, and then quadratic, and then say it had to then be cubic. I wanted to actually give a learning algorithm a try and see if it could figure out the regression without my programming in that logic directly. In the end, the algorithm works reasonable well, including in cases where you make a mistake, or you give two repeated inputs. With only two distinct points, the program is able to eventually figure out the exponential and quadratic, though cubic rules give it trouble. In the end, the prediction of the rule is probability based, which is what I was looking for.

The progress bar is obviously fake, but I wanted something in there to make it look like the computer was thinking. I can’t find the article now, but I recall reading somewhere that if a computer is able to respond too quickly to a person’s query, there’s a perception that the results aren’t legitimate. Someone help me with this citation, please.

## Qatar Airways and the IB Mathematics Exploration

It isn’t always a common occurrence to have a distance and bearing to a particular location, but given my choice in airline for winter break, I had exactly that. So during our first class back from the break, I asked students to figure out where I was when I took this picture:

Students scrambled to open up various online maps and make sketches. The students settled on a range of answers. Then I showed them this:

We had a quick discussion about assumptions. Then students looked again and talked to each other while revising their answers. Once they were satisfied with their answers again, I shared the correct answer.

This led into a nice discussion of the mathematics exploration project that is submitted as the internal assessment of the IB mathematics courses. The students know that I take pictures and videos of this sort of thing all the time – it’s a habit instilled in me by someone we all know. The students said though that they don’t usually see math in the things around them, which is a problem given that the math exploration is supposed to come from them.

My recommendation, which comes partly from Dan’s suggestions, is just to start. I told the students that any time they see something interesting or beautiful when they’re walking around, to take a picture of it to review later. With some time between seeing it and reviewing it, they should ask themselves why it interested them. What is it that makes the picture beautiful? Are there patterns? Is it organized in an interesting way? I also shared my RSS reader on Feed.ly and how I save articles that interest me and tag them accordingly. This is how I find interesting ideas to share with the class – they should do the same to figure out what might be a good source of material for their work.

We have had several discussions in class about what this exploration will be about, but the emphasis has really been on something that interests them. Having students be curators of their own ‘interesting-stuff’ collection now seems the most obvious way to get them started.

## Picasso’s Bull – Not Just for Design Thinking

I came across the New York Times article on the Apple’s training program and its use in describing their design process. I hadn’t seen it before, but saw it also as a pretty good approximation for mathematical abstraction.

I used the lithographs 1 – 11 from http://artyfactory.com/art_appreciation/animals_in_art/pablo_picasso.htm and put them together like this:

We have shortened classes tomorrow (20 minutes) and I think it might be good material for a way to introduce the philosophy of the IB Mathematics and Math 10 courses. Some potential questions floating in my head now:

• How does this series of images relate to thinking mathematically?
• What does the last representation have that the first representation does not? How is this similar to using math to model the world around us?
• Can you do a similar series of drawings that show a similar progression of abstraction from your previous math classes?

This seems to be a really interesting line of thinking that connects well to the theory of knowledge component of the IB curriculum. I see this as a pretty compelling story line that relates to written representation of numbers, approximations, and the idea of creating mathematical models. Do you have other ideas for how this might be used with students?

## tl;dr A Project Proposal:

I’d like to see expert ‘knowers’ in different fields each record a 2-4 minute video (uploaded to YouTube) in which they respond to one of the following prompts:

• Describe a situation in which a simple change to what you knew made something that was previously impossible, possible.
• Describe a moment when you had to unlearn what was known so that you could construct new ideas.
• What misconception in your field did you need to overcome in yourself to become successful?

I think that teachers model knowledge creation by devoting time to exploring it in their classes. I think we can show them that this process isn’t just something you do until you’ve made it – it is a way of life, especially for the most successful people in the world. I think a peek behind the curtain would be an exciting and meaningful way for students to see how the most knowledgeable in our society got that way.

## Long form:

One thing we do as teachers that makes students roll their eyes in response is this frequent follow up to a final answer: How do you know?

This is a testament to our commitment to being unsatisfied with an answer being merely right or wrong. We are intensely committed to understanding and emphasizing process as teachers because that’s where we add the most value. Process knowledge is valuable. An engineering company can release detailed manufacturing plans of a product design and know they will remain profitable because their value is often stored within the process of building the product, not the design itself. This is, as I understand it, much if the power of companies dealing in open source technologies.

In a field like ours, however, students often get a warped sense of the value of process. They don’t hear experts talking about their process of learning to be experts, which inevitably involves a lot of failure, learning, unlearning, and re-learning. In some of the most rapidly changing fields – medicine, technology, science for example – it is knowledge itself that is changing.

An important element of the IB program is the course in Theory of Knowledge (abbreviated TOK). In this course, students explore the nature of knowledge, how it represents truth, how truth may be relative, and other concepts crucial to understanding what it means to ‘know’ something to be true. From what I have heard from experienced IB educators, it can be a really satisfying course for both teachers and students. Elements of TOK are included as essential parts of all of the core courses that students take.

I can certainly find lots of specific ways to bring these concepts up in mathematics and science. Creating definitions and exploring the consequences of those definitions is fundamental to mathematics. Newton ‘knew’ that space was relative, but time was absolute. Einstein reasoned through a different set of rules that neither was absolute. These people, however, are characters in the world of science. Their processes of arriving at what they knew to be true don’t get much airtime.

What if we could get experts in fields talking about their process of knowing what they know? What if students could see these practitioners themselves describing how they struggled with unlearning what they previously believed to be absolutely true? I see only good things coming of this.

What do you think? Any takers?