DataChats | Episode 11 | An Interview with Ben Wilson

Ben Wilson, a data scientist at Berlin-based Lateral, explains unsupervised learning and his favorite method, non-negative matrix factorization, which he uses to extract topics from text and cluster data. He walks through his Python stack: Jupyter, Pandas, NumPy, scikit-learn. His advice to beginners: combine learning with hands-on practice and get a data job early.
Chapters
All right. Welcome, Ben.
Thanks, Igor.
Just thought I'd let you all out there, know that today we've been filming unsupervised learning in Python course with Ben Wilson. It is now.
What time is it in Berlin?
It's 9:30am in Berlin, where Ben lives, it's 9:30am it's here too. 2:30. So maybe it's 8:30 there.
Maybe it's 8:30.
Anyway, we've been filming for very many hours. It's 2:30am where we are in Cambridge, the beautiful, beautiful town of Cambridge, Massachusetts.
You're sounding tired, Hugo.
I'm tired. I'm getting sick. But that's never stopped me before, and it won't now. But we thought we'd take this opportunity, after such a fun day of recording, to have a chat about the process and about what Ben's interested in. So maybe you can start by telling us a bit about yourself, Ben.
Sure. Yeah. So my name is Ben Wilson. I'm a data scientist and mathematician. I'm in charge of the machine learning at a small company in Berlin called Lateral. We do machine learning with text and user behavior data to make recommendations.
Fantastic. So would you call yourself a data scientist?
Sure, sure.
And what does that mean to you? I promised Ben I wouldn't ask him that question. But what is data science? Give us an idea of what data science is in your mind.
Yeah. So data science for me is about extracting insights from data. The distinction I draw is data science is often about extracting insights from data from, for people, whereas machine learning is often discovering patterns in the data and using that to make automated decisions. But there's massive overlap between the two. I feel there's some confusion between the two terms, but that's how I define the two things. Data science and machine learning.
Nice. And of course, data science encompasses a lot of things besides machine learning, right?
Absolutely. Yeah.
So not only the, you know, reporting or getting insight from your data per se, but all the, you know, getting the data into the correct form, data manipulation, all of these early steps as well. Right.
Where we spend a lot of our time, most of our time, hard work.
Great. What about the role of statistics?
The role of statistics? Well, super important. I mean, I guess we all need a basic understanding of what we're doing in order to make informed decisions and get things right. Statistics is part of that.
Absolutely. Maybe you can tell me a bit about your relationship with Python.
Right. I guess when I started getting involved in machine learning, Python was the go to language. We've found it really useful for all sorts of things. From doing research in ipython and Jupyter notebooks, to implementation of back end machine learning systems, to serving those machine learning systems via an API to the general public. Python's been great, fantastic.
And so the course we've been filming today is unsupervised learning in Python. And when you and I started chatting about potential avenues for working together on a course, there are a variety of options. And I'd like to know why you jumped at unsupervised learning. In a lot of ways, I love it.
Yep. It's my bread and butter. It's what I've always done. I'm fascinated by the problem of trying to find patterns in data when you haven't got a specific task in mind. Like, it's a fundamentally difficult problem, but it's also, there are so many exciting applications and there's a ton of data that you can use for unsupervised learning, whereas data for supervised learning, good data sets can be harder to come by in a real world application setting. Unsupervised learning is great. I mean, it's fascinating when you're able to extract from data patterns which you weren't even aware existed and sometimes even explain your own behavior, for instance, in any e commerce system.
Yeah, absolutely.
Discover the cluster that you, you're contained in and find the product segment that contains all the products you're interested in.
Absolutely, yeah. And we get that every now and then when, you know, I think a lot of the recommendation systems online are relatively coarse grained and kind of, you know, they go towards the central tendency as opposed to representing the spread. But every now and then you do get these recommendations where you're like, whoa, you know, I think Spotify.
Yes, sometime. Yep.
They, absolutely. So something I've really enjoyed about working on this course with you is all the fascinating examples of unsupervised learning with different real world data sets that you've come up with and brought to the table. So maybe you could tell us a bit about that, what you're interested most in kind of the plethora of data sets that we see.
Hmm, right. Well, look, it's a great question. I mean, I guess I've always been like, my favorite unsupervised learning algorithm would have to be non negative matrix factorization. When I saw that for the first time and I saw the examples of its application, I knew I was hooked. And I've spent an enormous amount of time understanding how to use techniques like this better and how to find patterns in Data, the way it can decompose images into commonly recurrent components, I find fascinating. Or that example where it decomposes images of faces into sort of a police identity kit of eyebrows and noses and ears and so on.
Absolutely. And what about topics in corporate texts?
Sure. I mean, that's of massive interest to me personally and also to my company, Lateral, where, you know, we work with text all the time.
So that's great. And for the. For the viewers out there, the non negative matrix factorization chapter is chapter four of Ben's unsupervised learning course. So, you know, it's really go through the gauntlet to taste all the delicious fruits.
There's some goodies along the way. It has to.
There are a lot of goodies. Absolutely. Please.
I was going to say the stock market clustering is a good one. Or the clustering of countries according to their behavior at the Eurovision contest.
It's incredible.
This year.
That's a nice taste of hierarchical clustering, for those of you who know that. That's very cool. So maybe you can tell us about. We discussed Python briefly, but as a Pythonist, maybe you can tell us about what type of packages you're most interested in, what you use on a daily basis.
Yeah, sure. They're good questions. Yes. I mean, when I'm sort of in a hacker mode in the Jupyter notebook, it's Pandas, Numpy Scikit Learn all the Way. I'm not particularly sophisticated in plotting. That's definitely an area in which I could improve, I feel. But there's great packages out there for that.
Of course, there are some great data camp courses.
Great data as well, which I should probably sign up for. Absolutely.
I think I gave you a subscription, actually.
You did, in fact. I will improve my knowledge of plotting.
Fantastic.
And then there's a whole bunch of Python packages we use for ingesting and wrangling data. So, like this scrapy, beautiful soup for pulling apart XML and HTML. Yeah. I mean, there's a whole ecosystem of stuff out there. Yeah, Python's great. Almost anything you turn your hand to, someone's had a crack at it before and there's a library out there that gives you at least a starting point, if not like a fully fledged implementation.
Absolutely. So an old friend of mine, who actually, I mentioned you a number of times, Justin Boyce, who created our statistical thinking in Python courses, someone asked him once, what do you like about Python? And his response was, well, it's a Swiss army knife. That's what I like about won't always be the very best tool you can use for a specific problem. But throw a problem at me and I can probably do it with Python.
Yep, yep. I think the thing that makes Python particular in the data science and machine learning ecosystem is the community. There are all these. There are a whole bunch of languages that can do all the stuff that Python can do, but they're not as useful for machining or data science because we all use Python. There are people out there writing open source software that can do anything you can think of, and a huge amount of it's in Python. It's the go to option.
Absolutely. This has been a great conversation. I've got one final question for you.
Before you go to bed.
Yeah, exactly. Before I wake up. So a lot of our audience are budding data scientists who really are very interested in improving their skills, their hacking skills, their data science skills. I was just wondering for beginners, if you had any advice.
Yeah, sure. Okay. The first thing I'd say is datacamp is really good for this. You want to mix learning with doing. Like data science, it's not a spectator sport. You've got to get in there and get your hands dirty. Take the data sets from the videos, take the data sets from the exercises, play around with them yourself and try and construct some data sets of your own. And the second thing I'd suggest is don't hesitate to go and get a job as soon as you can. Data scientists are in huge demand. There's so many great problems that you can help solve with real world data and there's no better way to be encouraged and feel useful than to get out there and try and solve these problems. That'd be my suggestion.
That sounds like great advice to me.
Get busy.
Yeah, I like it. So if you could distill it down to two words.
Two words.
Get busy.
Get busy.
Fantastic. Real pleasure, Ben.
Thanks, Hugo.
Cheers.
More from Richie

#359 My Best Friend is AI with Valerie Tiberius, Professor of Philosophy at University of Minnesota

How AI Agents Will Work While You Sleep | Ruslan Salakhutdinov, Professor at Carnegie Mellon

#358 How AI Agents Will Work While You Sleep | Ruslan Salakhutdinov, Professor at Carnegie Mellon







