Descripción general de la clasificación de textos

Deep Learning para texto con PyTorch

Shubham Jain

Instructor

Definición de la clasificación de textos

"- Asignar etiquetas al texto

  • Dar significado a las palabras y oraciones

Tipos de clasificación en machine learning {{6}}"

"- Organiza y da estructura a datos no estructurados

  • Aplicaciones:

    • Analizar el sentimiento de los clientes en reseñas
    • Detectar spam en correos electrónicos
    • Etiquetar artículos de noticias con temas relevantes
  • Tipos: binario, multiclase, multilabel {{6}}"

Deep Learning para texto con PyTorch

Clasificación binaria

"- Clasificación en dos categorías

  • Ejemplo: detección de spam en correos electrónicos
  • Los correos electrónicos pueden clasificarse como 'spam' o 'no spam' {{2}}"

"Clasificación binaria {{2}}"

1 https://storage.googleapis.com/gweb-cloudblog-publish/images/image4_v2LFcq0.max-1200x1200.png
Deep Learning para texto con PyTorch

Clasificación multiclase

"Clasificación de noticias {{2}}"

"- Clasificación en múltiples categorías

  • Ejemplo: los artículos de noticias se pueden clasificar en varias categorías como
    1. Política
    2. Deportes
    3. Tecnología {{5}}"
Deep Learning para texto con PyTorch

Clasificación multietiqueta

"- A cada texto se le pueden asignar varias etiquetas

  • Ejemplo: Libros pueden ser de varios géneros
    • Acción
    • Aventura
    • Fantasía {{4}}"
Deep Learning para texto con PyTorch

¿Qué son las incrustaciones de palabras?

"Flujo de trabajo de Word Embedding

Ejemplo de Word Embedding {{3}}"

"- Las técnicas de codificación anteriores son un buen primer paso

- A menudo se crean demasiadas características y no se pueden identificar palabras similares
  • Las incrustaciones de palabras asignan palabras a vectores numéricos
  • Ejemplo de relación semántica:
    • Rey y reina
    • Hombre y mujer {{4}}"
Deep Learning para texto con PyTorch

Asignación de palabras a índices

"- Ejemplo:

  • \"Rey\" -> 1
  • \"Reina\" -> 2
    • Compacto y computacionalmente eficiente
    • Sigue la tokenización en la cadena de procesamiento {{3}}"
Deep Learning para texto con PyTorch

Incrustaciones de palabras en PyTorch

"- torch.nn.Embedding:

  • Crea vectores de palabras a partir de índices
  • Entrada: Índices para ['The', 'cat', 'sat', 'on', 'the', 'mat']

out Embedding para 'the': tensor([-0.4689, 0.3164, -0.2971, -0.1291, 0.4064]) Embedding para 'cat': tensor([-0.0978, -0.4764, 0.0476, 0.1044, -0.3976]) Embedding para 'sat': tensor([ 0.2731, 0.4431, 0.1275, 0.1434, -0.4721]){{4}}"

Deep Learning para texto con PyTorch

Uso de torch.nn.Embedding

"`py import torch from torch import nn


----CODE_GLUE----
```py
words = [\"The\", \"cat\", \"sat\", \"on\", \"the\", \"mat\"]
word_to_idx = {word: i for i, word in enumerate(words)}

inputs = torch.LongTensor([word_to_idx[w] for w in words])
embedding = nn.Embedding(num_embeddings=len(words), embedding_dim=10)
output = embedding(inputs)
print(output)

out tensor([[ 1.0624, 0.6792, 0.0459, ... -1.0828, -0.4475, 0.4868], ... [1.5766, 0.0106, 0.1161, ...,, -0.0859, 1.3160, 1.3621]){{6}}"

Deep Learning para texto con PyTorch

Uso de incrustaciones en la canalización

"`python def preprocess_sentences(text):

Tokenization

Stemming

...


----CODE_GLUE----
```python
  # Word to index mapping

----CODE_GLUE---- `python class TextDataset(Dataset): def init(self, encoded_sentences): self.data = encoded_sentences

def __len__(self):
    return len(self.data)

def __getitem__(self, index):
    return self.data[index]

`"

"`python def text_processing_pipeline(text): tokens = preprocess_sentences(text) dataset = TextDataset(tokens) dataloader = DataLoader(dataset, batch_size=2, shuffle=True) return dataloader, vectorizer


----CODE_GLUE----
```python

text = \"Tu texto de ejemplo aquí.\"
dataloader, vectorizer = text_processing_pipeline(text)

----CODE_GLUE---- `python embedding = nn.Embedding(num_embeddings=10, embedding_dim=50)

for batch in dataloader: output = embedding(batch) print(output) `{{1}}"

Deep Learning para texto con PyTorch

Es hora de la práctica.

Deep Learning para texto con PyTorch

Preparing Video For Download...