readme: ---
  widget:
  - text: "El dólar se dispara tras la reunión de la Fed"
  ---
  
  
  # Spanish News Classification Headlines
  
  SNCH: this model was developed by [M47Labs](https://www.m47labs.com/es/)  the goal is text classification, the base model use was [BETO](https://huggingface.co/dccuchile/bert-base-spanish-wwm-cased), however this model has not been fine-tuned on any dataset. The objective is to show the performance of this model when is used with the objective of inference without training at all.
  
  
  ## Dataset validation Sample
  
  Dataset size : 1000
  
  Columns: idTask,task content 1,idTag,tag.
  
  |task content|tag|
  |------|------|
  |Alcalá de Guadaíra celebra la IV Semana de la Diversidad Sexual con acciones de sensibilización|sociedad|
  |El Archipiélago Chinijo Graciplus se impone en el Trofeo Centro Comercial Rubicón|deportes|
  |Un total de 39 personas padecen ELA actualmente en la provincia|sociedad|
  |Eurocopa 2021 : Italia vence a Gales y pasa a octavos con su candidatura reforzada|deportes|
  |Resolución de 10 de junio de 2021, del Ayuntamiento de Tarazona de La Mancha (Albacete), referente a la convocatoria para proveer una plaza.|sociedad|
  |El primer ministro sueco pierde una moción de censura|politica|
  |El dólar se dispara tras la reunión de la Fed|economia|
  
  
  ## Labels:
  
   * ciencia_tecnologia
   
   * clickbait
   
   * cultura 
   
   * deportes
   
   * economia
   
   * educacion
   
   * medio_ambiente
   
   * opinion
   
   * politica
   
   * sociedad
   
  
  
  ## Example of Use
  
  ### Pipeline
  
  ```{python}
  
  import torch
  from transformers import AutoTokenizer, BertForSequenceClassification,TextClassificationPipeline
  
  
  review_text = 'los vehiculos que esten esperando pasajaeros deberan estar apagados para reducir emisiones'
  path = "M47Labs/spanish_news_classification_headlines_untrained"
  tokenizer = AutoTokenizer.from_pretrained(path)
  model = BertForSequenceClassification.from_pretrained(path)
  
  
  nlp = TextClassificationPipeline(task = "text-classification",
                  model = model,
                  tokenizer = tokenizer)
  
  print(nlp(review_text))
  
  ```
  
  ```[{'label': 'medio_ambiente', 'score': 0.2834321384291023}]```
  
  ### Pytorch
  
  ```{python}
  
  import torch
  from transformers import AutoTokenizer, BertForSequenceClassification,TextClassificationPipeline
  from numpy import np
  
  model_name  = 'M47Labs/spanish_news_classification_headlines_untrained'
  MAX_LEN = 32
  
  
  tokenizer = AutoTokenizer.from_pretrained(model_name)
  
  model = AutoModelForSequenceClassification.from_pretrained(model_name)
  
  texto = "las emisiones estan bajando, debido a las medidas ambientales tomadas por el gobierno"
  
  
  encoded_review = tokenizer.encode_plus(
    texto,
    max_length=MAX_LEN,
    add_special_tokens=True,
    #return_token_type_ids=False,
    pad_to_max_length=True,
    return_attention_mask=True,
    return_tensors='pt',
  )
  
  input_ids = encoded_review['input_ids']
  attention_mask = encoded_review['attention_mask']
  output = model(input_ids, attention_mask)
  
  _, prediction = torch.max(output['logits'], dim=1)
  print(f'Review text: {texto}')
  
  print(f'Sentiment  : {model.config.id2label[prediction.detach().cpu().numpy()[0]]}')
  
  ```
  
  ```Review text: las emisiones estan bajando, debido a las medidas ambientales tomadas por el gobierno```
  
  
  ```Sentiment  : opinion```
  
  
  A more in depth example on how to use the model can be found in this colab notebook: https://colab.research.google.com/drive/1XsKea6oMyEckye2FePW_XN7Rf8v41Cw_?usp=sharing
   
  
  ## Validation Results
   
  |Full Dataset||
  |------|------|
  |Accuracy Score|0.362|
  |Precision (Macro)|0.21|
  |Recall (Macro)|0.22|
  
  
  
   ![alt text](https://media-exp1.licdn.com/dms/image/C4D0BAQHpfgjEyhtE1g/company-logo_200_200/0/1625210573748?e=1638403200&v=beta&t=toQNpiOlyim5Ja4f7Ejv8yKoCWifMsLWjkC7XnyXICI "Logo M47")
  