Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Repaso de Cálculo y Matemáticas Básicas
Repaso de Cálculo y Matemáticas Básicas
Basic Math and Calculus Review Comenzaremos el primer capítulo que cubre qué son los
números y cómo funcionan las variables y funciones en un sistema cartesiano. Luego
cubriremos exponentes y logaritmos. Después de eso, aprenderemos las dos operaciones
básicas del cálculo: derivadas e integrales.
Antes de sumergirnos en las áreas aplicadas de las matemáticas esenciales, como la
probabilidad, el álgebra lineal, las estadísticas y el aprendizaje automático, probablemente
deberíamos revisar algunos conceptos básicos de matemáticas y cálculo. Antes de que
dejes caer este libro y corras gritando, ¡no te preocupes! Presentaré cómo calcular
derivadas e integrales para una función de una manera que probablemente no te
enseñaron en la universidad. Tenemos a Python de nuestro lado, no a lápiz y papel.
Incluso si no está familiarizado con las derivadas y las integrales, no necesita
preocuparse.
Haré que estos temas sean lo más precisos y prácticos posible, centrándome solo en lo
que nos ayudará en capítulos posteriores y lo que cae bajo el paraguas de las
"matemáticas esenciales".
Orden de operaciones
Con suerte, está familiarizado con el orden de las operaciones, que es el orden en que
resuelve cada parte de una expresión matemática. Como un breve repaso, recuerda que
evalúas los componentes entre paréntesis, seguidos de los exponentes, luego la
multiplicación, la división, la suma y la resta. Puede recordar el orden de las operaciones
mediante el recurso mnemotécnico PEMDAS (Por favor, disculpe a mi querida tía Sally),
que corresponde al orden de paréntesis, exponentes, multiplicación, división, suma y
resta.
Tomemos por ejemplo esta expresión:
A continuación resolvemos el exponente, que podemos ver está elevando al cuadrado ese
5 que acabamos de sumar. Eso es 25:
Si bien ambos ejemplos son técnicamente correctos, el último es más claro para nosotros,
los humanos que se confunden fácilmente. Si usted u otra persona realiza cambios en su
código, los paréntesis brindan una referencia fácil del orden de operación a medida que
realiza los cambios. Esto proporciona una línea de defensa contra los cambios de código
para evitar errores también.
Variables
Si ha realizado algunos scripts con Python u otro lenguaje de programación, tiene una
idea de lo que es una variable. En matemáticas, una variable es un marcador de posición
con nombre para un número no especificado o desconocido.
Puede tener una variable x que represente cualquier número real y puede multiplicar esa
variable sin declarar cuál es. En el Ejemplo 1-3, tomamos una entrada variable x de un
usuario y la multiplicamos por 3.
Ejemplo 1-3. Una variable en Python que luego se multiplica
x = int(input("Please input a number\n"))
product = 3 * x
print(product)
Hay algunos nombres de variables estándar para ciertos tipos de variables. Si estos
nombres de variables y conceptos no le son familiares, ¡no se preocupe! Pero algunos
lectores pueden reconocer que usamos theta θ para denotar ángulos y beta β para un
parámetro en una regresión lineal. Los símbolos griegos crean nombres de variables
incómodos en Python, por lo que probablemente nombraríamos a estas variables theta y
beta en Python como se muestra en el Ejemplo 1-4.
Ejemplo 1-4. Nombres de variables griegas en Python
beta = 1.75
theta = 30.0
Tenga en cuenta también que los nombres de las variables se pueden subíndice para que
se puedan usar varias instancias de un nombre de variable. Para propósitos prácticos,
simplemente trátelos como variables separadas. Si encuentra variables x 1, x2 y x3,
simplemente trátelas como tres variables separadas como se muestra en el Ejemplo 1-5.
Ejemplo 1-5. Expresando variables con subíndice en Python
x1 = 3 # or x_1 = 3
x2 = 10 # or x_2 = 10
x3 = 44 # or x_3 = 44
Funciones
Las funciones son expresiones que definen relaciones entre dos o más variables. Más
específicamente, una función toma variables de entrada (también llamadas variables de
dominio o variables independientes ), las inserta en una expresión y luego da como
resultado una variable de salida (también llamada variable dependiente ).
Tome esta función lineal simple:
y=2x+1
Para cualquier valor de x dado, resolvemos la expresión con esa x para encontrar y.
Cuando x = 1, entonces y = 3. Cuando x = 2, y = 5. Cuando x = 3, y = 7 y así
sucesivamente, como se muestra en la Tabla 1-1.
Diferentes valores para y = 2x +
1
X 2x + 1 y
0 2(0) + 1 1
1 2(1) + 1 3
2 2(2) + 1 5
3 2(3) + 1 7
Las funciones son útiles porque modelan una relación predecible entre variables, como
cuántos incendios podemos esperar a una temperatura x. Usaremos funciones lineales
para realizar regresiones lineales en el Capítulo 5.
Otra convención que puede ver para la variable dependiente y es etiquetarla
explícitamente como una función de x, como f(x). Entonces, en lugar de expresar una
función como y = 2 x + 1, también podemos expresarla como:
f(x)=2x+1
El ejemplo 1-6 muestra cómo podemos declarar una función matemática e iterarla en
Python.
Ejemplo 1-6. Declarar una función lineal en Python
def f(x):
return 2 * x + 1
x_values = [0, 1, 2, 3]
for x in x_values:
y = f(x)
print(y)
Cuando se trata de números reales, una característica sutil pero importante de las
funciones es que a menudo tienen un número infinito de valores de x y valores de y
resultantes. Pregúntese esto: ¿cuántos valores de x podemos poner a través de la función
y = 2 x + 1 ? En lugar de solo 0, 1, 2, 3.. ¿por qué no 0, 0,5, 1, 1,5, 2, 2,5, 3 como se
muestra en la Tabla 1-2 ?
Tabla 1-2. Diferentes valores para y = 2x + 1
X 2x + 1 y
0.0 2(0) + 1 1
0.5 2(.5) + 1 2
1.0 2(1) + 1 3
1.5 2(1.5) + 1 4
2.0 2(2) + 1 5
2.5 2(2.5) + 1 6
3.0 2(3) + 1 7
¿O por qué no hacer cuartos de paso para x ? ¿O 1/10 de un paso? Podemos hacer que
estos pasos sean infinitamente pequeños, demostrando efectivamente que y = 2 x + 1
es una función continua, donde para cada valor posible de x hay un valor para y. Esto nos
lleva muy bien a visualizar nuestra función como una línea, como se muestra en la Figura
1-1.
Figura 1-1. Gráfico para la función y = 2x + 1
Cuando graficamos en un plano bidimensional con dos rectas numéricas (una para cada
variable) se conoce como plano cartesiano, plano xy o plano de coordenadas. Trazamos
un valor x dado y luego buscamos el valor y correspondiente, y trazamos las
intersecciones como una línea. Tenga en cuenta que debido a la naturaleza de los
números reales (o decimales, si lo prefiere), hay una cantidad infinita de valores de x. Es
por eso que cuando trazamos la función f ( x ) obtenemos una línea continua sin
interrupciones. Hay un número infinito de puntos en esa línea, o cualquier parte de esa
línea.
Si desea trazar esto usando Python, hay varias bibliotecas de gráficos desde Plotly hasta
matplotlib. A lo largo de este libro usaremos SymPy para realizar muchas tareas, y la
primera que usaremos es trazar una función. SymPy usa matplotlib, así que asegúrese de
tener ese paquete instalado. De lo contrario, imprimirá un gráfico feo basado en texto en
su consola. Después de eso, simplemente declare la variable x en SymPy usando
símbolos(), declare su función y luego trácela como se muestra en el Ejemplo 1-7 y la
Figura 1-2.
Ejemplo 1-7. Trazar una función lineal en Python usando SymPy
from sympy import *
x = symbols('x')
f = 2*x + 1
plot(f)
El ejemplo 1-8 y la figura 1-3 son otro ejemplo que muestra la función f (x) = x2 + 1.
Ejemplo 1-8. Graficar una función exponencial
from sympy import *
x = symbols('x')
f = x**2 + 1
plot(f)
Tenga en cuenta que en la figura 1-3 no obtenemos una línea recta, sino una curva suave
y simétrica conocida como parábola. Es continuo pero no lineal, ya que no produce
valores en línea recta. Funciones con curvas como esta son matemáticamente más
difíciles de trabajar, pero aprenderemos algunos trucos para que no sea tan malo.
FUNCIONES CURVILÍNEAS
Cuando una función es continua pero con curvas, en lugar de lineal y recta, la llamamos
función curvilínea.
Tenga en cuenta que las funciones utilizan múltiples variables de entrada, no solo una.
Por ejemplo, podemos tener una función con variables independientes x e y. Tenga en
cuenta que y no es dependiente como en los ejemplos anteriores.
f( x, y ) = 2x + 3y
Como tenemos dos variables independientes ( x e y ) y una variable dependiente (la
salida de f ( x, y )), necesitamos trazar este gráfico en tres dimensiones para producir un
plano de valores en lugar de una línea, como se muestra en Ejemplo 1-9 y Figura 1-4.
Ejemplo 1-9. Declarar una función con dos variables independientes en Python
from sympy import *
from sympy.plotting import plot3d
x, y = symbols('x y')
f = 2*x + 3*y
plot3d(f)
Figura 1-4. Usando SymPy para graficar una función tridimensional
sumatorias
Prometí no usar ecuaciones llenas de símbolos griegos en este libro. Sin embargo, hay
uno que es tan común y útil que sería negligente no cubrirlo. Una suma se expresa como
sigma Σ y suma elementos.
Por ejemplo, si quiero iterar los números del 1 al 5, multiplicar cada uno por 2 y sumarlos,
así es como lo expresaría usando una suma. El ejemplo 1-10 muestra cómo ejecutar esto
en Python.
Tenga en cuenta que i es una variable de marcador de posición que representa cada valor
de índice consecutivo que estamos iterando en el bucle, que multiplicamos por 2 y luego
sumamos todos juntos. Cuando está iterando datos, puede ver variables como x i que
indican un elemento en una colección en el índice i.
LA FUNCIÓN RANGE()
Recuerde que la función range() en Python es exclusiva al final, lo que significa que si
invoca range(1,4) iterará los números 1, 2 y 3. Excluye el 4 como límite superior.
También es común ver que n representa la cantidad de elementos en una colección,
como la cantidad de registros en un conjunto de datos. Aquí hay uno de esos ejemplos
donde iteramos una colección de números de tamaño n, multiplicamos cada uno por 10 y
los sumamos:
En el Ejemplo 1-11 usamos Python para ejecutar esta expresión en una colección de
cuatro números. Tenga en cuenta que en Python (y la mayoría de los lenguajes de
programación en general) normalmente hacemos referencia a elementos que comienzan
en el índice 0, mientras que en matemáticas comenzamos en el índice 1. Por lo tanto,
cambiamos en consecuencia en nuestra iteración comenzando en 0 en nuestro RANGE().
Ejemplo 1-11. Suma de elementos en Python
x = [1, 4, 6, 2]
n = len(x)
summation = sum(10*x[i] for i in range(0,n))
print(summation)
Esa es la esencia de la suma. En pocas palabras, una suma Σ dice, "suma un montón de
cosas juntas", y usa un índice i y un valor máximo n para expresar cada iteración que
alimenta la suma. Los veremos a lo largo de este libro.