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))