File size: 10,907 Bytes
fbad345
 
 
 
 
 
 
fa17106
004d7cd
 
fa17106
fbad345
fa17106
 
898d599
fa17106
 
004d7cd
 
fa17106
 
e6fee6f
 
 
 
 
bdde149
e6fee6f
 
0e43ce3
fa17106
fbad345
fa17106
bdde149
004d7cd
 
bdde149
898d599
 
 
62cfe93
004d7cd
bdde149
898d599
 
fa17106
004d7cd
 
 
 
fa17106
9daa491
 
 
 
 
 
 
a94e850
 
93827f7
a94e850
004d7cd
a94e850
004d7cd
9daa491
004d7cd
9daa491
 
 
 
 
5ab40e5
9daa491
004d7cd
 
 
9daa491
 
 
8a0e22f
 
 
 
 
 
6ba88a5
 
 
004d7cd
6ba88a5
 
004d7cd
8a0e22f
 
 
5ab40e5
fa17106
5ab40e5
8a0e22f
004d7cd
8a0e22f
 
 
 
 
 
004d7cd
8a0e22f
 
004d7cd
8a0e22f
004d7cd
 
 
aaba24d
8a0e22f
 
1d52e47
8a0e22f
 
 
 
 
 
 
aaba24d
004d7cd
 
 
 
d53a1f2
004d7cd
 
 
 
 
 
9daa491
 
a94e850
9daa491
6aa40d0
 
 
 
62cfe93
 
 
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
title = "Modelo Jurídico Mexicano"
description = """
<div id="content"> 
    <div id="left"> 
        <center>
            <img src="https://www.pactomundial.org/wp-content/uploads/2021/10/16-paz-justicia-e-instituciones-solidas-3.jpg" width=200px>
        </center>
        <ul>
        <li>16.3 Promover el estado de derecho en los planos nacional e internacional y garantizar la igualdad de acceso a la justicia para todos.</li>
		<li>16.10 Garantizar el acceso público a la información y proteger las libertades fundamentales, de conformidad con las leyes nacionales y los acuerdos internacionales. </li>
		</ul>
    </div> 
    <div id="left"> 
        <center>
            <img src="https://www.pactomundial.org/wp-content/uploads/2021/10/4-educacion-de-calidad-3.jpg" width=200px>
        </center>
        <ul>
        <li>4.4  De aquí a 2030, aumentar considerablemente el número de jóvenes y adultos que tienen las competencias necesarias, en particular técnicas y profesionales, para acceder al empleo, el trabajo decente y el emprendimiento.</li>
		<li>4.7  De aquí a 2030, asegurar que todos los alumnos adquieran los conocimientos teóricos y prácticos necesarios para promover el desarrollo sostenible, entre otras cosas mediante la educación para el desarrollo sostenible y los estilos de vida sostenibles, los derechos humanos, la igualdad de género, la promoción de una cultura de paz y no violencia, la ciudadanía mundial y la valoración de la diversidad cultural y la contribución de la cultura al desarrollo sostenible. </li>
		</ul>
    </div> 
     <div id="left"> 
        <center>
            <img src="https://www.pactomundial.org/wp-content/uploads/2021/10/10-reduccion-de-las-desigualdades-3.jpg "ODS 10" width=200px>
        </center>
        <ul>
        <li>10.3 Garantizar la igualdad de oportunidades y reducir la desigualdad de resultados, incluso eliminando las leyes, políticas y prácticas discriminatorias y promoviendo legislaciones, políticas y medidas adecuadas a ese respecto.  </li>
		</ul>
    </div> 


</div>
## Motivación
- El gran esfuerzo y tiempo que se requiere analizar grandes cantidades de información que constantemente se encuentran cambiando.
- Buscar información puede llevarte demasiado tiempo no tanto por la acción en si, si no por el tiempo que inviertes en buscar la información necesaria y desechar toda aquella que no te aporta nada relacionado a tu tema de interés.
- Aún el cerebro humano con una gran capacidad de almacenamiento no puede competir con la cantidad de información que se genera día con día.
- Es difícil exigir algo que desconoces.

Por ello decidimos aventurarnos en la creación de modelos que permiten en términos generales:

- Extraer y recuperar información.
- Clasificar documentos.
- Identificar si los documentos son tan parecidos que podrían tartar de un mismo tema o incluso que se traten de los mismos.

Estos modelos integrados en diversos sistemas se pueden obtener beneficios como:

- Agilizar y facilitar el trabajo de quienes imparten justicia.
- Facilitar la búsqueda de los estudiantes e investigadores de derecho.
- Ayudar a la ciudadanía permitiéndole identificar si se esta violentando alguno de los Derechos Humanos que protegen el Sistema Universal o la Convención Americana de Derechos Humanos.
- Coadyuvar en la generación de indicadores sobre violaciones a los Derechos Humanos.

###  Este proyecto esta compuesto por los siguientes modelos:

- [hackathon-pln-es/jurisbert-finetuning-ner](https://huggingface.co/hackathon-pln-es/jurisbert-finetuning-ner)
- [hackathon-pln-es/jurisbert-class-tratados-internacionales-sistema-universal](https://huggingface.co/hackathon-pln-es/jurisbert-class-tratados-internacionales-sistema-universal)
- [hackathon-pln-es/jurisbert-clas-art-convencion-americana-dh](https://huggingface.co/hackathon-pln-es/jurisbert-clas-art-convencion-americana-dh)
- [hackathon-pln-es/jurisbert-tsdae-sentence-transformer](https://huggingface.co/hackathon-pln-es/jurisbert-tsdae-sentence-transformer)

### Como funciona el demo:

1. Requiere que se proporcionen dos textos (el primero denominada texto a analizar y el segundo texto a comparar), los cuales se pueden seleccionar de la lista de ejemplos.

2. Cada uno de estos textos pasa por cada uno de los modelos que conforman el proyecto.

	*  Primero, se utiliza el modelo de reconocimiento de entidades **jurisbert-finetuning-ner**. El cual, podría encontrar alguna entidad de tipo LEY o TRAT_INTL.

	* Segundo, se utiliza el modelo de clasificación **jurisbert-class-tratados-internacionales-sistema-universal** acorde al sistema universal de **Derechos Humanos** el cual se fundamenta en convenciones o pactos para identificar si podria existir alguna violación acorde a lo definido por la **ONU**.
	
	* Tercero, se utiliza el modelo de clasificación **jurisbert-clas-art-convencion-americana-dh** para identificar cual de los artículos de la **[Convención Americana de Derechos Humanos](https://www.cndh.org.mx/sites/default/files/doc/Programas/TrataPersonas/MarcoNormativoTrata/InsInternacionales/Regionales/Convencion_ADH.pdf)** se podría estar violentando.
	
	* Cuarto, para poder ejemplificar el modelo **jurisbert-tsdae-sentence-transformer** se aprovechan el texto a analizar y el texto a comparar para calcular la similitud entre ambos.
	
3. Se presentan los resultados obtenidos en el orden siguiente:

	* Primero lo obtenido para el texto a analizar.
	* Segundo, el porcentaje de similitud entre ambos textos.
	* Tercero, lo obtenido para el texto a comparar.
 
"""

article=""" 
### Retos

#### Creación de los datasets

El principal problema de entrenar modelos que pertenezcan a un dominio especializado como el **jurídico** que además sea en **español** se centra en la construcción de los **datasets** por la prácticamente inexistencia de los mismos.

Es por ello que tuvimos que crear dos datasets:

- [scjnugacj/scjn_dataset_corpus_tesis] (https://huggingface.co/datasets/scjnugacj/scjn_dataset_corpus_tesis) la información base fue obtenida del **[Buscador Juridico de la SCJN de México]** (https://bj.scjn.gob.mx/) utilizando como fuente de información: Tesis y filtrando la información por décima y undécima época; sin embargo, fue necesario realizar procesos de ETL para la limpieza de información no relevante y estructuración de los campos:
	* `id`: a `string` feature.
	* `text`: a `string` features.
- [scjnugacj/scjn_dataset_ner](https://huggingface.co/datasets/scjnugacj/scjn_dataset_ner) el primer reto para este dataset fue entender la estructura que debía tener para ser utilizado la tarea **NER** afortunadamente esto fue relativamente sencillo de encontrar y nos dimos cuenta que no éramos el único equipo con el mismo problema. La estructura del dataset para esta tarea es el siguiente:

	* `id`: a `string` feature.
	* `tokens`: a `list` of `string` features.
	* `ner_tags`: a `list` of classification labels (`int`). Full tagset with indices: {'O': 0, 'B-LEY': 1, 'I-LEY': 2, 'B-TRAT_INTL': 3, 'I-TRAT_INTL': 4}
	


Afortunadamente, teníamos claro que entidades nos interesaba identificar pero el reto estaba en crear el corpus anotado por la cantidad de ejemplos considerando como base los 27913 del dataset **scjn_corpus_tesis** aún utilizando una herramienta para realizar las anotaciones de manualmente el tiempo requerido era elevado es por ello que nos dimos a la rarea de crear un notebook que recibe una lista de los nombres de las leyes y tratados internacionales y realiza el ETL necesario para las anotaciones automáticamente, para asegurarnos de que todo estaba anotado acorde a lo esperado se extrajo una muestra para su verificación manual. 	


#### Compartir los datasets en HugginFace

Realizar la investigación de como compartir los datasets en HuggingFace represento un tiempo importante y la mejor forma que encontramos para hacerlo fue:

- Crear un script para utilizar la función **load_dataset** que lee desde un repositorio en github los archivos train.txt y dev.txt y los convierte en un **DatasetDict** para finalmente publicarlos con la función **push_to_hub**.

## Entrenamiento de los modelos
- Crear la línea base de los modelos.
- **hackathon-pln-es/jurisbert-finetuning-ner**
	* Espacio de almacenamiento para almacenar los checkpoints que requerían 1.4 GB de almacenamiento por lo que no podíamos entrenar de forma continua.
	* Los resultados de **F1** eran muy bajos.
	* La cantidad de datos en el corpus era tan elevado y disparejo que el tiempo para entrenar una época era muy alto.
	* Realizar múltiples entrenamientos hasta identificar cual era el mejor para realizar cual sería utilizado como base para el entrenamiento siguiente.
	* Fue necesario dar un paso atrás y revisar el dataset para realizar un análisis exploratorio e idear estrategias para balancear la muestra por lo que se acoto a: 
	
|  name   |train|validation|test|
|---------|----:|---------:|---:|
|SCJNNER|1396|345|0|

|  annotations|train|validation|test|
|---------|----:|---------:|---:|
|LEY|1084|329|0|
|TRAT_INTL|935|161|0|
	
- **jurisbert-class-tratados-internacionales-sistema-unviersal**
	* Se entrenó con un conjunto de datos que consta de 3,799 textos con su etiquetado a diferentes 8 tipos de convenios.
	* Los textos se transforman utilizando SimpleTransformers en el que se entrenó tres épocas con modelo base Roberta y modelo especifico Jurisbert el cual es un modelo de enmascaramiento con corpus jurídico en español.
	* La métrica de evaluación utilizada fue **Accuracy**.
- **jurisbert-clas-art-convencion-americana-dh** 
	* Se entrenó con un conjunto de datos que consta de 6,089 textos con su etiquetado a diferentes 30 tipos de artículos.
	* Los textos se transforman utilizando SimpleTransformers en el que se entrenó tres épocas con modelo base Roberta y modelo especifico Jurisbert el cual es un modelo de enmascaramiento con corpus jurídico en español.
	* La métrica de evaluación utilizada fue **Accuracy**.
- **jurisbert-tsdae-sentence-transformer**
	* Se entreno utilizando el dataset scjnugacj/scjn_dataset_corpus_tesis del cual se tomo una muestra de 25000 ejemplos.
	

### Team

El equipo esta conformado por [gpalomeque](https://huggingface.co/GPalomeque), [aureliopvs](https://huggingface.co/aureliopvs), [ceciliamacias](https://huggingface.co/ceciliamacias), [giomadariaga](https://huggingface.co/giomadariaga) y [cattsytabla](https://huggingface.co/cattsytabla)

### Consideraciones generales  y futuro

Como parte de pilares del Gobierno Abierto mediante el uso de sus ejes de colaboración e innovación se tiene como meta poder continuar con la creación de modelos que permitan crear plataformas de recuperación de información que brinde de manera oportuna y eficiente datos que agilicen tanto el acceso, así como la impartición de justicia.

"""