Notas prácticas del curso de aprendizaje profundo ch01

Sigue a Li Mu para aprender las notas del curso de IA ch01

¡muy recomendable! ! !
El curso del Sr. Li Mu no tiene fundamentos y es muy detallado. No aprendió IA sistemáticamente antes, pero ahora simplemente sigue la corriente.
URL del curso: https://courses.d2l.ai/zh-v2/Haga clic
para ingresar a la página de inicio del curso,
que contiene la introducción al curso, videos, cursos y códigos.

Este blog registra principalmente notas de estudio. Bienvenido a discutir.

ch_01

N es una muestra de matriz

  • 0-d (escalar)[1] una categoría
  • 1-d (vector) [1.0,2.3,3.4] un vector propio
  • 2-d (matriz)[[1.0,2.7],[2.3,1.1]]
  • 3-d ... ancho x alto x canales de una imagen RGB
  • 4-d ... un lote de imágenes RGB (tamaño del lote x ancho x alto x canales)
  • 5-d ... un lote de video (tamaño del lote x tiempo x ancho x alto x canales)

elemento de acceso

[fila columna]

  • array[1,2] —— elemento en la fila 2, columna 3
  • array[1,:] - todos los elementos de una fila
  • array[:,1] - una lista de todos los elementos
  • array[1:3,1:] - todos los elementos después de la fila 1, la fila 2 y la columna 2
  • array[::3,::2] —— dos elementos en cada fila y un elemento sin columna

tensor

Un tensor representa una matriz de valores, que pueden
tener múltiples
dimensiones 10, 11])

Operaciones básicas de tensor

  • Acceda a la forma del tensor a través de la propiedad de forma del tensor
  • Para cambiar la forma de un tensor sin cambiar la cantidad de elementos y los valores de los elementos, podemos llamar a la función de remodelación (también, cuando la matriz es grande, puede agregar -1 para calcular automáticamente la forma)
  • Use todos los 0, todos los 1, otras constantes o números seleccionados aleatoriamente de una distribución específica (por ejemplo, torch.ones (12), torch.zeros (12), torch.randn (12))

operación

Los operadores aritméticos estándar comunes (+, -, *, /) también se pueden exponenciar torch.exp(x).
Se pueden concatenar varios tensores juntos torch.cat().
La suma de todos los elementos en un tensor produce un tensor con un solo elemento torch.sum.
Tensor también tiene un mecanismo de transmisión.

Indexación y corte

La indexación y el corte de tensores son los mismos que los estándares de la lista de Python.

conversión de tipos

Convertir a tensor NumPy

A = X.numpy()
B = torch.tensor(A)
type(A),type(B)

producción:

(numpy.ndarray, torch.Tensor)

Preprocesamiento de datos

leer datos

Entre las herramientas de análisis de datos más utilizadas en Python, se suele utilizar el paquete pandas.
Ejemplo:
crear un archivo csv

import os
os.makedirs(os.path.join('..', 'data'), exist_ok=True)
data_file = os.path.join('..', 'data', 'house_tiny.csv')
with open(data_file, 'w') as f:
    f.write('NumRooms,Alley,Price\n')  # 列名
	f.write('NA,Pave,127500\n')  # 每行表示一个数据样本
	f.write('2,NA,106000\n')
	f.write('4,NA,178100\n')
	f.write('NA,NA,140000\n')

Tenga en cuenta que los elementos "NaN" representan valores faltantes
Para cargar el conjunto de datos original del archivo csv creado, importamos el paquete pandas y llamamos a la función read_csv

import pandas as pd

data = pd.read_csv(data_file)
print(data)

resultado de impresión

   NumRooms Alley   Price
0       NaN  Pave  127500
1       2.0   NaN  106000
2       4.0   NaN  178100
3       NaN   NaN  140000

Manejar valores faltantes

Dividir los datos en datos de entrada y salida:
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2]
para manejar los datos faltantes, los métodos típicos incluyen la interpolación y la eliminación.
Por ejemplo,
inputs.fillna(inputs.mean())la interpolación del valor medio
inputs = pd.get_dummies(inputs, dummy_na=True)convierte los datos de la cadena en 0 o 1.
El método específico puede consultar los datos

convertir a tensor

Todas las entradas de entradas y salidas son de tipo numérico y deben convertirse al formato de tensor para facilitar los cálculos futuros.
X, y = torch.tensor(inputs.values), torch.tensor(outputs.values)

fin

Supongo que te gusta

Origin blog.csdn.net/p3116002589/article/details/116993987
Recomendado
Clasificación