diff --git a/C1W3_Assignment.ipynb b/C1W3_Assignment.ipynb new file mode 100644 index 0000000..2bb78f7 --- /dev/null +++ b/C1W3_Assignment.ipynb @@ -0,0 +1,2202 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Linear Transformations and Neural Networks\n", + "# Outline\n", + "- [ 1 - Introduction](#1)\n", + " - [ 1.1 - Transformations](#1.1)\n", + " - [ 1.2 - Linear Transformations](#1.2)\n", + " - [ 1.3 - Transformations Defined as a Matrix Multiplication](#1.3)\n", + "- [ 2 - Standard Transformations in a Plane](#2)\n", + " - [ 2.1 - Horizontal Scaling (Dilation)](#2.1)\n", + " - [ 2.2 - Example 2: Reflection about y-axis (the vertical axis)](#2.2)\n", + " - [ 2.3 Stretching by a scalar](#2.3)\n", + " - [ Exercise 1](#ex01)\n", + " - [ 2.4 Horizontal shear transformation](#2.4)\n", + " - [ Exercise 2](#ex02)\n", + " - [ 2.5 Rotation](#2.5)\n", + " - [ Exercise 3](#ex03)\n", + " - [ Exercise 4](#ex04)\n", + "- [ 3 - Neural Networks](#3)\n", + " - [ 3.1 - Linear Regression](#3.1)\n", + " - [ 3.2 - Neural Network Model with a Single Perceptron and Two Input Nodes](#3.2)\n", + " - [ 3.3 Parameters of the Neural Network](#3.3)\n", + " - [ 3.4 Forward propagation](#3.4)\n", + " - [ Exercise 5](#ex05)\n", + " - [ 3.5 Defining the cost function](#3.5)\n", + " - [ Exercise 6](#ex06)\n", + " - [ 3.6 - Training the neural network](#3.6)\n", + "- [ 4 - Make your predictions!](#4)\n", + " - [ Exercise 7](#ex07)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Welcome to the third assignment of the Linear Algebra course! \n", + "\n", + "This assignment explores the foundational concepts of linear transformations and neural networks in two distinct parts. In the first section, we delve into linear transformations by creating functions to generate matrices for stretching, shearing, and rotation operations. The second part shifts the focus to neural networks, specifically implementing forward propagation in a simple architecture with two inputs and one perceptron. By dissecting these fundamental components, this assignment aims to provide a clear understanding of the role of linear algebra in both vector transformations and neural network computations." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import pandas as pd\n", + "import utils" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "import w3_unittest" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 1 - Introduction\n", + "\n", + "\n", + "### 1.1 - Transformations\n", + "\n", + "A **transformation** is a function from one vector space to another that respects the underlying (linear) structure of each vector space. Referring to a specific transformation, you can use a symbol, such as $T$. Specifying the spaces containing the input and output vectors, e.g. $\\mathbb{R}^2$ and $\\mathbb{R}^3$, you can write $T: \\mathbb{R}^2 \\rightarrow \\mathbb{R}^3$. Transforming vector $v \\in \\mathbb{R}^2$ into the vector $w\\in\\mathbb{R}^3$ by the transformation $T$, you can use the notation $T(v)=w$ and read it as \"*T of v equals to w*\" or \"*vector w is an **image** of vector v with the transformation T*\".\n", + "\n", + "The following Python function corresponds to the transformation $T: \\mathbb{R}^2 \\rightarrow \\mathbb{R}^3$ with the following symbolic formula:\n", + "\n", + "$$T\\begin{pmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}\\end{pmatrix}=\n", + " \\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix}\n", + " \\tag{1}\n", + " $$" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original vector:\n", + " [[3]\n", + " [5]] \n", + "\n", + " Result of the transformation:\n", + " [[ 9.]\n", + " [ 0.]\n", + " [-10.]]\n" + ] + } + ], + "source": [ + "def T(v):\n", + " w = np.zeros((3,1))\n", + " w[0,0] = 3*v[0,0]\n", + " w[2,0] = -2*v[1,0]\n", + " \n", + " return w\n", + "\n", + "v = np.array([[3], [5]])\n", + "w = T(v)\n", + "\n", + "print(\"Original vector:\\n\", v, \"\\n\\n Result of the transformation:\\n\", w)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 1.2 - Linear Transformations\n", + "\n", + "A transformation $T$ is said to be **linear** if the following two properties are true for any scalar $k$, and any input vectors $u$ and $v$:\n", + "\n", + "1. $T(kv)=kT(v)$,\n", + "2. $T(u+v)=T(u)+T(v)$.\n", + "\n", + "In the example above $T$ is a linear transformation:\n", + "\n", + "$$T (kv) =\n", + " T \\begin{pmatrix}\\begin{bmatrix}\n", + " kv_1 \\\\\n", + " kv_2\n", + " \\end{bmatrix}\\end{pmatrix} = \n", + " \\begin{bmatrix}\n", + " 3kv_1 \\\\\n", + " 0 \\\\\n", + " -2kv_2\n", + " \\end{bmatrix} =\n", + " k\\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix} = \n", + " kT(v),\\tag{2}$$\n", + " \n", + "$$T (u+v) =\n", + " T \\begin{pmatrix}\\begin{bmatrix}\n", + " u_1 + v_1 \\\\\n", + " u_2 + v_2\n", + " \\end{bmatrix}\\end{pmatrix} = \n", + " \\begin{bmatrix}\n", + " 3(u_1+v_1) \\\\\n", + " 0 \\\\\n", + " -2(u_2+v_2)\n", + " \\end{bmatrix} = \n", + " \\begin{bmatrix}\n", + " 3u_1 \\\\\n", + " 0 \\\\\n", + " -2u_2\n", + " \\end{bmatrix} +\n", + " \\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix} = \n", + " T(u)+T(v).\\tag{3}$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can change the values of $k$ or vectors $u$ and $v$ in the cell below, to check that this is true for some specific values." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "T(k*v):\n", + " [[ 42.]\n", + " [ 0.]\n", + " [-56.]] \n", + " k*T(v):\n", + " [[ 42.]\n", + " [ 0.]\n", + " [-56.]] \n", + "\n", + "\n", + "T(u+v):\n", + " [[ 9.]\n", + " [ 0.]\n", + " [-4.]] \n", + "\n", + " T(u)+T(v):\n", + " [[ 9.]\n", + " [ 0.]\n", + " [-4.]]\n" + ] + } + ], + "source": [ + "u = np.array([[1], [-2]])\n", + "v = np.array([[2], [4]])\n", + "\n", + "k = 7\n", + "\n", + "print(\"T(k*v):\\n\", T(k*v), \"\\n k*T(v):\\n\", k*T(v), \"\\n\\n\")\n", + "print(\"T(u+v):\\n\", T(u+v), \"\\n\\n T(u)+T(v):\\n\", T(u)+T(v))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 1.3 - Transformations Defined as a Matrix Multiplication\n", + "\n", + "Let $L: \\mathbb{R}^m \\rightarrow \\mathbb{R}^n$ be defined by a matrix $A$, where $L(v)=Av$, multiplication of the matrix $A$ ($n\\times m$) and vector $v$ ($m\\times 1$) resulting in the vector $w$ ($n\\times 1$).\n", + "\n", + "Now try to guess, what should be the elements of matrix $A$, corresponding to the transformation $L: \\mathbb{R}^2 \\rightarrow \\mathbb{R}^3$:\n", + "\n", + "$$L\\begin{pmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}\\end{pmatrix}=\n", + " \\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix}=\n", + " \\begin{bmatrix}\n", + " ? & ? \\\\\n", + " ? & ? \\\\\n", + " ? & ?\n", + " \\end{bmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\\n", + " v_2\n", + " \\end{bmatrix}\n", + " \\tag{4}\n", + " $$\n", + "\n", + "To do that, write the transformation $L$ as $Av$ and then perform matrix multiplication:\n", + " $$L\\begin{pmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}\\end{pmatrix}=\n", + " A\\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}=\n", + " \\begin{bmatrix}\n", + " a_{1,1} & a_{1,2} \\\\\n", + " a_{2,1} & a_{2,2} \\\\\n", + " a_{3,1} & a_{3,2}\n", + " \\end{bmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}=\n", + " \\begin{bmatrix}\n", + " a_{1,1}v_1+a_{1,2}v_2 \\\\\n", + " a_{2,1}v_1+a_{2,2}v_2 \\\\\n", + " a_{3,1}v_1+a_{3,2}v_2 \\\\\n", + " \\end{bmatrix}=\n", + " \\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix}\\tag{5}\n", + " $$\n", + " \n", + "Can you see now what should be the values of the elements $a_{i,j}$ of matrix $A$ to make the equalities $(5)$ correct? Find out the answer in the following code cell:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Transformation matrix:\n", + " [[ 3 0]\n", + " [ 0 0]\n", + " [ 0 -2]] \n", + "\n", + "Original vector:\n", + " [[3]\n", + " [5]] \n", + "\n", + " Result of the transformation:\n", + " [[ 9]\n", + " [ 0]\n", + " [-10]]\n" + ] + } + ], + "source": [ + "def L(v):\n", + " A = np.array([[3,0], [0,0], [0,-2]])\n", + " print(\"Transformation matrix:\\n\", A, \"\\n\")\n", + " w = A @ v\n", + " \n", + " return w\n", + "\n", + "v = np.array([[3], [5]])\n", + "w = L(v)\n", + "\n", + "print(\"Original vector:\\n\", v, \"\\n\\n Result of the transformation:\\n\", w)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 2 - Standard Transformations in a Plane\n", + "\n", + "As discussed above in section [1](#1), a linear transformation $L: \\mathbb{R}^2 \\rightarrow \\mathbb{R}^2$ can be represented as a multiplication of a $2 \\times 2$ matrix and a coordinate vector $v\\in\\mathbb{R}^2.$ Note that so far you have been using some random vector $v\\in\\mathbb{R}^2.$ (e.g. $v=\\begin{bmatrix}3 \\\\ 5\\end{bmatrix}$). To have a better intuition of what the transformation is really doing in the $\\mathbb{R}^2$ space, it is wise to choose vector $v$ in a less random way. \n", + "\n", + "A good choice would be vectors of a standard basis $e_1=\\begin{bmatrix}1 \\\\ 0\\end{bmatrix}$ and $e_2=\\begin{bmatrix}0 \\\\ 1\\end{bmatrix}$. Let's apply linear transformation $L$ to each of the vectors $e_1$ and $e_2$: $L(e_1)=Ae_1$ and $L(e_2)=Ae_2$. If you put vectors $\\{e_1, e_2\\}$ into columns of a matrix and perform matrix multiplication\n", + "\n", + "$$A\\begin{bmatrix}e_1 & e_2\\end{bmatrix}=\\begin{bmatrix}Ae_1 & Ae_2\\end{bmatrix}=\\begin{bmatrix}L(e_1) & L(e_2)\\end{bmatrix},\\tag{3}$$\n", + "\n", + "you can note that $\\begin{bmatrix}e_1 & e_2\\end{bmatrix}=\\begin{bmatrix}1 & 0 \\\\ 0 & 1\\end{bmatrix}$ (identity matrix). Thus, $A\\begin{bmatrix}e_1 & e_2\\end{bmatrix} = AI=A$, and\n", + "\n", + "$$A=\\begin{bmatrix}L(e_1) & L(e_2)\\end{bmatrix}.\\tag{4}$$\n", + "\n", + "This is a matrix with the columns that are the images of the vectors of the standard basis. \n", + "\n", + "This choice of vectors \\{$e_1, e_2$\\} provides opportinuty for the visual representation of the linear transformation $L$ (you will see the examples below)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You will work with an image where you will see every transformation working in practice. Since an image is just a set of points in the plane, you can work with it as a set of vectors and you can stretch them, rotate them and much more! " + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Shape: (2, 329076)\n", + "[[ 399.20891527 400.20891527 404.20891527 ... -88.79108473\n", + " -88.79108473 -88.79108473]\n", + " [ 534.18310664 534.18310664 534.18310664 ... -476.81689336\n", + " -477.81689336 -478.81689336]]\n" + ] + } + ], + "source": [ + "img = np.loadtxt('data/image.txt')\n", + "print('Shape: ',img.shape)\n", + "print(img)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The image is just a $2 \\times 329076$ matrix where each column is a vector in the plane. So you can get all $x$ coordinates by calling `img[0]` and all $y$ coordinates by calling `img[1]`. Now let's plot the image!" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(img[0], img[1], s = 0.001, color = 'black')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 2.1 - Horizontal Scaling (Dilation)\n", + "\n", + "Horizontal scaling (factor $2$ in this example) can be defined considering transformation of a vector $e_1=\\begin{bmatrix}1 \\\\ 0\\end{bmatrix}$ into a vector $\\begin{bmatrix}2 \\\\ 0\\end{bmatrix}$ and leaving vector $e_2=\\begin{bmatrix}0 \\\\ 1\\end{bmatrix}$ without any changes. The following function `T_hscaling()` corresponds to the horizontal scaling (factor $2$) of a vector. The second function `transform_vectors()` applies defined transformation to a set of vectors (here two vectors)." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original vectors:\n", + " e1= \n", + " [[1]\n", + " [0]] \n", + " e2=\n", + " [[0]\n", + " [1]] \n", + "\n", + " Result of the transformation (matrix form):\n", + " [[2 0]\n", + " [0 1]]\n" + ] + } + ], + "source": [ + "def T_hscaling(v):\n", + " A = np.array([[2,0], [0,1]])\n", + " w = A @ v\n", + " \n", + " return w\n", + " \n", + " \n", + "def transform_vectors(T, v1, v2):\n", + " V = np.hstack((v1, v2))\n", + " W = T(V)\n", + " \n", + " return W\n", + " \n", + "e1 = np.array([[1], [0]])\n", + "e2 = np.array([[0], [1]])\n", + "\n", + "transformation_result_hscaling = transform_vectors(T_hscaling, e1, e2)\n", + "\n", + "print(\"Original vectors:\\n e1= \\n\", e1, \"\\n e2=\\n\", e2, \n", + " \"\\n\\n Result of the transformation (matrix form):\\n\", transformation_result_hscaling)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can get a visual understanding of the transformation, producing a plot which displays input vectors, and their transformations. We have written this function for you so, so do not need to worry! Just run the next cell." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "utils.plot_transformation(T_hscaling,e1,e2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's visualize how it acts in our leaf image." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(img[0], img[1], s = 0.001, color = 'black') \n", + "plt.scatter(T_hscaling(img)[0], T_hscaling(img)[1], s = 0.001, color = 'grey')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note that the transformed image (grey) is stretched!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 2.2 - Example 2: Reflection about y-axis (the vertical axis)\n", + "\n", + "Function `T_reflection_yaxis()` defined below corresponds to the reflection about y-axis:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original vectors:\n", + " e1= \n", + " [[1]\n", + " [0]] \n", + " e2=\n", + " [[0]\n", + " [1]] \n", + "\n", + " Result of the transformation (matrix form):\n", + " [[-1 0]\n", + " [ 0 1]]\n" + ] + } + ], + "source": [ + "def T_reflection_yaxis(v):\n", + " A = np.array([[-1,0], [0,1]])\n", + " w = A @ v\n", + " \n", + " return w\n", + " \n", + "e1 = np.array([[1], [0]])\n", + "e2 = np.array([[0], [1]])\n", + "\n", + "transformation_result_reflection_yaxis = transform_vectors(T_reflection_yaxis, e1, e2)\n", + "\n", + "print(\"Original vectors:\\n e1= \\n\", e1,\"\\n e2=\\n\", e2, \n", + " \"\\n\\n Result of the transformation (matrix form):\\n\", transformation_result_reflection_yaxis)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can visualize this transformation:" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "utils.plot_transformation(T_reflection_yaxis, e1, e2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(img[0], img[1], s = 0.001, color = 'black') \n", + "plt.scatter(T_reflection_yaxis(img)[0], T_reflection_yaxis(img)[1], s = 0.001, color = 'grey')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 2.3 Stretching by a scalar\n", + "\n", + "The next linear transformation you will work is a stretching by a non-zero scalar. In other words, fixing a scalar $a \\neq 0$, the linear transformation in the plane is such that:\n", + "\n", + "$$T(v) = a \\cdot v$$\n", + "\n", + "If $v = (x,y)$, then $T(v) = T((x,y)) = (ax, ay)$.\n", + "\n", + "\n", + "\n", + "### Exercise 1\n", + "\n", + "In the following exercise, you will write a function that inputs a non-zero scalar $a$ and a vector $v$ and stretches $v$ in a factor of $a$ in the plane. \n", + "\n", + "**Hint**: To find the matrix, you may proceed as you just saw above: try checking the result in the *special* vectors $e_1 = (1,0)$ and $e_2 = (0,1)$!\n" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "# GRADED FUNCTION: T_stretch\n", + "\n", + "def T_stretch(a, v):\n", + " \"\"\"\n", + " Performs a 2D stretching transformation on a vector v using a stretching factor a.\n", + "\n", + " Args:\n", + " a (float): The stretching factor.\n", + " v (numpy.array): The vector (or vectors) to be stretched.\n", + "\n", + " Returns:\n", + " numpy.array: The stretched vector.\n", + " \"\"\"\n", + "\n", + " ### START CODE HERE ###\n", + " # Define the transformation matrix\n", + " T = np.array([[a,0], [0,a]])\n", + " \n", + " # Compute the transformation\n", + " w = T @ v\n", + " ### END CODE HERE ###\n", + "\n", + " return w" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[92m All tests passed\n" + ] + } + ], + "source": [ + "w3_unittest.test_T_stretch(T_stretch)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(img[0], img[1], s = 0.001, color = 'black') \n", + "plt.scatter(T_stretch(2,img)[0], T_stretch(2,img)[1], s = 0.001, color = 'grey')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaYAAAGfCAYAAAAUBHZmAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAi3UlEQVR4nO3de5hddX3v8fd3LrnN5EKSyRVigHC/y9hCgBBRxEtboVAF0Yr1IUXqOW0PxXqpHqy2tqdUpfUaPRWPeJCiR1ABQeRmEZThIhchkEjIBZJMrpPJJDOZmd/5Yw8hyUySSbL3rN9M3q/n2U9mr732+n0mc/nMb621146UEpIk5aKq6ACSJG3PYpIkZcVikiRlxWKSJGXFYpIkZaWm6ADbmzhxYpo5c2bRMSRJFfboo4+uTik19PVYVsU0c+ZMmpqaio4hSaqwiHhpV4+5K0+SlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpSVihdTRHw8IlJEfKnSY0mSBr+KFlNEnAZcDjxZyXEkSUNHxYopIsYC3wU+CKyr1DiSpKGlkjOm+cD3U0r37G6liJgXEU0R0dTc3FzBOJKkwaAixRQRlwOzgE/uad2U0vyUUmNKqbGhoaEScSRJg0hNuTcYEUcB/wiclVLqKPf2JUlDW9mLCTgdmAg8HRGvLqsG5kTEFUBdSqm9AuNKkoaAShTTLUDTTsu+BbxAaSblLEqStEtlL6aU0npg/fbLImITsDal9HS5x5MkDS1e+UGSlJVK7MrrJaU0dyDGkSQNfs6YJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWSl7MUXEX0TEkxHR0nN7KCLeUe5xJElDUyVmTMuAvwVeDzQC9wC3RMSJFRhLkjTE1JR7gymlW3da9ImI+BBwOvBkuceTJA0tFT3GFBHVEXExUA/8chfrzIuIpohoam5urmQcSdIgUJFiiogTIqIVaAe+BlyQUnqqr3VTSvNTSo0ppcaGhoZKxJEkDSKVmjEtAE4GTgO+Cnw7Io6v0FiSpCGk7MeYAFJKHcDCnrtNEfEG4K+BD1ZiPEnS0DFQr2OqAoYP0FiSpEGs7DOmiPgn4DZgKTAaeA8wF/C1TJKkParErrwpwA09/26gdIr421JKd1ZgLEnSEFOJ1zFdVu5tSpIOHF4rT5KUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlBWLSZKUFYtJkpQVi0mSlJWyF1NEfCwiHomIlohojogfR8Tx5R5HkjQ0VWLGNBf4CjAbOAfoBO6OiPEVGEuSNMTUlHuDKaXztr8fEe8DNgBnAD8u93jSYNb8xP9j7bM/LTrGoDL+mLfScPIfFx1DFTQQx5hG94yzrq8HI2JeRDRFRFNzc/MAxJHysfa3d9C2ckHRMQaNzauet8gPAGWfMfXhOuAJ4KG+HkwpzQfmAzQ2NqYByCNlo6tjE7V14znqkvlFRxkUFtw4r+gIGgAVLaaI+DxwJnBmSqmrkmNJg1Hn5g10b91cdAwpKxXblRcRXwAuAc5JKf2uUuNIg1nn5g10bdlI99YtRUeRslGRYoqI64D3UCql5yoxhjTYta9bRurcAiRaFv+q6DhSNirxOqYvAx+gNFtaFxFTem715R5LGszWL3pg28cbFv2iLNvs3NLCb770FtrXLSvL9hbd8hFWPnJDWbYl9VcljjFd2fPvz3da/mngmgqMJw1KGxa+VkbrF/2CGambiL7/Vmx58WFeuPnDu93ezHd8ms2rFjL2sDMYftDBZck47Yx5LLhxHhNPPJ/q4f5tqYFRidcxRbm3KQ01Xe2tbFz22Lb7nZvW0LbiOeqmHtvn+vUHn8yJV752mvSz33k/448+l8lveO+2ZVW1I1h697XMuvALZcs5smEWw8dOZ80ztzPp9e8q23al3RmI08Ul7WTDiw9B944nqm5Y9ItdFlNV7QiqakcApVLbunEVddNPorZ+4rZ11i24G6KKuukn9Xp+x8ZVLH/gS2xY9CCkLka/7g3MOPej1NZN2GPWsbPmsPbZOy0mDRgv4ioVYMPCB3otW9/Hsr60rXgOSNRNOWaH5a3LnmDUlKOJ2HGnRfv65Tz77fcyrH4SR136TY68+Ot0tm1gyV2f69d4dVOPo+2VZzxzUAPGGZM0wFJ3Jxt+98teyzevWkDHxpUMGz15t8/ftPJZqkeOZdiYKTssb9/wCrV1E3utv+SuzzHxxHcyfc5fbFs2dfYHWXTLR+hoWcGLt32KzrZ1RFUNU8+4nIOOPGeH59fWN5C6O9naurpsx66k3bGYpAHWuvwpurZs6POxDQt/QcMpF+32+W0rn2PU5KN7LU+d7VTV7Xit5I6WFbQsfpiNyx5n1aPfe23d1E1VzQiiqoZDzrmKUZOPYuumtTz7f97H2ENnb9ttCFBVMxyA7k5nTBoYFpM0wHZ3aviGRf/Vr2I66Ig39lpeM3IcXVs27rTuAqqG1XHM+3uf8l1VXUtt/cRtx6lq68ZTM2I0nZvXM6z2tdlY15aW0vZHHbTbXFK5WEzSANuw6BcMP2gGdVOPY+1v7wBgzGFn0LVlIy1LHqF765YdZizb6+poo33d0j5nTCMnH8Wap3e8gH9U19C9dQu1dROoHjZqt7k2vfJbUlcntTvtSty8eiG19Q39OlFCKgdPfpAGUFd7K1NO+zOO++DNjD38zG3LR00+mqMu/d/MuuBf6WhZscvnt61cAKm7z2Iae+jpbFmzmM7N67ctq5t2AjUjRrP4tk/RtvI52tcto2Xxwyz52T+TUve29To3r2fx7f+T173tk71Onmhd9gRjDj19Pz5rae9YTNIAqh5ez4Tj3kZUVfd6LCIYc+hpjJgwc5fPb1v5HNXD6xk2bnqvx0Y2zCrNwp69a9uymhFjmHXRv9HV3srz37uC317/Hpbdex21oydtezFvd2cHi354NVNOu4z6nU417+5sZ93z9zLxpAv28TOW9p678qRBZHLjJUxuvGSXj0+dfTlLf34tDSdfuK386qYey5EXf63P9VNKLL79GkbPaGTCce/o9fjqJ2+lbtrx1E87oTyfgNQPFpM0hIw9bDbt695Fx8ZVDB87dY/rb1r+G9Y99zNGTjqC9QvvB+DQd/w9IxtmARBVNcx409UVzSztzGKShphJp17c73XrDz6ZUz/yyC4f9y3MVQSPMUmSsmIxSZKyYjFJkrJiMUmSsuLJD9Ig8vKmzXym6Sl+tnQFXSkxZ9ok/mX2KUwa2feVIqTByBmTNEi8tHET59xyN1NHjeS2P5jLj95+Nmu3tHPVg4/t+cnSIOKMSRokrnrwMS49aiafbHztxa5XnXwM7//5QyxvbeND9/+a5i3t1FZVcfUpx/KHM3tfHUIaDCwmaRBY1trGvctX8vCK1XzjmYXblnelxMiaGqqrgn847WROmDCO5s1bOOfWn/OmgyczqsYfcQ0+ftdKg8BTa9YzuraGe85/c6/HhlVVMWXUSKaMGglAw8gRjBs2jLVbOhhV74+4Bh+/a6VBoLYqaOvsYtLIEdTX7v7H9vHmtWzt7mZ63cgBSieVlyc/SINA46QJjBtey4fu/zVPrl7Hiy2t3Lt8JVf/8nG6U9q23tot7Vz5wCP821mn9nr7CmmwcMYkDQLjhg/jprecyTWPPMU773iArpSYObqOCw47hKqeAmrv6uJP736IvzrxaH5v8sSCE0v7zmKSBolTGsZz69vP7vOxlBIffqCJs6Y18O4jXjfAyaTyspikIeBXK9fww98t5bjxY7n9pZcB+OrZv8ex48cWnEzaexaTNAScNmUiqz94UdExpLLw5AdJUlYqUkwRMScifhQRyyMiRcRllRhHkjT0VGrGVA88DfwlsLlCY0iShqCKHGNKKd0O3A4QEddXYgxpKFgTdayvquPjS8cy/Lb7io6zgwsPn8H7jz6s6Bg6ABV+jCki5kVEU0Q0NTc3Fx1HGlDrq+rYHLVFx+jlqbUb+MGiJUXH0AGq8LPyUkrzgfkAjY2NaQ+rS0POyLSV/zhkA9PPek/RUbb5o8xmbzqwFD5jkiRpexaTlIHO7u6iI0jZsJikgqzZ3L7t46WtbQUmkfJSqdcx1UfEyRFxcs8YM3ruz6jEeNJg9Js167d9vGhDa3FBpMxUasbUCDzecxsJfLrn47+v0HjSoPObNeu2ffy7lo2k5Lk/ElSomFJK96WUoo/bZZUYTxpsNnZs5fl1La/d39rJ02s3FJhIyofHmKQC3PfyKjp3miHdueTlgtJIebGYpAL0VUI/XfJKAUmk/FhM0gDr6k78bOmKXssfX72OFW1eWlKymKQB9ljzWlZvae/zsb4KSzrQWEzSALtz6a532d3p7jzJYpIG2p1LXmFa3Uhe3zB+27IZ9XUce9BY7n95JVs6uwpMJxXPYpIGUEvHVj5wzGE0/clbOXW7YppWN4L7L3gzX57zBl5q3VRgQql4hV9dXDqQjBlWy58dc3ifj1VF8EeHHjzAiaT8OGOSJGXFYpIkZcVikiRlxWKSJGXFYpIkZcVikiRlxWKSJGXF1zFJ2m8vb9rMZ5qe4mdLV9CVEnOmTeJfZp/CpJEjio6mQcgZk6T98tLGTZxzy91MHTWS2/5gLj96+9ms3dLOVQ8+VnQ0DVLOmCTtl6sefIxLj5rJJxtPeG3Zycfw/p8/BMClP3uQh1asZs60SVz/ptOLiqlBxGKStM+WtbZx7/KVPLxiNd94ZuG25V0pMbKm9OvliuOO4H1HHcr3XnipqJgaZCwmSfvsqTXrGV1bwz3nv7nXY8OqSkcKzpo2if96ZdVAR9MgZjFJ2me1VUFbZxeTRo6gvtZfJyoPT36QtM8aJ01g3PBaPnT/r3ly9TpebGnl3uUrufqXj9OdUtHxNEj5J46kfTZu+DBuesuZXPPIU7zzjgfoSomZo+u44LBDqIooOp4GKYtJ0n45pWE8t7797KJjaAixmCRV1AV3PMAza9fTtrWL42+8jW+dcxpvmDyh6FjKmMUkqaJ++LY5RUfQIOPJD9IQ1tndzT8/9gy/eHkVW7u7i46zTUrdvPLLb9Ky+GG6OzuKjqPMVGzGFBFXAlcDU4FngL9KKf2iUuNJ6q2mqorO7sT5dzzAmGG1vGn6ZM6bMY03HzKFg4YPKyxXRBVRXcsL//lhqobVMWbm7zNu1hzGHHYGtaMOKiyX8lCRYoqIdwPXAVcC/9Xz7x0RcWxKaUklxpTUtw8dfwTzf7uQlo6t/PDFZfzwxWVUR/D7kydw3oypvOWQqRwxdjQxwGfRNZzyJ6z89Xfo3Lye9c/fw/rn7wGCuuknMO7wOYw9/ExGTDx8wHOpeJWaMf0P4PqU0jd67v+3iHgr8CHgYxUaUxq0pi6+k7v+9f6Kbf/rfb2maC3wLPwOeCmCEdXVjKipZnh1Fa01bwPgya/+S8UyAXRt3bzTksSm5U+yafmTLH/gSwwbO52xh5/JuFlnUX/IqRXNonyUvZgiYhhwKnDtTg/dBcwu93jSYDV12pGse7yGqu5ORtHBqK6Cj7V0AR2wFUhjtgKwdePKQiN1bFhO82M30fzYTVSPGEPNyLHU1jUUmkmVV4kZ00SgGtj5O3ol0OuCWhExD5gHMGPGjArEkfJ00pGNPPvIsbSseoGOruqi41AVQXUEVREc3r0agKiu7HGo1LUV2PUVIqpHjGHsobMZO+ssxhw6m1cenF/RPMpDpDJfNiQipgHLgTnbn+wQEf8TuCSldPSuntvY2JiamprKmkc60G3s2Mop/3kH69p3nJEdPW4Mb5kxlbfOmEpjwwSqqwb2WE53ZztPzz+fra3NOywfPv51244x1R98ElHlq1qGooh4NKXU2NdjlfiKr6a0U2DKTssn0XsWJanCvvnsIta1d1BbFcye0sB5M6Zy3iFTmTmmvtBcq5+8pVRKUU39wSczbtZZjD18DiPGu+fkQFf2YkopdUTEo8C5wM3bPXQu8INyjydp1zq7u1m7pZ1vnXMac6dPZsyw2qIjAaXXMXW0rOTQP/wHxhw6m5oRo4uOpIxUao78eeA7EfFr4EHgCmAa8LUKjSepDzVVVXzm908qOkYvEVUcPPe/Fx2Dzi0tPPPNizj60v9g+EEH7/f2Ft3yEeqnn8jkN7y3DOkOXBUpppTSTRExAfg7Si+wfRp4e0rJt7CUVHEtLz7MCzd/eLfrzHzHp9m8aiFjDzujLKUEMO2MeSy4cR4TTzyf6uHF7iodzCp2VDGl9BXgK5XaviTtSv3BJ3PilT/ddv/Z77yf8Uefu8NMpqp2BEvvvpZZF36hbOOObJjF8LHTWfPM7Ux6/bvKtt0Djae7SBpyqmpHUFU7AoCu9la2blxF3fSTqK2fuG2ddQvuhqiibnrvXZ0dG1ex/IEvsWHRg5C6GP26NzDj3I9SW7fnq6KPnTWHtc/eaTHtBy/iKmlIa1vxHJCom3LMDstblz3BqClH97rkUfv65Tz77fcyrH4SR136TY68+Ot0tm1gyV2f69d4dVOPo+2VZ+jeuqVcn8IBx2KSNKRtWvks1SPHMmzMjq9gad/wCrV1E3utv+SuzzHxxHcy/ewPM3LCoYyafBRTZ3+QlpceAWDhD/6aJ657I4tu+Uif49XWN5C6O9naurr8n8wBwl15koa0tpXPMWpy79f1p852qurG77Cso2UFLYsfZuOyx1n16PdeWzd1U1VT2jU4ufFSJp50AWue/kmf41XVDAegu9MZ076ymCQNaW0rn+OgI97Ya3nNyHF0bdm407oLqBpWxzHvv6HX+lXVpdeAjX5dIxuX7PoKNV1bWkrb9+079pnFJGnI6upoo33d0j5nTCMnH8Wap3+8w7KorqF76xZq6yZQPWzUPo25efVCausb+nWihPrmMSZJQ1bbygWQuvssprGHns6WNYvp3Lx+27K6aSdQM2I0i2/7FG0rn6N93TJaFj/Mkp/9Myn17x2AW5c9wZhDTy/Xp3BAspgkDVltK5+jeng9w8ZN7/XYyIZZ1E09jrXP3rVtWc2IMcy66N/oam/l+e9dwW+vfw/L7r2O2tGTiNjzr8vuznbWPX8vE0+6oKyfx4HGXXmShqzJjZcwufGSXT4+dfblLP35tTScfCFRVXrrkbqpx3Lkxft29bTVT95K3bTjqZ92wj49XyUWk6QD1tjDZtO+7l10bFzF8LFT+/Wc52+6ks2rnqdr62ae/MrbOeyd/0T99BMBiKoaZrzp6kpGPiCU/f2Y9ofvxyRJB4bdvR+Tx5gkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVmxmCRJWbGYJElZsZgkSVkpezFFxLyIuDci1kdEioiZ5R5DkjR0VWLGNAq4C7imAtuWJA1xNeXeYErpiwAR0edb5kqStDseY5IkZaXwYuo5JtUUEU3Nzc1Fx5EkFaxfxRQRn+05kWF3t7n7EiClND+l1JhSamxoaNiXTUiShpD+HmP6InDDHtZZsn9RJEnqZzGllFYDqyucRZKk8p+VFxFTgCnAkT2Ljo2IccCSlNLaco8nSRpaKnHywxXA48B3e+7f1nP/jyowliRpiCl7MaWUrkkpRR+368s9liRp6Cn8dHFJkrZnMUmSsmIxSZKyYjFJkrJiMUmSsmIxSZKyYjFJkrJiMUmSsmIxSZKyYjFJkrJiMUmSsmIxSZKyYjFJkrJiMUmSsmIxSZKyYjFJkrJiMUmSsmIxSZKyYjFJkrJiMUmSsmIxSZKyYjFJkrJiMUmSsmIxSZKyYjFJkrJiMUmSsmIxSZKyUtZiiojxEfHvEfFcRGyOiKUR8dWImFDOcSRJQ1e5Z0zTgOnAR4ATgPcCc4AbyzyOJGmIqinnxlJKTwN/vN2ihRFxNfCTiBiTUmop53iSpKFnII4xjQHagbYBGEuSNMhVtJgiYhzwGeAbKaXOXawzLyKaIqKpubm5knEkSYNAv4opIj4bEWkPt7k7PacO+DGwnNIxpz6llOanlBpTSo0NDQ378alIkoaC/h5j+iJwwx7WWfLqBxFRD9zec/cPUkpb9j6aJOlA1K9iSimtBlb3Z92IGA3cAQTw1pRS677HkyQdaMp6Vl5PKd1F6YSH84G6nl16AGtTSh3lHE+SNPSUtZiAU4HTej5+fqfH3gjcV+bxJElDTLlfx3QfpV14kiTtE6+VJ0nKisUkScqKxSRJyorFJEnKisUkScqKxSRJyorFJEnKisUkScqKxSRJyorFJEnKisUkScqKxSRJyorFJEnKisUkScqKxSRJyorFJEnKisUkScqKxSRJyorFJEnKisUkScqKxSRJyorFJEnKisUkScqKxSRJyorFJEnKisUkScqKxSRJykrZiykivhERiyJic0Q0R8StEXFMuceRJA1NlZgxNQGXAccA5wEB3B0RtRUYS5I0xNSUe4Mppa9vd3dxRPwd8BvgMGBBuceTJA0tFT3GFBF1wAeAJcDiSo4lSRoaKlJMEXFlRLQCrcDbgDellNp3se68iGiKiKbm5uZKxJEkDSL9KqaI+GxEpD3c5m73lO8CpwBnA88DN0fEqL62nVKan1JqTCk1NjQ07OenI0ka7Pp7jOmLwA17WGfJqx+klDYAG4AXIuJhYB1wIfCdfcgoSTqA9KuYUkqrgdX7OEb03Ibv4/MlSQeQsp6VFxGzKM2M7gaagYOBjwLtwE/KOZYkaWgq98kP7cBc4A5gIXATsBE4PaW0osxjSZKGoLLOmFJKSymdhSdJ0j7xWnmSpKxYTJKkrFhMkqSsWEySpKxYTJKkrFhMkqSsWEySpKxYTJKkrFhMkqSsWEySpKxYTJKkrFhMkqSsWEySpKxYTJKkrFhMkqSsWEySpKxYTJKkrFhMkqSsWEySpKxYTJKkrFhMkqSsWEySpKxYTJKkrFhMkqSsWEySpKxYTJKkrFhMkqSsVKyYouSnEZEi4qJKjSNJGloqOWO6Cuiq4PYlSUNQTSU2GhGNwF8CpwIrKzGGJGloKvuMKSJGAzcCf55SWlXu7UuShrZK7Mr7GvDTlNLt/Vk5IuZFRFNENDU3N1cgjiRpMOlXMUXEZ3tOYtjdbW5EvA84Cbi6vwFSSvNTSo0ppcaGhoZ9/TwkSUNEf48xfRG4YQ/rLAEuA44FWiNi+8duioiHUkpn7m1ASdKBpV/FlFJaDaze03oR8Qng2p0WPwX8DXDrXqeTJB1wynpWXkppObB8+2U9M6elKaXflXMsSdLQ5JUfJElZqcjrmLaXUoo9ryVJUokzJklSViwmSVJWLCZJUlYsJklSViwmSVJWLCZJUlYsJklSViwmSVJWLCZJUlYsJklSViwmSVJWLCZJUlYsJklSViwmSVJWLCZJUlYsJklSViwmSVJWLCZJUlYsJklSViwmSVJWLCZJUlYsJklSViwmSVJWLCZJUlYsJklSViwmSVJWLCZJUlbKXkwRcV9EpJ1u3yv3OJKkoammQtv9FvDx7e5vrtA4kqQhplLF1JZSWlGhbUuShrBKHWO6OCJWR8QzEXFtRIyu0DiSpCGmEjOm/wu8BLwMHAd8DjgJOLevlSNiHjCv5257RDxdgUz7ayKwuugQfTDX3jHX3jHX3jHX3nndrh6IlNIenx0RnwU+sYfV3phSuq+P5/4e8Cvg1JTSY3sYpyml1LjHQAPMXHvHXHvHXHvHXHsn11y7098Z0xeBG/awzpJdLG8CuoAjgN0WkyRJ/SqmlNJq9n0qeAJQDbyyj8+XJB1AynqMKSIOBy4FbqdUZMcC/wo8DjzYj03ML2eeMjLX3jHX3jHX3jHX3sk11y716xhTvzcWcQilXX7HA/XAUuA24NMppbVlG0iSNGSVtZgkSdpfXitPkpQVi0mSlJUsiyn3C8FGyU97cl2UQZ5vRMSiiNgcEc0RcWtEHFNwpvER8e8R8VxPrqUR8dWImFBkrp5s8yLi3ohY3/M1nFlglisj4sWI2BIRj0bEWUVl6ckzJyJ+FBHLe/5vLisyz6si4mMR8UhEtPR8j/84Io7PINdfRMSTPblaIuKhiHhH0bm2FxEf7/lafqnoLP2VZTH1+BYwdbvbnxcbZwdXUXptVi6agMuAY4DzgADujojaAjNNA6YDH6H0koH3AnOAGwvM9KpRwF3ANUWGiIh3A9cB/wicAvwSuCMiZhQYqx54GvhL8rr48lzgK8Bs4Bygk9L3+PgiQwHLgL8FXg80AvcAt0TEiYWm6hERpwGXA08WnWVvZHnyQ0TcBzydUvpw0Vl2FhGNwA+BU4GVwJ+klL5fbKod9fxQ/AY4OqW0oOg8r4qItwM/AcallFoyyNMIPAIcmlJaXMD4vwKeTCldvt2yF4Dvp5Q+NtB5dhYRrcCHU0rXF51lZxFRD2wAzk8p/bjoPNuLiLXAx1JKXy84x1hKFzW4HPgUmf5O7UvOM6bsLgTbk+FG4M9TSquKztOXiKgDPkDpShyLi03TyxigHWgrOkjRImIYpT9u7trpobsozQq0e6Mp/f5aV3SQV0VEdURcTGnW+cui81B6/dL3U0r3FB1kb1XqbS/2115dCHYAfQ34aUrp9oJz9BIRVwL/C6gDFgBvSim1F5vqNRExDvgM8I2UUmfBcXIwkdIVUVbutHwl8OaBjzPoXAc8ATxUcA4i4oSeHCOAVuCClNJTBWe6HJgFvK/IHPtqwGZMEfHZPk5o2Pk2FyClND+ldGdK6amU0veAdwNvjojXF5UrIt5HqRyvLneG/cm13VO+S+k4xdnA88DNETEqg1yvzuJ+DCyndMyp7PYlVyZ23pcefSzTdiLi88CZwIUppRyO9S4ATgZOA74KfLvIEzMi4ihKxy0vTSl1FJVjfwzYMaaImEjpr8TdWZJS6rWbJyKqgA5K/9E3FZGL0oHXPwW6t1te3XP/oZTSmUXk2sX/1zBKuziuSCl9p8hcPccCbqf0C/dtKaXWcubZ11w9zynsGFPP16gNuCSldPN2y78MHJ9SOnsg8/Qlx2NMEfEF4GJK72bwXNF5+hIRdwMvpZQ+WND4l1E6eWz70q6m9AdPN1CX096UvgzYrrxcLwTb31wR8Qng2p0WPwX8DXBrUbl2IXpuw8uXqGRvcvUck7ujJ8tbK1VKe5srBymljoh4lNLu6Zu3e+hc4AfFpMpbRFxHqZTm5lpKPaqowM/eXriF0pm62/sW8AKlmVT2s6jsjjHF/l8ItiJSSssp7YraJiIAlqaUfldIqFKGWcCFwN1AM3Aw8FFKJxn8pMBcoykdyB8DnA/U9ezSA1hb5C6GiJgCTAGO7Fl0bM8xsCUDfE3HzwPfiYhfU/revoLSafZfG8AMO+iZ4c7quVsFzIiIkyl9zXb11jYDkevLlI6XnA+s6/kaArRW8g+efuT6J0rXA11K6YSM91A6tb2w1zKllNYD67dfFhGbKH0Nc3wj1t5SSlndgEOA+4E1lH65LqR0oHN80dn6yJqAizL4/7oDWEXpL6GllI43HV1wrrk9/z993eYWnO2aXeS6rIAsV1I6e7IdeBSYk+nX7fqCc+3qe+magnNdT+lErfaen8G7gfOKzLSLnPcBXyo6R39vWb6OSZJ04Mr5dUySpAOQxSRJyorFJEnKisUkScqKxSRJyorFJEnKisUkScqKxSRJysr/B2Z2kMXlchs1AAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "utils.plot_transformation(lambda v: T_stretch(2, v), e1,e2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 2.4 Horizontal shear transformation\n", + "\n", + "The horizontal shear transformation with parameter $m$ is a transformation that maps a point $(x,y)$ in the plane to $(x + my, y)$. In other words,\n", + "\n", + "$$T((x,y)) = (x+my, y)$$\n", + "\n", + "\n", + "### Exercise 2\n", + "\n", + "You will implement a function `T_hshear` that inputs a scalar $m$ and a vector $v$, and performs the transformation mentioned above. \n", + "\n", + "**Hint**: To find the associated matrix you may want to understand what happens with the vectors $e_1 = (1,0)$ and $e_2 = (0,1)$." + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "# GRADED FUNCTION: T_hshear\n", + "\n", + "def T_hshear(m, v):\n", + " \"\"\"\n", + " Performs a 2D horizontal shearing transformation on an array v using a shearing factor m.\n", + "\n", + " Args:\n", + " m (float): The shearing factor.\n", + " v (np.array): The array to be sheared.\n", + "\n", + " Returns:\n", + " np.array: The sheared array.\n", + " \"\"\"\n", + "\n", + " ### START CODE HERE ###\n", + " # Define the transformation matrix\n", + " T = np.array([[1,m], [0,1]])\n", + " \n", + " # Compute the transformation\n", + " w = T @ v\n", + " \n", + " ### END CODE HERE ###\n", + " \n", + " return w" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[92m All tests passed\n" + ] + } + ], + "source": [ + "w3_unittest.test_T_hshear(T_hshear)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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h+0xMTH88ssvLidBr7vuOnbu3ElxcTFPP/201333VMP2pZdeomvXrm73y7LMnj17ePPNN53CVbfccgtBQUGYzWYKCwtbpHLW4MGDXW739fVl4MCBTJs2rdnXsG9z6tSp/P73vycrK0sI/xWKGPkLLis6nY4TJ044bX/qqad48803CQoKwmg0Njr9ctOmTUDdg+Txxx9XUhfnzZunZOH4+/uzbNkyBg4cqLwxTJ06lblz5zbrnkaNGsUjjzzi1pfGYDCwYsUKl5OqXbt2JSYmBrPZzLJly5oct8/OziY7OxtJkoiJiXFICfX39yc1NZUePXqgVqsJDg5ult++jbCwMMaNG0dycrJDzQXBlYkQf8EVycKFC2nXrh1PP/00arWa2bNnewyx1MdWePyzzz5DrVZjsVh466236Ny5M2vXruXxxx8nNzeXIUOG4O/vz2+//caECRMoKCggMzPTbSijIcaOHctnn32miF9paalDCcfi4mI++eQTt55Bw4cPR6VSUVpa2qwJW41GQ0pKCiEhIVRVVbF7924SExPp3r07kZGR1NbWsmrVKiorK5t8DRt9+/alU6dO+Pr6ioIrVxEi7CO4YvnLX/7C0qVLkSSJhx56iAEDBjSpnerqat5//30OHTqEJEn069ePzp0783//939YrVZefPFFunbtyunTp5UC5k1h3rx5fPnll0RERABw4MAB4uPjKS0tRZZlzp49y7vvvutW+AcMGEBISAj5+fnNFmVfX198fX3R6XScPHmSpKQkevbsye7du/n000/55ptvmnWN4OBgJk+ezP33309OTg4nT55k0aJF7Nu3r0mriQWXHjHyF1xWgoKCSE9Pd+nfA3V2yF27diUsLIxffvmFgICARhdmt63+HT9+PIcPH0alUpGUlITBYGD48OEtkv0zePBgxbdflmX27dunLBrTaDScO3eOL7/80mMb3bp1Y+PGjUrIqjkMHTqUyspK9uzZg9lsZteuXc1uE+pWX/fp04cePXqg1+tZvXq18rPr3r072dnZYuR/lSDEX3BZ0ev1boXfRnZ2NocOHSIxMZGzZ882+ho2U7MzZ84oBUMMBgNDhgxp8ijfnoyMDJYsWYJaraa2tpbvv/+eW265RdlfVFTU4FoFSZLQarUtIvzjx49n3759HDp0qMUK3ajVagYPHkxsbCznz593Wm8wdepUMjMz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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(img[0], img[1], s = 0.001, color = 'black') \n", + "plt.scatter(T_hshear(2,img)[0], T_hshear(2,img)[1], s = 0.001, color = 'grey')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "utils.plot_transformation(lambda v: T_hshear(2, v), e1,e2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 2.5 Rotation\n", + "\n", + "To rotate a vector in the plane by an angle of $\\theta$ (radians), the matrix related to this transformation is given by:\n", + "\n", + "\n", + "$$M = \\begin{bmatrix} \\cos \\theta & - \\sin \\theta \\\\ \\sin \\theta & \\cos \\theta \\end{bmatrix} $$\n", + "\n", + "\n", + "### Exercise 3\n", + "\n", + "You will implement the function `T_rotation` that inputs an angle in radians, $\\theta$, a vector $v$, and performs a rotation by $\\theta$ counterclockwise." + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "# GRADED FUNCTION: T_rotation\n", + "def T_rotation(theta, v):\n", + " \"\"\"\n", + " Performs a 2D rotation transformation on an array v using a rotation angle theta.\n", + "\n", + " Args:\n", + " theta (float): The rotation angle in radians.\n", + " v (np.array): The array to be rotated.\n", + "\n", + " Returns:\n", + " np.array: The rotated array.\n", + " \"\"\"\n", + " \n", + " ### START CODE HERE ###\n", + " # Define the transformation matrix\n", + " T = np.array([[np.cos(theta),-np.sin(theta)], [np.sin(theta),np.cos(theta)]])\n", + " \n", + " # Compute the transformation\n", + " w = T @ v\n", + " \n", + " ### END CODE HERE ###\n", + " \n", + " return w" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[92m All tests passed\n" + ] + } + ], + "source": [ + "w3_unittest.test_T_rotation(T_rotation)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(img[0], img[1], s = 0.001, color = 'black') \n", + "plt.scatter(T_rotation(np.pi,img)[0], T_rotation(np.pi,img)[1], s = 0.001, color = 'grey')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "utils.plot_transformation(lambda v: T_rotation(np.pi, v), e1,e2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### Exercise 4\n", + "\n", + "In the last exercise of this section, you will implement a function that rotates by an angle of $\\theta$ and stretches by a factor of $a$. Remember that if $T_{\\text{stretch}}$ is the stretching transformation and $T_{\\text{rotation}}$ is the rotation then \n", + "\n", + "$$T_{\\text{rotation and stretch}} (v) = \\left(T_{\\text{rotation}} \\circ T_{\\text{stretch}}\\right) (v) = T_{\\text{rotation}} \\left(T_{\\text{stretch}} \\left(v \\right) \\right).$$\n", + "\n", + "So to perform both transformation, you must multiply the corresponding matrices!" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "def T_rotation_and_stretch(theta, a, v):\n", + " \"\"\"\n", + " Performs a combined 2D rotation and stretching transformation on an array v using a rotation angle theta and a stretching factor a.\n", + "\n", + " Args:\n", + " theta (float): The rotation angle in radians.\n", + " a (float): The stretching factor.\n", + " v (np.array): The array to be transformed.\n", + "\n", + " Returns:\n", + " np.array: The transformed array.\n", + " \"\"\"\n", + " ### START CODE HERE ###\n", + "\n", + " rotation_T = np.array([[np.cos(theta),-np.sin(theta)], [np.sin(theta),np.cos(theta)]])\n", + " stretch_T = np.array([[a,0], [0,a]])\n", + "\n", + " w = rotation_T @ (stretch_T @ v)\n", + "\n", + " ### END CODE HERE ###\n", + "\n", + " return w\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[92m All tests passed\n" + ] + } + ], + "source": [ + "w3_unittest.test_T_rotation_and_stretch(T_rotation_and_stretch)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(img[0], img[1], s = 0.001, color = 'black') \n", + "plt.scatter(T_rotation_and_stretch(np.pi,2,img)[0], T_rotation_and_stretch(np.pi,2,img)[1], s = 0.001, color = 'grey')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "utils.plot_transformation(lambda v: T_rotation_and_stretch(np.pi, 2, v), e1,e2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 3 - Neural Networks\n", + "\n", + "\n", + "In this part of the assignment you will: \n", + "\n", + "- Implement a neural network with a single perceptron and two input nodes for linear regression\n", + "- Implement forward propagation using matrix multiplication\n", + "\n", + "\n", + "*Note*: Backward propagation with the parameters update requires understanding of Calculus. It is discussed in details in the Course \"Calculus\" (Course 2 in the Specialization \"Mathematics for Machine Learning\"). In this assignment backward propagation and parameters update functions are hidden." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 3.1 - Linear Regression\n", + "\n", + "\n", + "**Linear regression** is a linear approach for modelling the relationship between a scalar response (**dependent variable**) and one or more explanatory variables (**independent variables**). You will work with a linear regression with $2$ independent variables.\n", + "\n", + "Linear regression model with two independent variables $x_1$, $x_2$ can be written as\n", + "\n", + "$$\\hat{y} = w_1x_1 + w_2x_2 + b = Wx + b,\\tag{6}$$\n", + "\n", + "where $Wx$ is the dot product of the input vector $x = \\begin{bmatrix} x_1 & x_2\\end{bmatrix}$ and parameters vector $W = \\begin{bmatrix} w_1 & w_2\\end{bmatrix}$, scalar parameter $b$ is the intercept. \n", + "\n", + "The goal is the same - find the \"best\" parameters $w_1$, $w_2$ and $b$ such the differences between original values $y_i$ and predicted values $\\hat{y}_i$ are minimum.\n", + "\n", + "You can use a neural network model to do that. Matrix multiplication will be in the core of the model!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 3.2 - Neural Network Model with a Single Perceptron and Two Input Nodes\n", + "\n", + "Again, you will use only one perceptron, but with two input nodes shown in the following scheme:\n", + "\n", + "\n", + "\n", + "The perceptron output calculation for a training example $x = \\begin{bmatrix} x_1& x_2\\end{bmatrix}$ can be written with dot product:\n", + "\n", + "$$z = w_1x_1 + w_2x_2+ b = Wx + b$$\n", + "\n", + "where weights are in the vector $W = \\begin{bmatrix} w_1 & w_2\\end{bmatrix}$ and bias $b$ is a scalar. The output layer will have the same single node $\\hat{y}= z$.\n", + "\n", + "Organise all training examples in a matrix $X$ of a shape ($2 \\times m$), putting $x_1$ and $x_2$ into columns. Then matrix multiplication of $W$ ($1 \\times 2$) and $X$ ($2 \\times m$) will give a ($1 \\times m$) vector\n", + "\n", + "$$WX = \n", + "\\begin{bmatrix} w_1 & w_2\\end{bmatrix} \n", + "\\begin{bmatrix} \n", + "x_1^{(1)} & x_1^{(2)} & \\dots & x_1^{(m)} \\\\ \n", + "x_2^{(1)} & x_2^{(2)} & \\dots & x_2^{(m)} \\\\ \\end{bmatrix}\n", + "=\\begin{bmatrix} \n", + "w_1x_1^{(1)} + w_2x_2^{(1)} & \n", + "w_1x_1^{(2)} + w_2x_2^{(2)} & \\dots & \n", + "w_1x_1^{(m)} + w_2x_2^{(m)}\\end{bmatrix}.$$\n", + "\n", + "And the model can be written as\n", + "\n", + "\\begin{align}\n", + "Z &= W X + b,\\\\\n", + "\\hat{Y} &= Z,\n", + "\\tag{8}\\end{align}\n", + "\n", + "where $b$ is broadcasted to the vector of a size ($1 \\times m$). These are the calculations to perform in the forward propagation step.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now, you can compare the resulting vector of the predictions $\\hat{Y}$ ($1 \\times m$) with the original vector of data $Y$. This can be done with the so called **cost function** that measures how close your vector of predictions is to the training data. It evaluates how well the parameters $w$ and $b$ work to solve the problem. There are many different cost functions available depending on the nature of your problem. For your simple neural network you can calculate it as:\n", + "\n", + "$$\\mathcal{L}\\left(w, b\\right) = \\frac{1}{2m}\\sum_{i=1}^{m} \\left(\\hat{y}^{(i)} - y^{(i)}\\right)^2.\\tag{5}$$\n", + "\n", + "The aim is to minimize the cost function during the training, which will minimize the differences between original values $y_i$ and predicted values $\\hat{y}_i$ (division by $2m$ is taken just for scaling purposes).\n", + "\n", + "When your weights were just initialized with some random values, and no training was done yet, you can't expect good results.\n", + "\n", + "The next step is to adjust the weights and bias, in order to minimize the cost function. This process is called **backward propagation** and is done iteratively: you update the parameters with a small change and repeat the process.\n", + "\n", + "*Note*: Backward propagation is not covered in this Course - it will be discussed in the next Course of this Specialization.\n", + "\n", + "The general **methodology** to build a neural network is to:\n", + "1. Define the neural network structure ( # of input units, # of hidden units, etc). \n", + "2. Initialize the model's parameters\n", + "3. Loop:\n", + " - Implement forward propagation (calculate the perceptron output),\n", + " - Implement backward propagation (to get the required corrections for the parameters),\n", + " - Update parameters.\n", + "4. Make predictions." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 3.3 Parameters of the Neural Network\n", + "\n", + "The neural network you will be working with has $3$ parameters. Two weights and one bias, you will start initalizing these parameters as some random numbers, so the algorithm can start at some point. The parameters will be stored in a dictionary." + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'W': array([[ 0.0064941 , -0.01006149]]), 'b': array([[0.]])}\n" + ] + } + ], + "source": [ + "parameters = utils.initialize_parameters(2)\n", + "print(parameters)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 3.4 Forward propagation\n", + "\n", + "\n", + "### Exercise 5\n", + "\n", + "Implement `forward_propagation()`.\n", + "\n", + "**Instructions**:\n", + "- Look at the mathematical representation of your model:\n", + "\\begin{align}\n", + "Z &= W X + b\\\\\n", + "\\hat{Y} &= Z,\n", + "\\end{align}\n", + "- The steps you have to implement are:\n", + " 1. Retrieve each parameter from the dictionary \"parameters\" by using `parameters[\"..\"]`.\n", + " 2. Implement Forward Propagation. Compute `Z` multiplying arrays `W`, `X` and adding vector `b`. Set the prediction array $A$ equal to $Z$. " + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "# GRADED FUNCTION: forward_propagation\n", + "\n", + "def forward_propagation(X, parameters):\n", + " \"\"\"\n", + " Argument:\n", + " X -- input data of size (n_x, m), where n_x is the dimension input (in our example is 2) and m is the number of training samples\n", + " parameters -- python dictionary containing your parameters (output of initialization function)\n", + " \n", + " Returns:\n", + " Y_hat -- The output of size (1, m)\n", + " \"\"\"\n", + " # Retrieve each parameter from the dictionary \"parameters\".\n", + " W = parameters[\"W\"]\n", + " b = parameters[\"b\"]\n", + " \n", + " # Implement Forward Propagation to calculate Z.\n", + " ### START CODE HERE ### (~ 2 lines of code)\n", + " Z = W@X + b\n", + " Y_hat = Z\n", + " ### END CODE HERE ###\n", + " \n", + "\n", + " return Y_hat" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[92m All tests passed\n" + ] + } + ], + "source": [ + "w3_unittest.test_forward_propagation(forward_propagation)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 3.5 Defining the cost function\n", + "\n", + "The cost function used to traing this model is \n", + "\n", + "$$\\mathcal{L}\\left(w, b\\right) = \\frac{1}{2m}\\sum_{i=1}^{m} \\left(\\hat{y}^{(i)} - y^{(i)}\\right)^2$$\n", + "\n", + "The next implementation is not graded." + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "def compute_cost(Y_hat, Y):\n", + " \"\"\"\n", + " Computes the cost function as a sum of squares\n", + " \n", + " Arguments:\n", + " Y_hat -- The output of the neural network of shape (n_y, number of examples)\n", + " Y -- \"true\" labels vector of shape (n_y, number of examples)\n", + " \n", + " Returns:\n", + " cost -- sum of squares scaled by 1/(2*number of examples)\n", + " \n", + " \"\"\"\n", + " # Number of examples.\n", + " m = Y.shape[1]\n", + "\n", + " # Compute the cost function.\n", + " cost = np.sum((Y_hat - Y)**2)/(2*m)\n", + " \n", + " return cost" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### Exercise 6\n", + "\n", + "Now you're ready to implement your neural network. The next function will implement the training process and it will return the updated parameters dictionary where you will be able to make predictions." + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "# GRADED FUNCTION: nn_model\n", + "\n", + "def nn_model(X, Y, num_iterations=1000, print_cost=False):\n", + " \"\"\"\n", + " Arguments:\n", + " X -- dataset of shape (n_x, number of examples)\n", + " Y -- labels of shape (1, number of examples)\n", + " num_iterations -- number of iterations in the loop\n", + " print_cost -- if True, print the cost every iteration\n", + " \n", + " Returns:\n", + " parameters -- parameters learnt by the model. They can then be used to make predictions.\n", + " \"\"\"\n", + " \n", + " n_x = X.shape[0]\n", + " \n", + " # Initialize parameters\n", + " parameters = utils.initialize_parameters(n_x) \n", + " \n", + " # Loop\n", + " for i in range(0, num_iterations):\n", + " \n", + " ### START CODE HERE ### (~ 2 lines of code)\n", + " # Forward propagation. Inputs: \"X, parameters, n_y\". Outputs: \"Y_hat\".\n", + " Y_hat = forward_propagation(X, parameters)\n", + " \n", + " # Cost function. Inputs: \"Y_hat, Y\". Outputs: \"cost\".\n", + " cost = compute_cost(Y_hat, Y)\n", + " ### END CODE HERE ###\n", + " \n", + " \n", + " # Parameters update.\n", + " parameters = utils.train_nn(parameters, Y_hat, X, Y, learning_rate = 0.001) \n", + " \n", + " # Print the cost every iteration.\n", + " if print_cost:\n", + " if i%100 == 0:\n", + " print (\"Cost after iteration %i: %f\" %(i, cost))\n", + "\n", + " return parameters" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[92m All tests passed\n" + ] + } + ], + "source": [ + "w3_unittest.test_nn_model(nn_model)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 3.6 - Training the neural network\n", + "\n", + "Now let's load a dataset to train the neural network." + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "df = pd.read_csv(\"data/toy_dataset.csv\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
x1x2y
0-0.816777-0.524620-0.940299
1-0.6702571.5256580.754702
2-0.1635990.2685670.034551
32.1414200.4283811.802543
40.1636080.2572430.314790
\n", + "
" + ], + "text/plain": [ + " x1 x2 y\n", + "0 -0.816777 -0.524620 -0.940299\n", + "1 -0.670257 1.525658 0.754702\n", + "2 -0.163599 0.268567 0.034551\n", + "3 2.141420 0.428381 1.802543\n", + "4 0.163608 0.257243 0.314790" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's first turn the data into a numpy array to pass it to the our function." + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "X = np.array(df[['x1','x2']]).T\n", + "Y = np.array(df['y']).reshape(1,-1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Run the next block to update the parameters dictionary with the fitted weights." + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost after iteration 0: 0.496618\n", + "Cost after iteration 100: 0.409979\n", + "Cost after iteration 200: 0.338492\n", + "Cost after iteration 300: 0.279508\n", + "Cost after iteration 400: 0.230839\n", + "Cost after iteration 500: 0.190682\n", + "Cost after iteration 600: 0.157548\n", + "Cost after iteration 700: 0.130208\n", + "Cost after iteration 800: 0.107650\n", + "Cost after iteration 900: 0.089037\n", + "Cost after iteration 1000: 0.073679\n", + "Cost after iteration 1100: 0.061007\n", + "Cost after iteration 1200: 0.050551\n", + "Cost after iteration 1300: 0.041923\n", + "Cost after iteration 1400: 0.034805\n", + "Cost after iteration 1500: 0.028931\n", + "Cost after iteration 1600: 0.024084\n", + "Cost after iteration 1700: 0.020086\n", + "Cost after iteration 1800: 0.016786\n", + "Cost after iteration 1900: 0.014063\n", + "Cost after iteration 2000: 0.011817\n", + "Cost after iteration 2100: 0.009963\n", + "Cost after iteration 2200: 0.008434\n", + "Cost after iteration 2300: 0.007172\n", + "Cost after iteration 2400: 0.006131\n", + "Cost after iteration 2500: 0.005272\n", + "Cost after iteration 2600: 0.004563\n", + "Cost after iteration 2700: 0.003978\n", + "Cost after iteration 2800: 0.003495\n", + "Cost after iteration 2900: 0.003097\n", + "Cost after iteration 3000: 0.002768\n", + "Cost after iteration 3100: 0.002497\n", + "Cost after iteration 3200: 0.002273\n", + "Cost after iteration 3300: 0.002089\n", + "Cost after iteration 3400: 0.001936\n", + "Cost after iteration 3500: 0.001811\n", + "Cost after iteration 3600: 0.001707\n", + "Cost after iteration 3700: 0.001621\n", + "Cost after iteration 3800: 0.001551\n", + "Cost after iteration 3900: 0.001493\n", + "Cost after iteration 4000: 0.001444\n", + "Cost after iteration 4100: 0.001405\n", + "Cost after iteration 4200: 0.001372\n", + "Cost after iteration 4300: 0.001345\n", + "Cost after iteration 4400: 0.001323\n", + "Cost after iteration 4500: 0.001304\n", + "Cost after iteration 4600: 0.001289\n", + "Cost after iteration 4700: 0.001277\n", + "Cost after iteration 4800: 0.001266\n", + "Cost after iteration 4900: 0.001258\n" + ] + } + ], + "source": [ + "parameters = nn_model(X,Y, num_iterations = 5000, print_cost= True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 4 - Make your predictions!\n", + "\n", + "Now that you have the fitted parameters, you are able to predict any value with your neural network! You just need to perform the following computation:\n", + "\n", + "$$ Z = W X + b$$ \n", + "\n", + "Where $W$ and $b$ are in the parameters dictionary.\n", + "\n", + "\n", + "### Exercise 7\n", + "\n", + "Now you will make the predictor function. It will input a parameters dictionary, a set of points X and output the set of predicted values. " + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "# GRADED FUNCTION: predict\n", + "\n", + "def predict(X, parameters):\n", + "\n", + " W = parameters['W']\n", + " b = parameters['b']\n", + "\n", + " Z = np.dot(W, X) + b\n", + "\n", + " return Z" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "y_hat = predict(X,parameters)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "df['y_hat'] = y_hat[0]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now let's check some predicted values versus the original ones:" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(x1,x2) = (-0.82, -0.52): Actual value: -0.94. Predicted value: -0.95\n", + "(x1,x2) = (-0.67, 1.53): Actual value: 0.75. Predicted value: 0.68\n", + "(x1,x2) = (-0.16, 0.27): Actual value: 0.03. Predicted value: 0.09\n", + "(x1,x2) = (2.14, 0.43): Actual value: 1.80. Predicted value: 1.78\n", + "(x1,x2) = (0.16, 0.26): Actual value: 0.31. Predicted value: 0.30\n", + "(x1,x2) = (-0.80, 2.07): Actual value: 1.12. Predicted value: 0.99\n", + "(x1,x2) = (-2.64, -1.36): Actual value: -2.85. Predicted value: -2.82\n", + "(x1,x2) = (1.04, -0.38): Actual value: 0.45. Predicted value: 0.43\n", + "(x1,x2) = (0.15, 0.19): Actual value: 0.25. Predicted value: 0.25\n", + "(x1,x2) = (-1.57, -0.34): Actual value: -1.31. Predicted value: -1.33\n" + ] + } + ], + "source": [ + "for i in range(10):\n", + " print(f\"(x1,x2) = ({df.loc[i,'x1']:.2f}, {df.loc[i,'x2']:.2f}): Actual value: {df.loc[i,'y']:.2f}. Predicted value: {df.loc[i,'y_hat']:.2f}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Pretty good, right? Congratulations! You have finished the W3 assignment!" + ] + } + ], + "metadata": { + "grader_version": "1", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/C1W3_Linear_Transformation.ipynb b/C1W3_Linear_Transformation.ipynb new file mode 100644 index 0000000..7027083 --- /dev/null +++ b/C1W3_Linear_Transformation.ipynb @@ -0,0 +1,1069 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "id": "EAt-K2qgcIou" + }, + "source": [ + "# Linear Transformations" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "FZYK-0rin5x7" + }, + "source": [ + "In this lab you will explore linear transformations, visualize their results and master matrix multiplication to apply various linear transformations." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Table of Contents\n", + "- [ 1 - Transformations](#1)\n", + "- [ 2 - Linear Transformations](#2)\n", + "- [ 3 - Transformations Defined as a Matrix Multiplication](#3)\n", + "- [ 4 - Standard Transformations in a Plane](#4)\n", + " - [ 4.1 - Example 1: Horizontal Scaling (Dilation)](#4.1)\n", + " - [ 4.2 - Example 2: Reflection about y-axis (the vertical axis)](#4.2)\n", + "- [ 5 - Application of Linear Transformations: Computer Graphics](#5)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "XI8PBrk_2Z4V" + }, + "source": [ + "## Packages\n", + "\n", + "Run the following cell to load the package you'll need." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [], + "source": [ + "import numpy as np\n", + "# OpenCV library for image transformations.\n", + "import cv2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 1 - Transformations\n", + "\n", + "A **transformation** is a function from one vector space to another that respects the underlying (linear) structure of each vector space. Referring to a specific transformation, you can use a symbol, such as $T$. Specifying the spaces containing the input and output vectors, e.g. $\\mathbb{R}^2$ and $\\mathbb{R}^3$, you can write $T: \\mathbb{R}^2 \\rightarrow \\mathbb{R}^3$. Transforming vector $v \\in \\mathbb{R}^2$ into the vector $w\\in\\mathbb{R}^3$ by the transformation $T$, you can use the notation $T(v)=w$ and read it as \"*T of v equals to w*\" or \"*vector w is an **image** of vector v with the transformation T*\".\n", + "\n", + "The following Python function corresponds to the transformation $T: \\mathbb{R}^2 \\rightarrow \\mathbb{R}^3$ with the following symbolic formula:\n", + "\n", + "$$T\\begin{pmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}\\end{pmatrix}=\n", + " \\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix}\n", + " \\tag{1}\n", + " $$" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "id": "Je3yV0Wnn5x8", + "scrolled": true, + "tags": [ + "graded" + ] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original vector:\n", + " [[3]\n", + " [5]] \n", + "\n", + " Result of the transformation:\n", + " [[ 9.]\n", + " [ 0.]\n", + " [-10.]]\n" + ] + } + ], + "source": [ + "def T(v):\n", + " w = np.zeros((3,1))\n", + " w[0,0] = 3*v[0,0]\n", + " w[2,0] = -2*v[1,0]\n", + " \n", + " return w\n", + "\n", + "v = np.array([[3], [5]])\n", + "w = T(v)\n", + "\n", + "print(\"Original vector:\\n\", v, \"\\n\\n Result of the transformation:\\n\", w)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "v3=np.array([[5,4],[6,2]])\n", + "w=T(v3)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[ 15.]\n", + " [ 0.]\n", + " [-12.]]\n" + ] + } + ], + "source": [ + "print(w)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 2 - Linear Transformations\n", + "\n", + "A transformation $T$ is said to be **linear** if the following two properties are true for any scalar $k$, and any input vectors $u$ and $v$:\n", + "\n", + "1. $T(kv)=kT(v)$,\n", + "2. $T(u+v)=T(u)+T(v)$.\n", + "\n", + "In the example above $T$ is a linear transformation:\n", + "\n", + "$$T (kv) =\n", + " T \\begin{pmatrix}\\begin{bmatrix}\n", + " kv_1 \\\\\n", + " kv_2\n", + " \\end{bmatrix}\\end{pmatrix} = \n", + " \\begin{bmatrix}\n", + " 3kv_1 \\\\\n", + " 0 \\\\\n", + " -2kv_2\n", + " \\end{bmatrix} =\n", + " k\\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix} = \n", + " kT(v),\\tag{2}$$\n", + " \n", + "$$T (u+v) =\n", + " T \\begin{pmatrix}\\begin{bmatrix}\n", + " u_1 + v_1 \\\\\n", + " u_2 + v_2\n", + " \\end{bmatrix}\\end{pmatrix} = \n", + " \\begin{bmatrix}\n", + " 3(u_1+v_1) \\\\\n", + " 0 \\\\\n", + " -2(u_2+v_2)\n", + " \\end{bmatrix} = \n", + " \\begin{bmatrix}\n", + " 3u_1 \\\\\n", + " 0 \\\\\n", + " -2u_2\n", + " \\end{bmatrix} +\n", + " \\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix} = \n", + " T(u)+T(v).\\tag{3}$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can change the values of $k$ or vectors $u$ and $v$ in the cell below, to check that this is true for some specific values." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "T(k*v):\n", + " [[ 42.]\n", + " [ 0.]\n", + " [-56.]] \n", + " k*T(v):\n", + " [[ 42.]\n", + " [ 0.]\n", + " [-56.]] \n", + "\n", + "\n", + "T(u+v):\n", + " [[ 9.]\n", + " [ 0.]\n", + " [-4.]] \n", + " T(u)+T(v):\n", + " [[ 9.]\n", + " [ 0.]\n", + " [-4.]]\n" + ] + } + ], + "source": [ + "u = np.array([[1], [-2]])\n", + "v = np.array([[2], [4]])\n", + "\n", + "k = 7\n", + "\n", + "print(\"T(k*v):\\n\", T(k*v), \"\\n k*T(v):\\n\", k*T(v), \"\\n\\n\")\n", + "print(\"T(u+v):\\n\", T(u+v), \"\\n T(u)+T(v):\\n\", T(u)+T(v))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Some examples of linear transformations are rotations, reflections, scaling (dilations), etc. In this lab you will explore a few of them." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 3 - Transformations Defined as a Matrix Multiplication\n", + "\n", + "Let $L: \\mathbb{R}^m \\rightarrow \\mathbb{R}^n$ be defined by a matrix $A$, where $L(v)=Av$, multiplication of the matrix $A$ ($n\\times m$) and vector $v$ ($m\\times 1$) resulting in the vector $w$ ($n\\times 1$).\n", + "\n", + "Now try to guess, what should be the elements of matrix $A$, corresponding to the transformation $L: \\mathbb{R}^2 \\rightarrow \\mathbb{R}^3$:\n", + "\n", + "$$L\\begin{pmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}\\end{pmatrix}=\n", + " \\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix}=\n", + " \\begin{bmatrix}\n", + " ? & ? \\\\\n", + " ? & ? \\\\\n", + " ? & ?\n", + " \\end{bmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\\n", + " v_2\n", + " \\end{bmatrix}\n", + " \\tag{4}\n", + " $$\n", + "\n", + "To do that, write the transformation $L$ as $Av$ and then perform matrix multiplication:\n", + " $$L\\begin{pmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}\\end{pmatrix}=\n", + " A\\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}=\n", + " \\begin{bmatrix}\n", + " a_{1,1} & a_{1,2} \\\\\n", + " a_{2,1} & a_{2,2} \\\\\n", + " a_{3,1} & a_{3,2}\n", + " \\end{bmatrix}\n", + " \\begin{bmatrix}\n", + " v_1 \\\\ \n", + " v_2\n", + " \\end{bmatrix}=\n", + " \\begin{bmatrix}\n", + " a_{1,1}v_1+a_{1,2}v_2 \\\\\n", + " a_{2,1}v_1+a_{2,2}v_2 \\\\\n", + " a_{3,1}v_1+a_{3,2}v_2 \\\\\n", + " \\end{bmatrix}=\n", + " \\begin{bmatrix}\n", + " 3v_1 \\\\\n", + " 0 \\\\\n", + " -2v_2\n", + " \\end{bmatrix}\\tag{5}\n", + " $$\n", + " \n", + "Can you see now what should be the values of the elements $a_{i,j}$ of matrix $A$ to make the equalities $(5)$ correct? Find out the answer in the following code cell:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Transformation matrix:\n", + " [[ 3 0]\n", + " [ 0 0]\n", + " [ 0 -2]] \n", + "\n", + "Original vector:\n", + " [[3]\n", + " [5]] \n", + "\n", + " Result of the transformation:\n", + " [[ 9]\n", + " [ 0]\n", + " [-10]]\n" + ] + } + ], + "source": [ + "def L(v):\n", + " A = np.array([[3,0], [0,0], [0,-2]])\n", + " print(\"Transformation matrix:\\n\", A, \"\\n\")\n", + " w = A @ v\n", + " \n", + " return w\n", + "\n", + "v = np.array([[3], [5]])\n", + "w = L(v)\n", + "\n", + "print(\"Original vector:\\n\", v, \"\\n\\n Result of the transformation:\\n\", w)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Every linear transformation can be carried out by matrix multiplication. And vice versa, carrying out matrix multiplication, it is natural to consider the linear transformation that it represents. It means you can associate the matrix with the linear transformation in some way. This is a key connection between linear transformations and matrix algebra." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 4 - Standard Transformations in a Plane\n", + "\n", + "As discussed above in section [3](#3), a linear transformation $L: \\mathbb{R}^2 \\rightarrow \\mathbb{R}^2$ can be represented as a multiplication of a $2 \\times 2$ matrix and a coordinate vector $v\\in\\mathbb{R}^2.$ Note that so far you have been using some random vector $v\\in\\mathbb{R}^2.$ (e.g. $v=\\begin{bmatrix}3 \\\\ 5\\end{bmatrix}$). To have a better intuition of what the transformation is really doing in the $\\mathbb{R}^2$ space, it is wise to choose vector $v$ in a less random way. \n", + "\n", + "A good choice would be vectors of a standard basis $e_1=\\begin{bmatrix}1 \\\\ 0\\end{bmatrix}$ and $e_2=\\begin{bmatrix}0 \\\\ 1\\end{bmatrix}$. Let's apply linear transformation $L$ to each of the vectors $e_1$ and $e_2$: $L(e_1)=Ae_1$ and $L(e_2)=Ae_2$. If you put vectors $\\{e_1, e_2\\}$ into columns of a matrix and perform matrix multiplication\n", + "\n", + "$$A\\begin{bmatrix}e_1 & e_2\\end{bmatrix}=\\begin{bmatrix}Ae_1 & Ae_2\\end{bmatrix}=\\begin{bmatrix}L(e_1) & L(e_2)\\end{bmatrix},\\tag{3}$$\n", + "\n", + "you can note that $\\begin{bmatrix}e_1 & e_2\\end{bmatrix}=\\begin{bmatrix}1 & 0 \\\\ 0 & 1\\end{bmatrix}$ (identity matrix). Thus, $A\\begin{bmatrix}e_1 & e_2\\end{bmatrix} = AI=A$, and\n", + "\n", + "$$A=\\begin{bmatrix}L(e_1) & L(e_2)\\end{bmatrix}.\\tag{4}$$\n", + "\n", + "This is a matrix with the columns that are the images of the vectors of the standard basis. \n", + "\n", + "This choice of vectors \\{$e_1, e_2$\\} provides opportinuty for the visual representation of the linear transformation $L$ (you will see the examples below)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 4.1 - Example 1: Horizontal Scaling (Dilation)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Horizontal scaling (factor $2$ in this example) can be defined considering transformation of a vector $e_1=\\begin{bmatrix}1 \\\\ 0\\end{bmatrix}$ into a vector $\\begin{bmatrix}2 \\\\ 0\\end{bmatrix}$ and leaving vector $e_2=\\begin{bmatrix}0 \\\\ 1\\end{bmatrix}$ without any changes. The following function `T_hscaling()` corresponds to the horizontal scaling (factor $2$) of a vector. The second function `transform_vectors()` applies defined transformation to a set of vectors (here two vectors)." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original vectors:\n", + " e1= \n", + " [[1]\n", + " [0]] \n", + " e2=\n", + " [[0]\n", + " [1]] \n", + "\n", + " Result of the transformation (matrix form):\n", + " [[2 0]\n", + " [0 1]]\n" + ] + } + ], + "source": [ + "def T_hscaling(v):\n", + " A = np.array([[2,0], [0,1]])\n", + " w = A @ v\n", + " \n", + " return w\n", + " \n", + " \n", + "def transform_vectors(T, v1, v2):\n", + " V = np.hstack((v1, v2))\n", + " W = T(V)\n", + " \n", + " return W\n", + " \n", + "e1 = np.array([[1], [0]])\n", + "e2 = np.array([[0], [1]])\n", + "\n", + "transformation_result_hscaling = transform_vectors(T_hscaling, e1, e2)\n", + "\n", + "print(\"Original vectors:\\n e1= \\n\", e1, \"\\n e2=\\n\", e2, \n", + " \"\\n\\n Result of the transformation (matrix form):\\n\", transformation_result_hscaling)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can get a visual understanding of the transformation, producing a plot which displays input vectors, and their transformations. Do not worry if the code in the following cell will not be clear - at this stage this is not important code to understand." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaYAAAGfCAYAAAAUBHZmAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAh80lEQVR4nO3de5jdVX3v8fd3z0xuM8mEJJMrxIDhfgsythAhRBRQaCtWq1i00sdDipTTy6FYrdWDR1vbU6piqZfoc8QjHqTaRxABxXCRFqEwXAxgEggSchGSCUlIJpNMMjPr/LGHMMlMkslk79lrdt6v59lPZq/fb//WdzKXz6zfWr/fjpQSkiTlolDpAiRJ6s1gkiRlxWCSJGXFYJIkZcVgkiRlpbbSBfQ2adKkNGvWrEqXIUkqs8cee2x9Sqmpv21ZBdOsWbNoaWmpdBmSpDKLiBf3ts1TeZKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKwYTJKkrBhMkqSsGEySpKyUPZgi4m8iIkXEDeXuS5I0/JU1mCLiDOByYHE5+5EkVY+yBVNENALfBT4CbCxXP5Kk6lLOEdNC4AcppXv3tVNELIiIlohoaW1tLWM5kqThoCzBFBGXA7OBT+1v35TSwpRSc0qpuampqRzlSJKGkdpSHzAijgX+Hjg7pbSj1MeXJFW3kgcTcCYwCXg6Il5rqwHmRcQVQH1KqaMM/UqSqkA5gulWoGWPtm8Bz1EcSTmKkiTtVcmDKaW0CdjUuy0itgIbUkpPl7o/SVJ18c4PkqSslONUXh8ppflD0Y8kafhzxCRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScpKyYMpIv40IhZHxOaex0MRcVGp+5EkVadyjJhWA38NvAloBu4Fbo2IU8rQlySpytSW+oAppdv2aPpkRHwUOBNYXOr+JEnVpaxzTBFRExGXAA3AL/ayz4KIaImIltbW1nKWI0kaBsoSTBFxckS0AR3A14B3p5Se6m/flNLClFJzSqm5qampHOVIkoaRco2YlgFzgDOArwLfjoiTytSXJKmKlHyOCSCltANY3vO0JSLeDPwl8JFy9CdJqh5DdR1TARg5RH1Jkoaxko+YIuIfgDuAVcBY4A+B+YDXMkmS9qscp/KmAjf1/PsqxSXi70wp/bQMfUmSqkw5rmO6rNTHlCQdOrxXniQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSslD6aI+EREPBoRmyOiNSJuj4iTSt2PJKk6lWPENB/4CjAXOBfoBBZFxIQy9CVJqjK1pT5gSumC3s8j4kPAq8BbgNtL3Z8kqboMxRzT2J5+Nva3MSIWRERLRLS0trYOQTmSpJwNRTBdDzwJPNTfxpTSwpRSc0qpuampaQjKkSTlrOSn8nqLiC8AZwFnpZS6ytmXJKk6lC2YIuKLwCXAW1NKvy5XP5Kk6lKWYIqI6ymG0vyU0tJy9CFJqk4lD6aI+FfgQ8DFwMaImNqzqS2l1Fbq/iRJ1aUcix+upLgS7x7gpV6PvypDX5KkKlOO65ii1MeUJB06vFeeJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpK2V5a3VJ5fGbrdv4bMtT/GzVy3SlxLzpk/mnuacxefSoSpcmlYwjJmmYeHHLVs69dRHTxozmjt+Zz48uPIcN2zu4+sHHK12aVFKOmKRh4uoHH+fSY2fxqeaTX2+bczwfvuch1rS189GfP0Lr9g7qCgWuOe0EfnfWjApWKw2ewSQNA6vb2rlvzVoefnk933hm+a72rpQYXVtLTSH4uzPmcPLE8bRu2865t93D2w6fwphaf8Q1/PhdKw0DT72yibF1tdx78dv7bBtRKDB1zGimjhkNQNPoUYwfMYIN23cwpsEfcQ0/ftdKw0BdIWjv7GLy6FE01O37x/aJ1g3s7O5mRv3oIapOKi0XP0jDQPPkiYwfWcdHf/4Ii9dv5IXNbdy3Zi3X/OIJulPatd+G7R1c+cCjfPns04mIClYsDZ4jJmkYGD9yBLecfxbXPvoU77rrAbpSYtbYet591BEUegKoo6uLP1r0EH9xynH81pRJFa5YGjyDSRomTmuawG0XntPvtpQSVz3QwtnTm3j/0W8Y4sqk0jKYpCrwX2tf4Ye/XsWJExq588XfAPDVc36LEyY0Vrgy6cAZTFIVOGPqJNZ/5L2VLkMqCRc/SJKyUpZgioh5EfGjiFgTESkiLitHP5Kk6lOuEVMD8DTw58C2MvUhSapCZZljSindCdwJEBE3lqMPqRr86CcL2bl8UaXL6FfT6FFMGZPfXcsnHP8Omub8fqXLUBlVfI4pIhZEREtEtLS2tla6HGlI7Vy+iKZtaypdRh9bO7to3ba90mX0sW3ds2xY8pNKl6Eyq/iqvJTSQmAhQHNzc9rP7lJV6ezq4jd1TVxy1b9VupTd/N4d9wPwo4vmV7SOPS27eUGlS9AQqHgwSYey7u5OSN2VLkPKSsVP5UmHsujupJC6aN/eXulSpGwYTFKFrPjN8xRIBPDIL++pdDlSNsp1HVNDRMyJiDk9fczseT6zHP1Jw9GTT9y16+OXl91fkmN2bt/ML284n46Nq0tyvOdv/RhrH72pJMeSBqpcc0zNwH29nn+m5/Ft4LIy9SkNKztffGjXxxNan6C7u5tCof+/FTe/8DDPff+qfR5v1kWfYdu65TQe9RZGHnZ4SWqc/pYFLLt5AZNOuZiakQ0lOaa0P+W6jul+wDeDkfbi1bZNHNG2nJU1EwGY2LWZp5Y/zqnHNPe7f8PhczjlyteXSS/5zoeZcNx5THnzB3e1FepGsWrRdcx+zxdLVufoptmMbJzBK8/cyeQ3va9kx5X2xVV5UgU88uQiJtC1W9uzT92912Aq1I2iUFe82LWro42dW9ZRP+NU6hpef9+ljcsWQRSon3Fqn9fv2LKONQ/cwKvPPwipi7FveDMzz/s4dfUT91tr4+x5bFjyU4NJQ8bFD1IFvPLcz/u01a15ZECvbX95KZCon3r8bu1tq59kzNTj+rxzbcemNSz59gcZ0TCZYy/9Jsdc8nU6219l5d2fH1B/9dNOpP2lZ+jemd8Ft6pOjpikIdbZ2cnkV37Zp/2I7atZ07qKGU1H7PP1W9cuoWZ0IyPGTd2tvePVl6ir7/vOtSvv/jyTTnkXM+b96a62aXM/wvO3fowdm1/mhTs+TWf7RqJQy7S3XM5hx5y72+vrGppI3Z3sbFtfsrkraV8MJmmIPbHkIRq7+79u6fEnfsqM8//bPl/fvnYpY6Yc16c9dXZQqJ+wW9uOzS+zecXDbFn9BOse+97r+6ZuCrWjiEItR5x7NWOmHMvOrRtY8n8/ROORc3c7RqF2JADdnY6YNDQMJmmI/fpX9zB7L9vaX3gQ2H8wHXb0W/u0144eT9f2LXvsu4zCiHqO/3DfJd+FmjrqGibtmqeqq59A7aixdG7btNt+Xds3F48/5rB91iWVisEkDbExL7XwSs04No49ithSfBv0F+qPZuTOLRz+6lLat7czZtSYfl/btaOdjo2r+h0xjZ5yLK88fftubVFTS/fO7dTVT6RmRP/HfM3Wl35F6uqkbuwUYOmu9m3rl1PX0DSghRJSKbj4QRpCG7dsovvYizj7qjto7DWX0910HBf+2W1sPfMvefGl5/f6+va1yyB19xtMjUeeyfZXVuw24qmffjK1o8ay4o5P0752KR0bV7N5xcOs/Nk/knrdo69z2yZW3Pk/ecM7P9Vn8UTb6icZd+SZB/FZSwfGEZM0hA4bO553vfOj/W6rKdRw/tn7XpLdvnYpNSMbGDF+Rp9to5tmUz/tRDYsuXvX0u7aUeOY/d4vs+bnX+bZ711B6u5m5PgZHHb8+UQU/y7t7tzB8z+8hqlnXEbDHkvNuzs72PjsfRz9vhsG8+lKg2IwScPIlOYPMKX5A3vdPm3u5ay65zqa5ryHKNQAUD/tBI655Gv97p9SYsWd1zJ2ZjMTT7yoz/b1i2+jfvpJNEw/uTSfgDQABpNURRqPmkvHxvexY8s6RjZO2+/+W9f8ko1Lf8boyUezaXnx2qojL/pfu7ZHoZaZb7umbPVK/TGYpCoz+fRLBrxvw+FzOP1jj/azpXgTWN/CXJXg4gdJUlYMJklSVgwmSVJWDCZJUlZc/CDpoP1m6zY+2/IUP1v1Ml0pMW/6ZP5p7mlMHj2q0qVpGHLEJOmgvLhlK+feuohpY0Zzx+/M50cXnsOG7R1c/eDjlS5Nw5QjJkkH5eoHH+fSY2fxqebXL8K9es7xfPie4lvHX/qzB3no5fXMmz6ZG9/mrY20fwaTpEFb3dbOfWvW8vDL6/nGM8t3tXelxOja4q+XK048mg8deyTfe+7FSpWpYcZgkjRoT72yibF1tdx78dv7bBtRKM4UnD19Mv/50rqhLk3DmMEkadDqCkF7ZxeTR4+ioc5fJyoNFz9IGrTmyRMZP7KOj/78ERav38gLm9u4b81arvnFE3SnVOnyNEz5J46kQRs/cgS3nH8W1z76FO+66wG6UmLW2HrefdQRFPZ4XydpoAwmSQfltKYJ3HbhOZUuQ1XEYJJUVu++6wGe2bCJ9p1dnHTzHXzr3DN48xTfpl17ZzBJKqsfvnNepUvQMOPiB6mKdXZ384+PP8N//GYdO7u7K13OLil189IvvsnmFQ/T3bmj0uUoM2UbMUXElcA1wDTgGeAvUkr/Ua7+JPVVWyjQ2Z24+K4HGDeijrfNmMIFM6fz9iOmctjIERWrK6JA1NTx3L9dRWFEPeNm/TbjZ89j3FFvoW7MYRWrS3koSzBFxPuB64Ergf/s+feuiDghpbSyHH1K6t9HTzqahb9azuYdO/nhC6v54QurqYngt6dM5IKZ0zj/iGkc3TiWGOJVdE2n/QFrH/kOnds2senZe9n07L1AUD/jZMa/cR6NbzyLUZPeOOR1qfLKNWL6H8CNKaVv9Dz/7xHxDuCjwCfK1Kc0bE1b8VPu/uefl+34X+/vmqINwBL4NfBiBKNqahhVW8PImgJtte8EYPFX/6lsNQF07dy2R0ti65rFbF2zmDUP3MCIxhk0vvEsxs8+m4YjTi9rLcpHyYMpIkYApwPX7bHpbmBuqfuThqtp049h4xO1FLo7GcMOxnRVeK6lC9gBO4E0bicAO7esrWhJO15dQ+vjt9D6+C3UjBpH7ehG6uqbKlqTyq8cI6ZJQA2w53f0WqDPDbUiYgGwAGDmzJllKEfK06nHNLPk0RPYvO45dnTVVLocChHURFCI4I3d6wGImvLOQ6WuncDe7xBRM2ocjUfOpXH22Yw7ci4vPbiwrPUoD5FKfNuQiJgOrAHm9V7sEBH/E/hASum4vb22ubk5tbS0lLQe6VC3ZcdOTvu3u9jYsfuI7Ljx4zh/5jTeMXMazU0TqSkM7VxOd2cHTy+8mJ1trbu1j5zwhl1zTA2Hn0oUvKqlGkXEYyml5v62leMrvp7iSYGpe7RPpu8oSlKZfXPJ82zs2EFdIZg7tYkLZk7jgiOmMWtcQ0XrWr/41mIoRQ0Nh89h/OyzaXzjPEZN8MzJoa7kwZRS2hERjwHnAd/vtek84N9L3Z+kvevs7mbD9g6+de4ZzJ8xhXEj6ipdElC8jmnH5rUc+bt/x7gj51I7amylS1JGyjVG/gLwnYh4BHgQuAKYDnytTP1J6kdtocBnf/vUSpfRR0SBw+f/WaXLoHP7Zp755ns57tL/w8jDDj/o4z1/68domHEKU978wRJUd+gqSzCllG6JiInA31K8wPZp4MKUkm9hKansNr/wMM99/6p97jPros+wbd1yGo96S0lCCWD6Wxaw7OYFTDrlYmpGVvZU6XBWtlnFlNJXgK+U6/iStDcNh8/hlCt/suv5ku98mAnHnbfbSKZQN4pVi65j9nu+WLJ+RzfNZmTjDF555k4mv+l9JTvuocblLpKqTqFuFIW6UQB0dbSxc8s66mecSl3DpF37bFy2CKJA/Yy+pzp3bFnHmgdu4NXnH4TUxdg3vJmZ532cuvr93xW9cfY8Niz5qcF0ELyJq6Sq1v7yUiBRP/X43drbVj/JmKnH9bnlUcemNSz59gcZ0TCZYy/9Jsdc8nU6219l5d2fH1B/9dNOpP2lZ+jeub1Un8Ihx2CSVNW2rl1CzehGRozb/QqWjldfoq5+Up/9V979eSad8i5mnHMVoyceyZgpxzJt7kfY/OKjACz/97/kyevfyvO3fqzf/uoamkjdnexsW1/6T+YQ4ak8SVWtfe1Sxkzpe11/6uygUD9ht7Ydm19m84qH2bL6CdY99r3X903dFGqLpwanNF/KpFPfzStP/7jf/gq1IwHo7nTENFgGk6Sq1r52KYcd/dY+7bWjx9O1fcse+y6jMKKe4z98U5/9CzXFa8DGvqGZLSv3foearu2bi8f37TsGzWCSVLW6drTTsXFVvyOm0VOO5ZWnb9+tLWpq6d65nbr6idSMGDOoPretX05dQ9OAFkqof84xSapa7WuXQeruN5gajzyT7a+soHPbpl1t9dNPpnbUWFbc8Wna1y6lY+NqNq94mJU/+0dSGtg7ALetfpJxR55Zqk/hkGQwSapa7WuXUjOygRHjZ/TZNrppNvXTTmTDkrt3tdWOGsfs936Zro42nv3eFfzqxj9k9X3XUzd2MhH7/3XZ3dnBxmfvY9Kp7y7p53Go8VSepKo1pfkDTGn+wF63T5t7OavuuY6mOe8hCsW3HqmfdgLHXDK4u6etX3wb9dNPomH6yYN6vYoMJkmHrMaj5tKx8X3s2LKOkY3TBvSaZ2+5km3rnqVr5zYWf+VCjnrXP9Aw4xQAolDLzLddU86SDwklfz+mg+H7MUnSoWFf78fkHJMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSslD6aIWBAR90XEpohIETGr1H1IkqpXOUZMY4C7gWvLcGxJUpWrLfUBU0pfAoiIft8yV5KkfXGOSZKUlYoHU8+cVEtEtLS2tla6HElShQ0omCLicz0LGfb1mD+YAlJKC1NKzSml5qampsEcQpJURQY6x/Ql4Kb97LPy4EqRJGmAwZRSWg+sL3MtkiSVflVeREwFpgLH9DSdEBHjgZUppQ2l7k+SVF3KsfjhCuAJ4Ls9z+/oef57ZehLklRlSh5MKaVrU0rRz+PGUvclSao+FV8uLklSbwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSsGkyQpKwaTJCkrBpMkKSslDaaImBAR/xIRSyNiW0SsioivRsTEUvYjSapepR4xTQdmAB8DTgY+CMwDbi5xP5KkKlVbyoOllJ4Gfr9X0/KIuAb4cUSMSyltLmV/kqTqMxRzTOOADqB9CPqSJA1zZQ2miBgPfBb4Rkqpcy/7LIiIlohoaW1tLWc5kqRhYEDBFBGfi4i0n8f8PV5TD9wOrKE459SvlNLClFJzSqm5qanpID4VSVI1GOgc05eAm/azz8rXPoiIBuDOnqe/k1LafuClSZIORQMKppTSemD9QPaNiLHAXUAA70gptQ2+PEnSoaakq/J6QuluigseLgbqe07pAWxIKe0oZX+SpOpT0mACTgfO6Pn42T22vRW4v8T9SZKqTKmvY7qf4ik8SZIGxXvlSZKyYjBJkrJiMEmSsmIwSZKyYjBJkrJiMEmSsmIwSZKyYjBJkrJiMEmSsmIwSZKyYjBJkrJiMEmSsmIwSZKyYjBJkrJiMEmSsmIwSZKyYjBJkrJiMEmSsmIwSZKyYjBJkrJiMEmSsmIwSZKyYjBJkrJiMEmSsmIwSZKyYjBJkrJiMEmSslLyYIqIb0TE8xGxLSJaI+K2iDi+1P1IkqpTOUZMLcBlwPHABUAAiyKirgx9SZKqTG2pD5hS+nqvpysi4m+BXwJHActK3Z8kqbqUdY4pIuqBPwZWAivK2ZckqTqUJZgi4sqIaAPagHcCb0spdexl3wUR0RIRLa2treUoR5I0jAwomCLicxGR9vOY3+sl3wVOA84BngW+HxFj+jt2SmlhSqk5pdTc1NR0kJ+OJGm4G+gc05eAm/azz8rXPkgpvQq8CjwXEQ8DG4H3AN8ZRI2SpEPIgIIppbQeWD/IPqLnMXKQr5ckHUJKuiovImZTHBktAlqBw4GPAx3Aj0vZlySpOpV68UMHMB+4C1gO3AJsAc5MKb1c4r4kSVWopCOmlNIqiqvwJEkaFO+VJ0nKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJyorBJEnKisEkScqKwSRJykrZgimKfhIRKSLeW65+JEnVpZwjpquBrjIeX5JUhWrLcdCIaAb+HDgdWFuOPiRJ1ankI6aIGAvcDPxJSmldqY8vSapu5TiV9zXgJymlOweyc0QsiIiWiGhpbW0tQzmSpOFkQMEUEZ/rWcSwr8f8iPgQcCpwzUALSCktTCk1p5Sam5qaBvt5SJKqxEDnmL4E3LSffVYClwEnAG0R0XvbLRHxUErprAMtUJJ0aBlQMKWU1gPr97dfRHwSuG6P5qeAvwJuO+DqJEmHnJKuyksprQHW9G7rGTmtSin9upR9SZKqk3d+kCRlpSzXMfWWUor97yVJUpEjJklSVgwmSVJWDCZJUlYMJklSVgwmSVJWDCZJUlYMJklSVgwmSVJWDCZJUlYMJklSVgwmSVJWDCZJUlYMJklSVgwmSVJWDCZJUlYMJklSVgwmSVJWDCZJUlYMJklSVgwmSVJWDCZJUlYMJklSVgwmSVJWDCZJUlYMJklSVgwmSVJWDCZJUlZKHkwRcX9EpD0e3yt1P5Kk6lRbpuN+C/ibXs+3lakfSVKVKVcwtaeUXi7TsSVJVaxcc0yXRMT6iHgmIq6LiLFl6keSVGXKMWL6f8CLwG+AE4HPA6cC5/W3c0QsABb0PO2IiKfLUNPBmgSsr3QR/bCuA2NdB8a6Dox1HZg37G1DpJT2++qI+Bzwyf3s9taU0v39vPa3gP8CTk8pPb6fflpSSs37LWiIWdeBsa4DY10HxroOTK517ctAR0xfAm7azz4r99LeAnQBRwP7DCZJkgYUTCml9Qx+KHgyUAO8NMjXS5IOISWdY4qINwKXAndSDLITgH8GngAeHMAhFpaynhKyrgNjXQfGug6MdR2YXOvaqwHNMQ34YBFHUDzldxLQAKwC7gA+k1LaULKOJElVq6TBJEnSwfJeeZKkrBhMkqSsZBlMud8INop+0lPXezOo5xsR8XxEbIuI1oi4LSKOr3BNEyLiXyJiaU9dqyLiqxExsZJ19dS2ICLui4hNPV/DWRWs5cqIeCEitkfEYxFxdqVq6alnXkT8KCLW9PzfXFbJel4TEZ+IiEcjYnPP9/jtEXFSBnX9aUQs7qlrc0Q8FBEXVbqu3iLib3q+ljdUupaByjKYenwLmNbr8SeVLWc3V1O8NisXLcBlwPHABUAAiyKiroI1TQdmAB+jeMnAB4F5wM0VrOk1Y4C7gWsrWUREvB+4Hvh74DTgF8BdETGzgmU1AE8Df05eN1+eD3wFmAucC3RS/B6fUMmigNXAXwNvApqBe4FbI+KUilbVIyLOAC4HFle6lgOR5eKHiLgfeDqldFWla9lTRDQDPwROB9YCf5BS+kFlq9pdzw/FL4HjUkrLKl3PayLiQuDHwPiU0uYM6mkGHgWOTCmtqED//wUsTild3qvtOeAHKaVPDHU9e4qINuCqlNKNla5lTxHRALwKXJxSur3S9fQWERuAT6SUvl7hOhop3tTgcuDTZPo7tT85j5iyuxFsTw03A3+SUlpX6Xr6ExH1wB9TvBPHispW08c4oANor3QhlRYRIyj+cXP3Hpvupjgq0L6Npfj7a2OlC3lNRNRExCUUR52/qHQ9FK9f+kFK6d5KF3KgyvW2FwfrgG4EO4S+BvwkpXRnhevoIyKuBP43UA8sA96WUuqobFWvi4jxwGeBb6SUOitcTg4mUbwjyto92tcCbx/6coad64EngYcqXAcRcXJPHaOANuDdKaWnKlzT5cBs4EOVrGOwhmzEFBGf62dBw56P+QAppYUppZ+mlJ5KKX0PeD/w9oh4U6XqiogPUQzHa0pdw8HU1esl36U4T3EO8Czw/YgYk0Fdr43ibgfWUJxzKrnB1JWJPc+lRz9t6iUivgCcBbwnpZTDXO8yYA5wBvBV4NuVXJgREcdSnLe8NKW0o1J1HIwhm2OKiEkU/0rcl5UppT6neSKiAOyg+B99SyXqojjx+kdAd6/2mp7nD6WUzqpEXXv5/xpB8RTHFSml71Syrp65gDsp/sJ9Z0qprZT1DLauntdUbI6p52vUDnwgpfT9Xu3/CpyUUjpnKOvpT45zTBHxReASiu9msLTS9fQnIhYBL6aUPlKh/i+juHisd2jXUPyDpxuoz+lsSn+G7FRerjeCHWhdEfFJ4Lo9mp8C/gq4rVJ17UX0PEaWrqKiA6mrZ07urp5a3lGuUDrQunKQUtoREY9RPD39/V6bzgP+vTJV5S0irqcYSvNzDaUeBcrws3cAbqW4Ure3bwHPURxJZT+Kym6OKQ7+RrBlkVJaQ/FU1C4RAbAqpfTrihRVrGE28B5gEdAKHA58nOIigx9XsK6xFCfyxwEXA/U9p/QANlTyFENETAWmAsf0NJ3QMwe2cojv6fgF4DsR8QjF7+0rKC6z/9oQ1rCbnhHu7J6nBWBmRMyh+DXb21vbDEVd/0pxvuRiYGPP1xCgrZx/8Aygrn+geD/QVRQXZPwhxaXtFbuWKaW0CdjUuy0itlL8Gub4Rqx9pZSyegBHAD8HXqH4y3U5xYnOCZWurZ9aE/DeDP6/7gLWUfxLaBXF+abjKlzX/J7/n/4e8ytc27V7qeuyCtRyJcXVkx3AY8C8TL9uN1a4rr19L11b4bpupLhQq6PnZ3ARcEEla9pLnfcDN1S6joE+sryOSZJ06Mr5OiZJ0iHIYJIkZcVgkiRlxWCSJGXFYJIkZcVgkiRlxWCSJGXFYJIkZeX/A8E8GvUSUmHrAAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "def plot_transformation(T, e1, e2):\n", + " color_original = \"#129cab\"\n", + " color_transformed = \"#cc8933\"\n", + " \n", + " _, ax = plt.subplots(figsize=(7, 7))\n", + " ax.tick_params(axis='x', labelsize=14)\n", + " ax.tick_params(axis='y', labelsize=14)\n", + " ax.set_xticks(np.arange(-5, 5))\n", + " ax.set_yticks(np.arange(-5, 5))\n", + " \n", + " plt.axis([-5, 5, -5, 5])\n", + " plt.quiver([0, 0],[0, 0], [e1[0], e2[0]], [e1[1], e2[1]], color=color_original, angles='xy', scale_units='xy', scale=1)\n", + " plt.plot([0, e2[0], e1[0], e1[0]], \n", + " [0, e2[1], e2[1], e1[1]], \n", + " color=color_original)\n", + " e1_sgn = 0.4 * np.array([[1] if i==0 else [i] for i in np.sign(e1)])\n", + " ax.text(e1[0]-0.2+e1_sgn[0], e1[1]-0.2+e1_sgn[1], f'$e_1$', fontsize=14, color=color_original)\n", + " e2_sgn = 0.4 * np.array([[1] if i==0 else [i] for i in np.sign(e2)])\n", + " ax.text(e2[0]-0.2+e2_sgn[0], e2[1]-0.2+e2_sgn[1], f'$e_2$', fontsize=14, color=color_original)\n", + " \n", + " e1_transformed = T(e1)\n", + " e2_transformed = T(e2)\n", + " \n", + " plt.quiver([0, 0],[0, 0], [e1_transformed[0], e2_transformed[0]], [e1_transformed[1], e2_transformed[1]], \n", + " color=color_transformed, angles='xy', scale_units='xy', scale=1)\n", + " plt.plot([0,e2_transformed[0], e1_transformed[0]+e2_transformed[0], e1_transformed[0]], \n", + " [0,e2_transformed[1], e1_transformed[1]+e2_transformed[1], e1_transformed[1]], \n", + " color=color_transformed)\n", + " e1_transformed_sgn = 0.4 * np.array([[1] if i==0 else [i] for i in np.sign(e1_transformed)])\n", + " ax.text(e1_transformed[0][0]-0.2+e1_transformed_sgn[0], e1_transformed[1][0]-e1_transformed_sgn[1][0], \n", + " f'$T(e_1)$', fontsize=14, color=color_transformed)\n", + " e2_transformed_sgn = 0.4 * np.array([[1] if i==0 else [i] for i in np.sign(e2_transformed)])\n", + " ax.text(e2_transformed[0][0]-0.2+e2_transformed_sgn[0][0], e2_transformed[1][0]-e2_transformed_sgn[1][0], \n", + " f'$T(e_2)$', fontsize=14, color=color_transformed)\n", + " \n", + " plt.gca().set_aspect(\"equal\")\n", + " plt.show()\n", + " \n", + "plot_transformation(T_hscaling, e1, e2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can observe that the polygon has been stretched in the horizontal direction as a result of the transformation." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### 4.2 - Example 2: Reflection about y-axis (the vertical axis)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Function `T_reflection_yaxis()` defined below corresponds to the reflection about y-axis:" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original vectors:\n", + " e1= \n", + " [[1]\n", + " [0]] \n", + " e2=\n", + " [[0]\n", + " [1]] \n", + "\n", + " Result of the transformation (matrix form):\n", + " [[-1 0]\n", + " [ 0 1]]\n" + ] + } + ], + "source": [ + "def T_reflection_yaxis(v):\n", + " A = np.array([[-1,0], [0,1]])\n", + " w = A @ v\n", + " \n", + " return w\n", + " \n", + "e1 = np.array([[1], [0]])\n", + "e2 = np.array([[0], [1]])\n", + "\n", + "transformation_result_reflection_yaxis = transform_vectors(T_reflection_yaxis, e1, e2)\n", + "\n", + "print(\"Original vectors:\\n e1= \\n\", e1,\"\\n e2=\\n\", e2, \n", + " \"\\n\\n Result of the transformation (matrix form):\\n\", transformation_result_reflection_yaxis)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can visualize this transformation:" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "tags": [ + "graded" + ] + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plot_transformation(T_reflection_yaxis, e1, e2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "There are many more standard linear transformations to explore. But now you have the required tools to apply them and visualize the results." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "## 5 - Application of Linear Transformations: Computer Graphics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A large number of basic geometric shapes is used in computer graphics. Such shapes (e.g. triangles, quadrilaterals) are defined by their vertexes (corners). Linear transformations are often used to generate complex shapes from the basic ones, through scaling, reflection, rotation, shearing etc. It provides opportunity to manipulate those shapes efficiently. \n", + "\n", + "The software responsible for rendering of graphics, has to process the coordinates of millions of vertexes. The use of matrix multiplication to manipulate coordinates helps to merge multiple transformations together, just applying matrix multiplication one by one in a sequence. And another advantage is that the dedicated hardware, such as Graphics Processing Units (GPUs), is designed specifically to handle these calculations in large numbers with high speed.\n", + "\n", + "So, matrix multiplication and linear transformations give you a super power, especially on scale!\n", + "\n", + "Here is an example where linear transformations could have helped to reduce the amount of work preparing the image:\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "All of the subleafs are similar and can be prepared as just linear transformations of one original leaf.\n", + "\n", + "Let's see a simple example of two transformations applied to a leaf image. For the image transformations you can use an `OpenCV` library. First, upload and show the image:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "img = cv2.imread('images/leaf_original.png', 0)\n", + "plt.imshow(img)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Of course, this is just a very simple leaf image (not a real example in preparation of the proper art work), but it will help you to get the idea how a few transformations can be applied in a row. Try to rotate the image 90 degrees clockwise and then apply a shear transformation, which can be visualized as:\n", + "\n", + "\n", + "\n", + "Rotate the image:" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "image_rotated = cv2.rotate(img, cv2.ROTATE_90_CLOCKWISE)\n", + "\n", + "plt.imshow(image_rotated)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Applying the shear you will get the following output:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "rows,cols = image_rotated.shape\n", + "# 3 by 3 matrix as it is required for the OpenCV library, don't worry about the details of it for now.\n", + "M = np.float32([[1, 0.5, 0], [0, 1, 0], [0, 0, 1]])\n", + "image_rotated_sheared = cv2.warpPerspective(image_rotated, M, (int(cols), int(rows)))\n", + "plt.imshow(image_rotated_sheared)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "What if you will apply those two transformations in the opposite order? Do you think the result will be the same? Run the following code to check that:" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "image_sheared = cv2.warpPerspective(img, M, (int(cols), int(rows)))\n", + "image_sheared_rotated = cv2.rotate(image_sheared, cv2.ROTATE_90_CLOCKWISE)\n", + "plt.imshow(image_sheared_rotated)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Comparing last two images, you can clearly see that the outputs are different. This is because linear transformation can be defined as a matrix multiplication. Then, applying two transformations in a row, e.g. with matrices $A$ and $B$, you perform multiplications $B(Av)=(BA)v$, where $v$ is a vector. And remember, that generally you cannot change the order in the matrix multiplication (most of the time $BA\\neq AB$). Let's check that! Define two matrices, corresponding to the rotation and shear transformations:" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "90 degrees clockwise rotation matrix:\n", + " [[ 0 1]\n", + " [-1 0]]\n", + "Matrix for the shear along x-axis:\n", + " [[1. 0.5]\n", + " [0. 1. ]]\n" + ] + } + ], + "source": [ + "M_rotation_90_clockwise = np.array([[0, 1], [-1, 0]])\n", + "M_shear_x = np.array([[1, 0.5], [0, 1]])\n", + "\n", + "print(\"90 degrees clockwise rotation matrix:\\n\", M_rotation_90_clockwise)\n", + "print(\"Matrix for the shear along x-axis:\\n\", M_shear_x)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now check that the results of their multiplications `M_rotation_90_clockwise @ M_shear_x` and `M_shear_x @ M_rotation_90_clockwise` are different:" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "M_rotation_90_clockwise by M_shear_x:\n", + " [[ 0. 1. ]\n", + " [-1. -0.5]]\n", + "M_shear_x by M_rotation_90_clockwise:\n", + " [[-0.5 1. ]\n", + " [-1. 0. ]]\n" + ] + } + ], + "source": [ + "print(\"M_rotation_90_clockwise by M_shear_x:\\n\", M_rotation_90_clockwise @ M_shear_x)\n", + "print(\"M_shear_x by M_rotation_90_clockwise:\\n\", M_shear_x @ M_rotation_90_clockwise)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This simple example shows that you need to be aware of the mathematical objects and their properties in the applications.\n", + "\n", + "Congratulations on completing this lab!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "accelerator": "GPU", + "colab": { + "collapsed_sections": [], + "name": "C1_W1_Assignment_Solution.ipynb", + "provenance": [] + }, + "coursera": { + "schema_names": [ + "AI4MC1-1" + ] + }, + "grader_version": "1", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false + }, + "vscode": { + "interpreter": { + "hash": "478841ab876a4250505273c8a697bbc1b6b194054b009c227dc606f17fb56272" + } + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/C1W3_Vector_operations.ipynb b/C1W3_Vector_operations.ipynb new file mode 100644 index 0000000..f8dbc97 --- /dev/null +++ b/C1W3_Vector_operations.ipynb @@ -0,0 +1,778 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "reverse-interview", + "metadata": {}, + "source": [ + "# Vector Operations: Scalar Multiplication, Sum and Dot Product of Vectors" + ] + }, + { + "cell_type": "markdown", + "id": "parental-conclusion", + "metadata": {}, + "source": [ + "In this lab you will use Python and `NumPy` functions to perform main vector operations: scalar multiplication, sum of vectors and their dot product. You will also investigate the speed of calculations using loop and vectorized forms of these main linear algebra operations" + ] + }, + { + "cell_type": "markdown", + "id": "looking-barcelona", + "metadata": {}, + "source": [ + "# Table of Contents\n", + "- [ 1 - Scalar Multiplication and Sum of Vectors](#1)\n", + " - [ 1.1 - Visualization of a Vector $v\\in\\mathbb{R}^2$](#1.1)\n", + " - [ 1.2 - Scalar Multiplication](#1.2)\n", + " - [ 1.3 - Sum of Vectors](#1.3)\n", + " - [ 1.4 - Norm of a Vector](#1.4)\n", + "- [ 2 - Dot Product](#2)\n", + " - [ 2.1 - Algebraic Definition of the Dot Product](#2.1)\n", + " - [ 2.2 - Dot Product using Python](#2.2)\n", + " - [ 2.3 - Speed of Calculations in Vectorized Form](#2.3)\n", + " - [ 2.4 - Geometric Definition of the Dot Product](#2.4)\n", + " - [ 2.5 - Application of the Dot Product: Vector Similarity](#2.5)" + ] + }, + { + "cell_type": "markdown", + "id": "advance-butler", + "metadata": {}, + "source": [ + "## Packages\n", + "\n", + "Load the `NumPy` package to access its functions." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "promotional-buffer", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "desperate-library", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "severe-studio", + "metadata": {}, + "source": [ + "\n", + "## 1 - Scalar Multiplication and Sum of Vectors" + ] + }, + { + "cell_type": "markdown", + "id": "ethical-success", + "metadata": {}, + "source": [ + "\n", + "### 1.1 - Visualization of a Vector $v\\in\\mathbb{R}^2$\n", + "\n", + "You already have seen in the videos and labs, that vectors can be visualized as arrows, and it is easy to do it for a $v\\in\\mathbb{R}^2$, e.g.\n", + "$v=\\begin{bmatrix}\n", + " 1 & 3\n", + "\\end{bmatrix}^T$\n", + "\n", + "The following code will show the visualization." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "korean-landing", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlIAAAJDCAYAAADAVfpNAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAwIElEQVR4nO3dfZxkZX3n/c8PJqhMowRpgsGoKGnwYdRkRuMztNyGGO9dzUYJu0iEW+0gIq5GBcFddTOiGzXCqmjU9SFi1NasKIqEsGlcEYLO3AoizhiQp1XQGUGhcBiY8bd/nIJt2m6666qqc3XRn/frdV5MnTpV36ua6u5vn+ucU5GZSJIkqXe71B6AJEnSqLJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFVpVewC92nPPPfOAAw5oJeu2225j9erVZo1IVtt5Zpm1XPLMGq2stvPM6t/GjRu3Zub4vHdm5kgtExMT2ZaZmRmzRiir7TyzzFoueWaNVlbbeWb1D9iQC/QSp/YkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKWaQkSZIKVStSEbFHRJwWEddGxLaIuCginlRrPJIkSb2quUfqI8BhwEuANcB5wPkRsV/FMUmSJC1ZlSIVEQ8A/hQ4KTMvyMwrM/MtwJXAK2qMSZIkqVe19kitAnYFbp+zfhvwjPaHI0mS1LvIzDrBERcBO4EjgBuBfw98ArgyMw+cs+0UMAUwPj6+dnp6upUxdjodxsbGzBqRrLbzzDJrueSZNVpZbeeZ1b/JycmNmblu3jszs8oCPAr4GpDADuCbwJnAFff2uImJiWzLzMyMWSOU1XaeWWYtlzyzRiur7Tyz+gdsyAV6SbWDzTPzqsw8GBgDficznwz8BnB1rTFJkiT1ovp1pDLztsy8ISJ+k+Ysvi/WHpMkSdJSrKoVHBGH0RS5TcABwDuBzcDHao1JkiSpFzX3SD0IeB9Nkfo74ELgDzPzzopjkiRJWrJqe6Qycxpo5/Q7SZKkIah+jJQkSdKoskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVskhJkiQVqlKkImLXiPiriLg6Im7v/nd9RKyqMR5JkqQStYrLicArgZcA3wUeD3wC2A78VaUxSZIk9aRWkXoacHZmnt29fU1EfAn4g0rjkSRJ6lmtY6QuBCYj4iCAiHgM8GzgnErjkSRJ6lmtPVL/FdgDuCIidnbH8bbMPKPSeCRJknoWmdl+aMQRwDuB1wPfA54InA68PjP/+zzbTwFTAOPj42unp6dbGWen02FsbMysEclqO88ss5ZLnlmjldV2nln9m5yc3JiZ6+a9MzNbX4DrgVfPWfcm4MrFHjsxMZFtmZmZMWuEstrOM8us5ZJn1mhltZ1nVv+ADblAL6l1jNTuwM4563bida0kSdIIqXWM1NnASRFxNc3U3u8BrwX+rtJ4JEmSelarSL2K5npRZwD7ADcAHwb+S6XxSJIk9axKkcrMW4H/2F0kSZJGksckSZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFapSpCLimojIeZav1BiPJElSiVWVcp8E7Drr9kOAjcB0neFIkiT1rkqRyswts29HxEuBW4DP1RiPJElSierHSEVEAC8FzszMX9YejyRJ0lJVL1LAc4D9gY/UHogkSVIvIjPrDiDic8DDM/PJ97LNFDAFMD4+vnZ6up1DqTqdDmNjY2aNSFbbeWaZtVzyzBqtrLbzzOrf5OTkxsxcN++dmVltAfYB7gBevtTHTExMZFtmZmbMGqGstvPMMmu55Jk1Wllt55nVP2BDLtBLak/tHQ1sBz5TeRySJEk9q1akugeZvwz4TGbeWmsckiRJpWpdRwrgEOB3gRdXHIMkSVKxakUqM2eAqJUvSZLUr9rHSEmSJI0si5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVKhakUqIh4SEZ+IiC0RcXtEXBERB9cajyRJUq9W1QiNiD2BbwAXAs8DtgCPBH5aYzySJEklqhQp4A3ADZn557PWXV1pLJIkSUVqTe29ALgkIj4bET+NiO9ExPEREZXGI0mS1LNaReqRwHHAD4HDgNOBdwCvrDQeSZKknkVmth8acQewITOfNmvdqcCfZOaj59l+CpgCGB8fXzs9Pd3KODudDmNjY2aNSFbbeWaZtVzyzBqtrLbzzOrf5OTkxsxcN++dmdn6AlwLfGTOuqOA2xZ77MTERLZlZmbGrBHKajvPLLOWS55Zo5XVdp5Z/aPZ+TNvL6k1tfcN4MA56yZoCpYkSdJIqFWk3gM8JSJOiYgDIuJFwAnA+yuNR5IkqWdVilRmfovmzL3DgcuBtwH/CTijxngkSZJK1LqOFJn5FeArtfIlSZL65WftSZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFbJISZIkFapSpCLiLRGRc5Yba4xFkiSp1KqK2ZuBQ2bd3llpHJIkSUVqFqkdmeleKEmSNLJqHiP1yIj4UURcHRGfiYhHVhyLJElSzyIz2w+NeC6wB7AJ2Ad4E3AQ8NjM/Nk8208BUwDj4+Nrp6enWxlnp9NhbGzMrBHJajvPLLOWS55Zo5XVdp5Z/ZucnNyYmevmvTMzqy/AGPBT4LWLbTsxMZFtmZmZMWuEstrOM8us5ZJn1mhltZ1nVv+ADblAL1kWlz/IzA7wPeB3a49FkiRpqZZFkYqI+9NM7d1QeyySJElLVes6Uu+KiIMjYv+I+APg88Bq4BM1xiNJklSi1uUPHgp8Gtgb2AL8C/CUzLy20ngkSZJ6VqVIZeYRNXIlSZIGaVkcIyVJkjSKLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFqhepiDg5IjIi3ld7LJIkSb2oWqQi4inAy4HLao5DkiSpRLUiFREPAj4FvBS4udY4JEmSStXcI/Uh4POZ+c8VxyBJklQsMrP90IiXA8cCT83MOyLiAuDyzDx+ge2ngCmA8fHxtdPT062Ms9PpMDY2ZtaIZLWdZ5ZZyyXPrNHKajvPrP5NTk5uzMx1896Zma0uwIHAFuCgWesuAN63lMdPTExkW2ZmZswaoay288wya7nkmTVaWW3nmdU/YEMu0EtWtVLl7umpwN7A5RFx17pdgWdFxLHA6szcXmFckiRJPalRpM4CNsxZ9zHgX4FTgTvaHpAkSVKJ1otUZv4c+PnsdRFxG3BTZl7e9ngkSZJKVb8gpyRJ0qiqMbX3azLzkNpjkCRJ6pV7pCRJkgpZpCRJkgpZpCRJkgpZpCRJkgpZpCRJkgpZpCRJkgpZpCRJkgpZpCSpZfvssw/ve9/77rFu06ZN7LbbbnznO9+pMyhJRSxSktSyNWvWcMUVV9xj3UknncQRRxzBE5/4xDqDklRkWVzZXJJWkjVr1txjz9NFF13Eueeey+bNm+sNSlIR90hJUsvm7pE68cQTOf7443n4wx9ecVSSSrhHSpJatmbNGrZs2cLPfvYzLrzwQi6//HK++MUv1h6WpALukZKklj32sY9ll1124bvf/S4nn3wyb3zjG9lrr71qD0tSAYuUJLVs9erV7L///px88snccsstnHDCCbWHJKmQU3uSVMGaNWs466yz+OhHP8r973//2sORVMgiJUkVfOELX6g9BEkDUGVqLyJeGRGXRcQt3eXiiHhejbFIkiSVqnWM1P8GTgR+H1gH/DNwVkQ8vtJ4JEmSelZlai8z557ne0pEvAJ4KnBZhSFJkiT1rPoxUhGxK/AiYAy4qPJwJEmSliwys05wxBrgYuD+QAc4MjO/ssC2U8AUwPj4+Nrp6elWxtjpdBgbGzNrRLLazjPLrIXceeedbN++/T752swavTyz+jc5ObkxM9fNe2dmVlmA3YADaI6RejuwFXjcYo+bmJjItszMzJg1Qllt55ll1nyuueaafMUrXnGffG1mjWaeWf0DNuQCvaTaBTkz847MvDIzN2TmG4HvAK+pNR5J6tfOnTt5yUtewu233157KJJaspyubL4LcL/ag5CkUu9+97v52te+5gU2pRWkysHmEfEO4CvA9cAewH8ADgG8lpSkkfTtb3+bN73pTQAWKWkFqXXW3r7Amd3//oLmkgfPzcx/rDQeSSq2bds2jjzySO68804A7nc/d65LK0Wt60gdXSNXkobhxBNP5Pvf//7dt90jJa0cy+kYKUkaOeeeey7vfe9777HOIiWtHBYpSSq0ZcsWjjnmmF9bb5GSVg6LlCQVyEympqa48cYbf+0+j5GSVg6LlCQV+OhHP8pZZ501733ukZJWDouUJPXoyiuv5NWvfvWC91ukpJXDIiVJPdixYwcvfvGLue222xbcxiIlrRwWKUnqwfr167nkkkvudRuLlLRyWKQkaYkuvvhi1q9fv+h2HmwurRwWKUlagltvvZWjjjqKnTt3Lrqte6SklcMiJUlL8JrXvIarrrpqSdtapKSVo9Zn7UnSyPjWt77Fj3/8Y0444QQOOOAAMnPRs/Z+8YtftDhCSbVYpCRpEU960pM455xz7r499ziphz70odx000388pe/BDxGSlpJnNqTpB597nOfu8ftY489lnPOOYfdd98dcGpPWkksUpLUg82bN3PZZZfdY92LXvQiDj744LvLlEVKWjksUpLUg7l7ox7/+MczMTEBcHeZesADHlBjaJIq8BgpSerB3CJ1+OGH3+P2wQcf3OZwJFVWZY9URLwxIr4VEbdExJaIODsiHldjLJK0VAtN60lauWpN7R0CnAE8DXg2sAM4PyL2qjQeSVrUvU3rSVqZqkztZeZhs29HxFHAL4CnA2fXGJMkLWaxaT1JK89yOdh8D5qx3Fx7IJI0H6f1JM1nuRSp04HvABdXHockzctpPUnzicysO4CIvwGOAJ6RmT9cYJspYApgfHx87fT0dCtj63Q6jI2NmTUiWW3nmbWysq644gq2bdt29+399tuPfffdd2h5vTBrtLLazjOrf5OTkxszc928d2ZmtQV4D3ADcNBSHzMxMZFtmZmZMWuEstrOM2vlZG3atCmBeyybN28eWl6vzBqtrLbzzOofsCEX6CXVriMVEafT7Ik6JDM31RqHJC3GaT1JC6lSpCLi/cBRwAuAmyPirv3jnczs1BiTJC3Es/UkLaTWwebH0Zyp9z9ppvbuWl5XaTySNC/P1pN0b2pdRypq5EpSr5zWk3RvlsvlDyRpWXJaT9K9sUhJ0gKc1pO0GIuUJC3AaT1Ji7FISdICnNaTtBiLlCTNw2k9SUthkZKkeTitJ2kpLFKSNA+n9SQthUVKkuZwWk/SUlmkJGkOp/UkLZVFSpLmcFpP0lJZpCRpFqf1JPXCIiVJszitJ6kXFilJmsVpPUm9sEhJUpfTepJ6ZZGSpC6n9ST1yiIlSV1O60nqVZUiFRHPiogvRcSPIiIj4uga45CkuzitJ6lErT1SY8DlwKuBbZXGIEl3c1pPUolVNUIz8xzgHICI+HiNMUjSbE7rSSrhMVKSVjyn9SSVskhJWvGc1pNUKjKz7gAiOsDxmfnxe9lmCpgCGB8fXzs9Pd3K2DqdDmNjY2aNSFbbeWbdd7KuuOIKtm37v4dr7rfffuy7775Dyxs0s0Yrq+08s/o3OTm5MTPXzXtnZlZdgA5w9FK3n5iYyLbMzMyYNUJZbeeZdd/I2rRpUwL3WDZv3jy0vGEwa7Sy2s4zq3/Ahlyglzi1J2lFc1pPUj+qnLUXEWPAAd2buwAPi4gnAjdl5nU1xiRpZfJsPUn9qLVHah3w7e7yAOCt3X//l0rjkbQCebaepH7Vuo7UBUDUyJakuzitJ6lfHiMlacVyWk9SvyxSklYkp/UkDYJFStKK5LSepEGwSElakZzWkzQIFilJK47TepIGxSIlacVxWk/SoFikJK04TutJGhSLlKQVxWk9SYNkkZK0ojitJ2mQLFKSVhSn9SQNkkVK0orhtJ6kQbNISVoxnNaTNGgWKUkrhtN6kgbNIiVpRdi+fbvTepIGziIlaUW46aab7nHbaT1Jg2CRkrQi3Hzzzfe47bSepEGwSEm6z9u8eTPbtm27xzqn9SQNQtUiFRHHRcTVEXF7RGyMiGfWHI+k+ybP1pM0LNWKVET8GXA6cCrwe8BFwFcj4mG1xiTpvsmz9SQNS809Uq8FPp6ZH87M72fmq4AbgFdUHJOk+xgvwilpmKoUqYjYDVgLnDfnrvOAp7U/Ikn3VTt27OCFL3whu+zS/LhzWk/SIEVmth8a8dvAj4CDM/N/zVr/n4EjM/PAOdtPAVMA4+Pja6enp1sZZ6fTYWxszKwRyWo7z6zRyrr11lvZsWMHEcGee+459Lz76tfRrNHLM6t/k5OTGzNz3bx3ZmbrC/DbQALPnLP+zcCme3vsxMREtmVmZsasEcpqO88ss5ZLnlmjldV2nln9AzbkAr2k1jFSW4GdwL5z1u8D/KT94UiSJPWuSpHKzDuAjcBz5tz1HJqz9yRJkpa9VRWz/wb4ZER8E/gGcCzNlN8HK45JkiRpyaoVqcz8bEQ8GHgT8BDgcuCPM/PaWmOSJEnqRc09UmTmGcAZNccgSZJUys/akyRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKmSRkiRJKlSlSEXEVETMRMTPIyIj4hE1xiFJktSPWnukdgfOA95SKV+SJKlvq2qEZuZpABGxrka+JEnSIHiMlCRJUqHIzHrhzR6pbwH7Z+Y197LdFDAFMD4+vnZ6erqV8XU6HcbGxswakay288wya7nkmTVaWW3nmdW/ycnJjZk5/yxaZg5kAdYDuchyyJzHrOuuf8RScyYmJrItMzMzZo1QVtt5Zpm1XPLMGq2stvPM6h+wIRfoJYM8Ruo04MxFtrlugHmSJElVDaxIZeZWYOugnk+SJGm5q3LWXkTsC+wLTHRXPSYi9gSuy8ybaoxJkiSpV7XO2jsW+Dbwqe7tr3Rv/9tK45EkSepZlSKVmW/JzJhn+XiN8UiSJJXwOlKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFLFKSJEmFWi9SEbFXRLw3IjZFxLaIuD4iPhARD257LJIkSf2osUfqt4H9gDcAa4AXA88CPl1hLJIkScVWtR2YmZcD/27Wqisj4vXAlyPigZl5S9tjkiRJKrFcjpF6ILAd+GXtgUiSJC1VZGbdAUTsCXwL+GpmnrDANlPAFMD4+Pja6enpVsbW6XQYGxsza0Sy2s4zy6zlkmfWaGW1nWdW/yYnJzdm5rp578zMgSzAeiAXWQ6Z85jVwNeBC4D7LyVnYmIi2zIzM2PWCGW1nWeWWcslz6zRymo7z6z+ARtygV4yyGOkTgPOXGSb6+76R0SMAed0b/6/mXn7AMciSZI0dAMrUpm5Fdi6lG0jYg/gq0AAf5SZnUGNQ5IkqS2tn7XXLVHn0Rxg/gJgdUSs7t59U2be0faYJEmSSrRepIC1wFO6//7BnPsmaY6XkiRJWvZqXEfqApopPUmSpJG2XK4jJUmSNHIsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYUsUpIkSYWqFKmI+HBEXBUR2yJiS0R8MSIeXWMskiRJpWrtkdoAHA08GjgMCOD8iPiNSuORJEnq2aoaoZn5t7NuXhMRbwIuBR4JbK4xJkmSpF5VP0YqIlYDxwDXAdfUHY0kSdLSVStSEXFcRHSADvBc4NDM3F5rPJIkSb2KzBzME0WsB05ZZLPJzLygu/2DgH2AhwCvA34HeHpm/nKe554CpgDGx8fXTk9PD2TMi+l0OoyNjZk1Illt55ll1nLJM2u0strOM6t/k5OTGzNz3bx3ZuZAFmBv4KBFlt0XeOxuwG3AUYvlTExMZFtmZmbMGqGstvPMMmu55Jk1Wllt55nVP2BDLtBLBnaweWZuBbYWPjy6y/0GNR5JkqRha/2svYg4APhT4HxgC/BQ4CRgO/DltscjSZJUqsbB5tuBQ4CvAlcCnwVuBZ6amTdWGI8kSVKR1vdIZeb1NGfpSZIkjbTq15GSJEkaVRYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQlWLVDTOjYiMiBfWHIskSVKvau+R+ktgZ+UxSJIkFVlVKzgi1gGvBtYCP6k1DkmSpFJV9khFxB7Ap4G/yMyf1hiDJElSv2pN7X0QODczz6mUL0mS1LfIzME8UcR64JRFNpsEfgc4EViXmbd3H5vAizLz8ws89xQwBTA+Pr52enp6IGNeTKfTYWxszKwRyWo7zyyzlkueWaOV1XaeWf2bnJzcmJnr5r0zMweyAHsDBy2y7A58HPgVsGPWkjQHnV+4WM7ExES2ZWZmxqwRymo7zyyzlkueWaOV1XaeWf0DNuQCvWRgB5tn5lZg62LbRcQpwLvmrP4u8Drgi4MajyRJ0rC1ftZeZv4I+NHsdREBcH1m/rDt8UiSJJWqfR0pSZKkkVXtOlKzZWbUHoMkSVKv3CMlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUyCIlSZJUqEqRiogLIiLnLJ+pMRZJkqRSqypmfww4edbtbbUGIkmSVKJmkfplZt5YMV+SJKkvNY+ROiIitkbE9yLiXRGxR8WxSJIk9azWHqm/B64Ffgw8Fng78ATgOZXGI0mS1LPIzME8UcR64JRFNpvMzAvmeeyTgUuAtZn5/89z/xQwBTA+Pr52enq6/wEvQafTYWxszKwRyWo7zyyzlkueWaOV1XaeWf2bnJzcmJnr5r0zMweyAHsDBy2y7L7AY3cBdgB/tljOxMREtmVmZsasEcpqO88ss5ZLnlmjldV2nln9AzbkAr1kYFN7mbkV2Fr48DXArsANgxqPJEnSsLV+jFREPAo4EjiHpng9Bng38G3gG22PR5IkqVSNg83vAA4FXg2MAdcDXwHempk7K4xHkiSpSOtFKjOvBw5uO1eSJGnQ/Kw9SZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQtWKVEQ8OSL+KSI6EXFrRFwUEXvXGo8kSVKvVtUIjYg/AP4ReCfwGuAO4HHAnTXGI0mSVKJKkQLeA7w/M982a90PKo1FkiSpSOtTexGxD/BU4IaIuDAifhIRX4+IQ9seiyRJUj8iM9sNjHgKcDFwE/B64NvAi4A3AGsz89J5HjMFTAGMj4+vnZ6ebmWsnU6HsbExs0Ykq+08s8xaLnlmjVZW23lm9W9ycnJjZq6b987MHMgCrAdykeUQ4Gndf5865/EXAR9YLGdiYiLbMjMzY9YIZbWdZ5ZZyyXPrNHKajvPrP4BG3KBXjLIY6ROA85cZJvrgN/q/vuKOfd9H3jYAMcjSZI0VAMrUpm5Fdi62HYRcQ3wY+DAOXdNAN8d1HgkSZKGrfWz9jIzI+KdwFsj4jKaY6QOB54CHN/2eCRJkkpVufxBZp4WEbsB7wYeDHwPeG7Oc6C5JEnSclXrOlJk5l8Df10rX5IkqV9+1p4kSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVIhi5QkSVKh1otURDwiInKB5fVtj0eSJKlUjT1S1wMPmbMcByTw+QrjkSRJKrKq7cDM3AncOHtdRPw74PzMvLrt8UiSJJVqvUjNFRH7A4cCh9ceiyRJUi8iM+sOIOJU4GXAfpl55wLbTAFTAOPj42unp6dbGVun02FsbMysEclqO88ss5ZLnlmjldV2nln9m5yc3JiZ6+a9MzMHsgDraY5zurflkDmPWQX8GPjrpeZMTExkW2ZmZswaoay288wya7nkmTVaWW3nmdU/YEMu0EsGObV3GnDmIttcN+f2v6E52PwjAxyHJElSKwZWpDJzK7C1x4e9HPhaZv5gUOOQJElqS7WDzSPiYcBhwJ/XGoMkSVI/al7Z/KXAL4B/qDgGSZKkYtWKVGa+OTP3yszba41BkiSpH37WniRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUiGLlCRJUqEqRSoi9o2IT0bEjRFxW0RcGhFH1hiLJElSqVWVcv8O2At4PrAF+BPgkxFxfWb+r0pjkiRJ6kmtqb2nAe/PzEsy84eZ+W7geuDJlcYjSZLUs1pF6kLg8Ih4cETsEhHPB8aB8yuNR5IkqWeRme2HRjwQ+AzwXGAHsB04MjO/uMD2U8AUwPj4+Nrp6elWxtnpdBgbGzNrRLLazjPLrOWSZ9ZoZbWdZ1b/JicnN2bmunnvzMyBLMB6IBdZDulu+9+AbwKHAk8A3gz8AnjCYjkTExPZlpmZGbNGKKvtPLPMWi55Zo1WVtt5ZvUP2JAL9JJBHmx+GnDmIttcFxGPAl4FPDEzL+2uvzQintld/7IBjkmSJGloBlakMnMrsHWx7SJi9+4/d865ayde10qSJI2QGsVlE3AlcEZEPDkiHhURfwk8B/hChfFIkiQVab1IZeadwB/TXD/qbOAy4M+BYzLz7LbHI0mSVKrKBTkz81+BP62RLUmSNCgekyRJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklTIIiVJklSoSpGKiEdFxBciYktE3BIR0xHxWzXGIkmSVKr1IhURq4HzgAAOBZ4O7AacHRHuIZMkSSNjVYXMpwP7A+sy82aAiHgJcDPwbOD8CmOSJEnqWY09QPcDErh91rrbgV8Bz6gwHkmSpCI1itS/AB3gnRGxujvV9y5gV+AhFcYjSZJUJDJzME8UsR44ZZHNJjPzgoj4Q+ADNFN8vwI+DTwGuCQzj5vnuaeAKYDx8fG109PTAxnzYjqdDmNjY2aNSFbbeWaZtVzyzBqtrLbzzOrf5OTkxsxcN++dmTmQBdgbOGiRZfd5HrNn9983Aq9fLGdiYiLbMjMzY9YIZbWdZ5ZZyyXPrNHKajvPrP4BG3KBXjKwg80zcyuwteAxRMSzgX2ALw1qPJIkScNW46w9IuIYYBPwU+CpwOnAezJzc43xSJIklahSpIADgbcDewHXAG8D3lNpLJIkSUWqFKnMPAk4qUa2JEnSoHglcUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIWKUmSpEIDL1IRMRURMxHx84jIiHjEPNv8ZkR8MiJ+0V0+GRF7DnoskiRJwzSMPVK7A+cBb7mXbf4e+H3gucAfdf/9ySGMRZIkaWhWDfoJM/M0gIhYN9/9EfFomvL0jMy8qLvuL4CvR8SBmbl50GOSJEkahhrHSD0V6AAXzVr3DeA24GkVxiNJklSkRpHaF9iSmXnXiu6/f9q9T5IkaSQsaWovItYDpyyy2WRmXrDE3JxnXSywnoiYAqa6N7dHxOVLzOnX3sBWs0Ymq+08s8xaLnlmjVZW23lm9e/hC92x1GOkTgPOXGSb65b4XDcC+0RE3LVXKiICGAd+Mt8DMvNDwIe6227IzHmPvxo0s0Yrq+08s8xaLnlmjVZW23lmDdeSilRmbmVwre9iYIzmWKm7jpN6KrCaex43JUmStKwN/Ky9iNiX5linie6qx3SvEXVdZt6Umd+PiHOBv42Il9NM6f0t8GXP2JMkSaNkGAebHwt8G/hU9/ZXurf/7axtjgQupbne1D92/33UEp//Q4MZpln3way288wya7nkmTVaWW3nmTVEMevkOUmSJPXAz9qTJEkqZJGSJEkqNBJFqvYHIUfEoyLiCxGxJSJuiYjpiPitQTz3PFn7dsd+Y0TcFhGXRsSRQ8h5RPdrOd/y+kHnzcp9ckT8U0R0IuLWiLgoIvYeQs4F87yuzww6Z05mRMS53awXDinjwxFxVURs674fv9j92KVB5+wVEe+NiE3drOsj4gMR8eBBZ3XzFv0e7/P5j4uIqyPi9ojYGBHPHOTzz8p5VkR8KSJ+1H0dRw8p540R8a3uz6MtEXF2RDxuGFndvFdGxGXdvFsi4uKIeN6w8mblntz9Or5vSM//lnl+Ttw4jKxu3kMi4hPd/2e3R8QVEXHwEHKuWeBn+1cGndXN2zUi/mrW99jVEbE+IgZ+Qls3b4+IOC0iru3+fLooIp40jKylGIkiRcUPQo6I1d3sAA4Fng7sBpwdEcP4+v0d8Gjg+cCa7u1PRsSzBpxzPfCQOctxNBdF/fyAswCIiD+g+VpeADwFWAu8C7hzGHnAx7jn6/uLIeXc5S+BnUPO2AAcTfMeOYzmfXl+RPzGgHN+G9gPeAPN+/DFwLOATw845y5L+R4vEhF/BpwOnAr8Hs1lVr4aEQ8bdBbNpV0uB14NbBvC89/lEOAMmo/Vejawg+Z9sNeQ8v43cCLNz9V1wD8DZ0XE44eUR0Q8BXg5cNmwMro2c8+fE2uGERLNH/bfoPmefR7N9/CraD7VY9CexD1f0+/T/GyfHkIWNO+NVwInAAfRvP9fCbxxSHkfofn59xKa/1/n0bz/9xtS3r3LzJFZaL6BE3jEnPWP7q5/+qx1z+iuO7DPzD8EfgX85qx1D+qu+3+G8Bo7wDFz1l0LvK6Fr+8/AecN8fkvAt7W0nvlAuB9bWR189bRlNN9uu+7F7aU+/hBvM+XmPXH3ff9A4f8dfy17/E+n/MS4MNz1v0r8PYhf706wNEtvQ/GaEr8v2kjr5t5E/AXQ3ruBwFX0ZTEoX0v0xT3y1v6ep0KfKOt/z9zsk8Bfg7sPqTn/zLwiTnrPkFzWaNBZz2A5g+H589ZvxFYX+PrOyp7pBYzzA9Cvh/ND/bbZ627neYXyjP6fO75XAgcHhEPjohdIuL5NFd9P38IWXeLiP1p9rgN5XTSiNiH5v/TDRFxYUT8JCK+HhGHDiOv64iI2BoR34uId0XEHsMI6T7vp2l+qQzjr8uFclcDx9B8qsA1LUQ+ENgO/LKFrIGIiN1o9nyeN+eu87hvfUj6HjQzDDcPO6g7jXMETXkb1kWUPwR8PjP/eUjPP9sju1OxV0fEZyLikUPKeQFwSUR8NiJ+GhHfiYjjIyKGlAfc/ckhLwXOzMxhfe9eCExGxEHdzMfQlOBzhpC1CtiVe/5OhmYP8DB+Jy/qvlKkhvlByP9CU9LeGRGru7+83kXzP/IhfT73fA6nKW5baX5pfQr495n5nSFkzfbybuYXh/T8d/1weivwUZrp168D/xgRTxhC3t/TXK9sEvgr4E+B/zGEHIAPAudm5jB+aPya7vE+HZr35XOBQzNz+5Az96T5On44M3cMM2vA9qb5Xp378VM/4b71IemnA9+h+eSIoYiINd333Xaa9/yfZOZ3h5DzcuAA4D8N+rnncQnNVPlzaX4G7gtcNKRjAR9Jc/jED2mmpU4H3kEzBTZMzwH2p5kOG5b/SnMozRURcSfwPZo9VGcMOigzb6V5n78pIvbrFvsX0/yhPozfyUsaVJUFWE9TGO5tOWTOYxaa2jsZuGqejKuBk/rNp5neu4pmL9QOmjfMRuCMQb9W4L8B36TZO/QE4M3AL4AnDPHrugr4MfDXw/r/SPPXfwKnznn8RcAHhvXaZj32yd37f3/Ar+sommNi7j/rsT1N7fX6umimPX6X5pilL9Fc8HZJu+wL3x+raUrvBbNfZ5vf46ULzbFeCTxzzvo3A5sGkXEv2a1M7QF/0/3+feSQc3ajKTjrgLfT/OH1uAFnHAhsAQ6ate4CWpqmp9nL9lPgtUN47juAi+asOxX4/pBf0+eAbw454wiaQxuOoDlm6Siaqd+XDinvUcDXut/bO2h+Z54JXNHG+2TuUu2CnNGcqbXY2VrX5axdkRGxDvgWsH9mXjNr/f9H0+4fmN0X1N2deSvwqsz82IDy9wZ2ZObPu2d2vDsz37nIcyw5i6ZNXwk8MTMvnfX484FrMvNlg8qa87r+hGZvzYGZ+YPFMkrygN+i+UvsqMy8+wOwI+K/A/tm5qJnAJW8tlmP3YXmB9mRmfnZQWXRHPD75zQl+y67dm9fnJmL7mru83XtRjOdc2xmLnpyRa9ZETFGs3s+gOdmZmexjNKs7mPm/R4v1f36/JJmr+7nZq1/P00JOLjfjHvJ7gDHZ+bHh5jxHppfXpOZuWlYOQtknw9cm5kvHeBzHk1zksjskzZ2pfmF+StgdQ5/7+sMTcl+xYCf91rgn2b/HI+Io4APZubqQWbNev59aE4UeGVmfngYGd2c64F3Zebps9a9ieYPiQOGmLua5vf+DRHxWWBsKb9LBm0opyYuRVb+IOSS/O5jiIhn0xxU/KUeHrdoVkTs3v3n3DO/drLEadjCr+vLga/1WqJ6yYuIa2j+aj5wzl0TwJKmB/p8z6yh+YF8wyCzIuIUmqne2b4LvI4lTpP2+bqiu9xv0FndY7++2n3+P+qlRPWaNSyZeUdEbKSZ3vjcrLueA/xDnVENRkScTlOiDmm7RHXtwhLfdz04i+bM1Nk+RnNywKk0fwwNTUTcn+ass5khPP03mP/n37VDyLrL0TRTsUO99AvNWbfFv7dKZeZtwG0R8Zs006VvGGbeQqoVqV5E5Q9CjohjgE00u3yfSrP36z2DeO45NtHskTojIl4H/IzmAMXn0FwOYeC6p4AfRrNXZWgyMyPincBbI+Iymumow2kug3D8ILMi4lE0x0edQ/OL/DHAu7uZ3xhkVmb+CPjRnHyA6zPzh4PMiogDaI71Op9m+uOhwEk0Pyi/POCsPWgOyH4gzXvwruMDAW7KzIH+Qlvse7zPp/8bmkuIfJPm//+xNFN+H+zzeX9Ndw/eXX+B7wI8LCKeSPM1u26AOe+nmT55AXBz9+sH0Om18C4x7x00n5t6Pc2B7f+BZmp7oH/9Z+bPac4um519G83X7/JBZnWf+13A2TR7l/ehOS5rNc0ZZ4P2Hprjr04BPktzKY4TaA5NGbjurMzLgM9kc1zRMJ0NnBQRV9McH/V7wGtpLt8zcBFxGM331yaa77d30lzG4tdmn1pRYz6x14XmFNX5jq84etY2e9HMkd7SXc4E9hxQ/juAG2n+GvoBzRskhvRaf5fmL+Wf0Jx1eCnwkiF+bd9KM5e95GNf+sx7A80Prdto5rWHcQmJ36GZP/8ZTcm4kqb87tXSa+zpGKkeX9dXaQr9HTS/1D7FrONJBph1yALfcwseh9Zn3qLf430+/3E0ZzZupzm+8VlD+n+/0Nft40N4j823vGVIr+vjNHtOtnfff+cDhw0ja57sCxje5Q8+Q7On/A6aP4j+AXjMEF/L87o/02/v/i45YYi/Sya774knt/D/aA/gtO57ZBvNYRynDuv3Cs0f4Vd13483AO8DHjTs17nQ4ocWS5IkFbqvXP5AkiSpdRYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQhYpSZKkQv8HsUUs88cF0gEAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "def plot_vectors(list_v, list_label, list_color):\n", + " _, ax = plt.subplots(figsize=(10, 10))\n", + " ax.tick_params(axis='x', labelsize=14)\n", + " ax.tick_params(axis='y', labelsize=14)\n", + " ax.set_xticks(np.arange(-10, 10))\n", + " ax.set_yticks(np.arange(-10, 10))\n", + " \n", + " \n", + " plt.axis([-10, 10, -10, 10])\n", + " for i, v in enumerate(list_v):\n", + " sgn = 0.4 * np.array([[1] if i==0 else [i] for i in np.sign(v)])\n", + " plt.quiver(v[0], v[1], color=list_color[i], angles='xy', scale_units='xy', scale=1)\n", + " ax.text(v[0]-0.2+sgn[0], v[1]-0.2+sgn[1], list_label[i], fontsize=14, color=list_color[i])\n", + "\n", + " plt.grid()\n", + " plt.gca().set_aspect(\"equal\")\n", + " plt.show()\n", + "\n", + "v = np.array([[1],[3]])\n", + "# Arguments: list of vectors as NumPy arrays, labels, colors.\n", + "plot_vectors([v], [f\"$v$\"], [\"black\"])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "latin-immunology", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "original-translator", + "metadata": {}, + "source": [ + "The vector is defined by its **norm (length, magnitude)** and **direction**, not its actual position. But for clarity and convenience vectors are often plotted starting in the origin (in $\\mathbb{R}^2$ it is a point $(0,0)$) ." + ] + }, + { + "cell_type": "markdown", + "id": "speaking-surgeon", + "metadata": {}, + "source": [ + "\n", + "### 1.2 - Scalar Multiplication\n", + "\n", + "**Scalar multiplication** of a vector $v=\\begin{bmatrix}\n", + " v_1 & v_2 & \\ldots & v_n \n", + "\\end{bmatrix}^T\\in\\mathbb{R}^n$ by a scalar $k$ is a vector $kv=\\begin{bmatrix}\n", + " kv_1 & kv_2 & \\ldots & kv_n \n", + "\\end{bmatrix}^T$ (element by element multiplication). If $k>0$, then $kv$ is a vector pointing in the same direction as $v$ and it is $k$ times as long as $v$. If $k=0$, then $kv$ is a zero vector. If $k<0$, vector $kv$ will be pointing in the opposite direction. In Python you can perform this operation with a `*` operator. Check out the example below:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "acute-investment", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plot_vectors([v, 2*v, -2*v], [f\"$v$\", f\"$2v$\", f\"$-2v$\"], [\"black\", \"green\", \"blue\"])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "recent-processor", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "civil-county", + "metadata": {}, + "source": [ + "\n", + "### 1.3 - Sum of Vectors\n", + "\n", + "**Sum of vectors (vector addition)** can be performed by adding the corresponding components of the vectors: if $v=\\begin{bmatrix}\n", + " v_1 & v_2 & \\ldots & v_n \n", + "\\end{bmatrix}^T\\in\\mathbb{R}^n$ and \n", + "$w=\\begin{bmatrix}\n", + " w_1 & w_2 & \\ldots & w_n \n", + "\\end{bmatrix}^T\\in\\mathbb{R}^n$, then $v + w=\\begin{bmatrix}\n", + " v_1 + w_1 & v_2 + w_2 & \\ldots & v_n + w_n \n", + "\\end{bmatrix}^T\\in\\mathbb{R}^n$. The so-called **parallelogram law** gives the rule for vector addition. For two vectors $u$ and $v$ represented by the adjacent sides (both in magnitude and direction) of a parallelogram drawn from a point, the vector sum $u+v$ is is represented by the diagonal of the parallelogram drawn from the same point:\n", + "\n", + "\n", + "\n", + "In Python you can either use `+` operator or `NumPy` function `np.add()`. In the following code you can uncomment the line to check that the result will be the same:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "acoustic-heath", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "v = np.array([[1],[3]])\n", + "w = np.array([[4],[-1]])\n", + "\n", + "plot_vectors([v, w, v + w], [f\"$v$\", f\"$w$\", f\"$v + w$\"], [\"black\", \"black\", \"red\"])\n", + "# plot_vectors([v, w, np.add(v, w)], [f\"$v$\", f\"$w$\", f\"$v + w$\"], [\"black\", \"black\", \"red\"])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "looking-tuning", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "nearby-portal", + "metadata": {}, + "source": [ + "\n", + "### 1.4 - Norm of a Vector\n", + "\n", + "The norm of a vector $v$ is denoted as $\\lvert v\\rvert$. It is a nonnegative number that describes the extent of the vector in space (its length). The norm of a vector can be found using `NumPy` function `np.linalg.norm()`:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "spare-timing", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Norm of a vector v is 3.1622776601683795\n" + ] + } + ], + "source": [ + "print(\"Norm of a vector v is\", np.linalg.norm(v))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "silver-return", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "talented-survey", + "metadata": {}, + "source": [ + "\n", + "## 2 - Dot Product" + ] + }, + { + "cell_type": "markdown", + "id": "sunset-transmission", + "metadata": {}, + "source": [ + "\n", + "### 2.1 - Algebraic Definition of the Dot Product\n", + "\n", + "The **dot product** (or **scalar product**) is an algebraic operation that takes two vectors $x=\\begin{bmatrix}\n", + " x_1 & x_2 & \\ldots & x_n \n", + "\\end{bmatrix}^T\\in\\mathbb{R}^n$ and \n", + "$y=\\begin{bmatrix}\n", + " y_1 & y_2 & \\ldots & y_n \n", + "\\end{bmatrix}^T\\in\\mathbb{R}^n$ and returns a single scalar. The dot product can be represented with a dot operator $x\\cdot y$ and defined as:\n", + "\n", + "$$x\\cdot y = \\sum_{i=1}^{n} x_iy_i = x_1y_1+x_2y_2+\\ldots+x_ny_n \\tag{1}$$" + ] + }, + { + "cell_type": "markdown", + "id": "meaningful-timer", + "metadata": {}, + "source": [ + "\n", + "### 2.2 - Dot Product using Python\n", + "\n", + "The simplest way to calculate dot product in Python is to take the sum of element by element multiplications. You can define the vectors $x$ and $y$ by listing their coordinates:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "musical-battlefield", + "metadata": {}, + "outputs": [], + "source": [ + "x = [1, -2, -5]\n", + "y = [4, 3, -1]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "direct-asset", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "plastic-temple", + "metadata": {}, + "source": [ + "Next, let’s define a function `dot(x,y)` for the dot product calculation:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "signed-syndicate", + "metadata": {}, + "outputs": [], + "source": [ + "def dot(x, y):\n", + " s=0\n", + " for xi, yi in zip(x, y):\n", + " s += xi * yi\n", + " return s" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "advanced-brother", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "upper-highlight", + "metadata": {}, + "source": [ + "For the sake of simplicity, let’s assume that the vectors passed to the above function are always of the same size, so that you don’t need to perform additional checks.\n", + "\n", + "Now everything is ready to perform the dot product calculation calling the function `dot(x,y)`:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "amazing-broadway", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The dot product of x and y is 3\n" + ] + } + ], + "source": [ + "print(\"The dot product of x and y is\", dot(x, y))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "technological-canyon", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "banned-dallas", + "metadata": {}, + "source": [ + "Dot product is very a commonly used operator, so `NumPy` linear algebra package provides quick way to calculate it using function `np.dot()`:" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "accessible-kinase", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "np.dot(x,y) function returns dot product of x and y: 3\n" + ] + } + ], + "source": [ + "print(\"np.dot(x,y) function returns dot product of x and y:\", np.dot(x, y)) " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "decent-syria", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "friendly-beast", + "metadata": {}, + "source": [ + "Note that you did not have to define vectors $x$ and $y$ as `NumPy` arrays, the function worked even with the lists. But there are alternative functions in Python, such as explicit operator `@` for the dot product, which can be applied only to the `NumPy` arrays. You can run the following cell to check that." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "built-paper", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "This line output is a dot product of x and y: 3\n", + "\n", + "This line output is an error:\n", + "unsupported operand type(s) for @: 'list' and 'list'\n" + ] + } + ], + "source": [ + "print(\"This line output is a dot product of x and y: \", np.array(x) @ np.array(y))\n", + "\n", + "print(\"\\nThis line output is an error:\")\n", + "try:\n", + " print(x @ y)\n", + "except TypeError as err:\n", + " print(err)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "received-hungary", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "central-museum", + "metadata": {}, + "source": [ + "As both `np.dot()` and `@` operators are commonly used, it is recommended to define vectors as `NumPy` arrays to avoid errors. Let's redefine vectors $x$ and $y$ as `NumPy` arrays to be safe:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "israeli-jumping", + "metadata": {}, + "outputs": [], + "source": [ + "x = np.array(x)\n", + "y = np.array(y)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cosmetic-husband", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "wicked-queensland", + "metadata": {}, + "source": [ + "\n", + "### 2.3 - Speed of Calculations in Vectorized Form\n", + "\n", + "Dot product operations in Machine Learning applications are applied to the large vectors with hundreds or thousands of coordinates (called **high dimensional vectors**). Training models based on large datasets often takes hours and days even on powerful machines. Speed of calculations is crucial for the training and deployment of your models. \n", + "\n", + "It is important to understand the difference in the speed of calculations using vectorized and the loop forms of the vectors and functions. In the loop form operations are performed one by one, while in the vectorized form they can be performed in parallel. In the section above you defined loop version of the dot product calculation (function `dot()`), while `np.dot()` and `@` are the functions representing vectorized form.\n", + "\n", + "Let's perform a simple experiment to compare their speed. Define new vectors $a$ and $b$ of the same size $1,000,000$:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "amino-creation", + "metadata": {}, + "outputs": [], + "source": [ + "a = np.random.rand(1000000)\n", + "b = np.random.rand(1000000)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "naughty-fellow", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "facial-refrigerator", + "metadata": {}, + "source": [ + "Use `time.time()` function to evaluate amount of time (in seconds) required to calculate dot product using the function `dot(x,y)` which you defined above: " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "handed-influence", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Dot product: 249918.19227243582\n", + "Time for the loop version:403.57518196105957 ms\n" + ] + } + ], + "source": [ + "import time\n", + "\n", + "tic = time.time()\n", + "c = dot(a,b)\n", + "toc = time.time()\n", + "print(\"Dot product: \", c)\n", + "print (\"Time for the loop version:\" + str(1000*(toc-tic)) + \" ms\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "classified-maintenance", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "circular-radar", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "accessible-sherman", + "metadata": {}, + "source": [ + "Now compare it with the speed of the vectorized versions:" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "determined-cooking", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Dot product: 249918.19227243582\n", + "Time for the vectorized version, np.dot() function: 1.7201900482177734 ms\n" + ] + } + ], + "source": [ + "tic = time.time()\n", + "c = np.dot(a,b)\n", + "toc = time.time()\n", + "print(\"Dot product: \", c)\n", + "print (\"Time for the vectorized version, np.dot() function: \" + str(1000*(toc-tic)) + \" ms\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "brazilian-ballet", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "scientific-empty", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Dot product: 249918.19227243582\n", + "Time for the vectorized version, @ function: 1.821756362915039 ms\n" + ] + } + ], + "source": [ + "tic = time.time()\n", + "c = a @ b\n", + "toc = time.time()\n", + "print(\"Dot product: \", c)\n", + "print (\"Time for the vectorized version, @ function: \" + str(1000*(toc-tic)) + \" ms\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "annoying-yield", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "useful-sleeping", + "metadata": {}, + "source": [ + "You can see that vectorization is extremely beneficial in terms of the speed of calculations!" + ] + }, + { + "cell_type": "markdown", + "id": "postal-latin", + "metadata": {}, + "source": [ + "\n", + "### 2.4 - Geometric Definition of the Dot Product\n", + "\n", + "In [Euclidean space](https://en.wikipedia.org/wiki/Euclidean_space), a Euclidean vector has both magnitude and direction. The dot product of two vectors $x$ and $y$ is defined by:\n", + "\n", + "$$x\\cdot y = \\lvert x\\rvert \\lvert y\\rvert \\cos(\\theta),\\tag{2}$$\n", + "\n", + "where $\\theta$ is the angle between the two vectors:\n", + "\n", + "\n", + "\n", + "This provides an easy way to test the orthogonality between vectors. If $x$ and $y$ are orthogonal (the angle between vectors is $90^{\\circ}$), then since $\\cos(90^{\\circ})=0$, it implies that **the dot product of any two orthogonal vectors must be $0$**. Let's test it, taking two vectors $i$ and $j$ we know are orthogonal:" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "shared-climb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The dot product of i and j is 0\n" + ] + } + ], + "source": [ + "i = np.array([1, 0, 0])\n", + "j = np.array([0, 1, 0])\n", + "print(\"The dot product of i and j is\", dot(i, j))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "exciting-chair", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "thermal-railway", + "metadata": {}, + "source": [ + "\n", + "### 2.5 - Application of the Dot Product: Vector Similarity\n", + "\n", + "Geometric definition of a dot product is used in one of the applications - to evaluate **vector similarity**. In Natural Language Processing (NLP) words or phrases from vocabulary are mapped to a corresponding vector of real numbers. Similarity between two vectors can be defined as a cosine of the angle between them. When they point in the same direction, their similarity is 1 and it decreases with the increase of the angle. \n", + "\n", + "Then equation $(2)$ can be rearranged to evaluate cosine of the angle between vectors:\n", + "\n", + "$\\cos(\\theta)=\\frac{x \\cdot y}{\\lvert x\\rvert \\lvert y\\rvert}.\\tag{3}$\n", + "\n", + "Zero value corresponds to the zero similarity between vectors (and words corresponding to those vectors). Largest value is when vectors point in the same direction, lowest value is when vectors point in the opposite directions.\n", + "\n", + "This example of vector similarity is given to link the material with the Machine Learning applications. There will be no actual implementation of it in this Course. Some examples of implementation can be found in the Natual Language Processing Specialization.\n", + "\n", + "Well done, you have finished this lab!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "collect-needle", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/C1W3_matrix_multiplication.ipynb b/C1W3_matrix_multiplication.ipynb new file mode 100644 index 0000000..c63afa7 --- /dev/null +++ b/C1W3_matrix_multiplication.ipynb @@ -0,0 +1,513 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "48446b1e", + "metadata": {}, + "source": [ + "# Matrix Multiplication" + ] + }, + { + "cell_type": "markdown", + "id": "4b6934ea", + "metadata": {}, + "source": [ + "In this lab you will use `NumPy` functions to perform matrix multiplication and see how it can be used in the Machine Learning applications. " + ] + }, + { + "cell_type": "markdown", + "id": "4439a0e9", + "metadata": {}, + "source": [ + "# Table of Contents\n", + "\n", + "- [ 1 - Definition of Matrix Multiplication](#1)\n", + "- [ 2 - Matrix Multiplication using Python](#2)\n", + "- [ 3 - Matrix Convention and Broadcasting](#3)" + ] + }, + { + "cell_type": "markdown", + "id": "c2743d75", + "metadata": {}, + "source": [ + "## Packages\n", + "\n", + "Load the `NumPy` package to access its functions." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "b463e5b7", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "catholic-undergraduate", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "5f9be5bb", + "metadata": {}, + "source": [ + "\n", + "## 1 - Definition of Matrix Multiplication\n", + "\n", + "If $A$ is an $m \\times n$ matrix and $B$ is an $n \\times p$ matrix, the matrix product $C = AB$ (denoted without multiplication signs or dots) is defined to be the $m \\times p$ matrix such that \n", + "$c_{ij}=a_{i1}b_{1j}+a_{i2}b_{2j}+\\ldots+a_{in}b_{nj}=\\sum_{k=1}^{n} a_{ik}b_{kj}, \\tag{4}$\n", + "\n", + "where $a_{ik}$ are the elements of matrix $A$, $b_{kj}$ are the elements of matrix $B$, and $i = 1, \\ldots, m$, $k=1, \\ldots, n$, $j = 1, \\ldots, p$. In other words, $c_{ij}$ is the dot product of the $i$-th row of $A$ and the $j$-th column of $B$." + ] + }, + { + "cell_type": "markdown", + "id": "ecd63af9", + "metadata": {}, + "source": [ + "\n", + "## 2 - Matrix Multiplication using Python\n", + "\n", + "Like with the dot product, there are a few ways to perform matrix multiplication in Python. As discussed in the previous lab, the calculations are more efficient in the vectorized form. Let's discuss the most commonly used functions in the vectorized form. First, define two matrices:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "8b0f59f5", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Matrix A (3 by 3):\n", + " [[4 9 9]\n", + " [9 1 6]\n", + " [9 2 3]]\n", + "Matrix B (3 by 2):\n", + " [[2 2]\n", + " [5 7]\n", + " [4 4]]\n" + ] + } + ], + "source": [ + "A = np.array([[4, 9, 9], [9, 1, 6], [9, 2, 3]])\n", + "print(\"Matrix A (3 by 3):\\n\", A)\n", + "\n", + "B = np.array([[2, 2], [5, 7], [4, 4]])\n", + "print(\"Matrix B (3 by 2):\\n\", B)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cross-sampling", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "cdf047c9", + "metadata": {}, + "source": [ + "You can multiply matrices $A$ and $B$ using `NumPy` package function `np.matmul()`:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "43452598", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 89, 107],\n", + " [ 47, 49],\n", + " [ 40, 44]])" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.matmul(A, B)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "otherwise-anderson", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "7be5d42a", + "metadata": {}, + "source": [ + "Which will output $3 \\times 2$ matrix as a `np.array`. Python operator `@` will also work here giving the same result:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "bb36ba42", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 89, 107],\n", + " [ 47, 49],\n", + " [ 40, 44]])" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A @ B" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "secret-reform", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "0186638b", + "metadata": {}, + "source": [ + "\n", + "## 3 - Matrix Convention and Broadcasting\n", + "\n", + "Mathematically, matrix multiplication is defined only if number of the columns of matrix $A$ is equal to the number of the rows of matrix $B$ (you can check again the definition in the secition [1](#1) and see that otherwise the dot products between rows and columns will not be defined). \n", + "\n", + "Thus, in the example above ([2](#2)), changing the order of matrices when performing the multiplication $BA$ will not work as the above rule does not hold anymore. You can check it by running the cells below - both of them will give errors." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "3ecc05e5", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) (size 3 is different from 2)\n" + ] + } + ], + "source": [ + "try:\n", + " np.matmul(B, A)\n", + "except ValueError as err:\n", + " print(err)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "prerequisite-production", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "ea9c6d13", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) (size 3 is different from 2)\n" + ] + } + ], + "source": [ + "try:\n", + " B @ A\n", + "except ValueError as err:\n", + " print(err)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "descending-nutrition", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "05d9a674", + "metadata": {}, + "source": [ + "So when using matrix multiplication you will need to be very careful about the dimensions - the number of the columns in the first matrix should match the number of the rows in the second matrix. This is very important for your future understanding of Neural Networks and how they work. \n", + "\n", + "However, for multiplying of the vectors, `NumPy` has a shortcut. You can define two vectors $x$ and $y$ of the same size (which one can understand as two $3 \\times 1$ matrices). If you check the shape of the vector $x$, you can see that :" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "fab77ce6", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Shape of vector x: (3,)\n", + "Number of dimensions of vector x: 1\n", + "Shape of vector x, reshaped to a matrix: (3, 1)\n", + "Number of dimensions of vector x, reshaped to a matrix: 2\n" + ] + } + ], + "source": [ + "x = np.array([1, -2, -5])\n", + "y = np.array([4, 3, -1])\n", + "\n", + "print(\"Shape of vector x:\", x.shape)\n", + "print(\"Number of dimensions of vector x:\", x.ndim)\n", + "print(\"Shape of vector x, reshaped to a matrix:\", x.reshape((3, 1)).shape)\n", + "print(\"Number of dimensions of vector x, reshaped to a matrix:\", x.reshape((3, 1)).ndim)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "official-timeline", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "5bd337df", + "metadata": {}, + "source": [ + "Following the matrix convention, multiplication of matrices $3 \\times 1$ and $3 \\times 1$ is not defined. For matrix multiplication you would expect an error in the following cell, but let's check the output:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "f655677c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.matmul(x,y)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "correct-carolina", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "2fc01d74", + "metadata": {}, + "source": [ + "You can see that there is no error and that the result is actually a dot product $x \\cdot y\\,$! So, vector $x$ was automatically transposed into the vector $1 \\times 3$ and matrix multiplication $x^Ty$ was calculated. While this is very convenient, you need to keep in mind such functionality in Python and pay attention to not use it in a wrong way. The following cell will return an error:" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "d92006f1", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) (size 3 is different from 1)\n" + ] + } + ], + "source": [ + "try:\n", + " np.matmul(x.reshape((3, 1)), y.reshape((3, 1)))\n", + "except ValueError as err:\n", + " print(err)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "immediate-anatomy", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "ace12c7d", + "metadata": {}, + "source": [ + "You might have a question in you mind: does `np.dot()` function also work for matrix multiplication? Let's try it:" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "f296e528", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 89, 107],\n", + " [ 47, 49],\n", + " [ 40, 44]])" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.dot(A, B)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "golden-infrared", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "8dbbdc0f", + "metadata": {}, + "source": [ + "Yes, it works! What actually happens is what is called **broadcasting** in Python: `NumPy` broadcasts this dot product operation to all rows and all columns, you get the resultant product matrix. Broadcasting also works in other cases, for example:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "68ded501", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 2, 7, 7],\n", + " [ 7, -1, 4],\n", + " [ 7, 0, 1]])" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A - 2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "satisfied-floating", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "eec1d0d2", + "metadata": {}, + "source": [ + "Mathematically, subtraction of the $3 \\times 3$ matrix $A$ and a scalar is not defined, but Python broadcasts the scalar, creating a $3 \\times 3$ `np.array` and performing subtraction element by element. A practical example of matrix multiplication can be seen in a linear regression model. You will implement it in this week's assignment!" + ] + }, + { + "cell_type": "markdown", + "id": "86605d6f", + "metadata": {}, + "source": [ + "Congratulations on finishing this lab!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "76db64ac", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/Course_Materials-C1-W3.pdf b/Course_Materials-C1-W3.pdf new file mode 100644 index 0000000..14829d3 Binary files /dev/null and b/Course_Materials-C1-W3.pdf differ