El vector score es el gradiente (es decir, el vector de las primeras derivadas) de una función.
Sabemos que la derivada de una función de una variable en un punto nos da la pendiente de la recta tangente a la función en ese punto. Esto significa que sabemos la rapidez de crecimiento/decrecimiento de la función en ese punto.
Para hallar la Pendiente en un punto de la recta tangente a la curva \(160x-16x^2\) cuando \(x\)=5 y \(x\)=2 se aplica la primera derivada a la función y se evalua en el punto.
Para \(x = 2\) \[f'(x)= \frac{d(160x-16x^2)}{dx}\Big |_{x=2} = 160-2(16)x\Big |_{x=2} = 160-2(16)(2) = 96\] Para \(x = 5\) \[f'(x)= \frac{d(160x-16x^2)}{dx}\Big |_{x=2} = 160-2(16)x\Big |_{x=5} = 160-2(16)(5) = 0\]
Podemos hacer uso de la función grad() en R para encontrar las derivadas.
funcion1 <- function(x){160*x-16*x^2}
library(numDeriv)
grad(funcion1,2) # para x= 2
[1] 96
grad(funcion1,5) # para x= 5
[1] -1.418439e-09
Con lo cual
\[f'(x)= \frac{d(160x-16x^2)}{dx}\Big |_{x=2} =96 \] \[f'(x)= \frac{d(160x-16x^2)}{dx}\Big |_{x=5} = -1.418439 e^{-09} \approx 0 \] A continuación se ilustran los resultados obtenidos.
Las derivadas parciales nos indican la pendiente de una recta concreta tangente a la superficie.
Sea \(f(x,y)=4-x^2-2y^2\) queremos el valor de la pendiente de la recta tangente a la superficie en el punto \(P=(1,1,f(1,1))\).
Para esto determinaremos \(f_x(1,1)\) y \(f_y(1,1)\), es decir calculamos del vector gradiente
funcion1 <- function(x){
x[3] = 4-x[1]^2-2*x[2]^2 # x[1] = x, x[2] = y, x[3] = z
}
library(numDeriv)
grad(funcion1,c(1,1)) # x=1, y=1
[1] -2 -4
Haciendo los cálculos en \(R\) se tiene que \(f_x(1,1)=-2\) y \(f_y(1,1)=-4\), es decir \(\nabla{f(1,1)} = (-2,-4)\)
La matriz Hesssiana de una función multivariable \(f(x,y, z, \dots)\) denotada por \(H(f)\), \(Hf\) o \(H_f\) organiza las segundas derivadas parciales en una matriz: \[Hf= \begin{bmatrix} \frac{\partial^2 f}{\partial x^2} & \frac{\partial^2 f}{\partial x \partial y} & \frac{\partial^2 f}{\partial x \partial z} & \dots \\ \frac{\partial^2 f}{\partial y \partial x} & \frac{\partial^2 f}{\partial y^2} & \frac{\partial^2 f}{\partial y \partial z} & \dots \\ \frac{\partial^2 f}{\partial z \partial x} & \frac{\partial^2 f}{\partial z \partial y} & \frac{\partial^2 f}{\partial z^2} & \dots \\ \vdots & \vdots & \vdots & \ddots \end{bmatrix}\]
\[ Hf= \begin{bmatrix} f_{xx} \end{bmatrix} = \begin{bmatrix} \frac{\partial^2 f}{\partial x^2} \end{bmatrix} \]
\[ Hf(x) = \begin{bmatrix} f_{xx}(x) \end{bmatrix}\]
Calcular la Hessiana de la función \(f(x)= x^3 - 2x\) en el punto \(x=1\)
Primero se necesita calcular la primera derivada parcial:
\[f_{x}(x)= \frac{\partial f}{\partial x}(x^3-2x)= 3x^2-2\] Luego se calcula la segunda derivada parcial:
\[f_{xx}(x)= \frac{\partial f}{\partial x}(3x^2-2)= 6x\]
La matriz Hessiana es en este caso una matriz \(1\times1\) con la anterior función como entrada:
\[ Hf(x) = \begin{bmatrix} f_{xx}(x) \end{bmatrix} = \begin{bmatrix} 6x \end{bmatrix}\]
Se necesita calcular la Hessiana en el punto \(x = 1\), para esto se reemplaza en la matriz:
\[ Hf(1) = \begin{bmatrix} 6(1) \end{bmatrix} = \begin{bmatrix} 6 \end{bmatrix}\]
Podemos hacer uso de la función hessian() en R para encontrar el valor de las segundas derivadas parciales en un punto.
funcion1 <- function(x){
x[1]^3-2*x[1]
}
library(numDeriv)
hessian(funcion1,1) # x=1
## [,1]
## [1,] 6
La matriz Hessiana para dos dimensiones es:
\[ Hf= \begin{bmatrix} f_{xx} & f_{xy} \\ f_{yx} & f_{yy} \end{bmatrix} = \begin{bmatrix} \frac{\partial^2 f}{\partial x^2} & \frac{\partial^2 f}{\partial x \partial y} \\ \frac{\partial^2 f}{\partial y \partial x} & \frac{\partial^2 f}{\partial y^2} \end{bmatrix} \]
\[ Hf(x,y) = \begin{bmatrix} f_{xx}(x,y) & f_{xy}(x,y) \\ f_{yx}(x,y) & f_{yy}(x,y) \end{bmatrix}\]
Calcular la Hessiana de la función \(f(x,y)= x^3 - 2xy - y^6\) en el punto \((1,2)\)
Primero se necesita calcular las primeras derivadas parciales:
\[f_{x}(x,y)= \frac{\partial f}{\partial x}(x^3-2xy-y^6)= 3x^2-2y\]
\[f_{y}(x,y)=\frac{\partial f}{\partial x}(x^3-2xy-y^6)= -2x-6y^5\] Luego se calcula las segundas derivadas parciales:
\[f_{xx}(x,y)= \frac{\partial f}{\partial x}(3x^2-2y)= 6x\] \[f_{xy}(x,y)=\frac{\partial f}{\partial y}(3x^2-2y)=-2\] \[f_{yx}(x,y)=\frac{\partial f}{\partial x}(-2x-6y^5)= -2\] \[f_{yy}(x,y)=\frac{\partial f}{\partial y}(-2x-6y^5) = -30y^4\]
La matriz Hessiana es en este caso una matriz \(2\times2\) con las anteriores funciones como entradas:
\[ Hf(x,y) = \begin{bmatrix} f_{xx}(x,y) & f_{xy}(x,y) \\ f_{yx}(x,y) & f_{yy}(x,y) \end{bmatrix} = \begin{bmatrix} 6x & -2 \\ -2 & -30y^4 \end{bmatrix}\]
Se necesita calcular la Hessiana en el punto \((x,y) = (1,2)\), para esto se reemplaza en los valores correspondientes en la matriz:
\[ Hf(1,2) = \begin{bmatrix} 6(1) & -2 \\ -2 & -30(2)^4 \end{bmatrix} = \begin{bmatrix} 6 & -2 \\ -2 & -480 \end{bmatrix}\]
Podemos hacer uso de la función hessian() en R para encontrar el valor de las segundas derivadas parciales en un punto.
funcion2 <- function(x){
x[1]^3-2*x[1]*x[2]-x[2]^6 # x[1] = x, x[2] = y
}
library(numDeriv)
hessian(funcion2,c(1,2)) # x=1, y=1
## [,1] [,2]
## [1,] 6 -2
## [2,] -2 -480