mozillo@home:~$

  • Post Doctoral Fellowships Opportunities in Data Science

    Since I’m on the search for new opportunities in data science for my life post PhD, I decided to compile a list of postdoctoral fellowships and share it with everyone. The current COVID-19 situation has triggered a hiring freeze on many institutions around the world. Yet, some positions are still...

  • NumPy Fundamentals for Data Science and Machine Learning

    Note: If you prefer to read with a white background and black font, you can see this article in GitHub here. Las time I check SVG images rendered just fine. It is no exaggeration to say that NumPy is at the core of the entire scientific computing Python ecosystem, both...

  • The Data Science Tree of Knowledge - What is Data Science and How to Educate Data Scientists

    TL;DR Here it is: Now the essay. Data Science challenges As with any other science-based discipline, Data Science tools and core of knowledge changes constantly. During my sociology, public policy, and psychology studies, I quickly learned that research perpetually redefines the boundaries of knowledge. Through friends in fields like physics,...

  • Why Do I Create Free Data Science and Machine Learning Educational Content - For Revenge

    Why do I spend so much creating freely accessible educational content on data science? Many reasons. The most immediate are my professional development (teaching others is the best way to learn “for me”), to showcase my skills to potential employers, and because I just like it. But there is another...

  • Introduction to the UNIX Shell (Bash)

    TL;DR sections: What is the UNIX shel Why to use the UNIX shell A curated list of basic shell commands The rest of the content is really useful, but not strictly required to use the shell. NOTE 1: Apologies for typos and misspelled words in advance. This document has not...

  • Introduction to Jupyter Notebooks - set-up, user-guide, and best practices

    Notes: This tutorial contains video-lessons at the end of each section The Jupyter Notebook version can be found in my GitHub here IDEs: Integrated Development Environments There are several ways in which we can interact with Python: Via the terminal in Python interactive mode Via the terminal by running Python...

  • Introduction to Linear Algebra for Applied Machine Learning with Python

    Linear algebra is to machine learning as flour to bakery: every machine learning model is based in linear algebra, as every cake is based in flour. It is not the only ingredient, of course. Machine learning models need vector calculus, probability, and optimization, as cakes need sugar, eggs, and butter....

  • Introduction to Linear Regression - mathematics and application with Python

    Linear regression is among the most widely used tools in machine learning. Linear models are linear simply because the outputs are modeled as linear combinations of input vectors. Hence, we want to learn a function $f$ that describes with as little error as possible, the linear relationship between inputs and...

  • The Recurrent Neural Network - Theory and Implementation of the Elman Network and LSTM

    Learning objectives Understand the principles behind the creation of the recurrent neural network Obtain intuition about difficulties training RNNs, namely: vanishing/exploding gradients and long-term dependencies Obtain intuition about mechanics of backpropagation through time BPTT Develop a Long Short-Term memory implementation in Keras Learn about the uses and limitations of RNNs...

  • The Convolutional Neural Network - Theory and Implementation of LeNet-5 and AlexNet

    Learning objectives Understand the principles behind the creation of the convolutional network Gain an intuitive understanding of the convolution (feature map) and pooling (subsampling) operations Develop a basic code implementation of the LeNet-5 and AlexNet networks in Python Identify the similarities and differences between human vision and convolutional networks Historical...

  • The Multilayer Perceptron - Theory and Implementation of the Backpropagation Algorithm

    Learning objectives Understand the principles behind the creation of the multilayer perceptron Identify how the multilayer perceptron overcame many of the limitations of previous models Expand understanding of learning via gradient descent methods Develop a basic code implementation of the multilayer perceptron in Python Be aware of the main limitations...

  • The ADALINE - Theory and Implementation of the First Neural Network Trained With Gradient Descent

    Learning objectives Understand the principles behind the creation of the ADALINE Identify the similarities and differences between the perceptron and the ADALINE Acquire an intuitive understanding of learning via gradient descent Develop a basic code implementation of the ADALINE in Python Determine what kind of problems can and can’t be...

  • The Perceptron - A Guided Tutorial Through Its History and Implementation In Python

    Learning objectives Understand the rationality and principles behind the creation of the perceptron Identify the main elements of the perceptron architecture Gain an intuitive understanding of the mathematics behind the perceptron Develop a basic code implementation of the perceptron Determine what kind of problems can and can’t be solved with...

  • The McCulloch-Pitts Artificial Neuron Model - Theory and Implementation

    History and definition Alan Turing’s formalization of computation as Turing Machines provided the theoretical and mathematical foundations for modern computer science1. Turing Machines are an abstraction of a general computation device. Turing (1937) described these machines as composed by an “infinite tape” made of “cells” (divided into squares), a “tape...

  • How to Create a Jupyter-Book Website From Scratch

    So, you want to build a website? I recently used the jupyter-book package to build an on-line book version of one of my projects. This package simplifies the creation of websites hosting interactive Jupyter Notebooks, by providing a series of scripts that will transform your Notebooks into Jekyll pages. Jekyll...

  • About the nature and utility of computational models of cognition

    What are computational models of cognition? To explain what computational models of cognition are, It is useful to state first what they are not: computational models of cognition are not exact replicas of the human mind, in the same manner, that city-maps are not exact replicas of real cities. The...

  • The rise, fall, and resurgence of computational cognitive science

    Understanding human cognition has been one of the main driving forces behind over a century of research in psychology. Mathematical approaches in the study of cognition date from as early as the 19th century, when researchers like Ernst Heinrich Weber developed mathematical models describing the so-called “just-noticeable difference” effect, the...