miguelmejias0512 commited on
Commit
bc31cf3
·
verified ·
1 Parent(s): 8964e24

🔧 Corregir metadata: re-subir README para asegurar consistencia

Browse files
Files changed (1) hide show
  1. README.md +216 -0
README.md ADDED
@@ -0,0 +1,216 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ # Model Card for QLoRA Fine-Tuned DeepSeek-LLM-7B-Base
3
+
4
+ ## Model Details
5
+
6
+ ### Model Description
7
+ Esta es una versión optimizada mediante QLoRA (Adaptación Cuantizada de Bajo Rango) del modelo DeepSeek-LLM-7B-Base. El modelo base es un modelo de lenguaje de 7 mil millones de parámetros desarrollado por DeepSeek AI. Esta versión optimizada se ha adaptado utilizando técnicas de QLoRA para optimizar el rendimiento en tareas específicas, manteniendo la eficiencia.
8
+
9
+ - **Desarrollado por:** [Su nombre/Organización]
10
+ - **Tipo de modelo:** Modelo de lenguaje basado en transformadores
11
+ - **Idioma(s):** Principalmente inglés y español
12
+ - **Licencia:** deepseek
13
+ - **Optimizado a partir del modelo:**[deepseek-ai/deepseek-llm-7b-base](https://huggingface.co/deepseek-ai/deepseek-llm-7b-base)
14
+
15
+ ### Training Procedure
16
+ El modelo se ajustó con QLoRA (Adaptación Cuantizada de Bajo Rango), que permite un ajuste preciso y eficiente de modelos de lenguaje extensos mediante:
17
+ - La cuantificación de 4 bits del modelo base
18
+ - La adición de pequeños adaptadores de bajo rango entrenables
19
+ - La congelación de la mayoría de los parámetros del modelo original
20
+
21
+ #### Training Hyperparameters
22
+ - **Training regime:** QLoRA fine-tuning
23
+ - **Learning rate:** [2e-4]
24
+ - **Batch size:** [1]
25
+ - **Epochs:** [300]
26
+ - **LORA parameters:**
27
+ - Rank: [8]
28
+ - Alpha: [16]
29
+ - Dropout: [0.1]
30
+ - **Optimizer:** [Your optimizer]
31
+
32
+ ## Uses
33
+
34
+ ### Direct Use
35
+
36
+ Este modelo puede ser usado para clasificación de texto en dominios específicos como...
37
+
38
+ ### Downstream Use
39
+
40
+ Este modelo podría ser fine-tuned para:
41
+ - Análisis de sentimiento en redes sociales
42
+ - Clasificación de tickets de soporte
43
+ - Detección de contenido inapropiado
44
+
45
+ ### Out-of-Scope Use
46
+
47
+ El modelo no debe ser usado para:
48
+ - Textos en otros idiomas no incluidos en el entrenamiento
49
+ - Dominios muy diferentes a los datos de entrenamiento
50
+ - Toma de decisiones críticas sin supervisión humana
51
+
52
+ ## Bias, Risks, and Limitations
53
+
54
+ **Sesgos identificados:**
55
+ - Puede presentar peor rendimiento en textos con jerga regional
56
+ - Sesgo hacia variedades dialectales presentes en los datos de entrenamiento
57
+ - Sensibilidad a textos con ortografía no convencional
58
+
59
+ **Limitaciones:**
60
+ - Tamaño máximo de entrada: 512 tokens
61
+ - Rendimiento disminuido en textos muy cortos (<10 palabras)
62
+ - No captura bien el sarcasmo o ironía
63
+
64
+ **Riesgos:**
65
+ - Posibles falsos positivos/negativos en casos críticos
66
+ - No debe usarse como único criterio para decisiones automatizadas
67
+
68
+ ## Training Data
69
+
70
+ **Dataset utilizado:** Nombre del dataset
71
+
72
+ **Características:**
73
+ - Tamaño: X ejemplos de entrenamiento, Y de validación
74
+ - Distribución de clases:
75
+ - Clase A: 60%
76
+ - Clase B: 30%
77
+ - Clase C: 10%
78
+ - Fuente: Origen de los datos
79
+
80
+ **Preprocesamiento especial:**
81
+ 1. Normalización de texto:
82
+ - Conversión a minúsculas
83
+ - Eliminación de caracteres especiales
84
+ - Corrección de acentos
85
+ 2. Tokenización especial para términos del dominio
86
+ 3. Balanceo de clases mediante oversampling para clases minoritarias
87
+ 4. Eliminación de stopwords personalizada
88
+
89
+ ### Training Procedure
90
+
91
+ - **Framework:** PyTorch + Transformers
92
+ - **Hardware:** 1x NVIDIA V100 GPU
93
+ - **Training Hyperparameters:**
94
+ - learning_rate: 2e-5
95
+ - batch_size: 16
96
+ - num_epochs: 3
97
+ - weight_decay: 0.01
98
+ - warmup_steps: 500
99
+
100
+ #### Training Results
101
+
102
+ {visualization}
103
+
104
+ | Metric | Train | Validation |
105
+ |--------|-------|------------|
106
+ | Loss | 0.123 | 0.156 |
107
+ | Accuracy | 0.956 | 0.932 |
108
+ | F1 | 0.953 | 0.928 |
109
+
110
+
111
+ ## Evaluation
112
+
113
+ ### Testing Data
114
+
115
+ - Dataset independiente de Z ejemplos
116
+ - Distribución balanceada
117
+ - Incluye casos edge recolectados específicamente
118
+
119
+ ### Results
120
+
121
+ | Metric | Value |
122
+ |--------|-------|
123
+ | Accuracy | 0.925 |
124
+ | Precision | 0.928 |
125
+ | Recall | 0.923 |
126
+ | F1 | 0.925 |
127
+
128
+ **Ejemplos de errores comunes:**
129
+ - Confunde X con Y en casos de negaciones dobles
130
+ - Bajo rendimiento en textos con mezcla de idiomas
131
+
132
+
133
+ ## Technical Specifications
134
+
135
+ ### Model Architecture and Objective
136
+
137
+ El modelo sigue la arquitectura del transformador del modelo original DeepSeek-LLM-7B-Base con adaptadores QLoRA agregados durante el ajuste fino.
138
+
139
+ ### Compute Infrastructure
140
+
141
+ - **Hardware:** [Your hardware]
142
+ - **Training time:** [Your training duration]
143
+
144
+ ## How to Get Started with the Model
145
+
146
+ ### Carga básica del modelo
147
+
148
+ ```python
149
+ from transformers import AutoModelForSequenceClassification, AutoTokenizer
150
+ import torch
151
+
152
+ model = AutoModelForSequenceClassification.from_pretrained("{repo_id}")
153
+ tokenizer = AutoTokenizer.from_pretrained("{repo_id}")
154
+
155
+ # Ejemplo de inferencia
156
+ text = "Texto de ejemplo a clasificar"
157
+ inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True, max_length=512)
158
+
159
+ with torch.no_grad():
160
+ outputs = model(**inputs)
161
+ predictions = torch.softmax(outputs.logits, dim=-1)
162
+
163
+ print(f"Probabilidades por clase: {predictions.numpy()}")
164
+ Preprocesamiento necesario
165
+ python
166
+ def preprocess_text(text):
167
+ # Implementa aquí el mismo preprocesamiento usado en entrenamiento
168
+ text = text.lower()
169
+ # ... más pasos
170
+ return text
171
+
172
+ # Uso completo con preprocesamiento
173
+ raw_text = "TEXTO Crudo con MAYÚSCULAS y signos!"
174
+ processed_text = preprocess_text(raw_text)
175
+ inputs = tokenizer(processed_text, return_tensors="pt", truncation=True, padding=True)
176
+ # ... resto del código de inferencia
177
+ Ejemplo completo con post-procesamiento
178
+ python
179
+ import numpy as np
180
+
181
+ class_names = ["clase_A", "clase_B", "clase_C"] # Reemplaza con tus clases
182
+
183
+ def predict(text):
184
+ # Preprocesamiento
185
+ processed_text = preprocess_text(text)
186
+
187
+ # Tokenización
188
+ inputs = tokenizer(processed_text, return_tensors="pt", truncation=True, padding=True, max_length=512)
189
+
190
+ # Inferencia
191
+ with torch.no_grad():
192
+ outputs = model(**inputs)
193
+ probs = torch.softmax(outputs.logits, dim=-1).numpy()[0]
194
+
195
+ # Resultado
196
+ return {class_names[i]: float(probs[i]) for i in range(len(class_names))}
197
+
198
+ # Ejemplo de uso
199
+ result = predict("Este es un texto de ejemplo para clasificar")
200
+ print(result)
201
+ ```
202
+
203
+ ## Citation
204
+
205
+ BibTeX:
206
+
207
+ bibtex
208
+ @misc{deepseek-ai/deepseek-llm-7b-base},
209
+ author = {miguelmejias0512},
210
+ title = {deepseek-solidity-coder-llm-7b-finetuned},
211
+ year = {{datetime.now().year}},
212
+ publisher = {{Hugging Face}},
213
+ howpublished = {{\url{{https://huggingface.co/miguelmejias5012/deepseek-solidity-coder-llm-7b-finetuned}}}},
214
+
215
+ APA Style:
216
+ miguelmejias5012. (datetime.now().year). {deepseek-solidity-coder-llm-7b-finetuned} [Software]. Hugging Face. https://huggingface.co/miguelmejias5012/deepseek-solidity-coder-llm-7b-finetuned