# Memos on Artificial Intelligence, Machine Learning, Deep Learning, and Big Data

- Transfer

For several months we have been collecting memos on artificial intelligence, which we periodically shared with friends and colleagues. Recently, a whole collection has developed, and we have added descriptions and / or quotes to the memos to make it more interesting to read. And in the end, you will find a selection of complexity "O big" (Big-O). Enjoy it.

*UPD Many pictures will be more readable if you open them in separate tabs or save to disk.*

## Neural networks

*Neural Network Memo*

#### Neural network graphs

*Memo on the charts of neural networks Memo on the charts of*

*neural networks*

## Machine Learning Overview

*Machine Learning Guide*

#### Scikit-learn algorithm

This machine learning guide will help you find the right algorithm for grading, which is the most difficult part of the job. The flowchart will help you check the documentation and set a general direction for each algorithm. This will help you better understand the problems you are facing and how to solve them.

**Scikit-learn**(formerly known as

**scikits.learn**) is a free machine learning library for Python. It includes various types of classification , regressions, and clustering algorithms , including the support vector method , Random forest algorithm (“random forest”), gradient boosting ,

*k-*means methodand DBSCAN . Scikit-learn is designed to interact with the Python NumPy and SciPy computing and scientific libraries .

*Scikit-learn memo*

## Machine Learning Algorithm Guide

This Microsoft Azure memo will help you choose the right machine learning algorithms for your predictive analytic solution. First, the memo asks about the nature of the data, and then advises the best algorithm.

#### Python for Data Science

*Python Memo for Data Science*

*Big*

*Data*

*Memo*

#### Tensorflow

In May 2017, Google announced the second generation TPU, as well as their availability in the Google Compute Engine . Second generation TPUs have a performance of up to 180 teraflops, and with 64 TPU clustering up to 11.5 petaflops.

*TensorFlow Memo*

#### Keras

In 2017, the TensorFlow team at Google decided to integrate Keras support into the TensorFlow core library. Chollet explained that Keras is an interface rather than an end-to-end machine learning system. It provides a higher-level, more intuitive set of abstractions that simplifies the configuration of neural networks, regardless of the scientific computing library used in the backend.

#### Numpy

NumPy is for Cpython , a reference Python implementation that is a non-optimizing bytecode interpreter. The mathematical algorithms written for this version of Python often work much slower than compiled counterparts. The NumPy library partially solves the speed problem due to multidimensional arrays, as well as functions and operators optimized for working with arrays. It will be necessary to rewrite part of the code using NumPy, mostly internal loops.

*Numpy Memo*

#### Pandas

The name “Pandas” comes from the econometric term “ panel data ”, which is used for multidimensional structured data sets.

*Pandas Memo*

## Data wrangling

Data Wrangling (

*“grazing” data, primary data processing*) - this term begins to penetrate into pop culture. In the 2017 film Kong: Skull Island, one of the characters is introduced as Steve Woodward, our data wrangler.

*Memo by Data Wrangling*

*Memo by Pandas Data Wrangling*

#### Data Wrangling with dplyr and tidyr

*Data Wrangling memo with dplyr and tidyr*

*Data Wrangling memo with dplyr and tidyr*

## Scipy

SciPy is based on a NumPy array object. This library is part of the NumPy stack, which includes tools such as Matplotlib , Pandas and SymPy , as well as an expanding set of libraries for scientific computing. The NumPy stack and MATLAB , GNU Octave, and Scilab applications have the same user audience. The NumPy stack is also sometimes called the SciPy stack.

*Scipy Memo*

## Matplotlib

Matplotlib is a graphing library for Python and its computational mathematical extension NumPy. It provides an object-oriented API for embedding graphs in applications using universal GUI tools such as Tkinter , wxPython , Qt , or GTK + . There is also a state machine based pylab procedural interface (such as OpenGL) designed to look like MATLAB , although its use is not recommended. SciPy uses matplotlib.

Pyplot is a matplotlib module that provides an interface like MATLAB. Matplotlib is used in the same way as MATLAB, allows you to use Python, and also free.

*Matplotlib Memo*

## Data visualization

*Memo for data visualization*

*Memo for ggplot*

## Pyspark

*PySpark Memo*

## “Oh Big” (Big-O)

*Memo by the complexity of algorithms*

*Memo by the complexity of algorithms*

*Memo by the complexity of operations with data structures in algorithms*

*Memo by the complexity of algorithms for sorting an array*

## Sources

Guide to the complexity of algorithms

Poster Bokeh

Guide to Data Science

Guide to Data Wrangling

Poster Ggplot

Poster Keras

reminder of machine learning

memo on machine learning

memo on machine learning

Poster Matplotlib

reminder of neural networks

memo on graphs of neural networks

Neural networks

Poster Numpy

reminder of Pandas

Memo by Pandas

Memo by Pyspark

Memo by Scikit

Memo by Scikit-learn

Memo by Scipy

Memo by TensorFlow