Architecture vs Algorithm

There are many deep learning (DL) architectures, artificial neural networks (ANNs) in general, and some optimization algorithms (OAs) for training them. There hasn’t been much interest in inventing new OAs as there has been for ANNs. That is why there have been many DL-archs versus one or few optimizers, all of which are based on some form of gradient descent. But why is it…

Read MoreArchitecture vs Algorithm

A Student’s C Book I

Level 1. Introduction to C Table of Contents Level 1. Introduction to C 1. Hello, World! Computers talk with commands. Computers have their own command vocabulary. Hello, World! 2. Basics Your computer can memorize things Equality in programming is not the same as equality in mathematics Your computer can “talk” and “listen” The printf(…) function The scanf(…) function Compiling and Running programs Linux (Ubuntu) MacOS Windows (don’t use…

Read MoreA Student’s C Book I

A Student’s C Book: 1.7. Data Structures

Level 1. Introduction to C 1.7. Data Structures All variables in one place Being able to represent integers, floating-point numbers, characters, and pointers (i.e., memory addresses) is cool. But what if you wanted to represent more complex and/or abstract objects? To illustrate it with a practical example, let’s suppose that we want to represent a person by storing his/her age, gender, heigh, weight, and…

Read MoreA Student’s C Book: 1.7. Data Structures

A Student’s C Book: 1.4. Control Flow

Level 1. Introduction to C 1.4. Control Flow Branching is a strategy to make perfect plans in the imperfect or incomplete world. The control flow of a program execution is the path of sequential instructions the computer executes while running the program. So far, you have seen a linear and non-branching control flow where the computer executes each instruction in the main() function. However, we can…

Read MoreA Student’s C Book: 1.4. Control Flow

A Student’s C Book: 1.3. Functions

Level 1. Introduction to C 1.3. Functions I receive Inputs, You receive Output What is a function? Roughly speaking, in the mathematical sense, it is a mapping from some input space to some output space such that no two different output values correspond to the same input value. In programming, we also call inputs the arguments given to a function. In fact, we even…

Read MoreA Student’s C Book: 1.3. Functions