Dr. Aaron Andalman is a computational neuroscientist turned entrepreneur who has a deep understanding of both biological and artificial neural networks. He is currently the Chief Science Officer and co-founder at Cognitiv, a company that helps marketers place ads using artificial intelligence algorithms.
STEM to the Sky
Apr 6, 2021
My name is Aaron Andalman, and I am a computational neuroscientist turned entrepreneur. I am currently the Chief Science Officer (CSO) at Cognitiv, a company that I co-founded with Marc Hudacsko and Jeremy Fain, former classmates whom I grew up with. As the CSO, I manage a team of machine learning scientists and engineers who take the latest developments in the field of machine learning to build systems that bid intelligently in real-time auctions relating to advertising and marketing.
In college, I majored in computer science. College was mostly an experimental period for me. Grad school laid the foundation for what I’m doing now. I ended up in a wet lab studying how songbirds (in particular, the zebra finch) learn their songs. Their songs aren’t innate; they learn to imitate the song of a tutor bird. We were doing neuroscience to figure out how neural circuits in the brain encode the tutor song and then use that memory to practice singing, learning through the feedback loop of listening to yourself. It’s an amazing system and a really great example of biological learning.
Back then, we were thinking about neural networks, learning, and just getting deep into the subject of machine learning and computational neuroscience. That’s still my interest today. I still use those skills as an entrepreneur: reading papers, communicating ideas, and deciding what the interesting problems to pursue were.
During the immediate post-college period when I was figuring out my interests, I was working at a startup.
I have always loved computer science; I think of programming as like a superpower, letting you take the amazing computing power and applying it to whatever you want. But, I didn’t really feel like I had a subject matter that I was an expert in that I could apply computer science to. While I liked my job at the startup, I realized I wanted to define my own path that I could integrate my computational background into.
Neuroscience seemed like a great fit. It’s like a metaphor because in some ways the brain is a computer; it’s like using computers to understand these biological computers that we all have. Neuroscience was a field that related to my natural skill set in computer science but was also really interesting from a biological perspective. It was an area of science that was medically relevant, inspiring to me, and related to computing.
At the time, I was a postdoc at Stanford, studying biological neural networks and how they compute. I was working in a model system, the zebrafish, which is incredibly powerful because it lets you image all the neurons in the brain, in a living animal while it performs a behavior.
One of the challenges there was once you get this data, how do you understand it? There were a lot of exciting things happening in the field of artificial intelligence, and these neural networks can help us understand complex datasets and find patterns in that data.
I got really interested in those techniques and started reading papers that were coming out of DeepMind and Google Brain. I started thinking about how these new techniques applied to my current research and what applications they might have in industry.
I happened to reconnect with Marc and Jeremy over a holiday break. They told me about their ambitions with regards to starting a company, and it got me thinking of the things I’ve been reading about.
The types of problems that Marc and Jeremy were telling me were about these marketplaces in the world of advertising. Instead of an advertiser buying advertisements in bulk, they would buy them one by one very precisely in order to tailor them to the individual consumer.
I told them that some of the machine learning technology I was interested in could really be applied to that problem. They agreed with me, and that’s how we got started. That was back in 2015. We’re now 50 people and doing really well as a company!
My broad responsibility is to build the models that we need to succeed in the competitive marketplace.
Say you visit a particular website, and an ad is about to show up. There will be an auction where many different advertisers can bid to put an ad in that spot, and they get ~4 milliseconds to decide how much they want to bid. Then all the advertisers bid, and whoever bids the most gets to show the ad. Obviously, a human can’t make that decision.
I have a team of machine learning scientists and engineers who think about how to best model that problem. We first try to get the data organized in a way that we can use to build the models we need. Then, we test those models in production. It is a feedback loop, and we’re constantly continuing to make progress on that difficult problem.
When this technology first arrived, there were very simplistic algorithms to decide how much to bid. Now, it’s a competitive evolution of different companies trying to figure out the best way of answering that question quickly. We are at the forefront, applying the latest technology in machine learning to answer that question as accurately as possible.
I really enjoy collaborative problem-solving. I’ve always been a person who thinks best when I’m talking to someone else. I have lots of one-on-one meetings with our scientists, where we just update each other on what’s going on and brainstorm possible approaches. Sometimes, you have an epiphany moment, which is always super rewarding.
It’s hard to compare. I feel like my current role is actually a lot like academia in the sense that we’re trying to solve hard problems and reading academic research papers. But, the end goals are different. In industry, we’re not necessarily trying to publish, but we’re trying to build something that works, is successful for our clients, and helps our company grow.
In academia, at the postdoc or grad student level, there’s both a camaraderie and competitiveness. Everyone in a lab is competing to have the best research in order to reach the professor level. In industry, everyone’s interests are a little better aligned because the goal is to have the whole company succeed.
The flip side is that in academia, while slightly constrained by the grant readers and the deciders of funding, you can pursue whatever research question you are interested in. In industry, I think the constraints are a bit greater in that the problems you think about have to stay consistent with the company’s goals.
I. Communication: communicating ideas effectively to clients or the rest of the team
II. Management skills: understanding the career development goals of your employees and figuring out how the company’s goals can align with their goals
III. Interviewing: interviewing well from an interviewer’s perspective and making good assessments based on those interviews
My day starts with a stand-up, which is a small short meeting where we all just greet each other and briefly discuss our plans for the day and whether or not there are any blockers.
Everyday is different, but I might have a larger, cross-discipline meeting between our data science team and our operations team (client-facing people) where we sync up and make sure everything is working properly.
Then, I might have a leadership call with Marc and Jeremy (department heads) just to make sure information is flowing between departments.
Sometimes, we have our weekly lab meeting, called model talk, where one member of the R&D (research and development) team might present what they’ve been working on the last six weeks and get feedback.
Then, I’ll have a couple of one-on-ones where we really dig deep into their projects. We look at plots and tables, think about what they mean, and decide whether our current plan is still correct or if we need to reconsider.
I usually try to block off a little time in the afternoon just to consolidate everything that happened in the morning meetings.
For machine learning, there are fantastic Python packages like SciKit Learn and powerful deep learning frameworks like Google’s TensorFlow and Facebook’s PyTorch.
I would advise you to just get your hands dirty. The more hands-on experience you have with solving those problems, the deeper your understanding will be.
The amazing thing about neuroscience is that it’s incredibly interdisciplinary. The field is huge and there are plenty of disciplines involved:
Where computer science and neuroscience intersect is a super interesting place to be. If that’s what you’re interested in going into, then you definitely want to have a biology background to understand what’s giving rise to the data.
You also need the computer science skills to handle the enormous datasets that are generated and to think through how to make heads or tails of that data. There’s a lot of development needed in that space to give us the tools we need to understand the data we’re generating.