Computational feasibility



Your experiments should be computationally feasible. If you ignore these issues, you will probably not get any results. 



Intended for: BSc, MSc, PhD

You should learn to first start small, and then gradually scale up. The latter requires you to quickly estimate the expected computational load of your experiments, and (possibly) to find your required computational resources. 

Start small


If your method does not work in a small task, it will certainly not work in a big task.


You always start too big. 

A typical experiment: 


Why you need to start small.

The solution to the above problem is really simple: always start with small scale experiments, and only gradually scale up. There are two reasons: 

Note: Starting with a small task may seem boring, but (trust me from personal conversations that) even the most high-end AI publications were first tested in small problems. 


Find the right small task.

With the rise of deep learning it sometimes seems as if only high-dimensional problems matter. However, tasks can be difficult in various ways, and dimensionality is only one of them. Try to find a low dimensional task that still captures the problem your are trying to solve. Examples: 


Scale up. 


Estimate the expected computational cost

A crucial step in any experimental cycle is getting an estimate of the expected total computational cost of your experiments. This way you ensure that your project is feasible.


 


Example

Computational resources

Quite soon your experiments become infeasible to run on your own device. There are several third-party options: