INGEOTEC is a research group formed by researchers of two research centers: CentroGEO and INFOTEC; and Cátedras CONACYT.

INGEOTEC research interest is text categorization seen as a supervised learning problem, that is, as a classification task. In this problem, we have developed two text modeling techniques that represent the text in a vector space model and use a Support Vector Machine as a classifier. These techniques are B4MSA which is a sentiment analysis classifier and microTC a general text classifier. In addition this, we have been working on novel classifiers based on Genetic Programming EvoDAG.

In sentiment analysis, author profiling and text-image matching problem, we have participated in a number of competitions such as:

  • IberEval'18 (Spanish HAHA) INGEOTEC obtained 1st place in humor analysis respectively (see Proceedings)
  • IberEval'18 (Spanish, MEX-A3T). INGEOTEC obtained 1st and 3rd place in Aggressiveness detection and Author profiling task, respectively (see Proceedings)
  • PAN'18 (Arabic, English and Spanish). INGEOTEC obtained the 3rd place (23 participants) in global ranking (see Proceedings)
  • RedICA Text-Image Matching (RICATIM) Challenge. I3GO+ obtained the 1st place in the development and final phase (see Results).
  • TASS'17 (Spanish). INGEOTEC obtained the 1st place (11 teams) in Task 1 (General Corpus of TASS) (see Proceedings).
  • PAN'17 (Arabic, English, Portuguese and Spanish). INGEOTEC (Tellez et al.) obtained the 3rd place (22 participants) in global ranking (see Results)
  • SemEval'17 (English and Arabic). INGEOTEC obtained the 6th place (69 participants) in English (see Results) and 4th (18 participants) in Arabic (see Results).
  • SENTIPOLC'16 (Italian). INGEOTEC obtained 5th place (15 participants) in subjective classification and 9th (15 participants) in polarity classification (see Proceeding).
  • TASS'16 (Spanish). INGEOTEC obtained the 3rd place in 3 and 5 polarity levels (see Proceedings).
  • TASS'15 (Spanish). This is our first competition where it was obtained 12th (17 participants) in 5 polarity levels and 10th (17 participants) in 3 polarity levels (see Proceedings).


PhD Students

  • M.C. Abel Coronado Iruegas.
  • M.C. Pablo López Ramírez.
  • M.C. José Ortiz Bejar. Scholar Google
  • M.C. Claudia Nallely Sánchez Gómez.
  • M.C. Vladimir Salgado Ramirez.
  • M.C. Sergio Martín Nava Muñoz.
  • M.C. José Manuel Aguilera López.


In order to facilitate and encourage the reproducibility of our research, we have decided to make the software available with an open-source license and available through We have decided to implement our developments in Python following some continuous integration techniques (using, unit testing (using nose), and coverage (using Coveralls).

A Baseline for Multilingual Sentiment Analysis (B4MSA)

B4MSA is a Python Sentiment Analysis Classifier for Twitter-like short texts. It can be used to create a first approximation to a sentiment classifier on any given language. It is almost language-independent, but it can take advantage of the particularities of a language.

It is written in Python making use of NTLK and scikit-learn to create compelling but straightforward sentiment classifiers.


microTC follows a minimalistic approach to text classification. It is designed to tackle text-classification problems in an agnostic way, being both domain and language independent. Currently, we only produce single-label classifiers; but support for multi-labeled problems is in the roadmap.

microTC is intentionally simple, so only a small number of features where implemented. However, it uses a some complex tools from numpy and scikit-learn.

EvoMSA: A Multilingual Evolutionary Approach for Sentiment Analysis

EvoMSA is a Sentiment Analysis System based on B4MSA and EvoDAG. EvoMSA is a stack generalization algorithm specialized on text classification problems. It works by combining the output of different text models to produce the final prediction.

Evolving Directed Acyclic Graph (EvoDAG)

Evolving Directed Acyclic Graph (EvoDAG) is a steady-state Genetic Programming system with tournament selection. The main characteristic of EvoDAG is that the genetic operation is performed at the root. EvoDAG was inspired by the geometric semantic crossover proposed by Alberto Moraglio et al. and the implementation performed by Leonardo Vanneschi et al.

EvoDAG is described in the following conference paper EvoDAG: A semantic Genetic Programming Python library Mario Graff, Eric S. Tellez, Sabino Miranda-Jiménez, Hugo Jair Escalante. 2016 IEEE International Autumn Meeting on Power, Electronics and Computing (ROPEC) pp 1-6. A pre-print version can be download from here.


The lectures below have been given at the Master degree program in Data Science at INFOTEC Centro de Investigación e Innovación en Tecnologías de la Información y Comunicación. The lectures Procesamiento de Información and Aprendizaje Computacional are given at the second semester. Clasificación de Texto corresponds to the third semester.


117 Circuito Tecnopolo Norte Col. Tecnopolo Pocitos II, C.P. 20313, Aguascalientes, Ags, México.

Tel. +52 (449) 994 51 50 Ext. 5251 and 5230


112 Circuito Tecnopolo Norte Col. Tecnopolo Pocitos II, C.P. 20313, Aguascalientes, Ags, México.

Tel. +52 (555) 624 28 00 Ext. 6315, 6353, 6313 and 6384