File size: 1,889 Bytes
4006f94
46a795e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4006f94
 
46a795e
4006f94
46a795e
4006f94
46a795e
4006f94
46a795e
4006f94
46a795e
 
 
4006f94
46a795e
 
 
 
4006f94
46a795e
 
 
4006f94
46a795e
 
 
 
4006f94
46a795e
 
 
4006f94
46a795e
4006f94
46a795e
 
 
 
 
4006f94
46a795e
4006f94
46a795e
 
4006f94
46a795e
4006f94
46a795e
4006f94
46a795e
4006f94
46a795e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
---
language:
- es
license: apache-2.0
tags:
- text-classification
- bert
- requirements-engineering
- condition-action
- software-requirements
datasets:
- custom
metrics:
- accuracy
- f1
model-index:
- name: condition-extractor-model
  results:
  - task:
      type: text-classification
      name: Clasificación de Condiciones-Acciones
    metrics:
    - type: accuracy
      value: 0.975
      name: Accuracy
    - type: f1
      value: 0.975
      name: F1 Score
---

# condition-extractor-model

## Descripción

Modelo BERT fine-tuned para clasificar oraciones de requisitos de software que contienen estructuras condición-acción.

## Uso

```python
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

# Cargar modelo
model_name = "Kevinsanchez11/condition-extractor-model"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)

# Predecir
texto = "Si el usuario presiona el botón, el sistema valida los datos"
inputs = tokenizer(texto, return_tensors="pt", max_length=128, truncation=True, padding=True)

with torch.no_grad():
    outputs = model(**inputs)
    probs = torch.softmax(outputs.logits, dim=1)
    pred = torch.argmax(probs, dim=1).item()

resultado = "Tiene condición-acción" if pred == 1 else "No tiene condición-acción"
print(f"{resultado} ({probs[0, pred].item()*100:.1f}%)")
```

## Entrenamiento

- **Modelo base**: dccuchile/bert-base-spanish-wwm-uncased
- **Dataset**: 523 oraciones de requisitos de software
- **Épocas**: 5 (con early stopping)
- **Accuracy**: 97.5%
- **F1-Score**: 97.5%

## Etiquetas

- **0**: Sin condición-acción
- **1**: Con condición-acción (estructura Si/Cuando/Al... entonces...)

## Autores

Desarrollado para generación automática de casos de prueba a partir de requisitos de software.

## Licencia

Apache 2.0