Help Machines Help You
Phones are not tiny computers. Phones are jampacked with sensors.
…so what are they?
In the video Introducing the Awareness API, an easy way to make your apps context aware, Android developers Bhavik and Maurice talk about the different APIs they’ve developed that, to put the incredible things they’ve developed very simply, make our devices smarter. The repercussion of such an intelligent device is that users are better served, and hopefully, happier.
Adobe is using AI to enhance the workflow of creatives. Using the aptly named Sensei, they’re doing this by attempting to be at least one step ahead of the artist and understand what they would naturally want to do next in a project, and just as importantly, what they don’t want to do.
AI is making our devices smarter, making them satisfy our needs better, and making them respond to our actions and feelings better than ever before. And in order to do this, we need to understand what is important to people.
So how do we do this? What information does AI need to learn and know in order to provide for specific people in specific situations? How do we feed the AI the necessary information to solve human problems when, in most cases, humans struggle to do it themselves? And how do we figure out what that necessary knowledge is?
This line of thinking takes me back to that old saying, “Those who can’t do, teach.” I don’t actually believe in that saying in the majority of situations, but maybe in this case it holds some grit.
I’ve been thinking about this A LOT lately. My latest project involves using human conversations with AI to improve dating apps. Essentially, my end goal is to create an AI matchmaker. So what does one need to know in order to be a good matchmaker? Off the top of my head, I’d assume that a good matchmaker understands people, psychology, biology, sociology, culture, basic morals and values, and maybe even beauty. These are things humans start learning from birth, and we have our entire lives to develop deeper understandings of all of it. But how in the heck do you teach this to a machine that may only be days or even hours old?
Fortunately for me, there are folks out there who have a much better grasp on all of this than I do, and they want to share their knowledge and research.
DataRobot is a platform that automates the “analysis of data to answer questions about customer behavior and the design of different policies” for Farmers Insurance. How it works : You feed in raw data, and the platform automatically cleans and reformats it. Then it runs dozens of different algorithms at once against it, ranking their performance. (source) It takes data science to a whole other level. From where I’m sitting, it’s not crazy to think that we could use the same technology that’s used in insurance companies when analyzing potential dating matches.
So analyzing the data is a feasible task. But that still doesn’t answer the question about what to feed the machine.
The short answer : data.
The long answer : a crap ton of data
Machinelearningmastery.com did a nice job at breaking it down, even though much of this explanation still left me a little lost. (that’s why I don’t make the big bucks in this industry…yet)
So, how much data do you need?
- It depends. How much data you need is unknowable: an intractable problem that you must discover answers to through empirical investigation.
2. Reason by analogy. Look to research done by others to help you find a solution that works best for your project.
3. Use domain expertise. You need a sample of data from your problem that is representative of the problem you are trying to solve. There needs to be enough data to reasonably capture the relationships that may exist both between input features and between input features and output features.
Ok, so far so good, I’m following…
4. Use a statistical heuristic.
5. Nonlinear Algorithms Need More Data
6. Evaluate Dataset Size vs Model Skill
…say what?…and now I’m really beginning to understand why those with knowledge in this field are so valued.
7. Naive Guesstimate
8. Get More Data (No Matter What!?)
And we’re back, I understand this. But I still wonder if any amount of data collected from any number of topics is enough to simulate human emotion well enough that a machine can help us find our life partner.
I guess there’s only one way to find out. Time to start collecting!