Isaac Isaías commited on
Commit
7e0d4e7
1 Parent(s): 0d93e4f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +36 -32
app.py CHANGED
@@ -6,46 +6,46 @@ title = "Clasificador de Tesis"
6
  description = "Clasifica el texto de una tesis con la carrera a la que le pertenece."
7
 
8
  article = """
9
- ## Obtención de los datos
10
 
11
- ### Motivos y Objetivo de la Obtención de los Datos
12
 
13
- La creación de este dataset ha sido motivado por la participación en el Hackathon 2022 de PLN en Español organizado por Somos NLP, con el objetivo de democratizar el NLP en español y promover su aplicación a buenas causas y, debido a que no existe un dataset de tesis en español.
14
 
15
- ### Proceso de Obtención
16
 
17
- Se optó realizar un [scraper](https://github.com/IsaacIsaias/NLP-clasificador-tesis/blob/main/main.py) para conseguir la información. Se decidió usar la base de datos [TESIUNAM](https://tesiunam.dgb.unam.mx/F?func=find-b-0&local_base=TES01), la cual es un catálogo en donde se pueden visualizar las tesis de los sustentantes que obtuvieron un grado en la Universidad Nacional Autónoma de México (UNAM), así como de las tesis de licenciatura de escuelas incorporadas a ella.
18
 
19
- Para ello, en primer lugar se consultó la [Oferta Académica](http://oferta.unam.mx/indice-alfabetico.html) de la Universidad, sitio de donde se extrajo cada una de las 131 licenciaturas en forma de lista. Después, se analizó cada uno de los casos presente en la base de datos, debido a que existen carreras con más de 10 tesis, otras con menos de 10, o con solo una o ninguna tesis disponible. Se usó Selenium para la interacción con un navegador Web (Edge) y está actualmente configurado para obtener las primeras 20 tesis, o menos, por carrera.
 
 
 
 
 
 
 
20
 
21
- Este scraper obtiene de esta base de datos:
22
- - Nombres del Autor
23
- - Apellidos del Autor
24
- - Título de la Tesis
25
- - Año de la Tesis
26
- - Carrera de la Tesis
27
 
28
- A la vez, este scraper descarga cada una de las tesis en la carpeta *Downloads* del equipo local.
29
 
30
- En el csv formado por el scraper se añadió el Resumen/Introduccion/Conclusion de la tesis, dependiendo cual primero estuviera disponible, ya que la complejidad recae en la diferencia de la estructura y formato de cada una de las tesis.
 
 
 
 
 
31
 
32
- Posteriormente, se le realizó un procesado al dataset con las siguientes tareas:
33
- - Conversión a minúsculas
34
- - Tokenización
35
- - Eliminación de palabras que no son alfanuméricas
36
- - Eliminación de palabras vacías
37
- - Stemming: eliminación de plurales
38
-
39
- ## Impacto Social
40
 
41
- El presente conjunto de datos favorecerá la búsqueda e investigación relacionada con tesis en español, a partir de su categorización automática por un modelo entrenado con este dataset. Esta tarea favorece el cumplimiento del Objetivo 4 de Desarrollo Sostenible de la ONU: Educación y Calidad (https://www.un.org/sustainabledevelopment/es/objetivos-de-desarrollo-sostenible/).
42
 
43
- ## Miembros del Equipo:
44
 
45
- - Isaac Isaías López López ([MajorIsaiah](https://huggingface.co/MajorIsaiah))
46
- - Dionis López Ramos ([inoid](https://huggingface.co/inoid))
47
- - Yisel Clavel Quintero ([clavel](https://huggingface.co/clavel))
48
- - Ximena Yeraldin López López ([Ximyer](https://huggingface.co/Ximyer))
49
  """
50
 
51
  tokenizer = AutoTokenizer.from_pretrained('hiiamsid/BETO_es_binary_classification', use_fast=False)
@@ -134,11 +134,15 @@ examples = [["Introducción al análisis de riesgos competitivos bajo el enfoque
134
  if __name__ == "__main__":
135
  gr.Interface(
136
  fn=thesis_prediction,
137
- inputs=gr.inputs.Textbox(
138
- lines=2,
 
139
  placeholder="Ingrese de favor el título de la tesis o un fragmento de esta."
140
- ),
141
- outputs=["text"],
 
 
 
142
  title=title,
143
  description=description,
144
  article=article,
 
6
  description = "Clasifica el texto de una tesis con la carrera a la que le pertenece."
7
 
8
  article = """
9
+ ## Obtención de los datos
10
 
11
+ ### Motivos y Objetivo de la Obtención de los Datos
12
 
13
+ La creación de este dataset ha sido motivado por la participación en el Hackathon 2022 de PLN en Español organizado por Somos NLP, con el objetivo de democratizar el NLP en español y promover su aplicación a buenas causas y, debido a que no existe un dataset de tesis en español.
14
 
15
+ ### Proceso de Obtención
16
 
17
+ Se optó realizar un [scraper](https://github.com/IsaacIsaias/NLP-clasificador-tesis/blob/main/main.py) para conseguir la información. Se decidió usar la base de datos [TESIUNAM](https://tesiunam.dgb.unam.mx/F?func=find-b-0&local_base=TES01), la cual es un catálogo en donde se pueden visualizar las tesis de los sustentantes que obtuvieron un grado en la Universidad Nacional Autónoma de México (UNAM), así como de las tesis de licenciatura de escuelas incorporadas a ella.
18
 
19
+ Para ello, en primer lugar se consultó la [Oferta Académica](http://oferta.unam.mx/indice-alfabetico.html) de la Universidad, sitio de donde se extrajo cada una de las 131 licenciaturas en forma de lista. Después, se analizó cada uno de los casos presente en la base de datos, debido a que existen carreras con más de 10 tesis, otras con menos de 10, o con solo una o ninguna tesis disponible. Se usó Selenium para la interacción con un navegador Web (Edge) y está actualmente configurado para obtener las primeras 20 tesis, o menos, por carrera.
20
+
21
+ Este scraper obtiene de esta base de datos:
22
+ - Nombres del Autor
23
+ - Apellidos del Autor
24
+ - Título de la Tesis
25
+ - Año de la Tesis
26
+ - Carrera de la Tesis
27
 
28
+ A la vez, este scraper descarga cada una de las tesis en la carpeta *Downloads* del equipo local.
 
 
 
 
 
29
 
30
+ En el csv formado por el scraper se añadió el Resumen/Introduccion/Conclusion de la tesis, dependiendo cual primero estuviera disponible, ya que la complejidad recae en la diferencia de la estructura y formato de cada una de las tesis.
31
 
32
+ Posteriormente, se le realizó un procesado al dataset con las siguientes tareas:
33
+ - Conversión a minúsculas
34
+ - Tokenización
35
+ - Eliminación de palabras que no son alfanuméricas
36
+ - Eliminación de palabras vacías
37
+ - Stemming: eliminación de plurales
38
 
39
+ ## Impacto Social
 
 
 
 
 
 
 
40
 
41
+ El presente conjunto de datos favorecerá la búsqueda e investigación relacionada con tesis en español, a partir de su categorización automática por un modelo entrenado con este dataset. Esta tarea favorece el cumplimiento del Objetivo 4 de Desarrollo Sostenible de la ONU: Educación y Calidad (https://www.un.org/sustainabledevelopment/es/objetivos-de-desarrollo-sostenible/).
42
 
43
+ ## Miembros del Equipo:
44
 
45
+ - Isaac Isaías López López ([MajorIsaiah](https://huggingface.co/MajorIsaiah))
46
+ - Dionis López Ramos ([inoid](https://huggingface.co/inoid))
47
+ - Yisel Clavel Quintero ([clavel](https://huggingface.co/clavel))
48
+ - Ximena Yeraldin López López ([Ximyer](https://huggingface.co/Ximyer))
49
  """
50
 
51
  tokenizer = AutoTokenizer.from_pretrained('hiiamsid/BETO_es_binary_classification', use_fast=False)
 
134
  if __name__ == "__main__":
135
  gr.Interface(
136
  fn=thesis_prediction,
137
+ inputs=[gr.inputs.Textbox(
138
+ lines=5,
139
+ label="Título o frase:",
140
  placeholder="Ingrese de favor el título de la tesis o un fragmento de esta."
141
+ optional=False,
142
+ ),],
143
+ outputs=[gr.outputs.HTML(
144
+ label="La tesis pertenece a la carrera de:",)
145
+ ],
146
  title=title,
147
  description=description,
148
  article=article,