Uncertainty is the bread and butter of good scientists

Photo by Alexis Gethin on Unsplash

Many people view science as the business of establishing absolute certainty. They see scientists as binary creatures: As believing only what they can prove, accepting only “hard facts.”

Maybe this view is confounded by their recollection of high-school mathematics. Here, we drew up crystal-clear definitions and axioms and then applied chains of logical deductions to derive theorems from them. In the vast majority of cases, we can prove or disprove a statement — its truth is mostly¹ binary.

Empirical sciences use the language and methods of mathematics. To make a claim testable, it has to be expressed as precisely as…

Advanced Philosophy

What does it mean to be a conscious being?

Photo by Simon Wijers on Unsplash

A philosophical zombie is a hypothetical human being who walks, talks, and behaves exactly the same as a normal person; we could subject it to brain scans or to any imaginable examination, and we couldn’t find anything unusual. However, even if it pretends to the contrary, what makes it a zombie is that it lacks consciousness (or, as the philosophers say, qualia): a subjective, inner world of experiences.

Our personal introspection strongly convinces us that we are not zombies ourselves; we know first hand “what it is like” to be us. So could we spot a philosophical zombie if it…

Some of our insights from developing a PyTorch framework for training and running deep learning models …

My wonderful colleagues at Atomwise and I have written a production-level PyTorch framework for training and running deep learning models. Our application centers on drug discovery — predicting whether a molecule inhibits the activity of a protein by binding to a pocket. The goal was to have a stable yet flexible platform to support both machine scientists in training and experimenting, and medicinal chemists in applying them as part of their production workflow.

Iterative improvement and “continuous refactoring” are ubiquitous in software development, and we were no exception. The first version was far from perfect; but looking at use cases…

Simple utilities for statistics collection

A typical PyTorch training loop contains code to keep track of training and testing metrics; they help us monitor progress and draw learning curves.

Let’s say for a classification task, we are using binary cross entropy as training loss, and we are also interested in accuracy. After each epoch, we measure the same on a held out validation data set. We want to write periodic progress information to the console as well as to Tensorboard (or any other of your favorite dashboard tools).

Note the pattern of recording a number of successive values, then computing statistics over it. While…

A configurable, tree-structured Pytorch sampler to take advantage of any useful example metadata

Photo by Christina Winter on Unsplash

When you are building your awesome deep learning application with PyTorch, the torchvision package provides convenient interfaces to many existing datasets, such as MNIST and Imagenet. Stochastic gradient descent proceeds by continually sampling instances into mini batches. In many cases, you don’t have to lose sleep over it and can stick with the default behavior: Go through the list of images one-by-one, and reshuffle the list after every epoch. If you never had reason to modify that in your modeling experience, you can stop reading here.

However, when you are working on your own custom dataset that you aggregated and…

This post is intended for my fellow machine learning engineers who are curious about applications in medicine, biology, or chemistry, but without a prior formal background in these fields. I have been in this position myself; my goal In this post is to give you a concise starting point into the field of drug discovery.

In the first part, I sketched the “what” of machine learning in drug discovery: its objectives and role within the drug research pipeline, types and quality of experimental data, benchmarks and evaluation metrics. That set the scene for the present post, where we are going…


Having applied machine learning to search and advertising for many years, two years ago I was ready for a transition to something new. In particular, the field of life sciences seemed to stand out as an opportunity to have a rewarding and positive impact. I was excited to join Atomwise, working on deep learning for drug discovery.

Deep neural networks started to become particularly popular around 2012, when researchers from the University of Toronto [Krizhevsky et al, 2012] won the ImageNet Large Scale Visual Recognition Challenge (ILSVRC). In recent years, this brand of machine learning techniques has revolutionized several artificial…

Stefan Schroedl

Head of Machine Learning @ Atomwise — Deep Learning for Better Medicines, Faster. Formerly Amazon, Yahoo, DaimlerChrysler.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store