La profundidad operativa básica de aprendizaje mxnet

de nd importación mxnet

Creación de vectores

# Crear un vector fila 
x = nd.arange (12 es )
 de impresión (x)
 # salidas x del tamaño 
de impresión (x.shape)
 # para cambiar la forma del vector x (3,4) 
X- = x.reshape (3,4 )
 Imprimir (X-) 
la Y = x.reshape (. 3, -1 )
 de impresión (la Y)
 # crear cada elemento es un 0, la forma (2,3,4) tensor 
Z = nd.zeros ((2,3, . 4 ))
 Imprimir (la Z)
 # especificado por la lista NDArray crear el valor de cada elemento 
X2 = nd.array ([[2,1,4,3] , [1,2,3,4], [4 , 3,2,1 ]])
 Imprimir (un X2)
 # valor generado aleatoriamente para cada elemento en NDArray 
X3 = nd.random.normal (0,1, Forma = (3,4 ))
 Imprimir (X3)

 

La manipulación de datos

Imprimir (X- + la Y)
 # Press Multiplicación 
de impresión (X- * la Y)
 # elemento de división de 
impresión (X- / la Y)
 # elementos Press hacer exponenciación 
de impresión (Y.exp ())
 # DOT multiplicación de matrices 
de impresión (nd.dot (X- , YT))
 # conexiones de matriz 
# filas conectado 
Imprimir (nd.concat (x, la Y, Dim = 0))
 # columnas conectadas 
de impresión . (nd.concat (x, la Y, = Dim 1 ))
 # X - == la Y 
Imprimir (X - == la Y)
 # X.sum 
Imprimir (X.sum ())
 # podemos asscalar resultado de la función se convierte en un escalar en Python. Submenú ⾯ la forma de realización X en los resultados norma L2 anteriores Ejemplo 
#⼀ muestra es un único elemento NDArray, pero el resultado final ha convertido a un escalar Python. 
Imprimir (X.norm (). Asscalar ())

 

mecanismo de difusión

'' ' 
Cuando dos formas diferentes NDArray por 
la operación de elemento, se pueden desencadenar mecanismos Wide-multicast (radiodifusión): primera copiar una adecuada forma elemento de estos dos NDArray 
mismo que el elemento después de la operación. 
'' ' 
A = nd.arange (. 3) .reshape ((3,1 )) 
B = nd.arange (2) .reshape ((1,2 ))
 de impresión (A)
 de impresión (B)
 ' '' 
Puesto que A y B son 3 ⾏ 1 y 1 ⾏ 2 de la matriz, para calcular un + B, entonces una, tres elementos en la columna de la primera trama está llena de difusión amplia 
(copiado) a la segunda columna el disparo, B del primer disparo ⾏ de ancho y dos elementos se transmiten (copiado) para el segundo disparo y la tercera ⾏ ⾏. Por lo tanto, es posible 
para las dos matrices 2 3 ⾏ mediante la adición de elementos. 
'' ' 
De impresión (A + B) 

# índice 
' '' 
por ejemplo, 3- matriz índice ⾏ ⾏ ⼀ 2 son, respectivamente, 0, 1 y 2, el índice de la columna 0 y 1, respectivamente. 
'' ' 
De impresión (X-)
 Imprimir (X- [. 1 :. 3 ])
 ' ''
Posición de los elementos individuales especificados en NDArray necesidad de acceso, tales como matriz ⾏ y el índice de la columna, y un elemento para re-asignación 
'' ' 
X- [ 1,2] =. 9
 ' '' 
porción tomada ⼀ elemento, y reasignarlos . pantalla Ejemplo Submenú para el siguiente, nos ⾏ ⼀ índice para cada elemento de la columna 1 es re-asignación 
'' ' 
X- [ 1: 2,:] = 12 es
 de impresión (X-)

 

operación de sobrecarga de memoria

'' ' 
Tomado ⼀ porción de elemento, y reasignarlos. Ejemplo de pantalla de submenú para el siguiente, nos ⾏ índice por 1 
⼀ columna elemento de reasignación 
si desea especificar un resultado de memoria particular, podemos índice de la antigua Usando ⾯ introducido en ⾏ de reemplazar. pantalla Ejemplo Submenú para la siguiente, 
que primero creado por zeros_like y en forma de Y elementos son los mismos y NDArray 0, denotado por Z. 
'' ' 
El Z = Y.zeros_like () 
antes = ID (la Z) 
el Z [:] = + X- la Y
 de impresión (ID (la Z) == antes)
 ' '' 
, de hecho, en el ejemplo abrimos a X + Y la memoria temporal para almacenar el resultado del cálculo, a continuación, copia en la memoria correspondiente Z. Si 
desea evitar esta sobrecarga de la memoria temporal, podemos utilizar el operador el nombre completo de la función del parámetro. 
'' ' 
Nd.elemwise_add (X, la Y, OUT = Z)
 Imprimir (ID (Z) == antes)
 ' '' 
si el valor de X después de que el programa no se copia de uso, que pueden utilizarlo X [:] = X + y o X + = operaciones y para reducir la sobrecarga de memoria 
'' 'id (X) 
X + = Y
 de impresión (id (X) == antes)

NDArray y Numpy interconversión

Importación numpy NP AS 

# a Numpy en Ejemplos NDArray Ejemplo 
P = np.ones ((2,3 )) 
D = nd.array (P)
 de impresión (P)
 de impresión (D) 

# ejemplo El NDArray en ejemplo Numpy 
D = D.asnumpy ()
 Imprimir ( " ================== " )
 Imprimir (del tipo (D))

 

Supongo que te gusta

Origin www.cnblogs.com/xiaochi/p/12608205.html
Recomendado
Clasificación