Subido por Fàstic Wakeera

DERIVACION MATRICIAL

Anuncio
Derivación Matricial
Fernando Lara
Fundación Universitaria Konrad Lorenz
Director: Leonardo Jiménez Moscovitz
Matemático
Fundación Universitaria Konrad Lorenz
11 de junio de 2007
Resumen
En este trabajo se hace una presentación de algunos aspectos teóricos
y prácticos acerca de la derivación matricial. Este tema es especialmente
importante, ya que las matrices no solo proveen una notación muy compacta para algunos desarrollos matemáticos, sino que además permiten
una mayor generalización. Después de la presentación teórica, se expone
un caso de aplicación a las redes neuronales, y se exponen algunas lineas
de código en Matlab para la resolución de problemas que involucren la
derivación matricial.
This work develops a presentation of some theorical and practical topics about matrix derivation. This area is specially important because matrix theory not only provides a compact notation for some mathematical
developments, it also provides a greater generalization. After the theoric
presentation, this paper exposes an application to neural networks, and
some code in Matlab to help in the solutions of problems involving matrix
derivation.
1
Índice
Introducción
3
1. Preliminares
1.1. Matrices . . . . . . . . . . . . . .
1.2. Conceptos Básicos . . . . . . . .
1.3. Matrices . . . . . . . . . . . . . .
1.3.1. Operaciones con Matrices
1.3.2. Matrices Especiales. . . .
.
.
.
.
.
.
.
.
.
.
2. Derivación.
2.0.3. Interpretación de la derivada
tangente. . . . . . . . . . . .
2.0.4. Reglas de Derivacion. . . . .
2.0.5. Derivación Parcial . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
5
8
10
14
23
como la
. . . . .
. . . . .
. . . . .
pendiente
. . . . . .
. . . . . .
. . . . . .
de una
. . . . .
. . . . .
. . . . .
24
25
33
35
35
35
36
37
37
39
49
60
70
3. Derivación Matricial
3.1. Funciones Matriciales . . . . . . . . . . . . . . . . .
3.1.1. Funciones de Variable Escalar . . . . . . . . .
3.1.2. Funciones de Variable Vectorial . . . . . . . .
3.1.3. Funciones de Variable Matricial . . . . . . . .
3.2. Otras Matrices Especiales . . . . . . . . . . . . . . .
3.3. Producto de Kronecker . . . . . . . . . . . . . . . . .
3.4. Fórmulas de Derivación Matricial. . . . . . . . . . .
3.5. Reglas de Derivación. . . . . . . . . . . . . . . . . .
3.6. Propiedades de Derivación de Funciones Matriciales.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4. Aplicaciónes
4.1. Redes Neuronales . . . . . . . . . . . . .
4.1.1. Características del Algoritmo . .
4.1.2. Propagación hacia adelante.
4.1.3. Propagación hacia atrás. . . . . .
4.1.4. Resumen (Algoritmo) . . . . . .
4.1.5. Propagación hacia adelante. . . .
4.1.6. Propagación hacia atrás. . . . . .
4.1.7. Propagación hacia atrás. . . . . .
4.2. Derivadas Matriciales en Matlab. . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
87
. 87
. 87
. 88
. 89
. 96
. 97
. 97
. 100
. 101
5. Conclusiones
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
106
2
Introducción
El Álgebra matricial se ha convertido en los últimos años en una parte esencial de los conocimientos de matemáticas, necesarios en campos tan diversos
como la ingeniería, la física, la pedagogía, la química, la sociología y en el campo científico, así como la estadística y la matemática pura. Este requerimiento
refleja la importancia y la amplitud de sus aplicaciones.
Muchos de los temas tratados en los campos mencionados comparten métodos comunes para resolver algunos de los problemas específicos. Los programas
de las materias de matemáticas han ido evolucionando para facilitar que el profesional domine las técnicas empleadas en el tratamiento de los problemas. Sin
embargo, por razones obvias, la mayoría de los textos de matemáticas se han
centrado en lo que es el núcleo básico de los programas de cálculo y álgebra. Por
otra parte, asignaturas de corte matemático dirigidos a dotar de conocimientos
adecuados para abordar problemas, con un nivel más riguroso, tienen carácter optativo. Con respecto a esas asignaturas, no es fácil encontrar manuales
adecuados a sus contenidos específicos, lo que significa que un estudiante ha
de confiar en las referencias bibliográficas recomendadas, que en múltiples ocasiones no se ajustan a sus necesidades de rigor de planteamiento, o bien, apuntes
tomados en clase, con los conocidos inconvenientes que esta práctica conlleva.
Como ejemplos, pensemos en temas como derivadas de vectores y matrices y
derivadas de funciones matriciales.
Basado en la importancia que ha adquirido el cálculo matricial, el compendio
que se ha proyectado, se presentará como suplemento a los textos sobre cálculo
matricial, que entre otros, son bastante exiguos en nuestro medio.
El objetivo fundamental es fijar un criterio de derivación, indicar su relación
con las aproximaciones vectoriales a la derivada y, a partir de ello, obtener
resultados que permitan enfrentarse formalmente y con mayor comodidad al
estudio de variables matriciales.
Antes de abordar el proceso de derivación matricial, se presenta un compendio con los elementos básicos del álgebra lineal, específicamente sobre matrices, y un compendio que incluye las propiedades básicas del cálculo diferencial,
necesarios para comprender la manera como se aborda el estudio sobre cálculo
matricial.
De la misma forma, dada la complejidad del problema, se hizo preciso incluir
algunas nuevas operaciones entre matrices que completan el cálculo matricial
tradicional; para estas nuevas operaciones, se incluyen conceptos y propiedades
sobre producto de Kronecker, vectorización de matrices y se definen las matrices
de permutación que se utilizan en algunos desarrollos.
En el presente trabajo se ha utilizado extensivamente la presentación de
[Bar98]; este excelente libro es uno de los pocos escritos en español que tratan
el tema de la derivación matricial. En particular, se ha utilizado mucho en la
sección 3, donde se expone la presentación teórica y de las propiedades. Otros
escritos que se han podido disponer tienen una presentación algo diferente; en
particular, muchos de ellos utilizan el concepto de diferencial al trabajar con
derivadas matriciales, lo que implica entre otros aspectos, cambios en la no3
tación.
En el capítulo 4, se presenta el desarrollo de un problema de redes neuronales
que en su forma original es un aporte del Ing. Pervys Rengifo, profesor de la
F.U.K.L., a quien se le agradece su amable colaboración. En este ejemplo se
observa la aplicación de la derivación matricial en la solución de un problema
de este tipo. Finalmente, se exponen algunas líneas de código en Matlab para
ayudar en la resolución de problemas de derivación matricial o vectorial.
4
1.
Preliminares
En este capítulo se exponen los conceptos y reglas más importantes que
sirven de base a la comprensión de la diferenciación matricial, así como de los
conceptos y procesos asociados. Por ello, se explican en primera instancia las
definiciones y los conceptos básicos de matrices, así como las operaciones a las
que se pueden someter estos objetos. Luego se presentan los tipos de matrices
más importantes y las propiedades que éstos poseen.
1.1.
Matrices
Aquí se introducirá el concepto de matriz y se presentarán ciertas operaciones algebráicas definidas sobre ellas. Las nociones expuestas serán la base para
comprender los conceptos relativos al cálculo vectorial y matricial en general.
De la manera más general posible, se puede definir una matriz como una
tabla o arreglo rectangular de objetos matemáticos que pueden someterse a las
operaciones de suma y producto. Esto requiere por una parte, detallar cuales
son esos objetos o elementos de la matriz que son de interés primordial para el
matemático, y por otra parte especificar algunas de las propiedades asociadas
con las operaciones sobre dichos elementos: éstos, junto con las operaciones de
suma y producto, deben formar un cuerpo k [Her86].
Los elementos de una matriz pueden ser o bien los números reales (k = R) o
bien los números complejos (k = C); en estos caso, los elementos se llaman escalares. Pero los elementos de una matriz también pueden ser funciones definidas
en los números reales o los complejos. En el presente trabajo se tratarán las matrices definidas sobre los reales, se definirá posteriormente la matriz de funciones.
El otro caso en que se considerarán las matrices y vectores es en la propia
definición de las funciones. Para el presente trabajo el interés no radica en
funciones de variable real por ejemplo, sino que la función puede ser de variable
vectorial, o matricial y por otra parte su salida puede ser a su vez un valor
escalar, vectorial o matricial.
1.2.
Conceptos Básicos
En esta sección se expondrán los principales conceptos relacionados con la
temática a tratar. Por una parte, se hace referencia a algunos conceptos del álgebra abstracta como es el concepto de cuerpo, y por otra parte se hace referencia
al concepto de espacio vectorial. A través del concepto de cuerpo se describe el
comportamiento de los elementos que conforman una matriz al realizar sobre
ellos ciertas operaciones; el concepto de espacio vectorial es una generalización
tanto de vectores en Rn como del propio concepto de matriz.
Definición 1.1 (Campo o Cuerpo) Un campo o cuerpo k es una estructura
algebraica conformada por un conjunto y dos operaciones definidas sobre los elementos del conjunto, < K, +, ∗ > que se comportan como un anillo conmutativo
en el cual todo elemento diferente de 0 tiene inverso multiplicativo. [Her86].
5
Definición 1.2 (Espacio Vectorial) Un espacio vectorial definido sobre un
cuerpo k, es un conjunto V de objetos llamados vectores, junto con las operaciones cerradas de suma y producto por escalar, que cumplen ocho propiedades
[San94]:
Si u, v, w ∈ V y α, β son escalares cualesquiera, entonces
1. (u + v) + w = u + (v + w)
2. u + v = v + u
3. Existe 0 ∈ V tal que v + 0 = 0 + v = v
4. Para cada v existe un vector −v tal que v + (−v) = (−v) + v = 0
5. α(u + v) = αu + αv
6. (α + β)u = αu + βu
7. (αβ)u = α(βu)
8. 1 · v = v
Definición 1.3 (Subespacios Vectoriales) Un subespacio U de un espacio
vectorial V es un subconjunto de V que es en sí mismo, un espacio vectorial
sobre el mismo cuerpo.
Dentro de los espacios vectoriales más importantes, se tienen los espacios
k = Rn así como k = Cn . Un vector en Rn se puede expresar como v1 =
α1 x1 + α2 x2 + ... + αn xn . Esto se puede generalizar a continuación.
Definición 1.4 (Combinación Lineal) Sea V un espacio vectorial, y U =
{u1 , u2 , ...ur } un conjunto finito de vectores de V. Entonces un vector de la
forma:
v = α1 u1 + α2 u2 + ... + αr ur =
r
i=1 αi ui
se llama una combinación lineal de vectores en U.
Es importante considerar el caso en el que se generan todas las posibles
combinaciones lineales con elementos de U, y con todos los posibles escalares
αi ∈ k.
Definición 1.5 (Subespacio Generado) Sea V un espacio vectorial, y U =
{u1 , u2 , ...ur } un conjunto finito de vectores de V. El conjunto de todas las posibles combinaciones lineales de elementos de U se llama el subespacio generado
por U, y se denota:
S (U ) = {v|v =
n
i=1
αk ui , ∀αk ∈ k}
6
Un concepto muy importante relacionado con estos vectores es el de dependencia o independencia lineal.
Definición 1.6 (Dependencia Lineal) Sea V un espacio vectorial, y U =
{u1 , u2 , ...ur } un conjunto finito de vectores de V. Entonces, U es linealmente
dependiente o ligado si y solo si existen escalares α1 , α, ...αr no todos ceros,
tal que:
α1 u1 + α2 u2 + ... + αr ur = 0
Se dice que U es linealmente independiente o libre si no es dependiente.
Un conjunto U linealmente independiente y de especial importancia, se define
a continuación.
Definición 1.7 (Base) Sea V un espacio vectorial sobre k. Si en V existe un
subconjunto finito U de vectores linealmente independientes, tal que S(U ) = V, o
en otras palabras, que todo vector v ∈ V puede ser expresado como combinación
lineal de vectores en U, entonces se dice que U es una base de V .
Si una base consiste de una cantidad finita de elementos, entoces se puede
demostrar que toda base de un espacio vectorial V tiene la misma cantidad de
elementos:
Definición 1.8 (Dimensión) Sea V un espacio vectorial con una base B con
n elementos. Entonces, se define a n como la dimensión del espacio vectorial V,
y se expresa como dim(V ) = n.
Para el caso V = Rn con n = 3 se tiene la dimensión del conjunto de vectores
en el espacio.
Es necesario en muchos casos considerar funciones o morfismos entre espacios
vectoriales diferentes, esto es, f : V → W donde V, W son espacios vectoriales
sobre el mismo cuerpo k. Estas funciones, cuya descripción se puede encontrar
en libros de álgebra abstracta tales como [Her86] son de especial importancia si
poseen ciertas propiedades, tal como se observa en la siguiente definición.
Definición 1.9 (Isomorfismo) Sean V, W son espacios vectoriales sobre el
mismo cuerpo k, y sea f una función f : V → W que cumple con las siguientes
propiedades que para todo xi ∈ V y para todo a, b ∈ k:
1. f −1 existe. Esto es, f es invertible
2. f (ax1 + bx2 ) = f(ax1 ) + f(bx2 ) = af(x1 ) + bf(x2 )
A los espacios vectoriales V, W se les llama espacios isomorfos, es decir,
que tienen la misma estructura.
7
Definición 1.10 (Transformación Lineal) Sea U un espacio vectorial
n-dimensional y sea V un espacio vectorial m-dimensional, ambos sobre el mismo cuerpo k. Sea BU una base de U y BV una base de V. Una transformación
lineal es una función T : U → V tal que, para escalares arbitrarios a, b ∈ k y
vectores x1 , x2 ∈ U :
T (ax1 + bx2 ) = T (ax1 ) + T (bx2 ) = aT (x1 ) + bT (x2 )
Una transformación lineal es entonces, una operación entre dos espacios vectoriales que preserva las operaciones. Son de especial importancia también las
transformaciones lineales T : V → V que reciben el nombre de endomorfismos.
1.3.
Matrices
En esta sección se establecerán las condiciones para definir adecuadamente
el concepto de matriz, sus diferentes tipos y examinar luego algunas de sus
propiedades.
En el presente trabajo, las matrices se establecerán con referencia al espacio
vectorial definido por Mmn , el conjunto de todas las matrices de tamaño m × n,
así:
Definición 1.11 (Matriz) Sea k un cuerpo, y sea Mmn el espacio vectorial
de todas las matrices de tamaño m × n definidas sobre k. Se define una matriz
A ∈ Mmn con elementos en k, y se expresa diciendo que A es una matriz
sobre k, a un arreglo de mn elementos aij ∈ k, ordenados de manera rectangular
con m filas y n columnas encerrados entre corchetes, donde 1 ≤ i ≤ m y
1≤j≤n:


a11 a12 ... a1n
 a21
... ... a2n 


 ...
... ... ... 
am1 am2 ... amn
Las líneas horizontales en una matriz se denominan filas y las líneas verticales se denominan columnas. El primero de los coeficientes indica la fila y el
segundo la columna en que está ubicado el elemento. A una matriz con m filas
y n columnas se le denomina matriz m-por-n (escrito m × n), siendo los valores
m y n sus dimensiones. La matriz anterior se denota también por (aij ).
Bajo esta definición, entonces sobre las matrices se pueden definir dos operaciones: suma y producto por escalar, que deben cumplir con las propiedades
mencionadas en la definición 1.2.
Definición 1.12 (Matriz como Transformación Lineal) Sean V, W espacios vectoriales de dimensión finita. Si se han determinado las bases BV del
espacio V con dimensión n, y BW del espacio W con dimensión m, entonces
cada transformación lineal T : V → W puede ser representada por una matriz
A.
8
Ejemplo 1.1 Sean V, W espacios vectoriales. Sea {v1 , v2 , ...vn } una base de V
y {w1 , w2 , ...wm } una base de W. Cada vector v ∈ V puede ser representado de
manera única mediante los escalares α1 , α, ...αn ∈ k. mediante la combinación
lineal α1 v1 + α2 v2 + ... + αr vn
Si f : V → W es una aplicación lineal, entonces
f (a1 v1 + a2 v2 + ... + ar vn ) = a1 f (v1 ) + a1 f (v2 ) + ...ar f (vn )
La función queda completamente determinada por los valores f(v1 ) + ... +
f(vn ). Como {w1 , w2 , ...wm } es una base de W, entonces cada f(vj ) puede representarse como:
f (vj ) = a1j f (w1 ) + a2j f(w2 ) + ...anj f (wm )
Luego la función queda completamente determinada por los valores aij . Si
estos valores se utilizan para construir una matriz A de tamaño m×n, Entonces
la matriz A se puede utilizar para calcular el valor de f(v) para todo vector en
V.
Otra manera de representar la interpretación de una matriz como una aplicación lineal es tomando x ∈ kn , y ∈ km , luego el morfismo f : kn → km puede
ser representado por y = Ax.
Las dimensiones de una matriz siempre se dan con el número de filas primero
y el número de columnas después. La entrada de una matriz A que se encuentra
en la fila i-ésima y la columna j-ésima se le llama entrada i, j o entrada (i, j)ésima de A. Esto se escribe como Ai,j o A[i, j]. Entonces, el primero de los
subíndices indica la fila y el segundo la columna a las que pertenece dicho
elemento. Las filas de la matriz son las m n-plas horizontales:
a11
a12
···
a1n , a21
a22
···
a2n , · · · , am1
am2
···
amn
y las columnas de la matriz son las n m-plas verticales:

 
a12
a11
 a21   a22 


 
 ..  ,  ..  , · · ·
 .   . 

am1
am2


a1n
 a2n 


, . 
 .. 
amn
Nótese que el elemento aij llamado entrada ij, aparece en la fila i-ésima y en
la columna j-ésima. Una matriz con m filas y n columnas se denomina matriz m
por n, o matriz m × n; el par de números (m, n) se llama su tamaño o forma.
Las matrices se denotan usualmente por letras mayúsculas A, B, . . . y los
elementos del cuerpo k por minúsculas, a, b, . . . con sus respectivos subíndices.
Una matriz con una sola columna o una sola fila se denomina a menudo
vector, y se interpreta como un elemento del espacio euclídeo [Her86].
9
Definición 1.13 (Vector) Un vector es una matriz que posee una sola fila o
una sola columna. Una matriz 1× n (una fila y n columnas) se denomina vector
fila, y una matriz m× 1 (una columna y m filas) se denomina vector columna.
En general, dada una matriz A, al vector (ai1 , ai2 , ...ain ) que forma la i-ésima
fila de A se le llama un vector fila, mientras que al vector (a1j , a2j , ...amj ) que
forma la j-ésima columna de A se le llama vector columna. Nótese que en
particular, un elemento del cuerpo k puede verse como una matriz o vector de
tamaño 1 × 1.
1 −3 4
Ejemplo 1.2 Se tiene la matriz A2×3 :
0 5 −2
Sus filas son 1 −3 4 y 0 5 −2 y cada una de ellas es un vector
fila, mientras que
1
−3
4
sus columnas son
,
,
y cada una de ellas es un vector
0
5
−2
columna.
Ejemplo 1.3 La aserción
x+y
x−y
2z + w
3 5
=
es equivalente al siguiz−w
1 4
ente sistema de ecuaciones:
x+y =3
x−y =1
2z + w = 5
z−w =4
Definición 1.14 (Igualdad de Matrices) La condición necesaria y suficiente
para que dos matrices A = (aij ) y B = (bij ) sean iguales (A = B) es que tengan
el mismo orden y que cada uno de los elementos de una de ellas sea igual al
correspondiente de la otra. Esto es
aij = bij
(i = 1, 2, ..., m; j = 1, 2, ..., n)
En otras palabras, dos matrices son iguales solo cuando una es copia de la
otra.
1.3.1.
Operaciones con Matrices
Las matrices se han definido dentro del espacio vectorial que se ha llamado
el espacio vectorial Mmn de las matrices de tamaño m × n. Por tanto, las dos
primeras operaciones que son de interés son la suma y el producto por escalar.
Dichas operaciones deben dar como resultado otra matriz del mismo tamaño.
Además, para estas operaciones, más adelante,(def 1.19) se definirá la matriz
0m×n tal que para cualquier matriz Am×n , A + 0 = 0 + A = A y obviamente,
se tendrá un escalar 1 tal que 1A = A
10
Definición 1.15 (Suma de Matrices) Sean A = (aij ) y B = (bij ) dos matrices del espacio vectorial Mmn , ambas de igual tamaño m × n. La suma (o
diferencia) de ellas, denotada como A ± B, es otra matriz C = (cij ) de orden
m × n, en la cual cada elemento de C es la suma (o diferencia) de los elementos
correspondientes de A y B. Esto es, (cij ) = (aij + bij )

a11
 a21

A= .
 ..
a12
a22
..
.
···
···
..
.
am1


b11
a1n
 b21
a2n 


.. ; B =  ..

 .
.
amn
bm1
am2 · · ·

a11 + b11
 a21 + b21

C =A+B =
..

.
am1 + bm1
b12
b22
..
.
···
···
..
.
bm2
···
a21 + b21
a22 + b22
..
.
···
···
..
.
am2 + bm2
···

b1n
b2n 

.. 
. 
bmn

a1n + b1n
a2n + b2n 


..

.
amn + bmn
Dos matrices del mismo órden se llaman conformes respecto de
la suma algebraica. La suma de matrices no está definida para
matrices no conformes.
Definición 1.16 (Producto por Escalar) Sea A una matriz del espacio vectorial Mmn , y k ∈ k un escalar. El producto del escalar k por la matriz A, escrito
kA es la matriz C obtenida multiplicando cada entrada de A por k:


ka11 ka21 · · · ka1n
 ka21 ka22 · · · ka2n 


C = kA =  .
.. 
..
..
 ..
. 
.
.
kam1
kam2
···
kamn
Obsérvese que A + B y kA son también matrices de tamaño m × n. Además
se define:
−A = −1 · A y A − B = A + (−B)
1 −2 3
3 0 2
Ejemplo 1.4 Sean A =
,B =
entonces
4 5 −6
−7 1 8
1 + 3 −2 + 0 3 + 2
4 −2 5
A+B =
=
4 − 7 5 + 1 −6 + 8
−3 6 2
3x1 3x (−2)
3x3
3 −6
9
3A =
=
3x4
3x5
3x (−6)
12 15 −18
2 −4
6
−9 0
−6
−7 −4
0
2A − 3B =
+
=
8 10 −12
21 −3 −24
29
7 −36
11
Proposición 1.1 (Propiedades de la Suma y el Producto por Escalar)
Sea V el conjunto de todas las matrices m × n sobre un campo k. En tal caso,
para matrices arbitrarias A, B, C, 0 ∈ V y escalares cualesquiera k1 , k2 ∈ k y los
valores 0, 1 ∈ k se cumple:
1. (A + B) + C = A + (B + C)
2. A + 0 = A
3. A + (−A) = 0
4. A + B = B + A
5. k1 (A + B) = k1 A + k1 B
6. (k1 + k2 )A = k1 A + k2 A
7. (k1 k2 )A = k1 (k2 A)
8. 1 · A = A y 0 · A = 0
Estas propiedades son de esperarse, dado que las matrices pertenecen a un
espacio vectorial, y k es un escalar.
Si se supone que los vectores en Rn se representan por vectores fila se tiene
u = a1
a2
···
an
v = b1
b2
···
bn
Entonces, vistos como matrices, la suma u + v y el producto ku son las
siguientes:
u + v = a1 + b1
a2 + b2
···
an + bn
ku = ka1
ka2
···
kan
Definición 1.17 (Producto de vector fila por vector columna) Sea A =
(ai ) un vector fila, y B = (bi ) un vector columna con el mismo número de elementos. El producto de estos vectores A y B, escrito A × B es un vector c de
tamaño 1 × 1 definido como:
a1
a2
···
 
b1
n


 b2 
an  .  = a1 b1 + a2 b2 + · · · + an bn =
ak bk = c
 .. 
k=1
bn
12
Nótese que para este caso, el producto de vectores se puede ver como un
escalar c ∈ k. El producto A × B no está definido si los vectores A y B tienen
diferente cantidad de elementos.
 
3
Ejemplo 1.5 8 −4 5  2  = 8 · 3 + (−4) · 2 + 5 · (−1) = 24 − 8 − 5 = 11
−1
Ahora se puede ampliar este procedimiento para realizar el producto de
matrices de tamaño m × n en general.
Definición 1.18 (Producto de Matrices) Sean A = (aij ) y B = (bij ) matrices tales que el número de las columnas de A coincide con el mismo número
de filas de B; esto es, A es una matriz m × p y B es una matriz p × n. Entonces
el producto de las dos matrices AB, en este orden, es otra matriz C de tamaño
m × n cuya entrada ij se obtiene multiplicando la fila i-ésima Ai de A por la
columna j-ésima Bj de B (cada elemento de la fila se multiplica por el correspondiente de la columna y a continuación se suman los productos obtenidos
según la definición 1.17):
C = Am×p Bp×n

A1 B 1
 A2 B 1

= .
 ..
Am B 1
A1 B 2
A1 B 2
..
.
···
···
..
.
Am B 2
···

A1 B n
A1 B n 

.. 
. 
Am B n
Donde cij = ai1 b1j + ai2 b2j + · · · + aip bpj =
p
m×n
aik bkj para todo i, j en C.
k=1
Se observa que en general, el producto de matrices no es conmutativo.
Dos matrices en las cuales el número de columnas de A es igual al número
de filas de B se llaman matrices conformes respecto de la multiplicación.
Se debe tener en cuenta el hecho de que el producto AB sólo está definido para
matrices conformes. Esto es, no está definido si A es una matriz m × p y B una
matriz q × n con p = q.
r s a1 a2 a3
ra1 + sb1 ra2 + sb2 ra3 + sb3
Ejemplo 1.6
=
t u b1 b2 b3
ta1 + ub1 ta2 + ub2 ta3 + ub3
1 2 1 1
1 × 1 + 2x0 1 × 1 + 2 × 2
1 5
=
=
3 4 0 2
3×1+4×0 3×1+4×2
3 11
1 1 1 2
1×1+1×3 1×2+1×4
4 6
=
=
0 2 3 4
0×1+2×3 0×2+2×4
6 8
13
Lo anterior muestra que el producto de matrices no es conmutativo, es decir
los productos AB y BA de matrices no son necesariamente iguales.
Proposición 1.2 (Propiedades del Producto de Matrices) Sean A, B, C
matrices conformes para la multiplicación o para la suma, según corresponda, y
k un escalar. Entonces, se cumplen las siguientes propiedades:
1. (AB)C = A(BC)
2. A(B + C) = AB + AC
3. (B + C)A = BA + CA
4. k(AB) = (kA)B = A(kB)
5. 0A = 0 y B0 = 0 donde 0 es la matriz nula conforme
1.3.2.
Matrices Especiales.
Definición 1.19 (Matriz Nula) Una matriz que tenga nulos todos sus elementos se llama matriz nula o matriz cero y se denota por 0m,n . En el caso
de que una matriz A sea nula y no haya lugar a confusiones con respecto a su
orden, se escribe simplemente A = 0 en lugar de la disposición m × n con sus
elementos iguales a cero.
0 0 0
Ejemplo 1.7 La matriz cero de tamaño 2 × 3 es: 02×3 =
0 0 0
Para cualquier matriz Am,n y 0m,n , se tiene que A + 0 = 0 + A = A. Esto es
de esperarse, ya que 0 cumple la función de vector nulo en el espacio vectorial
Mmn .
Definición 1.20 (Matriz Traspuesta) La matriz traspuesta de una matriz
A de orden m × n es la matriz A de orden n × m llamada la traspuesta de
A que se obtiene permutando las filas por las columnas. Por tanto, el elemento
aij de A corresponde al elemento aji de A


1 4
1 2 3
Ejemplo 1.8 La traspuesta de la matriz A =
es A = 2 5
4 5 6
3 6
Obsérvese que el elemento aij de A (fila i, columna j) es aji de A (fila j,
columna i).
Proposición 1.3 Sean A y B, respectivamente, las traspuestas de las matrices
A y B, y sea k ∈ k un escalar; en estas condiciones se cumple que:
1. (A) = A
14
2. (kA) = kA
3. (A + B) = A + B
4. (A × B) = B × A




4 −3 6
7 8 9
Ejemplo 1.9 A = −2 5 −1 , B =  3 2 1 
1
0
3
−5 6 −4



11 5 15
11 1 −4
A + B =  1 7 0  , (A + B) =  5 7 6 
−4 6 −1
15 0 −1







4 −2 1
7 3 −5
11 1 −4
A = −3 5 0 , B = 8 2 6  , A + B =  5 7 6 
6 −1 3
9 1 −4
15 0 −1




11 1 −4
11 1 −4
Por tanto (A + B) =  5 7 6  = A + B =  5 7 6 
15 0 −1
15 0 −1
Matrices Cuadradas. Dentro de las matrices más utilizadas en álgebra, se
encuentran las matrices cuadradas.
Definición 1.21 (Matriz Cuadrada) Una matriz A se llama matriz cuadrada si el número de filas es igual al número columnas. Es decir n = m. Se dice
que una matriz cuadrada n × n es de orden n y se le asigna el nombre de matriz
n-cuadrada:


a11 a12 · · · a1n
 a21 a22 · · · a2n 


 ..
..
.. 
 .
. 
.
···
an1 an2 · · · ann
Las matrices cuadradas son de especial importancia. Es en estas matrices
donde surge el concepto de determinante y de traza. Además poseen algunas
propiedades interesantes, por ejemplo toda matriz cuadrada se puede descomponer en la suma de una matriz simétrica y una matriz antisimétrica. Además,
si A y B son matrices del mismo orden, entonces se pueden sumar entre sí y
sus productos son válidos en ambos sentidos, esto es, tanto AB como BA están
definidos.
15
Definición 1.22 (Traza de una Matriz Cuadrada) Sea A una matriz
cuadrada de orden n. La diagonal principal es la línea formada por los elementos
a11 , a22 , ..., ann . La suma de los elementos de la diagonal principal de una
nmatriz
cuadrada A, se llama traza de la misma, y se denota como tr(A) =
aii .
i=1




1
2
3
2 −5 1
Ejemplo 1.10 Sean A = −4 −4 −4 B = 0 3 −2
5
6
7
1 2 −4
Entonces A y B son matrices cuadradas de orden 3, y sus trazas son tr(A) =
4 y tr(B) = 1.
Definición 1.23 (Matriz Triangular) Una matriz cuadrada A cuyos elementos aij = 0 para i ≥ j se llama triangular superior; una matriz cuadrada cuyos
elementos aij = 0 para i ≤ j se denomina triangular inferior. Así, pues

a11
 0

 0

 ..
 .
0

a11
 a21

 a31

 ..
 .
an1

a1n
a2n 

a3n 
 es una matriz triangular superior
.. 
. 
ann
a12
a22
0
..
.
a13
a23
a33
..
.
···
···
···
..
.
0
0
···
0
a22
a32
..
.
0
0
a33
..
.
···
···
···
..
.
0
0
0
..
.
an2
an3
···
ann




 es una matriz triangular inferior.


Definición 1.24 (Matriz Diagonal) La matriz D que es triangular superior e inferior, se llama matriz diagonal. Se representa por:
D = diag a11
a22
a33
···

a11
 0


ann =  0
 ..
 .
0
0
a22
0
..
.
0
0
a33
..
.
···
···
···
..
.
0
0
0
..
.
0
0
···
ann







El producto AB de una matriz diagonal cuadrada de orden m,
A = diag (a11 , a22 , ...amm ) por otra matriz cualquiera B de orden n × m se
obtiene multiplicando la primera fila de B por a11 , la segunda de B por a22 y
así sucesivamente. Esto es:
16

a11
 0

 ..
 .
0

0
a22
..
.
···
···
..
.
0
0
..
.
0
···
ann
a11 b11
a22 b21
..
.


=

amm bm1

b11
  b21

  ..
 .
bn1
b12
b22
..
.
···
···
..
.
bn2
···
a11 b12
a22 b22
..
.
···
···
..
.
a11 b1n
a22 b2n
..
.
amm bm2
···
amm bmn

b1n
b2n 

.. 
. 
b3n





Definición 1.25 (Matriz Escalar y Matriz Unidad) Si en una matriz diagonal D se verifica que a11 = a22 = . . . = ann = k, entonces D recibe el nombre
de matriz escalar. Si además k = 1, la matriz se denomina unidad o identica
y se representa por In .
Las matrices unitarias tienen algunas de las
todo caso, se verifica que:
Im × Am×n = Am×n × In = Im × Am×n × In

1 0
1 0
Ejemplo 1.11 I2 =
I3 = 0 1
0 1
0 0
propiedades del entero 1. En
=A

0
0
1
Definición 1.26 (Matrices Conmutativas y Anticonmutativas) Si A y B
son dos matrices cuadradas y se verifica que AB = BA dichas matrices se llaman permutables, conmutativas o que conmutan. Es fácil demostrar que si
A es una matriz cuadrada de orden n, conmuta consigo misma y también con
In .
En las condiciones anteriores, si A y B son tales que AB = −BA, las
matrices A y B se llaman antipermutables o anticonmutativas
a b
c d
Ejemplo 1.12 Demostrar que las matrices
y
son permutables
b a
d c
para todos los valores de a, b, c, d. Esto se deduce de:
a b
c d
ac + bd ad + bd
×
=
=
b a
d c
bc + ad bc + ad
ca + db da + db
c d
a b
=
×
cb + da cb + da
d c
b a
17
Definición 1.27 (Matriz Idempotente) Una matriz A de manera que
Ak+1 = A, se llama matriz idempotente de grado k la matriz A. Al grado
k también se le llama periodo.


2 −2 −4
4  Verificar si la matriz A es idempotente:
Ejemplo 1.13 A = −1 3
1 −2 −3

 
 

2 −2 −4
2 −2 −4
2 −2 −4
4  = −1 3
4 =A
4  × −1 3
A2 = −1 3
1 −2 −3
1 −2 −3
1 −2 −3
Definición 1.28 (Matriz Nilpotente) Una matriz A tal que AP = 0, siendo
p un número entero y positivo, se llama nilpotente. Si p es el menor número
entero y positivo para la cual AP = 0, la matriz A se llama nilpotente de
índice p.


1
1
3
2
6  Demostrar que A es una matriz nilpotente
Ejemplo 1.14 A =  5
−2 −1 −3
de índice 3.

 
 

1
1
3
1
1
3
0
0
0
2
6 × 5
2
6 = 3
3
9
A2 =  5
−2 −1 −3
−2 −1 −3
−1 −1 −3

 

0
0
0
1
1
3
3
9 × 5
2
6 =0
A3 = A2 × A =  3
−1 −1 −3
−2 −1 −3
Definición 1.29 (Matriz Involutiva) Una matriz cuadrada A tal que A2 = I
se llama involutiva. Una matriz unidad, por ejemplo, es involutiva. La inversa
de una matriz involutiva es ella misma.
Proposición 1.4 La condición necesaria y suficiente para que una matriz A
sea involutiva es que (I − A)(I + A) = 0
Demostración. Supóngase (I − A)(I + A) = I − A2 = 0; luego A2 = I y A
es involutiva.
Supóngase que A es involutiva; entonces A2 = I y (I − A)(I + A) =
I − A2 = I − I = 0
Definición 1.30 (Matriz Simétrica) Una matriz cuadrada A tal que
A = A se llama simétrica. Por tanto, en una matriz cuadrada A = [aij ]simétrica
se verifica que aij = aji para todos los valores de i y de j.
18


1 2
3
Ejemplo 1.15 A = 2 4 −5
3 −5 6
k∈k
es simétrica y también kA para cualquier
Si A 
es una matriz cuadrada
 de orden n,
 la matriz A + A es simétrica.
1 2
3
1 2
3
A = 2 4 −5 , A = 2 4 −5 entonces
3 −5 6
3 −5 6


2
4
6
8
−10
A + A = 4
6 −10 12
Definición 1.31 (Matriz Antisimétrica) Una matriz cuadrada A tal que
A = −A se llama hemisimétrica o antisimétrica. Por tanto, en una matriz
cuadrada A hemisimétrica se verifica que aij = −aji para todos los valores de i
y de j . Evidentemente, los elementos de la diagonal principal deben ser nulos.






0 2 −3
0 −2 3
0 2 −3
0 4 A = −2 0 −4 = −A = −2 0 −4
Ejemplo 1.16 A =  2
3 4 0
−3 −4 0
3 4 0
La anterior es una matriz hemisimétrica, así como kA, cualquiera que sea el
escalar k ∈ k.
Proposición 1.5 Toda matriz cuadrada A se puede descomponer en la
suma de una matriz simétrica B = 12 (A + A) y otra matriz antisimétrica
C = 12 (A − A).
La inversa de una matriz juega un papél muy importante en el desarrollo
de diferentes procedimientos algebraicos y de cálculo matricial. Así como en R ,
para todo a ∈ R con a = 0, existe un b ∈ R que es el inverso multiplicativo, para
el caso de una matriz A análogamente se plantea la posibilidad de que exista
una matriz B conformable, tal que AB = I.
Definición 1.32 (Matriz Inversa) Sean A y B dos matrices cuadradas del
mismo orden, para las cuales se cumple que AB = BA = I. A la matriz B se
llama inversa de A y se escribe B = A−1 (B igual a inversa de A), Recíprocamente, la matriz A es la inversa de B, y se puede escribir A = B −1 .

 
 

1 2 3
6 −2 −3
1 0 0
0  = 0 1 0 = I
Ejemplo 1.17 Como 1 3 3 × −1 1
1 2 4
−1 0
1
0 0 1
Cada una de las matrices del producto es inversa de la otra.
19
No todas las matrices poseen inversa. Se puede demostrar, sin embargo, que
si A posee matriz inversa, ésta es única.
Proposición 1.6 (Propiedades de la Inversa) La inversa de una matriz
cumple con las siguientes propiedades
1. Si A es una matriz que tiene inversa, ésta es única
Demostración. Sean A, B, C tres matrices cuadradas de forma que
AB = BA = I y CA = AC = I. En estas condiciones, (CA)B = C(AB)
y por tanto B = C. En otra forma, B = C = A−1 es la única inversa de
A.
2. (AB)−1 = B −1 A−1
Demostración. Por definición (AB)−1 (AB) = (AB)(AB)−1 = I. Ahora
bien:
(B −1 A−1 )AB = B −1 (A−1 A)B = B −1 IB = B −1 B = I
AB(B −1 A−1 ) = A(BB −1 )A−1 = AA−1 = I
Como (AB)−1 es única, luego (AB)−1 = B −1 A−1
Una matriz que posee inversa se llama invertible o no singular.
Definición 1.33 (Matriz Ortogonal) Se dice que una matriz A definida sobre un cuerpo k, es ortogonal si AAT = AT A = I. Una matriz ortogonal A es
necesariamente cuadrada e invertible, con una inversa A−1 = AT

a1
Sea A =  b1
c1
a2
b2
c2
Si A es ortogonal,

a1 a2
AAT =  b1 b2
c1 c2

a3
b3 
c3
entonces se debe cumplir:

 

a3
a1 b1 c1
1 0 0
b3  a2 b2 c2  = 0 1 0
a3 b3 c3
0 0 1
c3
Esto proporciona el siguiente conjunto de ecuaciones:
a21 + a22 + a23 = 1
a1 b1 + a2 b2 + a3 b3 = 0 a1 c1 + a2 c2 + a3 c3 = 0
b1 a1 + b2 a2 + b3 a3 = 0
b21 + b22 + b23 = 1
b1 c1 + b2 c2 + b3 c3 = 0
c1 a1 + c2 a2 + c3 a3 = 0 c1 b1 + c1 b1 + c1 b1 = 0
c21 + c22 + c23 = 1
o en otras palabras:
u1 • u1 = 1 u1 • u2 = 0 u1 • u3 = 0
u2 • u1 = 0 u2 • u2 = 1 u2 • u3 = 0
u3 • u1 = 0 u3 • u2 = 0 u3 • u3 = 1
20
donde u1 = (a1 , a2 , a3 ) , u2 = (b1 , b2 , b3 ) , u3 = (c1 , c2 , c3 ) son las filas de A.
Así las filas u1 , u2 y u3 son ortogonales entre sí y tienen longitudes unidad o,
dicho de otro modo, forman un conjunto ortonormal de vectores
Definición 1.34 (Matriz Escalonada) Sean
A
A
·
·
·
A
matri1
2
S
ces cuadradas de órdenes m1 m2 · · · mS , respectivamente.

A1
0

La generalización A =  .
 ..
0
0
A2
..
.
···
···
..
.
0
0
..
.
0
···
AS



 = diag A1

de la matriz diagonal se llama suma directa o matriz
matrices .Ai

1 2
1 2
Ejemplo 1.18 Sean A1 = 2 , A2 =
, A3 = 2 0
3 4
4 1
La suma directa de A1, A2 , A3 es la matriz escalonada:

2
0

0
diag (A1, A2 , A3 ) = 
0

0
0
0
1
3
0
0
0
0
2
4
0
0
0
0
0
0
1
2
0
A2
···
AS
escalonada de las

−1
3
−2

0 0
0 0

0 0

2 −1

0 3
1 −2
Tambien se puede ver a la matriz escalonada como una matriz particionada o
una matriz de bloques en la cual las submatrices no nulas están sobre la diagonal
.
Definición 1.35 (Determinante de una Matriz Cuadrada) El determinante de una matriz cuadrada se puede definir recursivamente mediante
desarrollos por columnas o por filas. Sea A = (aij ) una matriz n × n, donde i
es el índice de la fila y j es el índice de la columna. Se nota por Aij la matriz
(n − 1) × (n − 1) que se obtiene al quitar la fila i y la columna j de la matriz
A. Entonces
Desarrollo por la fila i : detA = |A| =
n
i+j
aij det(Aij).
j=1 (−1)
Desarrollo por la columna j : detA = |A| =
n
i=1 (−1)
i+j
aij det(Aij).
Aplicando repetidamente estas fórmulas, se va reduciendo el orden de las
determinantes hasta llegar a determinantes de órdenes uno, dos o tres que se
pueden calcular usando las reglas de Sarrus:
21
|a11 | = a11
a11 a12
= a11 a22 − a12 a21
a21 a22

a11
a21
a31
a12
a22
a32

a13
a23  = a11 a22 a33 + a12 a23 a31 + a21 a32 a13
a33
−a13 a22 a31 − a23 a32 a11 − a21 a12 a33
El valor del determinante no depende de las filas o columnas escogidas,
mientras que la dificultad del cálculo probablemente sí.
Proposición 1.7 (Propiedades del Determinante) Las principales propiedades de los determinantes de matrices cuadradas son las siguientes.
1. Si una columna es cero, el determinante es cero.
2. Si hay dos columnas iguales, el determinante es cero.
3. Si las columnas son ld, el determinante es cero.
4. El determinante cambia de signo al permutar dos columnas.
5. El determinante no cambia si a una columna se le suma una columna de
las restantes.
6. El determinante es lineal respecto a cada columna:
det(..., ci + ci , ...) = det(..., ci , ...) + det(..., ci , ...).
det(..., ci , ...) = det(..., ci , ...).
7. Las filas también cumplen las anteriores propiedades.
8. det(λA) = λn det(A).
9. El determinante del producto es igual al producto de determinantes:
det(AB) = detA·detB.
10. Una matriz A es invertible si y solo si detA = 0. Además, det(A−1 ) =
(detA)−1 .
11. Una matriz y su traspuesta tienen el mismo determinante: det(AT ) =
detA.
12. El determinante de una matriz triangular es igual al producto de los elementos diagonales.
13. El determinante de una matriz triangular por bloques es igual al producto
de los determinantes de los bloques diagonales.
22
2.
Derivación.
En esta sección se exponen los conceptos fundamentales de la derivación de
funciones reales, y algunas de las reglas principales. Se consideran principalmente las funciones algebraicas, y al final de la sección se exponen las fórmulas
de algunas funciones trigonométricas y logarítmicas que podrán ser utilizadas
posteriormente.
Definición 2.1 (Pendiente) Se define la pendiente, en el punto donde x = a,
de la tangente a una curva cuya ecuación es y = f (x), como
m = lı́mh→0
f (a − h) − f (a)
h
De hecho, los límites con esta forma surgen siempre al calcular una rapidez de
cambio en cualquier ciencia o rama de la ingeniería, como la rapidez de reacción
en química o un costo marginal en economía. Dado que este tipo de límite se
presenta con suma frecuencia, se le da un nombre y una notación especial.
Definición 2.2 (Derivada) La derivada de la función f en un número a representada por f (a) es
f (a) = lı́mh→0
f (a + h) − f (a)
dado el caso de que el límite exista.
h
Si se escribe x = a + h, entonces h = x − a y h → 0 si y solo si x →
a; por consiguiente de acuerdo con la determinación de las tangentes, un modo
equivalente de enunciar la definición de derivada, es
f (a) = lı́mx→a
f (x) − f (a)
x−a
Ejemplo 2.1 Determinar la derivada de la función f (x) = x2 − 8x + 9 en el
número a.
f (a) lı́mh→0
f (a + h) − f (a)
h
[(a+h)2 −8(a+h)+9]−[a2 −8a+9]
f (a) lı́mh→0
h
2
2
2
+8a−9
f (a) lı́mh→0 a +2ah+h −8a−8h+9−a
h
2ah+h2 −8h
f (a) lı́mh→0
= lı́mh→0 (2a + h − 8)
h
f (a) = 2a − 8
El proceso de calcular la derivada de una función se llama derivación.
23
Figura 1:
Notación 2.1 (Derivada) Si se emplea la notación tradicional y = f (x) para
indicar que la variable independiente es x y que la dependiente es y , hay otras
notaciones alternativas comunes de la derivada:
f (x) = y =
dy
df
d
=
=
f (x) = Df (x) = Dx f (x)
dx
dx
dx
d
Los símbolos D y
se denominan operadores de diferenciación porque indx
dican la operación de diferenciación, que es el proceso de calcular una derivada.
d
El símbolo
fue introducido por Leibniz y no se debe considerar como una
dx
relación, solo es un símbolo de f (x). No obstante, es una notación muy útil y
sugerente, en especial cuando se usa con la notación de incrementos.
2.0.3.
Interpretación de la derivada como la pendiente de una tangente.
Si se parte de la definición de que la línea tangente o recta tangente a la curva
y = f (x) en el punto P (a, f (a)) es la línea que pasa por P cuya pendiente es
m = lı́mx→a
f (x) − f (a)
x−a
siempre que exista ese límite
Como, según la definición 2.2 es la misma que la derivada f (a) ahora se
puede decir que la recta tangente a y = f (x) en (a, f (a)) es la línea que pasa
por (a, f (a)) cuya pendiente es igual a f (a) la derivada de f en a Así, la
interpretación geométrica de una derivada (como se tiene en la definición 2.2)
es lo que registra la figura ??.
24
f (a + h) − f (a)
f (x) − f (a)
, b) f (a) = lı́mx→a
h
x−a
= pendiente de tangente en P, =pendiente de tangente en P
f (a) = lı́mh→0
Al emplear la forma punto-pendiente de la ecuación de la recta, se llega a:
Si existe f (a) entonces una ecuación de la recta tangente a la curva y = f (x)
en el punto (a, f (a)) es la siguiente:
y − f (a) = f (a) (x − a)
Ejemplo 2.2 Deducir una ecuación de la tangente a la parábola y = x2 −8x+9
en el punto (3, −6).
De acuerdo con el ejemplo anterior se sabe que la derivada de f (x) = x2 −
8x + 9, en el número a es f (a) = 2a − 8 . Entonces la pendiente de la tangente
en (3, −6) es f (3) = 2 (3) − 8 = −2. Así, la ecuación de la recta tangente
y − (−6) = (−2) (x − 3) o sea y = −2x.
2.0.4.
Reglas de Derivacion.
Una función se dice diferenciable en un intervalo si lo es en cada uno de sus
puntos. Las funciones del cálculo elemental son diferenciables, excepto posiblemente en puntos aislados, en sus intervalos de definición.
Si siempre fuera necesario determinar las derivadas directamente a partir
de la definición, las operaciones serían tediosas y se requeriría mucho ingenio
para evaluar algunos límites. Por fortuna, se han desarrollado varias reglas para
hallar derivadas que obvian ese proceso y simplifican mucho la diferenciación.
Las reglas siguientes suponen que se trabaja con funciones diferenciables.
Regla 2.1 (Derivada de una Constante) Si f es una función constante,
f (x) = c, entonces f (x) = 0
Este resultado es geométricamente evidente porque la gráfica de una función constante es una recta horizontal con pendiente 0; la demostración formal
también es simple.
f (x) = lı́mh→0
f (x + h) − f (x)
c−c
= lı́mh→0
= lı́mh→0 0 = 0
h
h
En notación de Leibniz, se escribe:
d
c=0
dx
Regla 2.2 (Regla de Potencias) Si f (x) = xn en donde n es un entero positivo, f (x) = nxn−1
d
En la notación de Leibniz la regla de potencias se expresa como: dx
(xn ) =
n−1
nx
25
Demostración. La fórmula
xn − an = (x − a) xn−1 + xn−2 a + . . . + xan−2 + an−1
Se comprueba multiplicando el lado derecho, o sumando el segundo factor
como una serie geométrica. Así, si se usa la ecuación 2.2 para f (a) y después
se utiliza la expresión de arriba, se obtiene:
f (a) = lı́mx→a
f (x) − f (a)
xn − an
= lı́mx→a
x−a
x−a
f (a) = lı́mx→a xn−1 + xn−2 a + ... + xan−2 + an−1
f (a) = an−1 + an−2 + ... + xaan−2 + an−1
Demostración. f (a) = nan−1
f (x) = lı́mh→0
f (x + h) − f (x)
(x + h)n − xn
= lı́mh→0
h
h
Al desarrollar (x + h)n de acuerdo con el teorema del binomio, se llega a:
f (x) = lı́mh→0
xn + nxn−1 h +
(x) = lı́mh→0 nxn−1 +
n(n−1) n−2 2
x
h
2
h
n(n−1) n−2
x
h + ...
2
+ ... + nxhn−1 + hn − xn
+ nxhn−2 + hn−1
f (x) = nxn−1
Por cuanto todos los términos excepto el primero, tienen a h como factor;
por consiguiente, tienden a 0.
Ejemplo 2.3 Los siguientes ejemplos
Si y = t5 entonces
dy
dt
= 5t4
Du (um ) = mum−1
Si y = x20 , entonces y = 20x19
d
dr
r6 = 6r5
26
d √
dx x
=
d
dx
1
1
x 2 = 12 x( 2 )−1 =
1
√
2 x
1
√
3 2
x
Sea y =
Entonces
2
dy
2
2 5
d −2 =
x 3 = − x−( 3 )−1 = − x− 3
dx
dx
3
3
Derivar la función f (t) =
√
t (1 − t) .
Aplicando la regla del producto se tiene:
f (t) =
√ d
√
d
t dt (1 − t) + (1 − t) dt
t
f (t) =
√
1
t (−1) + (1 − t) 21 t− 2
√
f (t) = − t +
1−t
√
2 t
=
1−3t
√
2 t
Si se utilizan primero las leyes de los exponentes, después se podrá proceder
directamente, sin recurrir a la regla del producto.
√
√
1
3
f (t) = t − t t = t 2 − t 2
1
1
f (t) = 12 t− 2 − 32 t 2 que equivale a la respuesta en la solución anterior
Las fórmulas de diferenciación que siguen indican que la derivada de una
constante multiplicada por una función es igual a la constante multiplicada por
la derivada de la función, y que la derivada de una suma (o resta) de funciones
es igual a la suma (o resta) de las derivadas, siempre y cuando las derivadas
existan.
Para definir las siguientes reglas, se supone que c es una constante y que
tanto f (x) como g (x) existen.
Regla 2.3 Si g (x) = cf (x), entonces f (x) existe y g (x) = cf (x)
También se escribe:
d
df
(cf ) = c
dx
dx
27
Demostración. g (x) = lı́mh→0
f (x + h) − f (x)
h
cf (x + h) − cf (x)
h
f (x + h) − f (x)
g (x) = lı́mh→0 c
h
= lı́mh→0
g (x) = c lı́mh→0
f (x + h) − f (x)
h
g (x) = cf (x)
Regla 2.4 Si H (x) = f (x) ± g (x) , entonces H (x) existe, y
H (x) = f (x) ± g (x)
d
df
dg
También se escribe:
(f ± g) =
±
dx
dx dx
Este resultado se puede ampliar para la suma de cualquier número de funciones.
Demostración. H (x) = lı́mh→0
H (x_h) − H (x)
h
[f (x + h) ± g (x + h)] − [f (x) ± g (x)]
h
f (x + h) − f (x) g (x + h) − g (x)
H (x) = lı́mh→0
±
h
h
H (x) = lı́mh→0
H (x) = lı́mh→0
f (x + h) − f (x)
g (x + h) − g (x)
± lı́mh→0
h
h
H (x) = f (x) ± g (x)
De manera resumida, las dos reglas anteriores se pueden expresar como:
(cf ) = cf
(f ± g) = f ± g
Ejemplo 2.4
=
d
dx
d
dx
x8 + 12x5 − 4x4 + 10x3 − 6x + 5
d
d
d
d
x8 + 12 dx
x5 − 4 dx
x4 + 10 dx
x3 − 6 dx
(x) +
= 8x7 + 12 5x4 − 4 4x3 + 10 3x2 − 6 (1) + 0
= 8x7 + 60x4 − 16x3 + 30x2 − 6
28
d
dx
(5)
Ejemplo 2.5 Si f (x) = x4 − x3 + x2 − x + 1, deducir la ecuación de la tangente
a la gráfica de f en el punto (1, 1).
La pendiente de f (1) que se calculara como sigue:
f (x) = 4x3 − 3x2 + 2x − 1
f (1) = 4 − 3 + 2 − 1 = 2
Por tanto, la ecuación de la tangente en (1, 1) es
y − 1 = 2 (x − 1) o bien 2x − y − 1 = 0
A continuación se necesita una fórmula para la derivada de un producto de
dos funciones; es posible sentirse inclinado a suponer, como lo hizo Leibniz hace
tres siglos, que la derivada de un producto es igual al producto de las derivadas;
pero se puede ver que tal hipótesis no es correcta si se considera un ejemplo
en particular. Sean f (x) = x y g (x) = x2 . Entonces, la regla de potencias
establece que f (x) = 1 y g (x) = 2x y se tendría f · g = 2x. Sin embargo,
si se toma h = f · g = x3 y, por consiguiente, hl = (f · g) = 3x2 . Entonces
(f · g) = f · g . Leibniz descubrió la fórmula correcta, la cual se llama regla
del producto.
Regla 2.5 (Regla del Producto) Si H (x) = f (x) g (x) y tanto f (x) como
g (x) existen a la vez, entonces
H (x) = f (x) g (x) + f (x) g (x)
También se puede expresar como:
d
dg
df
(f g) = f
+g
dx
dx
dx
y de manera abreviada: (f g) = f g + fg
Demostración. H (x) = lı́mh→0
H (x) = lı́mh→0
H (x + h) − H (x)
h
f (x + h) g (x + h) − f (x) g (x)
h
Para evaluar este límite, se van a separar las funciones f y g sumando y
restando el término f (x + h) g (x) en el numerador
H (x) =
f (x + h) g (x + h) − f (x + h) g (x) + f (x + h) g (x) − f (x) g (x)
h
g (x + h) − g (x)
f (x + h) − f (x)
= lı́mh→0 f (x + h)
+ g (x)
h
h
= lı́mh→0
29
= lı́mh→0 f (x + h) lı́mh→0
+ lı́mh→0 g (x) lı́mh→0
g (x + h) − g (x)
+
h
f (x + h) − f (x)
h
H (x) = f (x) g (x) + f (x) g (x)
Ejemplo 2.6 Determinar F (x) si F (x) = 6x3
7x4
Según la regla del producto:
d
d
7x4 + 7x4 dx
6x3
F (x) = 6x3 dx
3
3
4
2
F (x) = 6x
28x + 7x 18x
F (x) = 168x6 + 126x6 = 294x6
Se podría comprobar la respuesta a este ejemplo en forma directa multiplicando primero los factores:
F (x) = 6x3
7x4 = 42x7 ⇒ F (x) = 42 7x6 = 294x6
(x)
Regla 2.6 (Regla del Cociente) Si F (x) = fg(x)
y existen f (x) y g (x) a
g (x) f (x) − f (x) g (x)
la vez, entonces existe F (x) y F (x) =
[g (x)]2
En la notación de Leibniz:
d
dx
f (x)
g (x)
=
d
d
g (x) dx
f (x) − f (x) dx
g (x)
[g (x)]2
f
gf − fg
y de manera abreviada:
=
g
g2
Demostración. F (x) lı́mh→0
F (x) lı́mh→0
F (x + h) F (x)
= lı́mh→0
h
f (x+h)
g(x+h)
−
f (x)
g(x)
h
f (x + h) g (x) − f (x) g (x + h)
hg (x + h) g (x)
Para separar f y g en esta expresión se suma y resta el término f (x) g (x)
al numerador:
F (x) lı́mh→0
f (x + h) g (x) − f (x) g (x) + f (x) g (x) − f (x) g (x + h)
hg (x + h) g (x)
30
F (x) lı́mh→0
F (x)
g (x) f (x+h)−f(x)
− f (x) g(x+h)−g(x)
h
h
g (x + h) g (x)
(x)
− lı́mh→0 f (x) lı́mh→0
lı́mh→0 g (x) lı́mh→0 f (x+h)−f
h
lı́mh→0 g (x + h) lı́mh→0 g (x)
F (x) =
g(x+h)−g(x)
h
g (x) f (x) − f (x) g (x)
[g (x)]2
En palabras, la derivada de un cociente es igual al denominador multiplicado
por la derivada del numerador, menos el numerador multiplicado por la derivada
del denominador, y todo ello se divide entre el cuadrado del denominador.
Ejemplo 2.7 Sea y =
Entonces y =
y =
x2 −x−2
x3 +6
(x3 +6)D(x2 +x−2)−(x2 +x−2)D(x3 +6)
(x3 +6)2
(x3 +6)(2x+1)−(x2 +x−2)(3x2 )
(x3 +6)2
y =
(2x4 +x3 +12x+6)−(3x4 +3x3 −6x2 )
y =
−x4 −2x3 +6x2 +12x+6
(x3 +6)2
(x3 +6)2
También se puede emplear la regla del cociente para ampliar la regla de
potencias al caso en que el exponente es un entero negativo.
Regla 2.7 Si f (x) = x−n , donde n es un entero positivo, f (x) = −nx−n−1
Demostración. f (x) =
f (x) =
f (x) =
d
dx
(x−n ) =
d
dx
1
xn
xn D(1)−1D(xn )
(xn )2
−nxn−1
x2n
= −nxn−1−2n = nx−n−1
Ejemplo 2.8 Si y =
Entonces,
Ejemplo 2.9
dy
dx
d
dt
=
d
dx
6
t3
1
x
x−1 = −x−2 = − x12
d
= 6 dt
t−3 = 6 (−3) t−4 = − 18
t4
31
Ejemplo 2.10 Derivar la función f (t) =
ducto se tiene:
f (t) =
√ d
√
d
t dt (1 − t) + (1 − t) dt
t
f (t) =
√
1
t (−1) + (1 − t) 12 t− 2
√
f (t) = − t +
1−t
√
2 t
=
√
t (1 − t) Aplicando la regla del pro-
1−3t
√
2 t
Si se utilizan primero las leyes de los exponentes, después se podrá proceder
directamente, sin recurrir a la regla del producto.
f (t) =
√
√
1
3
t − t t = t2 − t2
1
1
f (t) = 12 t− 2 − 32 t 2 que equivale a la respuesta en la solución anterior
Ejemplo 2.11 En qué puntos de la hipérbola xy = 12 la tangente es paralela a
la recta 3x + y = 0?
Como xy = 12 se puede escribir en la forma y = 12
x
dy
dx
d
= 12 dy
x−1 = 12 −x−2 =
12
x2
Sea a la abscisa de uno de los puntos en cuestión. Entonces, la pendiente de
la tangente en ese punto es −12
a2 . Esa tangente será paralela a la recta 3x +y = 0
o y = −3x, si tiene la misma pendiente, que es −3. Al igualar las pendientes se
llega a − a122 = −3 , o sea a2 = 4 , o sea a = ±2 Por consiguiente, los puntos
buscados son(2, 6) y (−2, −6).
Regla 2.8 (Regla de la Cadena) Sean f, g dos funciones. Si existen a la vez
las derivadas g y f y si H = f ◦ g es la función compuesta definida por
H (x) = f (g (x)) , entonces H(x) existe y está dada por el producto H (x) =
f (g (x)) g (x)
En la notación de Leibnitz, si y = f (u) y u = g(x) son dos funciones
diferenciables, entonces
dy
dx
=
dy du
du dx
Demostración. Se desarrollará mediante el examen de dos casos.
du
dx = 0
Aquí ∆u = 0 si ∆x es suficientemente pequeña (porque si no du/dx sería
0)pero en este caso se puede dividir entre y multiplicar por ∆u en
32
1.
dy
dx
∆y
∆x
= lı́m∆x−→0
por tanto
dy
dx
∆y ∆u
∆u ∆x
= lı́m∆x−→0
∆y
= lı́m∆x−→0 ∆u
• lı́m∆x−→0
porque g es contínua
dy
dx
2.
dy
dx
= lı́m∆u−→0
dy
dx
=
du
dx
=0
∆y
∆u
• lı́m∆x−→0
∆u
∆x
∆u −→ 0 cuando ∆x −→ 0
∆u
∆x
dy du
du dx
Aquí ∆u = 0 para algunos casos de ∆x, y ∆u = 0 para otros valores
de ∆x. Si se tiene ∆x −→ 0 pasando por valores tales que ∆u = 0 ,
podemos escribir
∆y
∆x
=
∆y
∆u
•
∆u
∆x
−→
dy
du
•
du
dx
=
dy
du
•0=0
Si ∆x −→ 0 pasando por valores tales que ∆u = 0 , entonces\
∆y = f (u + ∆u) − f (u) = f (u) − f (u) = 0
y así
∆y
∆x
=0
En ambos casos
y entonces
dy
dx
∆y
∆x
−→ 0,
=0=
dy du
du dx
En estas circunstancias se comprueba la regla de la cadena, porque ambos
lados son 0.
2.0.5.
Derivación Parcial
Los casos expuestos anteriormente se aplican para funciones de una sola
variable. Cuando se trabaja con funciones de varias variables f (x, y, z, ...) el
proceso es similar, teniendo en cuenta que se puede derivar de manera separada
la función f con respecto a cada una de sus variables independientes. Para
simplificar la presentación, se considerará en las líneas siguientes el caso de una
función de dos variables, pero cada caso se puede llevar por analogía a funciones
de tres o más variables.
33
Definición 2.3 Sea z = f (x, y) una función de dos variables independientes
x, y. Entonces, las derivadas parciales de z son las funciones fx y fy que se
definen como:
f (x + h, y) − f (x, y)
h→0
h
f (x, y + h) − f (x, y)
fy (x, y) = lı́m
h→0
h
fx (x, y) =
lı́m
Donde fx se denomina la primera derivada parcial de f(x, y) con respecto a
x, y fy se denomina la primera derivada parcial de f(x, y) con respecto a y.
Por tanto, fx permite calcular la variación de f a medida que cambia x, con
todas las demás variables fijas, y equivalentemente para fy .
Notación 2.2 Sea z = f(x, y). Entonces, las derivadas parciales de esta función con respecto a x y con respecto a y son:
∂f
∂
=
f (x, y) =
∂x
∂x
∂
∂f
fy (x, y) = fy =
=
f(x, y) =
∂y
∂y
fx (x, y) = fx =
34
∂z
= f1 = D1 f = Dx f
∂x
∂z
= f2 = D2 f = Dy f
∂y
3.
Derivación Matricial
El cálculo matricial es en gran manera una ampliación de la notación tradicional del cálculo univariado, que permite una notación más compacta a la hora
de realizar cálculo multivariado, en el cual las funciones pueden ser de un tipo
más amplio, ya que la variable puede ser vectorial o matricial. En general, el
cálculo matricial trabaja sobre espacios de matrices M (m, n) de tamaño m × n
definidas sobre k = R.
Antes de abordar el proceso de la derivación matricial dada la complejidad
técnica del problema, es preciso incorporar algunas nuevas operaciones entre
matrices que completan el cálculo matricial tradicional. Por ello, se definen las
matrices de permutación y los conceptos de producto Kronecker y vectorización
junto con sus propiedades.
Primero se exponen nuevos tipos de matrices que son de especial interés para
desarrollos del cálculo matricial.
Nota 3.1 Es importante resaltar en todo caso, que en este escrito se identificarán explícitamente los espacios de matrices Mpn con Rpn y Mmq con Rmq ,
respectivamente.
3.1.
Funciones Matriciales
Dentro de esta sección se presentarán los diversos casos de funciones de
acuerdo con su variable, hasta llegar al caso general de las funciones de variable
matricial.
Para ello, sea Mmn el espacio vectorial de las matrices de tamaño m × n, en
el cual se definen las matrices X, Y. Dentro del espacio vectorial M1n se definen
los vectores fila A, B. Además se definen los escalares x, y ∈ k. Se define además
una función f.
3.1.1.
Funciones de Variable Escalar
Sea Mmn el espacio vectorial de las matrices de tamaño m × n, y X, Y
matrices de Mmn . Sea M1n el espacio vectorial de los vectores fila de tamaño n,
y sean A, B vectores de M1n . Sean x, y ∈ k escalares reales. Entonces se pueden
dar los siguientes casos:
Caso 3.1 f : R → R
f (x) = y
Este es el caso usual, cuya derivación y propiedades de la derivación se ha
expuesto en la sección 2.
Ejemplo 3.1 f (x) = x + 1
35
Caso 3.2 f : R → M1n
f (x) = A
Es el caso de una función de variable escalar, cuya salida es un vector.
Ejemplo 3.2 f (x) = (2x, x2 )
Caso 3.3 f : R → Mmn
f (x) = Y
Ejemplo 3.3 f (x) =
3.1.2.
1
x
x + 1 x2
Funciones de Variable Vectorial
Sea Mmn el espacio vectorial de las matrices de tamaño m × n, y X, Y
matrices de Mmn . Sea M1n el espacio vectorial de los vectores fila de tamaño n,
y sean A, B vectores de M1n . Sean x, y ∈ k escalares reales. Entonces se pueden
dar los siguientes casos:
Caso 3.4 f : M1n → R
f (A) = y
Caso 3.5 f : M1n → M1n
f (A) = B
Es el caso de una función de variable vectorial, cuya salida es un vector.
Caso 3.6 f : M1n → Mmn
f (A) = Y
36
3.1.3.
Funciones de Variable Matricial
Sea Mmn el espacio vectorial de las matrices de tamaño m × n, y X, Y
matrices de Mmn . Sea M1n el espacio vectorial de los vectores fila de tamaño n,
y sean A, B vectores de M1n . Sean x, y ∈ k escalares reales. Entonces se pueden
dar los siguientes casos:
Caso 3.7 f : Mmn → R
f (X) = y
Caso 3.8 f : Mmn → M1n
f (X) = B
Es el caso de una función de variable vectorial, cuya salida es un vector.
Caso 3.9 f : Mmn → Mmn
f (X) = Y
3.2.
Otras Matrices Especiales
Se definen las siguientes matrices:
Definición 3.1 (Partición de una Matriz) Una matriz es particionada, si
es subdividida en matrices más pequeñas llamadas submatrices o bloques mediante lineas horizontales y verticales que demarcan filas y columnas completas:





a11
a21
..
.
a12
···
..
.
···
···
..
.
a1n
a2n
..
.
am1
am2
···
amn





Una matriz Am×n se puede particionar de 2m+n−2 − 1 maneras distintas,
con al menos una línea de partición.
Definición 3.2 (Matriz de Bloques) Una matriz a la que se ha realizado
una partición se llama matriz de bloques o Matriz Particionada..
Ejemplo 3.4 Dada la matriz A3×4 ,, se le pueden realizar 25 − 1 = 31 particiones diferentes. Una de ellas puede ser:


a11 a12 a13 a14
B C
A3×4 =  a21 a22 a23 a24  =
D E
a31 a32 a33 a34
37
Donde a las submatrices o bloques se les ha denominado B, C, D, E y corresponden a:
a
B = 11
a21
a12
a22
a13
a
, C = 14 , D = a31
a23
a24
a32
a33 , E = a34
Definición 3.3 (Matriz de Permutación) Una matriz de permutación P es
una matriz cuadrada de órden n, donde todos los elementos son 0, a excepción
de uno cualquiera por cada fila y columna que tiene el valor 1
Existen n! matrices de permutación de tamaño n × n. Las matrices de conmutación de orden n forman un grupo [Her86], cuyo elemento neutro es la
matriz identidad de orden n, mientras que el elemento inverso es la transpuesta
de la matriz dada.
Ejemplo 3.5 Para n = 3 se tienen las siguientes matrices de permutación:




1 0 0
1 0 0
0 1 0
 0 1 0  0 0 1  1 0 0 
0 0 1
0 1 0
0 0 1




0 1 0
0 0 1
0 0 1
 0 0 1  1 0 0  0 1 0 
1 0 0
0 1 0
1 0 0
Se les llama matrices de permutación por cuanto al multiplicar por P otra
matriz conforme A, da como resultado una matriz con los mismos elementos
de la matriz original A, pero con sus posiciones permutadas de acuerdo con la
ubicación de los elementos con valor 1 de P.
Definición 3.4 (Matrices de Permutación Par e Impar) A una matriz de
permutación P que tiene determinante igual a 1 se le denomina matriz de permutación par, y a la que tiene determinante igual a −1 se le denomina matriz de
conmutación impar. La mitad de las matrices de permutación de tamaño n × n
son matrices de permutación pares, y la otra mitad son impares.
Definición 3.5 (Matrices de Permutación en Bloques) Una matriz de permutación por bloques de orden mn, que se denota por Pm,n , es una matriz
cuadrada de orden mn, dividida en n × m bloques o cajas cada una de ellas
de orden m × n, de manera que el bloque (i, j) , i = 1, ..., n, j = 1, ..., m tiene
todos sus elementos nulos salvo el que está situado en su j-ésima fila e i-ésima
columna que es igual a la unidad
Esta definición muestra que tanto el primer elemento como el último elemento de una matriz de permutación por bloques es 1.
38
Proposición 3.1 (Propiedades Matrices de Permutación por Bloques)
Las matrices de permutación en bloques cumplen las siguientes propiedades:
1. Pm,1 = P1,m = Im
2. Pm,n
= Pn,m
3. Pm,n Pn,m = Inm
4. La matriz Pm,n es ortogonal
Demostración. Se va a demostrar la propiedad 4; la demostración de las
demás propiedades se hacen de manera análoga. Las demostraciones se pueden
consultar en [Bar98].
Pm,n
= Pn,m entonces de (3)., resulta
Pm,n Pn,m = Pn,m Pm,n
= In,m
−1
de donde se deduce que Pm,n es ortogonal ya que Pm,n
= Pm,n
3.3.
Producto de Kronecker
En ocasiones el producto de matrices que se asocia a la composición de
aplicaciones lineales es insuficiente. El producto de Kronecker que a continuación
se define, en cierto sentido lo generaliza.
Definición 3.6 (Producto de Kronecker) Sea A una matriz m×n y B una
una matriz p × q. El producto de Kronecker de la matriz A por la matriz B,
denotado como A ⊗ B, es la matriz bloque C de tamaño mp × nq definida como:


a11 B · · · a1n B

.. 
..
C = A ⊗ B =  ...
.
. 
am1 B
···
amn B
y desarrollando las operaciones implícitas en cada bloque aij B, se tiene para
C = A ⊗B que

a11 b11 a11 b12 · · · a11 b1q · · · · · · a1n b11 a1n b12 · · · a1n b1q
 a11 b21 a11 b21 · · · a11 b2q · · · · · · a1n b21 a1n b22 · · · a1n b2q 


..
..
..
..
.. 
 ..
..
..
 .
.
.
.
.
.
.
. 


 a11 bp1 a11 bp2 · · · a11 bpq · · · · · · a1n bp1 a1n bp2 · · · a1n bpq 


 ..
..
..
..
..
.. 
..
 .

.
.
.
.
.
.

C =
 ..
.
.
.
.
.
.
..
..
..
..
..
.. 
 .



am1 b11 am1 b12 · · · am1 b1q · · · · · · amn b11 amn b12 · · · amn b1q 


am1 b21 am1 b22 · · · am1 b2q · · · · · · amn b22 am1 b21 · · · amn b2q 


 .
..
.. 
..
..
..
..
..
 ..
.
.
.
. 
.
.
.
am1 bp1
am1 bp2
···
am1 bpq
···
···
amn bp1
amn bp2
···
amn bpq
El producto de Kronecker también recibe el nombre de Producto Tensorial
o Producto Directo.
39
Se llama producto de Kronecker, denotado con ⊗, a una operación sobre
dos matrices de tamaño arbitrario que da como resultado una matriz bloque. El
producto de Kronecker no debe confundirse con el producto de matrices habitual, que es una operación totalmente diferente. Debe su nombre al matemático
alemán Leopold Kronecker.

a11
Ejemplo 3.6 a21
a31

a11 b11
a11 b21

a21 b11

a21 b21

a31 b11
a31 b21
a11 b12
a11 b22
a21 b12
a21 b22
a31 b12
a31 b22

a12
b
a22  ⊗ 11
b21
a32
a11 b13
a11 b23
a21 b13
a21 b23
a31 b13
a31 b23
b12
b22
a12 b11
a12 b21
a22 b11
a22 b21
a32 b11
a32 b21
a12 b12
a12 b22
a22 b12
a22 b22
a32 b12
a32 b22
1 2
5 6
Ejemplo 3.7
⊗
=
3 4
7 8

1,5
1,7

3,5
3,7
1,6
1,8
3,6
3,8
2,5
2,7
4,5
4,7
 
2,6
5 6 10

2,8
 =  7 8 14
4,6 15 18 20
4,8
21 24 28
5 6
1 2
Ejemplo 3.8
⊗
=
7 8
3 4

5,1
5,3

7,1
7,3
5,2
5,4
7,2
7,4
6,1
6,3
8,1
8,3
b13
=
b23
 
6,2
5
15
6,4
=
8,2  7
8,4
21

a12 b13
a12 b23 

a22 b13 

a22 b23 

a32 b13 
a32 b23

12
16

24
32

10 6 12
20 18 24

14 8 16
28 24 32
Con el ejemplo 3.8 se muestra que el producto de Kronecker no es conmutativo. En general, A⊗B y B ⊗A son matrices diferentes. Sin embargo disfruta de
otras propiedades, algunas de las cuales se recogen en la siguiente proposición.
Proposición 3.2 (Propiedades del Producto Kronecker) Sean, A1 , A2 ∈
Mm×n y B1 , B2 ∈ Mp×q . Para el producto Kronecker se verifican las siguientes
propiedades:
40
1. (A1 ⊗ B1 ) + (A2 ⊗ B1 ) = (A1 + A2 ) ⊗ B1
(A1 ⊗ B1 ) + (A1 ⊗ B2 ) = A1 ⊗ (B1 + B2 ) .
2. Dadas Am×n , Bp×q y α ∈ R, se verifica (αA ⊗ B) = (A ⊗ αB) = α (A ⊗ B) .
3. Dadas las matrices Am×n , Bp×q , Cr×s , se verifica que [(A ⊗ B) ⊗ C] =
[A ⊗ (B ⊗ C)] .
4. Dadas A1 ∈ Mm×n , A2 ∈ Mm×p , B1 ∈ Mq×r , B2 ∈ Mr×s , si se consideran
las matrices
C1 = A1 ⊗B1 y C2 = A2 ⊗B2 de ordenes mq×nr y nr×ps respectivamente,
entonces
C1 C2 = (A1 ⊗ B1 ) (A2 ⊗ B2 ) = A1 A2 ⊗ B1 B2 .
5. Dadas A y B matrices de ordenes m × n y p × q, respectivamente, en
general A ⊗ B = B ⊗ A.
Esto quiere decir, el producto de Kronecker no es conmutativo, si bien se
verifica que Pm,p (A ⊗ B) Pq,n = (B ⊗ A)
6. Si A ∈ Mn y B ∈ Mm son dos matrices invertibles, entonces se verifica
que A ⊗ B es invertible y su inversa
(A ⊗ B)−1 = A−1 ⊗ B −1 .
7. Supuestas A y B dos matrices cualesquiera, se verifica que (A ⊗ B) =
A ⊗ B.
8. Dadas A y B dos matrices cuadradas de órdenes m y n, respectivamente,
se verifica que tr (A ⊗ B) = tr (A) · tr (B) .
9. Sean, A ∈ Mn×n y B ∈ Mm×m entonces se verifica que |A ⊗ B| =
|Am | |B n | .
10. Dadas A y B matrices cualesquiera, se tiene que rg (A ⊗ B) = rg (A) ·
rg (B) .
41
11. Si A es una matriz m × n particionada en cuatro bloques Aij , i, j = 1, 2
de dimensiones mi × nj , i, j = 1, 2 con m1 + m2 = m y n1 + n2 = n y B
es una matriz de orden p × q, entonces
A11 ⊗ B
A⊗B =
A21 ⊗ B
A12 ⊗ B
A22 ⊗ B
Se presenta ahora la demostración de algunas de las anteriores proposiciones.
Demostración. Si para k = 1, 2 se tiene Ak = akij , i = 1, ..., m,
j = 1, ..., n, Bk = bkij , i = 1, ..., p, j = 1, ..., q entonces como
A1 ⊗ B1 = a1ij B1
ij
A2 ⊗ B1 = a2ij B1
ij
,
resulta que
(A1 ⊗ B1 ) + (A2 ⊗ B1 ) =
a1ij + a2ij B1
ij
= (A1 + A2 ) ⊗ B1
Análogamente se comprueba la otra igualdad.
Demostración. Dado que


a11 B · · · a11 B
a11 B · · · a11 B 


A⊗B = .
..  ,
 ..
. 
a11 B · · · a11 B
por definición
de Kronecker resulta que
 de matriz traspuesta y producto

a11 B a21 B · · · am1 B

..
..  ,
(A ⊗ B) =  ...
.
. 
a1n B a2n B · · ·
amn B
tal como se quería probar.
Nota 3.2 Si se comparan las propiedades del producto ordinario de matrices y
del producto Kronecker se tiene:
Producto Matricial
(AB) = BA
(AB)−1 = B −1 A−1
tr (AB) = tr (A) tr (B)
|AB| = |A| |B|
rg (AB) ≤ mı́n {rg (A) , rg (A)}
Producto Kronecker
(A ⊗ B) = A ⊗ B
(A ⊗ B)−1 = A−1 ⊗ B −1
tr (A ⊗ B) = tr (A) tr (B)
|A ⊗ B| = |Am | |B n |
rg (A ⊗ B) = rg (A) · rg (B)
42
Ejemplo 3.9 Las matrices:


−1 1 1
1 −1
A=
B =  1 0 −1
2 1
0 2 4
son tales que tr (A) = 2, tr (B) = 3; rg (A) = 2, rg (B) = 3; |A| = 3, |B| = −4
Entonces para

−1
1

0
A⊗B =
−2

2
0
la matriz:

1 1
1 −1 −1
0 −1 −1 0
1

2 4
0 −2 −4

2 2 −1 1
1

0 −2 1
0 −1
4 8
0
2
4
Sin necesidad de trabajar con ella directamente, en virtud de las propiedades
del producto de Kronecker se pueden calcular los siguientes valores:
tr (A ⊗ B) = tr (A) tr (B) = 6
rg (A ⊗ B) = rg (A) · rgB = 6
|A ⊗ B| = |A|3 |B|2 = 32 (−4)2 = 432
Además como rg (A ⊗ B) = 6, la matriz A ⊗ B es invertible, siendo su
inversa, de acuerdo con la propiedad 6:
(A ⊗ B)−1 = A−1 ⊗ B −1
por tanto, como:
A−1 =
1
3
− 23
1
3
1
3
y B −1
se tiene que:
(A ⊗ B)−1
 1
−6
 1
 3
 1
− 6
=
 1
 3
 2
− 3
1
3
1
6
1
3
− 16
− 13
− 23
1
3
 1
−2
= 1
− 12
1
12
0
1
12
− 61
0
− 61
1
2
1
− 12
− 61
1
4
0
1
4
1
6
1
3
− 16
1
6
1
3
− 16
1
3
− 61
− 16
1
3
− 16
43
1 
12
0

1 

12 
1 
12 

0
1
12
Un ámbito en el que puede resultar útil expresar una matriz como un vector
columna es el de la derivación de matrices o expresiones matriciales. Por ello, a
continuación se define lo que se entiende por vectorización de una matriz y se
analizan algunas de sus propiedades.
Definición 3.7 (Vectorización de una Matriz) La vectorización de una matriz es una transformación lineal que convierte una matriz en un vector columna.
Dada una matriz A de orden m×n, la vectorización de A es el vector columna de
mn elementos que se obtiene escribiendo las columnas de A una a continuación
de otra y se denota por vec (A) . Entonces:
 
 
a•1
a1j
 a•2 
a2j 
 
 
vec (A) =  . , con a•1 =  .  , j = 1, ..., n.
 .. 
 .. 
a•n
anj
Ejemplo 3.10 Dada la matriz


1
−5
 
3
 


−2
1 −2 −1
 



0
A = −5 1
se tiene que vec (A) = 
1


3
0
2
0
−1
 
0
2
Proposición 3.3 (Propiedades de la Vectorización)
de matrices verifica las siguientes propiedades:
La
vectorización
1. Sean A, B ∈ Mm×n dos matrices cualesquiera, y sea α ∈ R. Se verifica las
siguientes propiedades: vec (A + B) = vec (A) + vec (B)
vec (αA) = αvec (A)
2. Dadas las matrices Am×n y Bn×q se verifica que:
vec (AB) = (B ⊗ Im ) vec (A) = (Ip ⊗ A) vec (B) = (B ⊗ A) vec (In )
3. Dada la matriz A de orden m × n, se verifica que:
vec (A) = (In ⊗ A) vec (In ) = (A ⊗ Im ) vec (Im )
44
4. Dadas las matrices Am×n , Bn×p y Cp×q , se verifica que:
vec (ABC) = (C ⊗ A) vec (B) = (Iq ⊗ AB) vec (C) = (CB ⊗ Im ) vec (A)
5. Dada la matriz A de orden m × n, se verifica:
vec (A) = Pm,n vec (A) , vec (A) = Pn,m vec (A)
6. Dada la matriz A de orden m × n, se verifica:
[(vecIn ) ⊗ Im ] [In ⊗ vec (A)] = A
[vec (A) ⊗ Im ] [In ⊗ vec (Im )] = A
[Im ⊗ (vec (A)) ] [vec (Im ) ⊗ In ] = A. [Im ⊗ (vec (In )) ] [vec (A) ⊗ In ] =
A
7. Dadas las matrices A y B de orden m × n y C, D de orden m × p, se tiene
que:
vec [(A + B) (C + D)] = [(Ip ⊗ A) + (Ip ⊗ B)] [vec (C) + vec (D)]
vec [(A + B) (C + D)] = [(C ⊗ Im ) + (D ⊗ Im )] [vec (A) + vec (B)]
8. Sean las matrices Am×n y Bn×m , entonces se tiene que
tr (AB) = (vec (A)) vec (B) = (vec (B)) vec (A)
En particular si n = m y B = In :
tr (A) = (vec (A)) vec (In ) = (vec (In )) vec (A)
Demostración. La j-ésima columna del producto AB es Ab•j , entonces por
definición de vectorización y el producto de matrices particionadas de tiene

 
A 0mXn
Ab•1
Ab•2   0
A

 
vecAB =  .  =  .
..
 ..   ..
.
0
0
Ab•p
···
···
..
.
···

0
0

.. 
.
A
 
b•1
b•2 
 
 .. 
 . 
b•p
Ahora bien, teniendo en cuenta el producto Kronecker de matrices, esto se
puede expresar como
45
vec (AB) = (Ip ⊗ A) · vec (B)
Por otra parte, la j-ésima columna de AB es
n
i=1
a•i bij
pues la componenete k-ésima de este vector coincide con el elemento de la
k-ésima fila y la j-ésima columna de AB que es ni=1 aki bij
Por tanto:

n
a•i bi1

i=1
 
n

B 0pXn


 a•i bi2   0
B

 
vec (AB) = i=1
= .
..


.

..
.
.


.


0
0


n
a•i bip
···
···
···

0
0

.. 
.
B


a•1
a•2 
 
 .. 
 . 
a•n
i=1
y por definición de producto de Kronecker y vectorización, resulta:
vec (AB) = (B ⊗ I) vec (A)
Demostración. Como A = Im A por la proposición 3.3,2:
vec (A) = vec (Im A) = (A ⊗ Im ) vec (Im )
Análogamente, como A = AIn , de nuevo por la proposición 3.3,2:
vec (A) = vec (AIn ) = (In ⊗ A) vec (In )
Demostración. De acuerdo con la proposición 3.3,2 se verifica que:
vec (ABC) = vec [(AB) C] = (Iq ⊗ AB) vec (C)
vec (ABC) = vec [(AB) C] = ((BC) ⊗ Im ) vec (A)
vec (ABC) = vec [(AB) C] = (CB ⊗ Im ) vec (A)
Además, como en virtud de la proposición 3.3, 1, se tiene también que
vec (ABC) = vec [(AB) C] = (C ⊗ AB) vec (Ip )
entonces por la proposición 3.3, 4 del producto de Kronecker,
(C ⊗ AB) = (C ⊗ A) (Ip ⊗ B)
46
y, teniendo en cuenta la proposición 3.3, 3, se obtiene finalmente
vec (ABC) = (C ⊗ A) (Ip ⊗ B) vec (Ip ) = (C ⊗ A) vec (B)
Las proposiciónes 3.3, 2 y 8 pueden generalizarse para el producto de un
número finito de matrices. Así, para matrices A1 , A2 , A3 y A4 de dimensiones
adecuadas, se tiene que:
vec (A1 A2 A3 A4 ) = (I ⊗ A1 A2 A3 ) vec (A4 )
vec (A1 A2 A3 A4 ) = (A4 ⊗ A1 A2 ) vec (A3 )
vec (A1 A2 A3 A4 ) = (A4 A3 ⊗ A1 ) vec (A2 )
vec (A1 A2 A3 A4 ) = (A4 A3 A2 ⊗ I) vec (A1 )
y
tr (A1 A2 A3 ) = (vec (A1 )) (A3 ⊗ I) vec (A2 )
tr (A1 A2 A3 ) = (vec (A1 )) (I ⊗ A2 ) vec (A3 )
tr (A1 A2 A3 ) = (vec (A2 )) (I ⊗ A3 ) vec (A1 )
tr (A1 A2 A3 ) = (vec (A2 )) (A1 ⊗ I) vec (A3 )
tr (A1 A2 A3 ) = (vec (A3 )) (A2 ⊗ I) vec (A1 )
tr (A1 A2 A3 ) = (vec (A3 )) (I ⊗ A1 ) vec (A2 )
que se pueden demostrar fácilmente, pues son consecuencia de la vectorización y traza del producto de dos matrices y de las propiedades del producto de
Kronecker. Resultados análogos existen para el producto de un número finito
de matrices.
En algunas ocasiones, cuando se vectoriza una matriz, conviene hacerlo a
partir de sus filas.
Definición 3.8 (Vectorización por Filas) Dada A una matriz de orden m×
n, se define:


a1•
 a2• 


vec (A) =  .  con ai• (ai1 , ..., ain ) , i = 1, ..., m
 .. 
am•
Es obvio y fácil de verificar que vec (A) = vec (A) . Por tanto, pueden enunciarse las propiedades de vec (A) . Por ejemplo:
vec (AB) = vec ((AB) ) = vec (BA) = [(A ⊗ I) vec (B)]
vec (AB) = (A ⊗ I) vec (B)
y
47
tr (AB) = (vec (A)) vec (B) = (vec (A)) vec (B)
tr (AB) = (vec (A)) vec (B)
Definición 3.9 (vec)
Dada una matriz simétrica A de orden n, puede definirse
una vectorización diferente de las ya indicadas de manera que en dicha vectorización, solo se recojan los elementos distintos de la matriz A. Así, se denota
n (n + 1)
dado por:
por vec
(A) el vector columna de orden r =
2

a11
 a12 


 a22 


 a13 


 a23 


 a33 

vec
(A) =  . 

 .. 


 a1n 


 a2n 


 .. 
 . 
ann

En vec
(A) se incluyen los elementos situados por encima de la diagonal
principal de cada una de las columnas de A. Por otra parte, la relación entre
esta vectorización y la indicada en la definción 3.7 se establece por la igualdad
vec
(A) = Qvec (A) , (donde Q es la matriz diagonal por bloques de orden r×n):

Q1


Q=

Q2
..

.
Qn




donde i = 1, ..., n, y el bloque Qi una matriz de orden i × n dada por

1 0 ···
0 1 · · ·

Qi =  . .
 .. ..
0 0 ···
0 ···
0 ···
....
..
1
···
i-ésima columna
48

0
0

....
..
0
Nota 3.3 La vectorización se utiliza en conjunto con el producto Kronecker
para expresar la multiplicación de matrices como una transformación lineal sobre
las matrices. Por ejemplo, si A, B, X son matrices conformes:
vec(AXB) = (B T ⊗ A)vec(X)
3.4.
Fórmulas de Derivación Matricial.
La derivada de una función matricial de variable matricial no difiere sustancialmente del concepto de derivada habitual. La diferencia y dificultad se
presenta cuando es preciso manipular estas derivadas matriciales, debido a su
dimensión y la ubicación de sus elementos [Bar98].
En esta sección se indican las definiciones de funciones escalares, vectoriales
y matriciales de variable escalar, vectorial o matricial, adoptando un criterio
común para la colocación de los distintos elementos que componen cada una
de estas derivadas. En las definiciones de las derivadas de funciones escalar o
vectorial, bien sean de variable escalar o vectorial, existe casi unanimidad en la
literatura en cuanto a su ordenación.
Se acostumbra usar la variable en negrilla cuando se trata de una variable de
tipo vectorial o matricial; sin embargo, en las siguientes secciones no se utilizará
esta notación ya que el contexto hará claridad. Así, si x ∈ Rn e y ∈ Rm , entonces
se puede observar que una notación bastante usual se expone así:
∂y
∂y
∂y
=
...
, que es el caso de
∂x
∂x1 ∂xn
las funciones escalares de variable vectorial.
Si y = y (x1 , ..., xn ) su derivada es


 ∂y1 (x) 
y1 (x)
∂x
∂y  . 


Si y = y (x) =  ...  su derivada es
=  ..  , . que es el caso
∂x
∂ym (x)
yn (x)
∂x
de las funciones vectoriales de variable escalar.


 ∂y1
···
y1 (x1 , ..., xn )
∂x
∂y  . 1


.
..
Si y = y (x) = 
=  ..
su derivada es
∂x
∂ym
yn (x1 , ..., xn )
···
∂x1
que es el caso de las funciones matriciales de variable vectorial
∂y1
∂xn

..  ,
. 
∂ym
∂xn
Cuando se ha de calcular el gradiente de y = f (x) , se respeta la ordenación
del vector fila x = (x1 , ..., xn ) de las variables explicativas; luego parece lógico
que este mismo criterio de ubicación de elementos se adopte para definir la
derivada de una función escalar de variable matricial.[Bar98]. Siguiendo este
acuerdo se exponen las siguientes definiciones.
49
Definición 3.10 Sea y = y (x) una función real de variable vectorial, es decir,
y es una función definida de Rn en R. La derivada de y respecto de x es el
∂y (x)
∂y (x)
∂y (x)
vector fila
=
, ...,
∂x
∂x1
∂xn
Se adopta esta notación ya que se está derivando un escalar y (x) con respecto
∂y (x)
a un vector fila x = (x1 , ..., xn ). Obsérvese que
es el vector gradiente de
∂x
la función y (x) .
Si se precisa que el vector de variables x respecto a las que se efectúa la
derivada de y se toma como columna, entonces se denotará por
∂y (x)
∂y (x)
=
∂x
∂x
es decir, este vector coincide con el traspuesto del vector gradiente de y.
Definición 3.11 Sea y = y (x) una función vectorial de variable real, es decir


y1 (x)


y (x) =  ... 
yn (x)
es una función definida de R en Rm . La derivada de y respecto del escalar
x es el vector columna
 ∂y1 (x) 
∂y (x) 
=
∂x
∂x
..
.
∂ym (x)
∂x


Definición 3.12 Sea y = y (x) una función vectorial de variable vectorial, es
decir, una función definida de Rn en Rm . Como


y1 (x)


y (x) =  ...  entonces:
ym (x)
∂y(x)
∂x
 ∂y1 (x) 

=
∂x
..
.
∂ym (x)
∂x
 ∂y
 
=

1 (x)
∂x1
..
.
∂ym (x)
∂x1
···
∂y1 (x)
∂xn
···
∂ym (x)
∂xn|
50
..
.




Obsérvese que esta matriz de orden m× n es el Jacobiano de la función y(x),
ya que cada una de sus filas es el gradiente de las funciones y1 (x) , ..., yn (x) ,
que son las componentes de y(x).
Definición 3.13 Sea y = y (X) una función real de variable matricial, es decir,
la función y está definida de Mpn en R. La derivada de y respecto de la matriz
X de orden p × n, es la matriz del mismo orden dada por

∂y (X) 
=

∂X
∂y(X)
∂x11
···
∂y(X)
∂x1n
∂y(X)
∂xp1
···
∂y(X)
∂xpn
..
.
..
.


=

∂y (X)
∂xij
i=1,...,p
j=1,...,n
Definición 3.14 Sea Y = Y (x) una función matricial de variable escalar, es
decir la función Y está definida de R en Mmq . La derivada de Y = Y (x) respecto
de la variable x está dada por la matriz de orden m × q
 ∂y11 (x)
∂Y (x) 
=
∂x
∂x
..
.
∂ym1 (x)
∂x
···
∂y1q (x)
∂x
···
∂ymq (x)
∂x
···


=
∂yij (x)
∂x
i=1,...,m
j=1,...,q
Definición 3.15 Sea y = y(X) una función vectorial de variable matricial
definida de Mpn en R. La derivada de y(X) respecto de la matriz A de orden
p × n es la matriz de orden pm × n dada por
 ∂y1 (X) 
∂y (X) 
=
∂X
∂X
..
.
∂ym (X)
∂X

,
ya que, de acuerdo con la definición 3.13, para cada k = 1, ..., m
∂yk (X)
=
∂X
∂yk (X)
∂xij
i=1,...,p
j=1,...,n
Definición 3.16 Sea Y = Y (x) una función matricial de variable vectorial
definida de Rn en Mmq . La derivada de Y (x) respecto del vector x es la matriz
de orden m × qn cuya expresión es
 ∂y11 (x)
∂Y (x) 
=
∂x
∂x
..
.
∂ym1 (x)
∂x
···
∂y1q (x)
∂x
···
∂ymq (x)
∂x
..
.



51
donde, teniendo en cuenta la definición 3.10,
∂yij (x)
∂yij (x)
∂yij (x)
=
, ...,
∂x
∂x1
∂xn
con i = 1, ..., m, j = 1, ..., q
Definición 3.17 (Derivada Funcion Matricial de Variable Matricial)
Sea Y = Y (X) una función matricial de variable matricial, es decir, definida
de Mpn en Mmq . La derivada de Y (X) respecto de la matriz X está dada por
la matriz de orden pm × nq
 ∂y11 (X)
∂Y (X) 
=
∂X
∂X
..
.
∂ym1 (X)
∂X
···
∂y1q (X)
∂X
···
∂ymq (X)
∂X
..
.



ya que, teniendo en cuenta la definición 3.14, para cada i − 1, ..., m, j =
1, ..., q
∂yij (X)
∂yij (X)
=
k=1,...,p
∂X
∂xk
=1,...,n
La definición 3.17 hace referencia al caso general que se puede tratar en el
caso de la derivación matricial. Este caso se convierte en los casos particulares de
las definiciones 3.10 hasta la definición 3.16 si se dan las siguientes condiciones:
1. p = q = m = q se obtiene la definición 3.10
2. p = n = q = 1 se obtiene la definición 3.11
3. p = q = 1 se obtiene la definición 3.12
4. q = m = 1 se obtiene la definición 3.13
5. p = n = 1 se obtiene la definición 3.14
6. q = 1 se obtiene la definición 3.15
7. p = 1 se obtiene la definición 3.16
Existen múltiples formas de dar la expresión de derivadas matriciales, ya
que pueden considerarse distintas ordenaciones de los elementos de la matriz
final que se obtiene al derivar una matriz respecto de otra. Algunas derivadas
matriciales se pueden definir a través de la vectorización de la matriz de variables
dependientes e incluso de la de variables independientes.
52
1. En el presente trabajo, empleando el concepto de vectorización de una matriz, pueden obtenerse las siguientes expresiones alternativas de las definiciones 3.13, 3.14, 3.15, 3.16 y 3.17 en términos de vectorización:
 ∂y(X) 
∂x
 .11 
 .. 


 ∂y(X) 
 ∂xp1 


∂y (X)
∂y (X)


•
=  ...  = vec

∂vec(X) 
∂(X)
 ∂y(X) 
 ∂x1n 
 . 
 . 
 . 
∂y(X)
∂xpn
 ∂y11 (x) 
∂x11
 . 
 .. 


 ∂y1m (x) 
 ∂x 
∂vecY (x) 
.. 
 = vec ∂Y (x)
•
=
 . 
∂x
∂x
 ∂y1q (x) 


 ∂x 
 .. 
 . 
∂ymq (x)
∂x
•
 ∂y

∂y (X)
=
∂vec(X) 
siendo
nativa.
1 (X)
∂vec(X)
..
.
∂ym (X)
∂vec(X)


,

∂yi (X)
para i = 1, ..., m lo indicado en la primera expresión alter∂vec(X)
∂y (X)
de orden mnp, teniendo en cuenta propiedades
∂vec(X)
del producto de Kronecker y de la vectorización, se puede expresar también
como
El vector columna
∂y (X)
=
∂vec(X)
∂y (X)
⊗ Ip (vecIp ) ,siendo
∂X
∂y (X)
=
∂X
∂y (X) ∂X
53
.
Nótese que en este caso
∂y (X)
= vec
∂vec(X)
 ∂y11 (x) 
 ∂y
11 (x)
∂x1
∂x
 .  
..
 ..  
.

 
∂ym1 (x)
 ∂ym1 (x)  

 ∂x   ∂x1
∂vecY (x) 
.
.. 
=
=
•
.

  ..
∂x
 ∂y1q (x)  
∂y1q (x)
 ∂x  
∂x1

 

 ..   ..
 .   .
∂ymq (x)
∂x
Se observa que
∂ymq (x)
∂x1
∂y (X)
∂X
···
···
···
···
∂y11 (x)
∂xn




∂ym1 (x) 

∂xn 
.. 
. 

∂y1q (x) 
∂xn 
.. 

. 
..
.
∂ymq (x)
∂xn
∂vec (Y (x))
es una matriz de orden mq × n, mientras que
∂x
∂Y (x)
es de orden m × qn. Entre estas dos matrices puede establecerse la sigui∂x
ente relación:
∂vec (Y (x))
∂Y (x)
= Iq ⊗
(vec (Iq ) ⊗ In )
∂x
∂x
Mediante las definiciones anteriores y las expresiones en términos de la vectorización y las propiedades del producto de Kronecker se obtienen las siguientes
∂Y (X)
formas alternativas para el cálculo de
:
∂X
 ∂y11 (X) 
∂X


..


.


 ∂ym1 (X) 
 ∂X  
∂vec (Y (X)) 
..
 = Iq ⊗ ∂Y (X) (vec (Iq ) ⊗ In )
•
=
.


∂X
∂X
 ∂y1q (X) 
 ∂X 



..



.
∂ymq (X)
∂X
 ∂y
∂Y (X) 
•
=

∂vecX
11 (X)
∂vec(X)
..
.
∂ym1 (X)
∂vec(X)
···
∂y1q (X)
∂vec(X)
···
∂ymq (X)
∂vec(X)
..
.
54


=

∂Y (X)
⊗ Ip (Iq vec (Ip ))
∂X
•
∂vec (Y (X))
= vec
∂vec(X)
∂Y (X)
∂vecX
∂Y (X)
= Iq ⊗
⊗ Ip (vec (Iq ) ⊗ vec (Ip ))
∂X
Alternativamente, es posible otra formulación para la derivada de expresiones
matriciales. Para ello, es necesario considerar para cualquier m, n, p, q ∈ N y
cualquier función:
Y (X) : Mpn −→ Mmq
la definición
∂ [Y (X))]
∂Y (X)
≡
∂X
∂ (vecX) Retomando lo expresado anteriormente, en este trabajo se identificarán explícitamente los espacios de matrices Mpn y Mmq con Rpn y Rmq , respectivamente.Lo que se está considerando generalmente es Y (X) como función vectorial
de variable vectorial definida de Rpn en Rmq , por lo que la expresión
∂vec [Y (X))]
∂ (vecX) es el Jacobiano de dicha función vectorial. La elección de esta definición
de derivada puede resultar útil para aplicar a funciones matriciales resultados
matemáticos relativos a funciones vectoriales.
Ejemplo 3.11 Dada la función y = y (x) de R2 en R2 definida por
2
y1 (x1 , x2 )
x1 + x32
y (x) =
=
,
y2 (x1 , x2 )
2x1 x2
de acuerdo con la Definición 3.12 se tiene que




∂y1 (x)
∂y1 (x)
∂y1 (x)

∂y (x) 
∂x2
2x1
∂x   ∂x1

=
=
=
∂y2 (x)
∂y2 (x)
 ∂y2 (x) 
2x2
∂x
∂x1
∂x2
∂x
3x22
2x1
Por otra parte, teniendo en cuenta la Definición 3.16
∂
∂y (x)
2 0 0 6x2
=
=
0 2 2 0
∂x
∂x
55
Observese que el resultado anterior difiere de
∂ vec ∂y(x)
∂x
∂x
  

2x1
2 0
  

∂ 
2x22  = 0 2 
=





3x2
0 6x2 
∂x
2x1
2 0
Ejemplo 3.12 Dada la matriz A = (aij ) , i = 1, ..., m, j = 1, ..., q, se verifica
que la derivada de A respecto del primer vector fila que se denota por a1• es la
matriz de orden m × q 2

∂a11
∂a1•

∂A
=  ..
∂a1•  .
∂am1
∂a1•



=

∂a1q
∂a1•
...
..
.
...

.. 

. 
∂amq
∂a1•
1
0
..
.
0
0
..
.
···
···
0
0
..
.
0
0
..
.
1
0
..
.
···
···
0
0
..
.
···
···
0
0
..
.
0
0
..
.
···
···
1
0
..
.
0
0
···
0
0
0
···
0
···
0
0
···
0
Haciendo uso de la expresión alternativa se obtiene













∂vec (A)
∂A
= Iq ⊗
(vec (Iq ) ⊗ Iq ) = 

∂a1•
∂a1•
















1
0
..
.
0
0
..
.
0
0
..
.
···
···
0
0
..
.
0
0
0
..
.
0
1
0
..
.
0
0
0
..
.
···
···
···
0
0
0
..
.
0
..
.
0
..
.
0
..
.
···
0
..
.
0
0
..
.
0
0
..
.
0
0
..
.
···
···
1
0
..
.
0
0
0
···
0


























La derivada de la matriz A respecto de sí misma viene dada por la matriz
de orden m2 × q 2
56
 ∂a11
∂A
···
∂a1q
∂A
∂am1
∂A
···
∂amq
∂A
∂A  .
=  ..
∂A

..  = (vecI ) (vecI ) m
q
. 
para cada i = 1, ..., m, j = 1, ..., q se tiene que

0 0 ···
 .. ..
. .

∂aij
=
0 0 · · ·
∂A
 .. ..
. .
0 0 ···
0 ···
..
.
1 ···
..
.

0
.. 
.

0
 ←− i − ésima fila
.. 
.
0
0 ···
↑
y j-ésima columna.
La derivada de la matriz A respecto de A es una matriz cuadrada de orden
mq definida como
 ∂a11
∂A
∂A  .
=  ..
∂A
∂a
1q
∂A
∂am1 
∂A
...
..
.
.. 
.  = P, m, q,
∂amq
∂A
...
para cada i = 1, ..., m, j = 1, ..., q

0 0 ···
 .. ..
. .

∂aij
=
0 0 · · ·
∂A
 .. ..
. .
0 0 ···
0 ···
..
.
1 ···
..
.

0
.. 
.

0
 ←− j-ésima fila
.. 
.
0
0 ···
↑
y la j-ésima columna
Ejemplo 3.13 Sea y = y(A) una función definida de M2×2 en R2 dada por
a211 + 2a12 − a222
y1 (A)
y = y(A) =
=
y2 (A)
(a11 + a22 )2 − 2a12 a21
donde A =
a11
a21
a12
a22
La derivada de la función y = y(A) respecto de la matriz A de variables
independientes, de acuerdo con la definición 3.15 es
57
∂y(A)
=
∂A

∂y1 (A)
∂A
∂y2 (A)
∂A




=


2a11
0


=
 2a11 + 2a22
−2a12
∂y1 (A)
∂a11
∂y1 (A)
∂a21
∂y2 (A)
∂a11
∂y2 (A)
∂a21
2
−2a22
−2a21
2a11 + 2a22

∂y1 (A)
∂a12
∂y1 (A)
∂a22
∂y2 (A)
∂a12
∂y2 (A)
∂a22









,

y la derivada de y(A) respecto a la vectorización de A, teniendo en cuenta
la definición 3.17, tiene la expresión



∂y1 (A)
∂y(A)
∂vec(A)
=  ∂y (A)  =
2
∂vec (A)
∂vec(A)

2a11

0


2


0

=
2a11 + 2a22

0

 −2a21
0

2a11

2

= 
2a11 + 2a22
−2a21
=
∂y(A)
∂A
⊗ I2

∂y1 (A)
11
 ∂y∂a(A)

 1 
 ∂a21 
 ∂y (A) 
 1 
 ∂a12 
 ∂y (A) 
 1 
 ∂a22 
 ∂y2 (A) 


 ∂a11 
 ∂y2 (A) 


 ∂a21 
 ∂y2 (A) 


 ∂a12 
∂y2 (A)
∂a22
0
2a11
0
2
0
2a11 + 2a22
0
−2a21


2a11


0






2



 −2a
22


=

2a11 + 2a22 



 −2a
12




 −2a21 
2a11 + 2a22
0
0
−2a22
0
−2a12
0
2a11 + 2a22
0

0

0
 
 1
0

 
−2a22 
 0

 
0
 0

−2a12  1

0
2a11 + 2a22

 
0
 1
−2a22 
1 0 
0


⊗


0 1  0
−2a21 
1
2a11 + 2a22
vec (I2 )
58
Ejemplo 3.14 Sea
Y (X)definida de M2×2 en
 la función Y = 
 M3×2 por
y11 (X) y12 (X)
x11 + x12 2x12
ex21  ,
Y = Y (X) = y21 (X) y22 (X) =  x222
y31 (X) y32 (X)
x11 + x12 x21 x12
siendo

y11 (X)
 y ∂X
21 (X)
X =
 ∂X
y31 (X)
∂X

y12 (X)
∂X

y22 (X) 
∂X 
y32 (X)
∂X




=



1
0
0
0
x22
0
1
0
0
2x22
0
x11
0
0
0
ex21
0
x12
2
0
0
0
x21
0
Ahora bien, de acuerdo con la expresión alternativa
∂vecY (X)
∂Y (X)
= I2 ⊗
(vec (I2 ) ⊗ I2 )
∂X
∂X

1
 0

 0

 0

x22

 0
=
 0

 0

 0

 0

 0
0

1
 0

 0

 0

 x22

 0
=
 0

 0

 0
 x
e 21

 0
x12
1
0
0
2x22
0
x11
0
0
0
0
0
0
0
0
0
ex21
0
x12
0
0
0
0
0
0
2
0
0
0
x21
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
x22
0
0
0
0
0
0
0
1
0
0
2x22
0
x11

1
0 

0 

2x22 

0 

x11 

2 

0 

0 

0 

x21 
0
59
0
0
0
0
0
0
0
0
0
ex21
0
x12




.




0
0 

0 
 1

0 
 0

0 
 0

0 
 0

2 
 0

0 
 0

0 
 1
0 
 0
x21 
0

0
1

0

0

0

0

0
1
3.5.
Reglas de Derivación.
La derivada de un vector o de una matriz respecto de un escalar, vector o
matriz, no difiere sustancialmente de la derivación habitual de funciones. Sin
embargo esto no conlleva que sean válidas, en general las reglas usuales para
derivar, por ejemplo, las de suma, el producto o la composición de funciones.
Ahora bien, como se verá a continuación, si se hace uso del producto Kronecker en lugar del producto matricial estandar, en algunos casos es posible
obtener reglas de derivación análogas a las habituales para funciones.
Proposición 3.4 Sea C una matriz de variables independientes de orden p × n
, esto es, C ∈ Mpn :
1. Derivada del Producto por Escalar. Sea A una matriz de orden m×q cuyos
elementos dependen de los de la matriz C de orden p × n. Entonces, para
cualquier λ ∈ R, se verifica que
∂ (λA)
∂A
=λ·
∂C
∂C
2. Derivada de la Suma. Sean A y B dos matrices de orden m × q, cuyos
elementos dependen de los de la matriz C de orden p × n. Se verifica que
∂ (A + B)
∂A ∂B
=
+
.
∂C
∂C
∂C
3. Derivada de Producto. Sean A, B y C matrices de ordenes m × q, q × r,
p × n, respectivamente, tales que los elementos de A y B son funciones de
los elementos de la matriz C. Entonces se verifica que
a) Si p = n = 1 ó m = q = 1
∂AB
∂A
∂B
=
·B+A·
∂C
∂C
∂C
b) Si p = 1, es decir, C es un vector fila de Rn , entonces
∂AB
∂A
∂B
=
(B ⊗ In ) + A ·
∂C
∂C
∂C
c) Si p = 1 y n = 1
∂AB
∂A
∂B
=
(B ⊗ In ) + (A ⊗ Ip ) ·
∂C
∂C
∂C
60
4. Derivada del Producto de Kronecker. Sean A, B y C matrices de ordenes
m × q, t × r, p × n,respectivamente, tales que los elementos de A y B son
función de los elementos de la matriz C.Entonces se verifica que
∂A ⊗ B
∂B
∂ (A ⊗ Ir )
= A⊗
+ (Im ⊗ B ⊗ Ip )
∂C
∂C
∂C
donde
∂ (A ⊗ Ir )
∂A
= (Pr,m ⊗ Ip ) Ir ⊗
(Pq,r ⊗ In )
∂C
∂C
5. Regla de la Cadena. Sea y = y (A) uma función real de variable matricial, donde A es una matriz de orden t × r cuyos elementos a su vez son
funciones de la matriz C de orden p × n. Se verifica
∂y (A)
=
∂C
∂y (A)
∂vec (A)
⊗ Ip ∂vec (A)
∂C
o también
∂y (A)
= [(vec (It )) ⊗ Ip ]
∂C
∂y (A) ∂A
⊗
∂A
∂C
(vec (Ir ) ⊗ In ) .
∂λA
Demostración. La derivada
de acuerdo con la definición 3.17 es una
∂C
matriz de orden mp × nq dada por
∂λaij
∂λA
=
∂C
∂C i=1,...,m
j=1,...,q
y como para cada i = 1, ...m ; j = 1, ..., q, según la definición 3.10,
∂λaij
∂λaij
∂aij
=
=λ
∂C
∂ck
∂ck k=1,...,p
=1,...,n
∂λA
se obtiene que
=λ
∂C
∂A
∂C
Demostración. La derivada
de orden mp × qn
.
∂ (A + B)
según la definición 3.17, es la matriz
∂C
61
∂ (A + B)
=
∂C
∂ (aij + bij )
∂C
i=1,...,m
j=1,...,q
Ahora bien, para cada i = 1, ...m ; j = 1, ..., q, a partir de la definición 3.13
se obtiene
∂ (aij + bij )
∂aij
∂bij
=
+
∂C
∂C
∂C
y sumando por bloques se puede concluir
∂ (A + B)
∂A ∂B
=
+
∂C
∂C
∂C
Demostración.
a) Si p = n = 1, entonces
∂A
∂B
∂AB
=
B+A
,
∂C
∂C
∂C
ya que para cada i = 1, ...m ; j = 1, ..., r la derivada del elemento dij de la
matriz D = AB es
q
∂dij (C)
∂ =
aik (C) bkj (C)
∂C
∂C
k=1
q
q
k=1
k=1
∂dij (C) aik (C)
bkj (C)
aik (C)
=
bkj (C) +
∂C
∂C
∂C
b) En el caso en que n = q = r = 1, según la definición 3.13 se tiene
 ∂AB
∂c11
···
∂cp1
···
∂A
∂c11
···
∂cp1
···
∂AB  .
=  ..
∂C
∂AB

∂AB  .
=  ..
∂C
∂A
∂AB 
∂c1n
.. 
. 
∂AB
∂cpn
∂A 
∂c1n

∂B
∂c11
···
∂B
∂cp1
···
 .
.. 
.  B + A  ..
∂A
∂cpn
62
∂B 
∂c1n
.. 
. ,
∂B
∂cpn
dado que para cada i = 1, ...p ; j = 1, ..., n
∂ (AB)
∂A
∂B
=
B+A
,
∂cij
∂cij
∂cij
y por tanto,
∂ (AB)
∂A
∂B
=
B+A
∂C
∂C
∂C
c) Ahora, si p = 1, n = 1 y D = AB = (dij ) i = 1, ...m ; j = 1, ..., r, se tiene
que
q
q
k=1
k=1
∂dij (C) aik (C)
bkj (C)
=
bkj (C) +
aik (C)
,
∂C
∂C
∂C
de donde


bij (C) In
b2j (C) In 
∂dij (C)
∂ai1 ∂aiq


=
...
bij (C) In 

..
∂C
∂C
∂C


.
bqj (C) In
 ∂b1j (C) 

+ (ai1 (C) Ip ...ain (C) Ip ) 
∂C
..
.
∂bqj (C)
∂C


y por la definición de producto Kronecker y la definición 3.12, resulta
∂ai•
∂b•j (C)
∂dij (C)
=
(b•j (C) ⊗ In ) + (ai• (C) ⊗ Ip )
,
∂C
∂C
∂C
y, por consiguiente,
∂ (AB)
∂A
∂B
∂D
=
=
(B ⊗ In ) + (A ⊗ Ip )
.
∂C
∂C
∂C
∂C
Si p = 1 como Ip = 1, la expresión anterior se transforma en
∂ (AB)
∂A
∂B
=
(B ⊗ In ) + A
∂C
∂C
∂C
Demostración. Atendiendo a la definición de producto Kronecker
63
∂ (A ⊗ B)
∂aij B
=
,i=1,...,m ,
∂C
∂C j=1,...,q
y por la definición 3.17, para cada i = 1, ...m ; j = 1, ..., q se tiene que
∂aij B
∂ (aij bk )
=
.
k=1,...,t
∂C
∂c
=1,...,r
Ahora bien, en virtud del apartado anterior,
∂aij bk
∂aij
∂bk
=
bk + aij
.
∂c
∂C
∂C
Así pues,
 ∂aij
∂C
∂aij B 
=
∂C
∂a
ij
∂C
11
b11 + aij ∂b
∂C
..
.
···
∂aij
∂C b1r
t1
bt1 + aij ∂b
∂C
···
∂aij
∂C btr

1r
+ aij ∂b
∂C

..

.
tr
+ aij ∂b
∂C
o lo que es equivalente
∂aij B = B⊗
∂C
Por tanto,
∂aij
∂C
+ ∂aij
∂B
.
∂C

∂a11
∂B
 B ⊗ ∂C + ∂a11 ∂C
∂ (A ⊗ B) 

..
=
.

∂C

∂am1
∂B
B⊗
+ ∂am1
∂C
∂C

∂a11
 B ⊗ ∂C

∂B
∂ (A ⊗ B)
..
= A⊗
+
.

∂C
∂C

∂am1
B⊗
∂C
···
···
···
···

∂a1q
∂B
B⊗
+ ∂a1q
∂C
∂C 


..

.

∂amq
∂B 
B⊗
+ ∂amq
∂C
∂C

∂a1q
B⊗
∂C 

..

.

∂amq 
B⊗
∂C
∂ (A ⊗ B)
∂C
∂B
∂ (A ⊗ Ir )
Solución 3.1 = A ⊗
+ (Im ⊗ B ⊗ Iq )
∂C
∂C
64
Ahora bien, a partir de la propiedad 5 del producto de Kronecker, se tiene
A ⊗ Ir = Pr,m (Ir ⊗ A) Pq,r
y aplicando dos veces la regla de derivación del producto indicada en la
proposición 3.4,3 se obtiene
∂ (A ⊗ Ir )
∂ (Ir ⊗ A)
= (Pr,m ⊗ Ip )
(Pq,r ⊗ In ) ,
∂C
∂C
lo que de acuerdo con la solución 3.1, tomando A = Ir y B = A conduce a
∂ (A ⊗ Ir )
∂A
= (Pr,m ⊗ Ip ) Ir ⊗
(Pq,r ⊗ In ) .
∂C
∂C
Demostración. Teniendo en cuenta la definición 3.13,
∂y (A)
∂y (A)
=
, i=1,...,p
∂C
∂cij j=1,...,n
y por la regla de la cadena para el caso unidimensional
t
r
∂y (A) ∂y(A) ∂akl (C)
=
.
∂akl
∂cij
∂cij
t=1
k=1
Por tanto,

∂y
∂a11
···
∂y
∂a1n
∂ap1
···
∂y
∂apn
∂y (A) 
.
=
 ..
∂C
∂y
de donde
t

.. 

. =
t r
k=1 t=1

 ∂a
 ∂y (A) 


 ∂akl 
r
∂y (A) ∂y (A) ∂akl (C)
=
·
∂C
∂akl
∂C
t=1
k=1
ahora bien, como
∂y (A)
∂vec (A)
=
∂y
∂y
∂y
∂y
, ...,
, ...,
, ...,
∂a11
∂at1
∂a1r
∂atr
y
65
kl (C)
∂c11
..
.
∂akl (C)
∂cp1
···
∂akl (C)
∂c1n
···
∂akl (C)
∂cpn
..
.




 ∂a11 
∂C
 .. 
 . 
 ∂at1 


∂C 
∂vec (A) 
 .. 
= . 


∂C
 ∂a1r 
 ∂C 
 . 
 .. 
∂atr
∂C
∂y (A)
resulta
=
∂C
Solución 3.2 =
∂y (A)
∂vec (A)
⊗ Ip ·
∂vec (A)
∂C
∂y (A)
∂vec (A)
⊗ Ip ·
∂vec (A)
∂C
Para obtener la expresión alternativa de la regla de la cadena que se indica
en el enunciado, hasta tener en cuenta, que de acuerdo con la propiedad 3 de la
vectorización
∂y (A)
∂y (A)
∂y (A)
= vec
=
⊗ It vec (It ) ,
∂vec (A)
∂A
∂C
lo que sustituido en la solución 3.2 permite obtener
∂y (A)
∂y (A)
∂vec (A)
= vec
⊗ Ip ∂C
∂A
∂C
∂y (A)
=
∂C
∂y (A)
∂A
!
∂vec (A)
⊗ It vec (It ) ⊗ Ip ·
∂C
#
∂vec (A)
∂y (A) " ∂y(A) =
⊗ It vec (It ) ⊗ Ip ·
∂A
∂C
∂C
∂y (A)
∂y (A)
∂vec (A)
=
(vec (It )) ⊗ It
⊗ Ip ·
,
∂C
∂A
∂C
y tomando B2 = Ip en la propiedad 4 del producto de Kronecker se tiene
∂y (A)
= ((vec (It )) ⊗ Ip )
∂C
∂y (A)
∂vec (A)
⊗ Itp ·
.
∂A
∂C
Finalmente de acuerdo con las formas alternativas, como
∂vec (A)
∂A
= Ir ⊗
(vec (Ir ) ⊗ In )
∂C
∂C
66
∂vec (A)
y haciendo uso de nuevo de la propiedad 4 del
sustituyendo en
∂C
producto de Kronecker se tiene
∂vec (A)
∂y (A) ∂A
= ((vec (It )) ⊗ Ip )
⊗
(vec (Ir ) ⊗ In )
∂C
∂A
∂C
Ejemplo 3.15 Dadas las matrices
2
x2
y xy
(y + 1)
A=
,B=
3
x
x+1 y
e
ex+y
C=
como
x
w
z
y
0
0
0
0

x+y
1
∂A
=
∂C

2x
0
=
1
0
2y
0

∂x2
∂x
 ∂x2

 ∂w
 ∂(x+1)

 ∂x
∂(x+1)
∂w
0 0
0 1
0 0
0 3y 2
0
∂B 
0
y
=
ex+y
∂C
0
∂x2
∂z
∂x2
∂y
∂(x+1)
∂z
∂(x+1)
∂y
y
0
ex
0
0
2 (y + 1)
0
ex+y
∂y
∂x
∂y
∂w
∂y 3
∂x
∂y 3
∂w
∂y
∂z
∂y
∂y
∂y 3
∂z
∂y 3
∂y

0
x

0
0
0
0
0
0
0
2
0
0
1
0
0
0
se tiene

2x
∂ (A + B)
∂A ∂B 
0
=
+
=
∂C
∂C
∂C 1 + ex+y
0
Asi mismo se verifica que

6x
0
∂ (3A)
∂A
=3
=
3
∂C
∂C
0
0
0
0
0
0 0
0 3
0 0
0 9y 2
67
∂xy
∂x
∂xy
∂w
∂ez
∂x
∂ez
∂w
y

∂xy
∂z

∂xy 
∂y 
∂ez
∂z
∂ez
∂y




0
1

0
0
0
2 (y + 1)
0
ex+y
3y
0
3ex
0

0
3x

0
0
0 0
0 3
0 0
0 3y 2
1+y
0
ex
0

0
1 + x

0 
0
Ejemplo 3.16 Dadas las matrices A y C del ejemplo anterior y el vector


x+y
b =  2x 
yz
∂Ab
∂A
∂b
=
(b ⊗ I2 ) + (A ⊗ I2 )
∂C
∂C
∂C


1 0
0 1


∂A
∂B 
2 0


como ya se conoce
y,
=

∂C
∂C
0 0
0 y 
0 z
teniendo en cuenta
sustituyendo en la expresión inicial resulta

2x
∂Ab 
0
=
1
∂C
0

0
0
0
0
0 0
0 1
0 0
0 3y2
x2
0
y
2
 0
x
0
+
x + 1
0
y3
0
x+1 0

0
y
0
y3
y
0
ex
0
xy
0
ex
0

x+y
0 
 0

x
  2x
0 
 0
0  yz
0


1
0 
0

xy
 2
0 
0
ex 0
0


0
x + y

0 

2x 

0 
yz

0
1

0

0

y
z

3x2 + 2xy + y 2 z + 2y
xy2

0
x2 + 2xyz + 2x 

=
2x + y + 2y3 + yzex + 1

yex
0
6y 2 x + x + zex + 1
Este resultado coincide con:
∂
∂Ab
x3 + x2 y + 2xy + xy2 z
=
∂C
∂C x2 + xy + x + y + 2xy 3 + yzex
68
Ejemplo 3.17 Dadas las matrices A, B y C definidas por

x+y
A =  xy
ex

2z
2y
x + z , B =
1
3
y
2
z
3z
 
x
, C = y 
z
se verifica, de acuerdo con el apartado cuarto de la proposición anterior
∂ (A ⊗ B)
∂B
∂ (A ⊗ I2 )
= A⊗
+ (I3 ⊗ B ⊗ I3 )
∂C
∂C
∂C
siendo en este caso


0 0
2 0 


∂B 
0 2z 

=
0 0 
∂C


0 0 
0 3
∂A
∂ (A ⊗ I2 )
= (P2,3 ⊗ I3 ) I2 ⊗
P2,2
∂C
∂C
donde

P2,3



=









∂A 
=
∂C 





Así pues
1
0
0
0
0
0
0
0
1
0
0
0
1
1
0
y
x
0
ex
0
0
0
0
2
1
0
1
1
3y 2
0
0
0
0
0
1
0

0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1



1


 0
 , P2,2 = 

 0


0













69
0
0
1
0
0
1
0
0

0
0 

0 
1















∂ (A ⊗ B) 
=

∂C














2y
2x + 4y
0
1
1
0
2y 2
4xy
0
y
x
0
2yex
2ex
0
ex
0
0
z2
z2
2xz + 2yz
3z
3z
3x + 3y
yz 2
xz 2
2xyz
3yz
3xz
3xy
z 2 ex
0
2zex
3zex
0
3ex
0
4z
4y
0
0
2
2y
2x + 2z
2y
1
0
1
0
8y 3
0
0
3y 2
0
0
0
6z 2
0
0
12z
z2
0
2xz + 3z 2
3z
0
3x + 6z
0
3y 2 z 2
2y 3 z
0
9y 2 z
3y 3
































x w
Ejemplo 3.18 Si y = y (A) = |A| = xy − zw donde A =
y cada
z y
elemento de A es función del vector c = (t, u) en la forma x = t + u, y = tu,
z = t2 + u, w = 2u, se verifica que
∂y (A)
= u2 − 2ut, 2ut − t2 − 4u , pues por la regla de la cadena, y las
∂c
proposiciones 3.4 y 5
∂y (A)
=
∂c
= y
3.6.
−z
∂y (A)
∂vec (A)
∂y (A)
∂vec (A)
⊗ I1 =
∂vec (A)
∂c
∂vec (A)
∂c
−w


1 1
 0 2

x 
2t 1 = y − 2tw + xu y − 2x − w + xt
u t
Propiedades de Derivación de Funciones Matriciales.
En esta sección se recogen algunas de las que aparecen con mayor frecuencia.
Los resultados que se indican se obtienen utilizando las definiciones propuestas
en este trabajo, las reglas de derivación y las diferentes propiedades tanto del
producto de Kronecker como de la vectorización de matrices.
70
Proposición 3.5 Sea A una matriz m × n y sean x y z vectores de Rn y Rm ,
respectivamente. Entonces
1. Si y (x) = Ax se verifica que
∂y (x)
= A.
∂x
2. Si y (x, z) = zAx se verifica que
∂y
= zA
∂x
∂y
= xA.
∂z
3. Si m = n e y (x) = xAx, se verifica que
∂y (x)
∂ 2 y (x)
= x (A + A) ,
= (A + A) ,
∂x
∂x∂x
y si además A es una matriz simétrica se tiene que
∂y (x)
∂ 2 y (x)
= 2xA,
= 2A.
∂x
∂x∂x
4. Si m = n, A es simétrica, X es una matriz de orden n×p e Y (X) = XAX,
se verifica que
∂Y (X)
= Pn,p (AX ⊗ Ip ) + (vec (AX)) (vecIp ) .
∂X
Demostración. Si y(x) = Ax entonces

n

a1j xj 

 j=1





n


a2j xj 

y(x) = Ax =  j=1



..




.
 n



amj xj
j=1
y teniendo en cuenta la definición 3.12
71

∂y(x)
∂x
∂
∂x

n
a1j xj 



j=1
 


 
n
a11


 ∂ 
 

a
x
2j
j
 ∂x
  a21
= .
=
j=1

  .
.


..


a
  .

m1


n


∂ 
a x 
a12
a22
..
.
···
···
am2
···

a1n
a2n 

..  = A
. 
amn
mj j
∂x
j=1
Demostración. Dado que y (x, z) = zAx = (zA) x, por la proposición 3.5,
1 resulta
∂y
∂ (zA) x
=
= zA
∂x
∂x
Por otra parte, como y = zAx = y = (xA) z, razonando de forma análoga
se tiene que
∂y
= xA.
∂x
Demostración. Si y(x) = xAx dado que y =
n n
xi xj aij , entonces,
j=1 i=1
como para cada k = 1, ..., n, se tiene que
n
n
∂y
aik xi = xak• + xa•k
=
akj xj +
∂xk
i=1
kj=1
aplicando la definición 3.10 resulta
∂y (x)
∂y
∂y
=
···
= xA + xA = x (A + A)
∂x
∂x1
∂xn
teniendo en cuenta esta expresión y la proposición 3.5, 1, se deduce que
∂ 2 y (x)
∂
=
∂x∂x
∂x
∂y (x)
∂x
=
∂
[x (A + A)] = (A + A) = A + A
∂x
=
∂
∂x
lo que coincide con
∂ 2 y (x)
∂
=
∂x∂x
∂x
∂y (x)
∂x
∂y (x)
∂x
=
∂
∂x
[(A + A) x] = A + A
Si A es una matriz simétrica, los resultados son inmediatos.
72
Demostración. Si Y (X) = XAX = X (AX) aplicando la regla de derivación de un producto 3, se tiene
∂X (AX)
∂X
∂AX
=
(AX ⊗ Ip ) + (X ⊗ In )
∂X
∂X
∂X
y aplicándola nuevamente al producto AX resulta
∂X (AX)
∂X
= Pn,p (AX ⊗ Ip ) + (X ⊗ In ) + (A ⊗ In )
∂X
∂X
ya que
∂X
∂A
= Pn,p y
es la matriz nula.
∂X
∂X
Finalmente a partir de las propiedades 4 del producto de Kronecker y la
propiedad 2 de la vectorización, se concluye
∂X (AX)
= Pn,p (AX ⊗ Ip ) + (X ⊗ In ) (vecIn ) (vecIp ) ∂X
∂X (AX)
= Pn,p (AX ⊗ Ip ) + (vec(AX)) (vecIp ) ,
∂X
ya que vec(AX) = vec(AX) por se A una matriz simétrica.
Proposición 3.6 Sea A una matriz regular de orden m. Entonces se verifica
1.
∂A−1
= −vec A−1 vec A−1 .
∂A
2.
∂vec A−1
=−
∂ (vecA) A−1 ⊗ A−1 .
Si además se supone que los elementos de la matriz A son funciones del
vector x ∈ Rn , entonces
3.
−1
∂A−1 (x)
∂A
∂ (vecA)
= (Im ⊗ (vecIm ) )
⊗ Im
⊗
∂x
∂A
∂x
4.
∂ (vecA)
∂vec A−1 (x)
= − (A)−1 ⊗ A−1
∂x
∂x
73
Demostración. Si A es una matriz regular, entonces existe A−1 verificando
AA−1 = Im ,
y aplicando en esta expresión la regla de derivación de un producto resulta
0m2 =
∂AA−1
∂A−1
∂A −1
=
A ⊗ Im + (A ⊗ Im )
,
∂A
∂A
∂A
de donde
∂A−1
= − (A ⊗ Im )−1
∂A
∂A
∂A
A−1 ⊗ Im .
Ahora bien como
∂A
= (vecIm ) (vecIm ) ∂A
a partir de las propiedades 6, 7 del producto de Kronecker y la propiedad 3
de la vectorización se obtiene
∂A−1
= − A−1 ⊗ Im (vecIm ) (vecIm ) A−1 ⊗ Im
∂A
∂A−1
= − A−1 ⊗ Im (vecIm ) A−1 ⊗ Im vecIm ∂A
∂A−1
= −vec A−1 vec A−1 ∂A
Demostración. Dado que AA−1 = Im , aplicando el resultado 3a de la
Proposición 3.4 para cada i, j = 1, ..., m se tiene que
∂ AA−1
∂A −1
∂A−1
= 0m =
A +A
∂aij
∂aij
∂aij
y, por tanto,
∂A−1
∂A −1
= −A−1
A .
∂aij
∂aij
Como
j
↓
74
∂A−1
∂aij

0 0 ···
 .. ..
. .

=
0 0 · · ·
. .
 .. ..
0 0 ···
0 ···
..
.
1 ···
..
.
0 ···

0
.. 
.

0
 ←− i
.. 
.
0
si se denota por ai• y a•j la fila i − ésima y la columna j − ésima de A−1 ,
respectivamente, se obtiene
∂A−1
∂aij
−a•i aj• .

− a1•
− a2•

= −
..

.
− am•

 0 0 ···
− . .
 .. ..
−

0 0 ···


 .. ..
. .
−
0 0 ···
0 ···
..
.
1 ···
..
.
0 ···

0
..  
.
|

a•1
0

.. 
|
.
0
···
|

a•m  =
|
que de acuerdo con la segunda expresión alternativa y la propiedad 2 de la
vectorización de matrices, resulta
∂vec A−1
= vec (−a•i aj• ) = − (Im ⊗ a•i ) vecaj• = − (aj• ⊗ a•i )
∂aij
de donde
∂vec A−1
=
∂a•j
∂vec A−1 ∂vec A−1
∂vec A−1
,
, ...,
∂a1j
∂a2j
∂amj
= − [aj• ⊗ a•1 , aj• ⊗ a•2 , ..., aj• ⊗ a•m ] = aj• ⊗ A−1 ,
y por tanto
∂vec A−1
= − a1• ⊗ A−1 , a2• ⊗ A−1 , ..., am• ⊗ A−1 =
∂vec
(A)
− A−1 ⊗ A−1
Demostración. Si los elementos de la matriz A son función del vector x ∈
Rn , entonces, para cada i, j = 1, ..., m, la derivada del elemento aij de A−1
respecto de x, en virtud de la regla de la cadena (Proposición 3.4, 5) es
∂aij
=
∂x
∂aij
∂vec (A)
∂vec (A)
∂aij ∂vec (A)
=
,
∂x
∂ (vecA) ∂x
y por tanto
75
∂A−1
=
∂x
∂A−1
∂vec (A)
⊗
∂ (vecA) ∂x
.
Ahora bien, como
∂A−1
=
∂ (vecA) ∂ A−1 ∂vec (A)
y
∂ A−1 =
∂A
∂A−1
∂A
de acuerdo con las formas alternativas
∂ A−1 ∂ A−1 =
⊗ Im (Im ⊗ vec (Im )) =
∂vec (A)
∂A
∂A−1
∂A
⊗ Im (Im ⊗ vec (Im )) ,
de donde
∂A−1
=
∂x
∂A−1
∂A
!
∂vec (A)
⊗ Im (Im ⊗ vec (Im )) ⊗
,
∂x
o lo que es igual
−1
∂A−1
∂A
∂vec (A)
= (Im ⊗ vec (Im ) )
⊗ Im
⊗
.
∂x
∂A
∂x
Pero como de acuerdo con las expresiones alternativas
∂vec (A)
∂A
= Im ⊗
(vec (Im ) ⊗ In )
∂x
∂x
se obtiene finalmente
−1
∂A−1 (x)
∂A
∂A
= (Im ⊗ (vecIm ) )
⊗ Im ⊗ Im ⊗
(vec (Im ) ⊗ In ) .
∂x
∂A
∂x
Demostración. Como ya se indicó antes
∂aij
=
∂x
∂aij
∂ (vecA) ∂vec (A)
∂x
,
76
así pues, de acuerdo con la proposición 3.6, 2 resulta
∂vec (A)
∂vec A−1
∂vec A−1 ∂vec (A)
=
= − A−1 ⊗ A−1
.
∂x
∂ (vecA) ∂x
∂x
Proposición 3.7 sean A, B y X matrices de ordenes m × m , m × n , y n × m
respectivamente. Entonces
1. Si y (A) = tr (A) , se tiene que
∂y (A)
∂tr (A)
=
= Im
∂A
∂A
2. Si y (X) = tr (BX) , se tiene que
∂y (X)
∂tr (BX)
=
= B
∂X
∂X
3. Si y (X) = tr (BXA) , se tiene que
∂y (X)
∂tr (BXA)
=
= BA
∂X
∂X
4. Si C es una matriz de orden n e y (X) = tr (AXCX) , se tiene que
∂tr (AXCX)
∂y (X)
=
= CXA + CXA
∂X
∂X
y si además C es una matriz simetrica y A = I/m , entonces
Demostración. Dado que tr (A) =
3.13, es trivial obtener
m
i=1 aii ,
∂y (X)
= 2CX
∂X
de acuerdo con la Definición
∂tr (A)
∂y (A)
=
= Im
∂A
∂A
m n
Demostración. Si y (X) = tr (BX) , entonces y (X) =
bik xki
i=1
k=1
y por tanto,
m n


∂
bik xki 


m n
 ∂x1. i=1 k=1


∂tr (BX)
∂


.
..
=
bik xki = 
=

∂X
∂X i=1 k=1
m n

 ∂



bik xki
∂xn. i=1 k=1
77


b.1
 .. 
 .  = B
b.n
Demostración. Teniendo en cuenta que tr (BXA) = tr (ABX) , aplicando
la proposición 3.7, 2 , resulta
∂y (X)
∂tr (ABX)
=
= (AB) = BA
∂X
∂X
Demostración. De acuerdo con las propiedades 8 y 2 de la vectorización
de una matriz y la propiedad 4 del producto de Kronecker se tiene
tr (AXCX) = [vec (AX) ] vec (CX) = [vec (XA)] vec (CX)
= [(A ⊗ In ) vec (X)] (Im ⊗ C) vec (X)
= [vec (X)] (A ⊗ C) vec (X)
La derivada de esta expresión respecto a vec (X) es, en virtud de la Proposición 3.5,3
∂tr (AXCX)
∂tr (AXCX)
=
= ((vec (X)) [(A ⊗ C) + (A ⊗ C)]) ∂vec (X)
∂ [vec (X)]
= [(A ⊗ C) vec (X)] + [(A ⊗ C) vec (X)]
= vec (CXA) + V EC (CXA) = vec (CXA + CXA)
Por ultimo, teniendo en cuenta la primera expresión alternativa, como
∂tr (AXCX)
∂tr (AXCX)
vec
=
= vec (CXA + CXA)
∂X
∂vec (X)
se concluye que
∂tr (AXCX)
= CXA + CXA
∂X
y, en caso de ser C simetrica y A = Im , es inmediato que
∂tr (XCX)
= 2CX
∂X
Proposición 3.8 Sea A una matriz cuadrada de orden m y X una matriz de
orden m × p . Entonces
78
1. Si y (A) = |A| , se tiene que
∂y (A)
∂ |A|
=
= Adj (A) ∂A
∂A
2. Si A es simetrica e y (X) = |XAX| , se tiene que
∂y (X)
= 2AX Adj (XAX)
∂X
3. Si A es simetrica e y (X) = In |XAX| con XAX no singular, se tiene
que
∂y (X)
2
=
AX Adj (XAX) = 2AX (XAX)−1
∂X
|XAX|
Si se supone que los elementos de la matirz A son funciones de x ∈ Rn ,
entonces
4. Si y (x) = |A (x)| , se tiene que
∂y (x)
∂A (x)
= [vec (Adj (A) )] Im ⊗
(vec (Im ) ⊗ In )
∂x
∂x
verificandose tambien que si A (x) es no singular
∂In |A(x)|
∂A(x)
= tr (A−1 )
∂x
∂xi
i=l,...,n
Demostración. Dada A matriz cuadrada de orden m, si para cada elemento
aij i, j = 1, ..., n se denota por A ij su cofactor correspondiente, se tiene que
|A| =
n
aik Aik
k=1
Entonces
n
∂
∂ |A|
=
aik Aik = Aij
∂aij
∂aij
k=1
Teniendo en cuenta la Definición 3.12 resulta


A11 A12 · · · A1n
∂ |A|  .
..
..  = Adj (A) =  ..
.
. 
∂aij
An1 An2 · · · Ann
79
Demostración. Si se denota por bij i, j = 1, ..., p a los elementos de la matriz
B = XAX , aplicando la regla de la cadena, resulta para cada k = 1, ..., m,
7 = 1, ..., p
p
p
∂y (X) ∂ |B| ∂bij
=
∂xk
∂bij ∂xk
i=1 j=1
Como para cada i, j = 1, ..., p
tiene
p
∂ |B|
es el cofactor correspondiente Bij , se
∂bij
p
∂ |XAX| ∂bij
∂y (X)
=
=
Bij
=
∂xk
∂xk
∂x
k
i=1 j=1
[vec (Adj (XAX))] vec
∂XAX
∂xk
que de acuerdo con la propiedad 8 de la vectorización se puede reducir a
∂ |XAX|
∂XAX
= tr Adj (XAX)
∂xk
∂xk
Teniendo en cuenta la derivada de un producto (Proposición 3, 3a), para
cada k = 1, ..., m , 7 = 1, ..., p , se verifica
∂XAX
∂X
∂X
=
AX + XA
donde
∂xk
∂xk
∂xk
∂X
∂X
p
= em
= em
ek y
k ek
∂xk
∂xk
p
además, em
k y ek representan dos vectores columna de m y p elementos todos
ellos nulos salvo el k-ésimo y el 7-esimo, respectivamente, que son iguales a la
unidad. En virtud de esto y teniendo en cuenta las propiedades de la traza,
∂ |XAX|
p
m p
= tr Adj (XAX) em
ek AX + XAek e
∂xk
p
m p
= Adj (XAX) em
ek AX + tr XAek e Adj (XAX)
= tr (b∗· ak· X) + tr (Xa·k b∗· )
= tr (ak· Xb∗· ) + tr (a·k Xb∗
· )
= ak· Xb∗· + a·k Xb∗
·
80
siendo b∗· y b∗· la 7-ésima columna y fila, respectivamente, de la matriz
Adj (B) = Adj (XAX) y a·k y ak· la k-ésima columna y fila, respectivamente,
de la matriz A
De acuerdo con la Definición 3.13,
∂x (X)
∂ |XAX|
=
= AX Adj (XAX) + AX (Adj (XAX)) =
∂X
∂X
2AXAdj (XAX)
ya que tanto A como XAX y, por consiguiente, Adj (XAX) , son matrices
simétricas
Demostración. Aplicando la regla de la cadena y teniendo en cuenta el
apartado anterior, resulta
∂x (X)
∂In |XAX| ∂ |XAX|
=
∂X
∂ |XAX|
∂X
=
1
2AXAdj (XAX)
|XAX|
= 2AX (XAX)−1
pues por hipótesis, XAX es simétrica y no singular
Demostración. Si y (x) = |A (x)| con x ∈ Rn , por la regla de la cadena,
∂ |A (x)|
=
∂x
∂ |A (x)|
∂vecA (x)
∂vecA (x)
∂ |A (x)|
∂vecA (x)
= vec
∂x
∂A (x)
∂x
de donde, en virtud de la demostración 3.6 se obtiene
∂A (x)
∂ |A (x)|
= [vec (Adj (A (x)) )] Im ⊗
(vecIm ⊗ In )
∂x
∂x
considerando ahora que A (x) es una matriz no singular para cada x ∈ Rn ,
por definición se tiene que
∂In |A (x)|
=
∂x
∂In |A (x)|
∂In |A (x)|
,··· ,
∂x1
∂xn
Para cada i = 1, ..., n
∂In |A (x)|
∂In |A (x)| ∂ |A (x)|
1 ∂ |A (x)|
=
=
∂xi
∂ |A (x)|
∂xi
|A (x)| ∂xi
81
y según la regla de la cadena
∂ |A (x)|
∂ |A (x)|
∂vec (A (x))
∂vec (A (x))
=
= [vec (Adj (A (x)) )] ∂xi
∂vec (A (x))
∂xi
∂xi
se tiene
∂In |A (x)|
1
∂vec (A (x))
= vec
Adj (A (x)) ∂xi
|A (x)|
∂xi
∂A (x)
= vec A−1 vec
∂xi
y utilizando la propiedad 8 de la vectorización, se obtiene
∂In |A (x)|
∂A (x) −1
∂A (x)
= tr
A
= tr A−1 ∂xi
∂xi
∂xi
Por tanto
∂In |A (x)|
−1 ∂A (x)
−1 ∂A (x)
= tr A
, ..., tr A
∂x
∂x1
∂xn
Ejemplo 3.19 Sea la función y (x) = x Ax con A matriz simétrica y no singular de orden n. Supóngase que se desea conocer si y (x) tiene máximo o mínimo
global en algún punto x ∈ Rn . para ello habrá que estudiar si y (x) tiene puntos
críticos, lo que presupone resolver el sistema de ecuaciones
∂y (x)
=0
∂x
es decir, de acuerdo con la Proposición 3.5, 3
∂y (x)
= 2xA = 0
∂x
Cuya solución es x∗ = 0 por ser A no singular.
Si y (x) tiene máximo, mínimo o punto de silla lo alcanzará en x∗ = 0. Para
poder decidir el comportamiento de y (x) en x∗ bastará utilizar condiciones de
segundo orden, y como en este caso
∂ 2 y (x)
= 2A
∂x∂x
para todo x ∈ Rn se verificará que
x∗ = 0 es mínimo global si A es definida o semidefinida positiva
x∗ = 0 es máximo global si A es definida o semidefinida negativa
x∗ = 0 es punto de silla si A es indefinida
82
Ejemplo 3.20 Sea la matriz
a11 a12
A=
a21 a22
cuyos elementos dependen de x = (x1 , x2 , x3 ) de forma que
a11 = a22 = x1 + x3
a12 = x1 + x2
a21 = x1 − x2
De acuerdo con las proposiciones 3.6 y 3, se verifica que para todo x ∈ R3++
−1
∂vec [A (x)]
∂A−1 (x) ⊗
I
⊗
= (I2 ⊗ (vecI2 ) ) ∂A
2
∂A
∂x
∂x
dado que
a−1 =
1
|A|
a22
−a21
−a12
a11
resulta
∂A−1
= −vec A−1 vecA−1 =
∂A


a22
2
 −a12 
1

 a22 −a21 a12
−
|A|  −a21 
a11

a222
1 
−a12 a22
=−
|A| −a21 a22
a11 a22
−a21 a22
a12 a21
a221
−a11 a21
−a12 a22
a212
a12 a21
−a12 a11
Por otra parte se obtiene que


∂vec [A (x)] 


∂x

∂a11 (x)
∂x
∂a21 (x)
∂x
∂a12 (x)
∂x
∂a22 (x)
∂x
a11

a22 a11
−a12 a11 

−a21 a11 
a211



1 0 1

 1 −1 0
=

 1 1 0

1 0 1
Por tanto, efectuando los correspondientes productos y teniendo en cuenta
la propiedad 2 del producto de Kronecker, se tiene que
∂A−1 (x)
tr (A)
=−
∂x
|A|2
83

 a22

 0
0
a22
−a21
0
0
−a21
−a12
0
0
−a12
a11
0
0
a11


1 0 1
1 −1 0

⊗
1 1 0
1 0 1
Ejemplo 3.21 Sea la función y (x) = tr (AX) donde


1 3
A =  2 0
−1 1
y
X=
x11
x21
x12
x22
x13
x23
como tr (AX) = x11 + 3x21 + 2x12 − x13 + x23 entonces
∂tr (AX)
1 2 −1
=
= A
3 0 1
∂X
tal como se indica en la Proposición 3.7, 2
Ejemplo 3.22 Sea A una matriz no singular de orden n , entonces aplicando
la regla de la cadena
∂In |A|
1 ∂ |A|
=
∂A
|A| ∂A
y, de acuerdo con la Proposición 3.8, 1, se tiene
∂In |A|
1
=
Adj (A) = A−1
∂A
|A|
es decir, en virtud de la Definición 3.13, para cada i, j = 1, ..., n
∂In |A|
1
=
Aji
∂aij
|A|
a11
Ejemplo 3.23 Dada A =
a21
a12
a22
cuyos elementos dependen de x = (x1 , x2 ) de forma que aij = ix1 + jx2 con
x1 0 y x2 ≺ 0 , i , j = 1, 2, se verifica que
∂In |A (x)|
∂In (a11 (x) a22 (x) − a21 (x) a12 (x))
=
∂x
∂x
1 ∂ (a11 (x) a22 (x) − a21 (x) a12 (x)) ∂ (a11 (x) a22 (x) − a21 (x) a12 (x))
=
,
|A|
∂x1
∂x2
84
=
1 1
,
x1 x2
que coincide con lo que se señala en la Proposición 3.8, 4
∂In |A (x)|
−1 ∂A (x)
−1 ∂A (x)
= tr A
, tr A
pues como
∂x
∂x1
∂x2
A (x) =
x1 + x2
2x1 + x2
x1 + 2x2
2x1 + 2x2
entonces
1
x1 + x2
A−1 =
−2 (x1 + x2 )
x1 + 2x2
2x1 + x2
− (x1 + x2 )
y
∂A (x)
∂A (x)
1 1
1 2
=
,
=
2 2
1 2
∂x1
∂x2
y, por tanto
tr
tr
−1
∂A (x)
∂x1
−1
∂A (x)
∂x2
A
A
=
1
1
(2x2 − x2 ) =
x1 x2
x1
=
1
1
(2x1 − x1 ) =
x1 x2
x2
Cuando la matriz respecto de la que se deriva es simétrica, debe de tenerse en
cuenta esta característica pues, en caso contrario, pueden obtenerse resultados
aparentemente contradictorios [Bar98]. Por ejemplo si
y (A) = a211 + a222 + a212 , donde
A=
a11
a12
a21
a22
y cada elemento de la matriz A es función del vector x = (x1 , x2 ) en la forma:
a11 = x1 + 2x2 , a22 = x1 , a12 = x1 x2
al aplicar la regla de la cadena (Proposiciones 3.4, 4) resulta
∂y (A)
=
∂x
∂y (A)
∂vec (A)
∂vec (A (x))
∂x
85
= 2a11
2a12
2a12
2a22
= 4x1 + 4x2 + 4xs1 x22

1
x2

x2
1

2
x1 

x1 
0
4x1 + 8x2 + 4x21 x2
sustituyendo directamente y considerando que
2
2
y (A (x)) = (x1 + 2x2 ) + x21 + (x1 x2 ) = 2x21 + 4x22 + 4x1 x2 + x21 x22
al calcular el gradiente se obtiene un resultado diferente, debido a que
∇y = 4x1 + 4x2 + 2x1 x22 , 8x2 + 4x1 + 2x21 x2
Hay una aparente contradicción, que se debe a que tras sustituir se ha considerado y (A) como una función de tres variables a11 , a12 , a22 cuando en realidad
es una función de R4 −→ R, la cual está definida en puntos cuyas componentes
segunda y tercera son iguales. Al tener esto en cuenta, los calculos de la derivada
coinciden. Para manejar esta aparente disparidad en los resultados al calcular la
derivada respecto de una matriz simétrica A , usualmente se deriva únicamente
respecto de los elementos distintos de A, utilizando la vec
(A) cuya descripción
se encuentra en la definición 3.9.
86
APLICACIÓN A REDES NEURONALES
CAPA 0
1.0
CAPA 1
CAPA 2
b11
∑
b21
S11
W111
f 1(S11 )
y11
W121
1
3
b
W112
b22
b12
d1
2
21
W
∑
y10
S12
( )
f 2 S12
y12
e12
e1
W122
W211
∑
S21
f 1(S21 )
y12
∑
2
22
W
W311
d2
1
22
W
∑
W132
1
32
W
∑
S31
f 1(S31)
y31
S22
( )
f 2 S22
y22
e2
e22
W232
y20
Figura 2:
4.
4.1.
Aplicaciónes
Redes Neuronales
A continuación se expone el desarrollo completo de una aplicación típica de
la derivación de funciones vectoriales y matriciales, que es el caso de la solución
de problemas mediante las redes neuronales artificiales.Esta aplicación es un
trabajo realizado por [Per07]
Utilizando notación matricial, es fácil comprobar que una red multicapa
cuyas funciones de activación son lineales se pueden reducir a una red de una
capa lineal; por ello es preciso utilizar funciones de activación no lineales. El
algoritmo Backpropagation es un algoritmo iterativo que permite entrenarredes
multicapa. La figura ?? muestra una red neuronal típica, donde y son las entradas, S las salidas, W los pesos, e el error y f (s) la salida deseada
4.1.1.
Características del Algoritmo
1. Busca el mínimo de la función error a partir de un conjunto de patrones
de entrenamiento.
2. Precisa que la función de activación sea diferenciable (fácilmente).
3. Entrenar consiste en modificar los pesos de la red.
87
ε
4. Los pesos se modifican hacia la direcció descendente de la función error.
5. La red entrenada es capaz de generalizar, clasificando correctamente patrones ruidosos o incompletos.
6. α indica cuánto cambian los pesos.
7. Si α es muy pequeño, la velocidad de aprendizaje es muy lenta. Si α es
muy grande aparecen efectos oscilatorios.
 1
 1
2
b1
y1
b
e
b1 = b12 
, b2 = 12
, y 1 = y21 
,e = 1
b2 nn(2)x1
e2
1
1
b3 nn(1)x1
y3 nn(1)x1
 1
2
2
S1
S
y
S 1 = S21 
, S 2 = 12
, y 2 = 12
S2 nn(2)x1
y2 nn(2)x1
1
S3 nn(1)x1
 1

 2

1
2
W11 W12
W11 W12
1
1 
2
2 
W22
W22
W 1 = W21
, W 2 = W21
1
1
2
2
W31 W32 nn(1)×nn(0)
W31 W32
nn(2)×nn(1)
nn (k) = número de neuronas de la capa k, nc = índice de la última capa
En general
e nn(nc)x1
4.1.2.
k
S nn(k)x1 , y k nn(k)x1 , bk nn(k)x1 , W k nn(k)xnn(k−1) ,
Propagación hacia adelante.
Cálculo
1 0
1 0
S11 = W11
y1 + W12
y2 + b11
1 0
1 0
S21 = W21
y1 + W22
y2 + b12
1 0
1 0
S31 = W31
y1 + W32
y2 + b13
 1
W11
1
Matricialmente S 1 = W21
1
W31

 1
1
0
W12
b1
y
1 
1
 1
W22
0 + b2
y2
1
W32
b13
Por lo tanto, S 1 = W 1 y 0 + b1 , y en general, S k = W k yk−1 + bk
y11 = f11 S11 , y21 = f21 S21 , y31 = f31 S31
88
 1  1 1 
 1 1 
y1
f1 S1
f1 S1
y21  = f21 S21 , haciendo F 1 S 1 = f21 S21 , queda y 1 = F 1 S 1
y31
f31 S31
f31 S31
En general:
yk = F k S k
e1 = d1 − y12
e2 = d2 − y22
2
e1
d
y
= 1 − 12 −→ e = d − y 2 , en general e = d − y nc
e2
d2
y2
donde nc = índice de la última capa
El error cuadrático 8 = e21 + e22 = e1
4.1.3.
e1
e2
= eT e
e2
Propagación hacia atrás.
Escalarmente
Wij2 (n + 1) = Wij2 (n) − α
b2i (n + 1) = b2i (n) − α
∂8 (n)
∂Wij2 (n)
∂8 (n)
∂b2i (n)
donde n indica el número de iteración
2
2
2
(n + 1) W13
(n + 1)
W11 (n + 1) W12
=
2
2
2
W21
(n + 1) W22
(n + 1) W23
(n + 1)
∂)(n)
2
2
2
2
W11 (n) W12
(n) W13
(n)
11 (n)
− α ∂W
2
2
2
∂)(n)
W21
(n) W22
(n) W23
(n)
2
∂W21 (n)
Es decir, W 2 (n + 1) = W 2 (n) − α
∂)(n)
2 (n)
∂W12
∂)(n)
2 (n)
∂W22
∂8 (n)
∂W 2 (n)
y escalarmente:
∂8
∂8 ∂ei ∂yi2 ∂Si2
∂8 ∂Si2
=
=
∂Wij2
∂ei ∂yi2 ∂Si2 ∂Wij2
∂Si2 ∂Wij2
89
∂)(n)
2 (n)
∂W13
∂)(n)
2 (n)
∂W23
Matricialmente
∂8
∂8 ∂S 2
=
∂W 2
∂S 2 ∂W 2
∂8
= derivada de una función escalar con respecto a un vector
∂S 2
∂S 2
= derivada de una función vectorial de argumento matricial con res∂W 2
pecto a una matriz
Escalarmente
∂8 ∂ei ∂yi2
∂8
=
2
∂Si
∂ei ∂yi2 ∂Si2
Matricialmente se debe tener en cuenta que si z es una función de p, la
cual es una función de y, que a su vez es una función del vector x, entonces
dz
dy ∂p ∂z
=
dx
dx ∂y ∂p
Teniendo en cuenta lo anterior
∂y 2 ∂e ∂8
∂8
∂y2 ∂e ∂8 ∂S 2
∂8
=
−→
=
∗
∂S 2
∂S 2 ∂y2 ∂e
∂W 2
∂S 2 ∂y 2 ∂e ∂W 2
Teniendo en cuenta que
dAx
∂S 2
∂
= xT −→
=
W 2 y 1 + b2 = y1
2
dA
∂W
∂W 2
En general,
∂S k
= y k−1
∂W k
 2
∂y1
∂y 2
∂S12

= ∂y2
1
∂S 2
2
∂S2

∂y22
∂S12 
,
∂y22
∂S22
T
T
ya que yi2 = fi2 Si2 , entonces,
∂yi2
= 0, para
∂Sj2
∂yi2
∀i = j y
= fi2 Si2
∂Sj2
 2

∂y1
2
0
2
∂y 2
 ∂S1
 , como yi2 = fi2 Si2 −→ ∂yi = fi2 Si2
=
2
∂y2
∂S 2
∂Si2
0
∂S 2
2
90
y 2 = F 2 S 2 −→ se puede hacer F 2 S 2 =
∂e
1
∂e
∂y12
=
∂e1
∂y 2
∂y22
∂ei
= −1
y
∂yi2
∂e
=
∂y 2
∂e
∂e2
∂y12
∂e2
∂y22
0
1
∂y12
∂e2
∂y22
0
, ya que ei = di − yi2 , entonces
−1 0
=
0 −1
∂y2
∂S 2
∂ei
= 0, para ∀i = j
∂yj2
∂ε
∂ T
e
=
e e = 2e = 2 1
e2
∂e
∂e
Acoplando todos estos resultados
 2
∂y1
∂ε
 ∂S12
=
∂W 2
0
∂ε
=2
∂W 2

∂y12
∂S
 12
0
∂y22
∂S22
0

∂y12
− ∂S 2
∂ε
1
= 2

∂W 2
0


∂e1
∂y12
0
∂e2
∂y22
0
∗2

e1
∗ y11
e2
−1 0
e1 1

y1
∂y22
0 −1 e2
2
0
∂S2

 e1 1

y1
∂y 2  e2
− 22
∂S2
0
y21
y21
y31
y21
y31
y31


∂y12
e1 1
− ∂S
2
∂ε
 y1 y21 y31 =
= 2  ∂y21
2
2
∂W
− ∂S 2 e2
2


2
∂y
∂y 2
∂y 2
−2e1 ∂S12 y11 −2e1 ∂S12 y21 −2e1 ∂S12 y31
1
1
1


∂y2
∂y 2
∂y 2
−2e2 ∂S22 y11 −2e2 ∂S22 y21 −2e2 ∂S22 y31
2
2
2
Si se hace

∂y 2
− ∂S12
∂ε
2
1
δ = − 2 = 2
∂S
0
Matricialmente


2
2
∂y12
2
2
e
 e1 =  ∂S212 1  = 2f12 S12 e1 = δ 12
2
∂y
∂y
e2
2f2 S2 e2
δ2
− 22
2 22 e2
0
∂S2

∂S2
91
δ 2 = 2F 2 S 2 e −→ donde F 2 S 2 =
2
f1 S12
0
0
f22 S22
Entonces,
∂ε
= −δ 2 y1
∂W 2
T
recordando que
W 2 (n + 1) = W 2 (n)−α
∂ε (n)
−→ donde n es el contador de iteraciones
∂W 2 (n)
T
1
W 2 (n + 1) = W 2 (n) + αδ 2 (n) y(n)
Ahora
b2 (n + 1) = b2 (n) − α
∂ε (n)
∂b2 (n)
∂ε
∂S 2 ∂ε
∂S 2
=
= − 2 δ2
2
2
2
∂b
∂b ∂S
∂b
pero S 2 = W 2 y1 + b2 recuérdese que yk+1 = W k S K + bk
2
∂S
=
∂b2

∂S12
 ∂b212
∂S1
∂b22

∂S22
∂b21 
∂S22
∂b22
=
1 0
0 1
2
∂ε
1 0 δ 21
δ1
=
−
=
−
= −δ 2
0 1 δ 22
δ 22
∂b2
Por lo tanto
b2 (n + 1) = b2 (n) + αδ 2
En general, para los pesos y el BAS de la última capa se tiene
δ nc = 2F nc (S nc ) e
∂ε
= −δ nc ync−1
∂W nc
T
T
nc−1
W nc (n + 1) = W nc (n) + αδ 2 (n) y(n)
92
∂ε
= −δ nc y bnc (n + 1) = bnc (n) + δ nc
(n) donde nc es el número de capas
∂bnc
de la red
Ahora es necesario hallar la fórmula para la actualización de W 1 y b1
W 1 (n + 1) = W 1 (n) − α
∂ε (n)
∂W 1 (n)
∂ε
∂ε ∂S 1
∂ε
∂y1 ∂S 2 ∂y 2 ∂ε ∂ε
∂y 1 ∂S 2 ∂ε
∂S 2 ∂ε
=
y
=
=
=
∂W 1
∂S 1 ∂W 1 ∂S 1
∂S 1 ∂y 1 ∂S 2 ∂y 2 ∂e
∂S 1 ∂y 1 ∂S 2
∂S 1 ∂S 2
 ∂y1

∂y 1

=

∂S 1 
1
∂S11
∂y11
∂S21
∂y11
∂S31

∂y21
∂S11
∂y31
∂S11
∂y21
∂S21
∂y31 
∂S21 

∂y21
∂S31
∂y31
∂S31

Recordando que yi1 = fi1 Si1 −→
 ∂y1

∂y 1
= 0
∂S 1 
0

 1
f1 S11



0
0 =
0
∂y31
0
1
∂S11
0
∂y21
∂S21
0
∂S 2 
=

∂y 1
1
∂y11
∂S12
∂y21
∂S12
∂y31

∂S22
∂y11

∂S22 
∂y21 
∂S22
∂y31
T
recordando que
2 1
2 1
2 1
S12 = Wi1
y1 + Wi2
y2 + Wi3
y3 + b2i −→
 2
W
∂S 2  11
2
W12
=
∂y 1
2
W13

2
W21
2 
W22
= W2
2
W23
Recordando que
0
f21 S21
0
∂S31
∂
∂S 2
= 1 W 2 y 1 + b2 = W 2
1
∂y
∂y
Es decir
 ∂S 2
∂yi1
∂yi1
=
0,
∀i
=
j
−→
= f 1 Si1
∂Sj1
∂Si1
T
∂8
= −δ 2
∂S 2
93
∂Si2
= Wij2
∂yj1

0
0  = F 1 S1
1
f3 S31
 ∂y1
0
1
∂S11

∂8
= −
 0
∂S 1
0
∂y21
∂S21
∂ε
= −F 1 S 1
∂S 1
0

 2
 W11
 2
0 
 W12
2
1
W13
∂y3
0
∂S31
W2
haciendo δ 1 = F 1 S 1
T

2
2
W21
2  δ1
W22
δ 22
2
W23
δ2
W2
T
δ2
∂ε
= −δ 1
∂S 1
∂ W 1 y 0 + b1
∂S 1
=
= y0
∂W 1
∂W 1
en general
∂S k
= y k−1
∂W k
T
T
∂ε
∂ε ∂S 1
=
= −δ 1 y0
∂W 1
∂S 1 ∂W 1
T
En general
∂ε ∂S k
∂ε
=
∂W k
∂S k ∂W k
∂ε
∂S k+1 ∂ε
=
∂S k
∂S k ∂S k+1
∂S k+1
∂y k ∂S k+1
∂y k
=
−→
= F k Sk
k
k
k
∂S
∂S ∂y
∂S k
∂ W k+1 yk + bk+1
∂S k+1
∂S k+1
=
−→
= W k+1
∂y k
∂y k
∂yk
∂S k+1
= F k Sk
∂y k
W k+1
T
T
∂ε
∂ε
= −δ k+1 −→
= −F k S k
∂S k+1
∂S k
W k+1
T
δ k+1
Si se generaliza
∂ε
T
−→ δ k = F k S k W k+1 δ k+1 −→ δ k =
∂S k
T k+1
W k+1 F k S k
δ
ya que F k S k es simétrica
δk = −
94
∂ε
∂ε ∂S k
=
= δ k y k−1
∂W k
∂S k ∂W k
T
T
0
W 1 (n + 1) = W 1 (n) + αδ 1(n) y(n)
y, en general
T
k−1
W k (n + 1) = W k (n) + αδ k(n) y(n)
Ahora se determina la fórmula de actualización para b1
b1 (n + 1) = b1 (n) − α
∂ε (n)
∂b1 (n)
∂ε
∂S 1 ∂ε
=
1
∂b
∂b1 ∂S 1
 ∂S 1
∂ε
∂S 1
∂b11
∂S21
∂b11
∂S31
∂b11
∂S11
∂b13
∂S21
∂b12
∂S21
∂b13
∂S31
∂b12
∂S31
∂b13
1
∂S 1 
 11
=  ∂S
1
1
∂b
 ∂b2
= −δ 1



1 0 0

 
 = 0 1 0 = I nn(1)

0 0 1
En general,
∂S k = I nn(k)
∂bk
∂ε
∂b1


1 0 0
= − 0 1 0 δ 1 = −δ 1
0 0 1
En general,
∂ε
= − I nn(k) δ k = −δ k
k
∂b
b1 (n + 1) = b1 (n) + αδ 1 (n)
bk (n + 1) = bk (n) + αδ k (n)
95
4.1.4.
Resumen (Algoritmo)
Datos de Entrada
Patrones de entrenamiento X con su salida deseada.
X nn(0)Xnp donde np = número de patrones.
d nn(c)Xnp donde nc = número de capas de la red (recuerde que la capa
de entrada no se considera como una capa de la red).
Número máximo de iteraciones: N U MIT
Valor de la tasa de aprendizaje: α
Valor de la tolerancia: T OL
Inicializar:
1
2
nc
W(1)
, W(1)
, ..., W(1)
b1(1) , b2(1) , ..., bnc
(1)
con valores aleatorios pequeños,
k
Wij nn(k)Xnn(k−1)
k
bi nn(k)
n = 0,
∈ [−0,5, 0,5]
∈ [−0,5, 0,5]
ε=0
Mientras que n <= N U MIT ó ε < T OL
0
y(n)
= X(n) , donde X(n) es un vector de entrada escogido aleatoriamente
96
4.1.5.
Propagación hacia adelante.
Para k = 1 hasta nc
k−1
k
k
S(n)
= W(n)
• y(n)
+ bk(n)
k
k
y(n)
= F k S(n)
Fin para k.
e(n) = d(n) − y nc (n)
ε(n) = e(n)T ∗ e(n)
4.1.6.
Propagación hacia atrás.
δ nc (n) = 2F nc (S nc (n)) e (n)
W nc (n + 1) = W nc (n) + αδ nc (n) y nc−1 (n)
bnc (n + 1) = bnc (n) + αδ nc (n)
Para k = nc − 1 hasta 1
δ k (n) = F k S k (n)
W k+1 (n)
T
δ k+1 (n)
W k (n + 1) = W k (n) + αδ k (n) y k−1 (n)
bk (n + 1) = bk (n) + αδ k (n)
Fin para k
97
T
T
APLICACIÓN A REDES NEURONALES
1 .0
∑
S11
y 11
1
1+ e
− S11
∑
S12
tanh( S12 )
y12
y 10
∑
S 21
y12
1
1
1 + e − S2
y20
∑
∑
S 31
tanh( S 22 )
y22
y 31
1
1+ e
S22
− S31
Figura 3:
Ejemplo 4.1
n x1
1 −1
2 −1
3
1
4
1
Entrenar una red neuronal para aprender los siguientes patrones
x2 d1 d2
−1 −1 −1
1
−1
1
−1 −1
1
1
1
−1
Utilice una red 2-3-2 (2 entradas, 3 neuronas en la capa oculta y dos neuronas
en la capa de salida.
Utilice función logística como función de activación para todas las neuronas
de la capa oculta (capa 1) y tanh para todas las neuronas de la capa de salida
(capa 2).
Se va a trabajar con α = 0,5
La figura ?? muestra la red propuesta.
Primer Patrón n = 0
Inicialización:


0,7826
0,609
0,0636 −0,6596 −2,0639
W 1 (1) = −1,4372 −1,6513 , W 2 (1) =
0,582 −1,8127 2,2377
−2,713 −2,8013


0,437
−0,7279
b1 (1) = −1,298 , b2 (1) =
−1,9579
2,2137
98
y 0 (1) = X(1) =
x1 (1)
−1
=
x2 (1)
−1
S 1 (1) = W 1 (1) · y 0 (1) + b1 (1)




0,7826
0,609 0,437
−1
S 1 (1) = −1,4372 −1,6513
+ −1,298
−1
−2,713 −2,8013
2,2137


−0,9576
S 1 (1) =  1,7905 
7,728
 1 


 1 1

1
f1 S1 (1)
0,27796067
1+e−S1 

1
 

y 1 (1) = f21 S21 (1)  = 
 1+e−S21  = 0,85698857
1
1
1
0,99955987
f3 S3 (1)
−S1
1+e
3
S 2 (1) = W 2 (1) · y 1 (1) + b2 (1)


0,27796067
0,0636 −0,6596 −2,0639 
−0,7279
0,85698857 +
S 2 (1) =
0,582 −1,8127 2,2377
−1,9579
0,99955987
S 2 (1) =
y 2 (1) =
−3,33848298
−1,11287495
2 2
f1 S1 (1)
tanh S12 (1)
tanh (−3,33848298)
=
=
tanh (−1,11287495)
f22 S22 (1)
tanh S22 (1)
−0,99748398
y (1) =
−0,80507629
2
e (1) = d (1) − y 2 (1)
−1
−0,99748398
−0,00251602
e (1) =
−
=
−1
−0,80507629
−0,19492371
99
4.1.7.
Propagación hacia atrás.
Ejemplo 4.2
1. δ 2 (1) = 2F 2 S 2 (1) e (1)
Recuerde que:
f
2
1
S12 (1) = tanh S22 (1) = y12 (1)
f 21 S12 (1) = 1 − y12 (1)
f
2
2
2
S22 (1) = tanh S22 (1) = y22 (1)
2
f 22 S22 (1) = 1 − y22 (1)
2
f 1 S12 (1)
0
2F 2 S 2 (1) =
0
f 22 S22 (1)
2
1 − y12 (1)
0
=
2
0
1 − y22 (1)
1 − (−0,99748398)
0
−0,00251602
2
δ (1) = 2
0
1 − (−0,80507629) −0,19492371
−2,52896 X 10−5
δ 2 (1) =
−0,13716866
T
W 2 (2) = W 2 (1) + αδ 2 (1) · y1 (1)
0,0636 −0,6596 −2,0639
W 2 (2) =
+
0,582 −1,8127 2,2377
−2,52896 X 10−5 0,27796067 0,85698857 0,99955987
0,5 ∗
−0,13716866
0,0636 −0,6596 −2,0639
W 2 (2) =
+
0,582 −1,8127 2,2377
−3,514775 X 10−6 −1,08364 X 10−5 −1,2639 X 10−5
−0,019063746
−0,0587755987
−0,06855414
0,063596485 −0,659610836 −2,063912639
W 2 (2) =
0,562936254 −1,871475987 2,169145856
b2 (2) = b2 (1) + αδ 2 (1)
−0,7279
b2 (2) =
+ 0,5∗
−1,9579
T
δ 1 (1) = F 1 S 1 (1) W 2 (1) δ 2 (1)
 1
y1 (1) 1 − y11 (1)
0
1

δ (1) =
0
y21 (1) 1 − y21 (1)
0
0
100

0
∗
0
1
1
y3 (1) 1 − y3 (1)


0,0636
0,582 −5
−0,6596 −1,8127 −2,52896 X 10
−0,13716866
−2,0639 2,2377


−0,01602252
δ 1 (1) =  0,03047584 
−0,00013501
T
W 1 (2) = W 1 (1) + αδ 1 (1) · y0 (1)




0,7826
0,609
−0,01602252 W 1 (2) = −1,4372 −1,6513 + 0,5 ∗  0,03047584  −1 −1
−2,713 −2,8013
−0,00013501

 

0,7826
0,609
0,00801126
0,00801126
W 1 (2) = −1,4372 −1,6513 +  −0,01523792
−0,01523792 
−2,713 −2,8013
6,7506 X 10−5 6,7506 X 10−5


0,79061126
0,61701126
W 1 (2) = −1,45243792 −1,66653792
−2,71293249 −2,80123249
b1 (2) = b1 (1) + αδ 1 (1)




0,437
−0,01602252
b1 (2) = −1,298 + 0,5 ∗  0,03047584 
2,2137
−0,00013501


0,42898874
b1 (2) = −1,28276208
2,21363249
4.2.
Derivadas Matriciales en Matlab.
Aprovechando las funciones básicas y las operaciones que con respecto a matrices se pueden utilizar en Matlab, se diseñaron unas pequeñas funciones que
permiten a través de la utilización de las propiedades de la derivación matricial,
empleando la vectorización y el producto de Kronecker, resolver derivadas matriciales. Se adjuntan los códigos fuente de las mismas, las cuales son solo un
ejemplo, teniendo en cuenta que las funciones f1, f2 y demás que se presentan,
pueden ser modificadas de acuerdo con la necesidad de solución.
Un exámen previo de las figuras 4 hasta la 8 puede facilitar la lectura de
esta sección, ya que el lenguaje Matlab es bastante intuitivo. Inicialmente se
han creado dos funciones vec() que realiza la vectorización de una matriz por
columnas, tal como se observa en la figura 4 y vecf () que realiza la vectorización
por filas de una matriz, tal como se observa en la figura 5.
En primera instancia, se debe tener claro que es posible definir funciones
nuevas y archivos de sencuencia de comandos (script) en Matlab. De hecho, las
101
function [vec] = vec(mat)
%vectorizacion (columna)
%CAPTURA TAMAÑO
[m,n] = size(mat);
%LEE ELEMENTOS Y REUBICA
for I = 1:m,
for J = 1:n,
pos=n*(Ipos=n*(I-1)+J;
vecf(pos) = mat(I,J);
end
end
%TRANSPONE
vec=vecf.';
end
end
Figura 4: Vectorización de una matriz.
function [vecf] = vecf(mat)
%CAPTURA TAMAÑO
[m,n] = size(mat);
%LEE ELEMENTOS Y REUBICA
for I = 1:m,
for J = 1:n,
pos=n*(Ipos=n*(I-1)+J;
vecf(pos) = mat(I,J);
end
end
end
Figura 5: Vectorización por filas de una matriz.
% CREA VARIABLES
syms v
syms w
syms x
syms y
syms z
%CREA MATRICES IDENTICAS DE ORDEN 1 HASTA 5
I1=eye(1);
I2=eye(2);
I3=eye(3);
I4=eye(4);
I5=eye(5);
return
Figura 6: Inicialización, crea variables simbólicas y matrices idénticas.
102
% CASO:
% DERIVACIÓN DE f(x,y,z,...) RESPECTO DE CADA VARIABLE INDEPENDIENTE
% BORRA VARIABLES DE LA MEMORIA
clear
% INICIALIZA VARIABLES Y CREA MATRICES UTILITARIAS
ini
% USUARIO: SE DEFINEN FUNCIONES
%EJEMPLO:
f1=x^2+y^3;
f2=2*x*y;
%Fn=...
% USUARIO: SE DEFINEN VECTORES O MATRICES
% EJEMPLO:
Y=[f1 ; f2];
X=[x y];
%%% PROCESANDO... %%%
% EXTRAE EL TAMAÑO DE LOS VECTORES O MATRICES:
[P,N]=size(X);
[M,Q]=size(Y);
% EXPANSION:
for I = 1:M,
for J = 1:Q,
%DERIVAR CADA ELEMENTO DE Y RESPECTO A MATRIZ
MATRIZ X:
for K=1:P,
for L=1:N,
%DERIVACIÓN INDIVIDUAL:
R(P*(IR(P*(I-1)+K,N*(J1)+K,N*(J-1)+L)=diff(Y(I,J),X(K,L));
end
end
end
end
R
Figura 7: Codigo completo para realizar una derivación matricial simple.
figuras referenciadas muestran código de cada uno de ellos. Tanto las funciones
como los scripts pueden utilizar funciones de control de flujo para detallar la
forma como se desea ejecutar una secuencia de procesos. Por ejemplo, en Matlab
se dispone de los comandos: for, if, else, elseif, while, return, break, con un uso
bastante similar al de otros programas más conocidos, aunque con una sintaxis
ligeramente diferente.
De interés particular para este trabajo, se encuentran las funciones para la
generación, manipulación de matrices y operaciones con matrices. Algunas de
ellas son:
trace(M): calcula la traza de una matriz.M
kron(M, N) : desarrolla el producto de kronecker de las matrices M y N.
eye(M, N): devuelve una matríz idéntica de tamaño M × N.
ones(M, N): devuelve una matríz de unos de tamaño M × N.
103
%BORRA VARIABLES DE LA MEMORIA
clear
%INICIALIZA VARIABLES Y CREA IDENTICAS
ini
%SE DEFINEN FUNCIONES
f1=2*x+3*y;
f2=x^2+2*y;
f3=exp(x);
f4=2*x*y;
f5=1/x;
f6=4*yf6=4*y-x^2;
%SE DEFINEN MATRICES
X=[f1 f2 ; f3 f4; f5 f6];
[filas,col]=size(X);
dXrX=(vec(eye(filas))*vecf(eye(col)))
dXrX=(vec(eye(filas))*vecf(eye(col)))
R=kron(eye(col),dXrX)*kron(vec(eye(col)),eye(col))
Figura 8: Desarrollo de
δvec(X)
utilizando las propiedades.
δX
zeros(n): devuelve una matríz idéntica de tamaño M × N.
: (dos puntos) crea un vector espaciado regularmente.
linspace: crea un vector espaciado linealmente.
logspace: crea un vector espaciado logarítmicamente.
diag: crea o extrae diagonales.
reshape: cambia la dimensión de la matriz.
tril: extrae la matriz triangular inferior.
triu: extrae la matriz triangular superior.
det: calcula el determinante de una matriz.
eig: calcula los autovalores y autovectores.
expm: calcula la exponencial de una matriz.
logm: calcula el logaritmo de una matriz.
Se pueden consultar funciones adicionales mediante el menú de ayuda del
programa o mediante el comando help de Matlab.
El código que muestra la figura 6 tiene por objeto crear variables simbólicas,
con el fin de poder utilizarlas dentro de expresiones más complejas. Además,
crea un conjunto de matrices idénticas, para utilizar cuando se necesiten.
104
En la figura 7, se expone el código necesario para derivar una función matricial de variable matricial, aunque se ha desarrollado como primer ejemplo el
caso particular en que tanto la función como la variable son vectoriales.
δvec(X)
En el ejemplo de la figura 8 se muestra como resolver el problema de
.
δX
Para ello, después de observar las propiedades que cumple este desarrollo, se
ha planteado la solución como lo indica el código allí expuesto. Al utilizar las
propiedades de la derivación, el proceso se hace más simple y menos costoso
computacionalmente.
Los resultados de la ejecución de los ejercicios expuestos coinciden plenamente con los desarrollos mediante otros paquetes o técnicas,siempre y cuando
se definan correctamente los tipos de datos (entero, real, etc).
Mediante la aplicación iterativa de las fórmulas presentadas, se pueden obtener las derivadas de orden superior o la aplicación de la regla de la cadena. En
primera instancia, hay una gran cantidad de opciones para desarrollar en este
caso, cada una de las cuales requiere que se definan correctamente las variables
dependientes e independientes, la relación funcional, y las matrices o vectores
que intervienen.
Matlab es un lenguaje de programación que facilita el trabajo con matrices. Dado que la representación interna de Matlab es en forma matricial, los
programas finales son compactos y relativamente sencillos.
105
5.
Conclusiones
Al finalizar el trabajo, es necesario presentar algunos puntos importantes,
considerados como vitales en la comprensión y realización del mismo.
Al iniciar el estudio de la derivación matricial es fundamental tener claridad
en conceptos y definiciones de la teoría básica del álgebra lineal y del cálculo
diferencial.
Antes de introducirse directamente en el tema, es necesario comprender las
operaciones que complementan el álgebra lineal y que son el soporte de la derivación matricial, tales como la permutación de matrices por bloques, el producto
de Kronecker y la vectorización de matrices por fila y por columna.
Al abordar la derivación matricial es fundamental analizar las propiedades
del producto de Kronecker, de la vectorización de matrices, las reglas de derivación matricial y las formas alternativas de derivación con el fin de minimizar la
solución de problemas, teniendo en cuenta que en algunos casos la expansión de
las matyrices es bastante amplia y utilizando adecuadamnte la o las reglas enumeradas anteriormente, el procedimiento de solución es más ágil, más eficiente
y esposible que la expansión de las matrices sea más reducida.
A nivel personal puedo concluir que adquirí el conocimiento de nuevas operaciones del álgebra lineal y el del tema central: el cálculo matricial, lo que
significa un avance personal muy interesante, que aunque mínimo si se tiene en
cuenta la amplitud del campo matemático, si muy importante en el desarrollo
y el conocimiento de nuevos temas relacionados con la matemática.
A nivel profesional, es como haber dado el primer paso en la profundización
de conceptos y conocimientos, los cuales se logran solo a través del tiempo y con
la dedicación necesaria que permiten realmente formar al verdadero matemático.
Por último, espero que el trabajo haya respondido a las expectativas de las
directivas y docentes de la Fundación y que sirva como un aporte interesante no
solo para los matemáticos, sino para los profesionales que de una u otra forma
en sus aplicaciones requieren de la derivación matricial.
106
Referencias
[Her86] I. Herstein, Álgebra Abstracta. México: Grupo Editorial Iberoamericano
(1985).
[Bar98] R. Barbolla, P. Sans, Álgebra Lineal y Teoría de Matrices. Madrid:
Prentice-Hall (1998).
[San94] R. Sánchez, A. Velasco, Curso Básico de Algebra Lineal. Bogotá: Ed
Trillas (1994).
[Mey07] C. Meyer, Matrix Analysis and
http://www.matrixanalysis.com/ (2007)
Applied
Linear
Algebra.
[Rad99] C. Radhakrishna, H. Toutenburg, Linear Models: Least Squares and
Alternatives. New York: Springer (1999).
[Per07] P Rengifo. Borradores de Trabajo y Notas de Clase Sistemas Basados
en el Conocimiento. FUKL. (2007)
[Mag06] J. Magnus, Matrix Calculus and Econometrics. Tilburg University
(2006)
107
Descargar