# Hierarchical Clustering Based on Reports Generated by Scriptlattes

Wonder Alves, Saulo D. Santos, Pedro Schimit

► To cite this version:

Wonder Alves, Saulo D. Santos, Pedro Schimit. Hierarchical Clustering Based on Reports Generated by Scriptlattes. IFIP International Conference on Advances in Production Management Systems (APMS), Sep 2016, Iguassu Falls, Brazil. pp.28-35, 10.1007/978-3-319-51133-7_4. hal-01615783

HAL Id: hal-01615783

https://inria.hal.science/hal-01615783

Submitted on 12 Oct 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Hierarchical Clustering Based on Reports Generated by Scriptlattes

Wonder A. L. Alves, Saulo D. Santos and Pedro H. T. Schimit

Universidade Nove de Julho, São Paulo, Brazil

`{wonder, saulods, schimit}@uni9.pro.br`

**Abstract.** Scriptlattes has been used as an important tool to analyze a cur-
riculum database of Brazilian researchers (Lattes curriculum). Such anal-
ysis enables a user generating reports for specific research field, knowl-
edge area, graduate courses, and so forth. However, when users need a re-
port of a Graduate Program, for instance, it is necessary to create subsets
of information in order to run the script. Since each report needs a subset,
in this paper we propose a hierarchical clustering method to categorize
reports generated by Scriptlattes. Finally, experimental results show hi-
erarchical clustering of a higher education institution, and approaches to
stress such clustering.

**Keywords.** Lattes curriculum · Sucupira platform · Scriptlattes · Clustering · Hierarchical clustering.

# 1 Introduction

The growth of scientific community in the last decades created new issues to quantify the production, quality and innovation of research results. Besides the evaluation of researchers, institutes and countries concerning the research that has been done, keep a robust database of the activities and production is becoming crucial to manage the research properly. In this direction, several computational tools specific to the scientific community have been developed, including: social networks [1], institutional [2] and patents [3] repositories, curriculum platforms [4] and others [5] [6].

In Brazil, it is practically mandatory that all researchers keep their Lattes
curriculum updated. Created with effort from the National Counsel of Tech-
nological and Scientific Development (CNPq - *Conselho Nacional de Desenvolvi-
mento Científico e Tecnológico*), Lattes platform allows that every curriculum is
available online to public consultation [7,8]. Therefore, if a researcher wants
to apply to a position in an University, sure his Lattes will be consulted previ-
ously by the University commission. According to CNPq, the Lattes Platform
exceeds 3 million Lattes curriculum, being 6.35% of PhDs, 10.85% of masters
27.69% of graduates, 16.18% of specialists, 35.54% other levels and 3.39% of
Lattes curriculum that do not have the information [9].

Although the public information is individually available for each researcher,
automatic compilation of data to generate reports concerning scientific produc-
tion of a certain research group is not an easy task, and it is not provided by
Lattes plataforma. Regarding this problem, ScriptLattes has been created as an open source tool to make the information extraction easier. Given a group of researchers registered in the Lattes platform, ScriptLattes downloads the curriculums in html format, extracts the information of interest, eliminates redundancies and create reports [8]. It is important to remember that the Scriptlattes has been widely used by various studies in Brazil and the results so far have been of great value as can seen in [10,11,12,13,14,15,16,17,18].

Informations that can be collected by using ScriptLattes are, for instance, statistic descriptions and collaboration graphs. This collection of information of curriculums is performed globally for all dataset and then the Scriptlattes displays the report produced by HTML pages containing links between its pages. Further, Scriptlattes user can be interested in getting reports with different views of dataset, such as: specific research line, course, knowledge area and so forth. Each report needs a subset of the dataset (eg, segmenting the curriculum by some criteria) and a execution of the subset.

From this limitation of Scriptlattes, this paper proposes a method that use Scriptlattes functionality to categorize reports generated by Scriptlattes. Precisely, this categorization is modeled by elements of graph theory in which is constructed a partially ordered set that induces a hierarchy based on a categorization of the data. Thus, the nodes represent subsets of curriculum grouped by some criteria that associates them. Finally, running a Scriptlattes for each node, user has different views of the dataset with its own settings (subsets of curriculum and customizations in general).

This paper is organized as follows: Section ?? has definitions and properties about hierarchical clustering. In Section ??, the proposed method is described. Results and applications of the hierarchical clustering of a higher education institution are in Section ?? . Finally, Section 5 has conclusions and future works.

2 Theoretical Background

Consider Cv a set of Lattes curriculum. In machine learning, we say that P is a clustering (partition) on the dataset Cv if and only if P containing n groups (subsets) S$_{1}$ , S$_{2}$ , ..., S$_{n}$ of Cv such that the following conditions hold:

1. The clustering P does not contain the empty set, i.e.,

$$
\emptyset \notin \mathbb{P}. \tag{1}
$$

2. The union of the groups in P is equal to Cv, i.e.,

$$
\mathrm{Cv} = \bigcup_{S_i \in \mathbb{P}} S_i. \tag{2}
$$

3. The intersection of any two distinct groups in P is empty.

$$
\forall S_i, S_j \in \mathbb{P}, S_i \neq S_j \Rightarrow S_i \cap S_j = \emptyset. \quad (3)
$$
In this paper, we denote that $\mathbb{P}(C)$ is the group $S_i \in \mathbb{P}$ containing the Lattes curriculum C, i.e., $\mathbb{P}(C) = S_i$ if and only if $C \in S_i$. Thus, we define a binary relation *finer than* on the set of clusterings of Cv, as follows: for any two clustering $\mathbb{P}_i$ and $\mathbb{P}_j$ on Cv, we say that $\mathbb{P}_i$ is finer than $\mathbb{P}_j$ (and that $\mathbb{P}_j$ is coarser than $\mathbb{P}_i$) if and only if every group of $\mathbb{P}_i$ is a subset of some group of $\mathbb{P}_j$, i.e.,

$$ \forall C \in \mathrm{Cv}, \mathbb{P}_i(C) \subseteq \mathbb{P}_j(C). \qquad (4) $$

In this case, we say that $\mathbb{P}_i$ is a refinement of a clustering $\mathbb{P}_j$ and written as $\mathbb{P}_i \leq \mathbb{P}_j$. More details see in [19,20].

This relation $\leq$ on a subset $\mathcal{T}$ of clusterings of Cv constitutes a partially ordered set (poset) and thus, we can run a scriptlattes for each clustering $T_i \in \mathcal{T}$ and presents them in a manner categorized by a hierarchy based on the Hasse diagram of poset $(\mathcal{T}, \leq)$. To illustrate this idea, consider the following example: let $\mathbb{P}_{\mathrm{Area}}$, $\mathbb{P}_{\mathrm{Course}}$ and $\mathbb{P}_{\mathrm{ResearchLine}}$ partitions of Cv clustered by knowledge area, course and research line, respectively, in such a way to satisfy: $\mathrm{Cv} \leq \mathbb{P}_{\mathrm{ResearchLine}} \leq \mathbb{P}_{\mathrm{Course}} \leq \mathbb{P}_{\mathrm{Area}} \leq \{\mathrm{Cv}\}$. Thus, we have:

- $S_i \in \mathbb{P}_{\mathrm{Area}}$ is the group of Cv belonging the knowledge area $i$;

- $S_{ij} \in \mathbb{P}_{\mathrm{Course}}$ is the group of $S_i \subseteq \mathrm{Cv}$ belonging the course $j$ of the knowledge area $i$;

- $S_{ijk} \in \mathbb{P}_{\mathrm{ResearchLine}}$ is the group of $S_{ij} \subseteq S_i \subseteq \mathrm{Cv}$ belonging the research line $k$ of the course $j$ of the knowledge area $i$.

Therefore, $\mathcal{T} = \mathbb{P}_{\mathrm{Area}} \cup \mathbb{P}_{\mathrm{Course}} \cup \mathbb{P}_{\mathrm{ResearchLine}} \cup \mathrm{Cv}$. Fig. 1 shows part of a branch of the Hasse diagram $(\mathcal{T}, \leq)$.

<figure><img src="image_2.png" /><figcaption>Fig. 1: Example of part of a branch of the Hasse diagram $(\mathcal{T}, \leq)$.</figcaption></figure>

To build the hierarchy of clusterings $\mathcal{T}$ is employed the technique traditional of machine learning, called hierarchical clustering [21,22], described in Section 2.1.
## 2.1 Hierarchical Clustering

Hierarchy of clustering can offer more information about the structure of the curriculums in the dataset. With a hierarchy, the cluster of curriculums can be seen at different levels, i.e., from the bottom level where each curriculum forms an independent cluster (singleton clusters) to the top level with only one cluster containing all the curriculums. The hierarchical clustering involves creating clusterings that have a predetermined ordering from top to bottom. There are two traditional approach for construction hierarchical clustering [21,22], divisive and agglomerative:

- Divisive: In this method is assigned all of the curriculums to a single cluster and then partition the cluster to two least similar clusters. Finally, we proceed recursively on each cluster until there is one cluster for each curriculum.

- Agglomerative: Initially, the set of all curriculum is considered to be a single cluster and then, recursively, is calculated the similarity (e.g., distance) between each of the clusterings and join the two most similar clusterings.

In order to build the Hierarchy of clustering, it is required to determine the (dis)similarity between each pair of clusterings using a distance function. The main methods used to measure the distance between the clusters are [21,22]:

1. Single Linkage: the distance between two clusters is defined as the shortest distance between two curriculum in each cluster, i.e.,

$$ \forall T_i, T_j \in T, D_{min}(T_i, T_j) = \min\{dist(C_i, C_j) : C_i \in T_i, C_j \in T_j\}. \quad (5) $$

2. Complete Linkage: the distance between two clusters is defined as the longest distance between two curriculum in each cluster, i.e.,

$$ \forall T_i, T_j \in T, D_{max}(T_i, T_j) = \max\{dist(C_i, C_j) : C_i \in T_i, C_j \in T_j\}. \quad (6) $$

3. Average Linkage: the distance between two clusters is defined as the average distance between each curriculum in one cluster to every curriculums in the other cluster.

$$ \forall T_i, T_j \in T, D_{avg}(T_i, T_j) = \frac{1}{|T_i| \times |T_j|} \sum_{C_i \in T_i} \sum_{C_j \in T_j} dist(C_i, C_j). \quad (7) $$

Note that, the distance functions between clusterings need of a distance function between curriculums that is defined in Section ??.

## 3 Proposed Method

Hierarchical clustering allows the creation of a cluster tree, as mentioned previously. The tree is not a single set of clusters, but rather a multilevel hierarchy,
where clusters at one level are joined as clusters at the next level. This allows adjustment of the grouping level most suitable for our pretensions. Therefore, it is necessary to build a distance function between the curriculum, that is used in the kernel of hierarchical clustering algorithms.

Consider $Inf_{Field}(C)$ the function that represents the value associated in a given field on the Lattes curriculum $C \in Cv$. For example, $Inf_{Area}(C)$ is the value associated the knowledge area of curriculum C. Thus, consider $\mathcal{F}$ a list of associated functions on the Lattes curriculums. Note that, $\mathcal{F}$ are informations that are associated in each row of dataset, which is built by using a file where each row contains: personal ID, name, list of associated informations. Table 1 has the structure of the dataset.

<table><caption>Table 1: Structure of the dataset</caption><thead><tr><th colspan="5">Dataset</th></tr><tr><th>Personal ID</th><th>Name</th><th>Inf<sub>Area</sub></th><th>Inf<sub>Course</sub></th><th>Inf<sub>...</sub></th></tr></thead><tbody><tr><td>Lattes ID of the person 1</td><td>person 1</td><td>ID of area 1</td><td>ID of course 1</td><td>...</td></tr><tr><td>Lattes ID of the person 2</td><td>person 2</td><td>ID of area 1</td><td>ID of course 1</td><td>...</td></tr><tr><td>Lattes ID of the person 3</td><td>person 3</td><td>ID of area 1</td><td>ID of course 2</td><td>...</td></tr><tr><td>Lattes ID of the person 4</td><td>person 4</td><td>ID of area 1</td><td>ID of course 2</td><td>...</td></tr><tr><td>Lattes ID of the person 5</td><td>person 5</td><td>ID of area 2</td><td>ID of course 3</td><td>...</td></tr><tr><td>Lattes ID of the person 6</td><td>person 6</td><td>ID of area 2</td><td>ID of course 4</td><td>...</td></tr><tr><td>Lattes ID of the person 7</td><td>person 7</td><td>ID of area 2</td><td>ID of course 4</td><td>...</td></tr><tr><td>Lattes ID of the person 8</td><td>person 8</td><td>ID of area 2</td><td>ID of course 4</td><td>...</td></tr><tr><td>Lattes ID of the person ...</td><td>person ...</td><td>ID of area ...</td><td>ID of course ...</td><td>...</td></tr></tbody></table>

The distance function between curriculum is defined as following:

$$ \forall C_i, C_j \in Cv, dist(C_i, C_j) = \sum_{k \in \mathcal{F}} \omega_k |Inf_k(C_i) - Inf_k(C_j)|, \quad (8) $$

where $\omega_k$ is a weight associated the function $Inf_k \in \mathcal{F}$.

For example, the hierarchy of clusterings shown in Fig.1 can be built using single linkage as the distance function between clusterings and the functions associated $Inf_{Area}$, $Inf_{Course}$ and $Inf_{ResearchLine}$ also used to define the following distance function between curriculums:

$$ \forall C_i, C_j \in Cv, dist(C_i, C_j) = \omega_{\text{ResearchLine}} |\text{Inf}_{\text{ResearchLine}}(C_i) - \text{Inf}_{\text{ResearchLine}}(C_j)| + \\ \omega_{\text{Course}} |\text{Inf}_{\text{Course}}(C_i) - \text{Inf}_{\text{Course}}(C_j)| + \\ \omega_{\text{Area}} |\text{Inf}_{\text{Area}}(C_i) - \text{Inf}_{\text{Area}}(C_j)|, \quad (9) $$

where $\omega_{\text{ResearchLine}} = 1$, $\omega_{\text{Course}} = \omega_{\text{ResearchLine}} + \max\{\text{Inf}_{\text{ResearchLine}}(C) : C \in Cv\}$ and $\omega_{\text{Area}} = \omega_{\text{Course}} + \max\{\text{Inf}_{\text{Course}}(C) : C \in Cv\}$.

Once the hierarchy of clusterings $\mathcal{T}$ is built, we can visit the clusters $\mathcal{T}_i \in \mathcal{T}$ (see Fig. 2) and associate each cluster $S_k \in \mathcal{T}_i$ the result of Scriptlattes. Moreover,
depending on the cluster height in the hierarchy we can provide different set-
tings for Scriptlattes, allowing different treatment to clusterings by knowledge
areas, courses, research lines and single curriculum.

<figure><img src="image_3.png" /><figcaption>Fig. 2: Hierarchical clustering dendrograms</figcaption></figure>

A implementation in Python language for constructed the hierarchy of clus-
terings *T* can be acessed at link: https://goo.gl/9v6Wvw

4 Application: Data Extraction for Sucupira Platform

The Sucupira platform is a management tool used by the Coordination for
the Improvement of Higher Education Personnel (CAPES - Coordenação de
Aperfeiçoamento de Pessoal de Nível Superior). By using this platform, pro-
grams report their performance to the coordination annually and, at the end
of each four-year period, while CAPES verify if they show minimum quality
required for maintenance. Data is imported directly from the Lattes platform,
and it refers to the scientific production of each of the professors belonging to
the assessed course. After the import, we need to perform a manual checking,
since many information regarding the registration of the professors data as well
as the scientific productivity may still be incomplete [13].

For this purpose, we construct a sequence of hierarchies ($T^{2013}$, $T^{2014}$, $T^{2015}$,
$T^{2016}$, $T^{2013-2016}$), where each element of this sequence contains a hierarchy of
clusterings configured to execute scriptlattes for a specific period. Moreover,
the clusters formed by curriculums of a same course are configured with the
Qualis of knowledge area. Once the hierarchies of clusterings ($T^{2013}$, $T^{2014}$,
$T^{2015}$, $T^{2016}$, $T^{2013-2016}$) are build, we can visit each hierarchy of clusterings
$T^{Period}$ and run a Scriptlattes for each level of them in $T^{Period}$. Finally, the reports
produced by Scriptlattes throughout hierarchies of clusterings are organized
into a web page that can be accessed at link: https://db.tt/5JnRPH7e

Note that it is possible to make a thorough checking of the information to be
submitted to Sucupira platform by using the hierarchies of clusterings based on
reports generated by scriptlattes. It is worth remembering that the preliminary
check of scientific productivity of each professor permits the identification of
those who may have not achieved the goals set by the program, determined by
CAPES. With this result, managers can improve research strategies in order to improve their production during the period of quadrennial, avoiding any unfortunate surprises when assessing the course. A further hierarchy of clustering without period setting can be seen in this link: https://db.tt/Z0xTXHiP

## 5 Conclusion and Future Works

In this paper, we proposed a method that makes use of the Scriptlattes to build a hierarchy of clusterings based on reports generated by scriptlattes. In this hierarchy, the nodes represent subsets of curriculum grouped by a criteria that associates them and Scriptlattes is executed for each node. The hierarchy of clusterings built provides more information about the structure of the curriculums in the dataset. Thereby, the cluster of curriculums can be seen at different levels, i.e., from the bottom level where each curriculum forms an independent cluster (singleton clusters) to the top level with only one cluster containing all the curriculums. It allows the Scriptlattes user to access different views on the reports generated from the dataset. Moreover, it has been presented a example of application for data extraction for Sucupira platform, which used the proposed hierarchy approach. As a future work, we intend to study the similarities between clustering on different hierarchies, and analyze the evolution of collaboration graph along the hierarchy of clusterings.

## References

1. Kadriu, A.: Discovering Value in Academic Social Networks: A Case Study in ResearchGate. In: Proceedings of the ITI 2013 35th International Conference on Information Technology Interfaces, IEEE (2013) 57–62

2. Lynch, C.A.: Institutional Repositories: Essential Infrastructure for Scholarship in the Digital Age. Libraries and the Academy 3 (2003) 327–336

3. Ernst, H.: Patent Information for Strategic Technology Management. World Patent Information 25 (2003) 233–242

4. Fernández-Breis, J.T., Castellanos-Nieves, D., Hernández-Franco, J., Soler-Segovia, C., del Carmen Robles-Redondo, M., González-Martínez, R., Prendes-Espinosa, M.P.: A Semantic Platform for the Management of the Educative Curriculum. Expert Systems with Applications 39 (2012) 6011–6019

5. Burns, C.S., Lana, A., Budd, J.: Institutional Repositories: Exploration of Costs and Value. D-Lib Magazine 19 (2013) 1

6. Edgar, B.D., Willinsky, J.: A Survey of Scholarly Journals using Open Journal Systems. Scholarly and Research Communication 1 (2010)

7. Lane, J.: Let's Make Science Metrics more Scientific. Nature 464 (2010) 488–489

8. Mena-Chalco, J.P., Junior, R.M.C.: ScriptLattes: An Open-source Knowledge Extraction System from the Lattes Platform. Journal of the Brazilian Computer Society 15 (2009) 31–39

9. (CNPq)

10. Ferraz, R.R.N., Quoniam, L.: A Utilização da Ferramenta Computacional Scriptlattes para Avaliação das Competências em Pesquisa no Brasil. Revista Prisma. Com (2014)
11. Ferraz, R.R.N., Quoniam, L.M., Maccari, E.A.: The use of Scriptlattes Tool for Extraction and On-line Availability of Academic Production from a Department of Stricto Sensu in Management. In: 11th International Conference on Information Systems and Technology Management-CONTECSI. Volume 17. (2014)

12. Giordano, D.M., Bruning, E., Bordin, A.S.: Uso do Scriptlattes e Gephi na Análise da Colaboração Científica. Anais do Computer on the Beach (2015) 239-248

13. Nigro, C.A., Ferraz, R.R.N., Quoniam, L., Alves, W.A.L.: Strategic Management of Research Productivity from Graduate Medicine Program by the use of Scriptsucupira Computational Tool. In: Proceedings of the 13th International Conference on Information Systems and Technology Management. (2016)

14. Mena-Chalco, J., Cesar-Jr, R.: Bibliometria e Cientometria: Reflexões Teóricas e Interfaces. Pedro & João Editores, São Carlos (2013)

15. Mena-Chalco, J.P., Digiampietri, L.A., Lopes, F.M., Cesar, R.M.: Brazilian Bibliometric Coauthorship Networks. Journal of the Association for Information Science and Technology 65 (2014) 1424-1445

16. Mena-Chalco, J.P., Junior, R.M.C.: Towards Automatic Discovery of co-authorship Networks in the Brazilian Academic Areas. In: IEEE Seventh International Conference on e-Science Workshops (eScienceW). (2011) 53-60

17. Perez-Cervantes, E., Mena-Chalco, J.P., Cesar-Jr, R.M.: Towards a Quantitative Academic Internationalization Assessment of Brazilian Research Groups. In: E-Science (e-Science), 2012 IEEE 8th International Conference on. (2012) 1-8

18. Perez-Cervantes, E., Mena-Chalco, J.P., Oliveira, M.C.F.D., Cesar, R.M.: Using link prediction to estimate the collaborative influence of researchers. In: 2013 IEEE 9th International Conference on eScience (eScience). (2013) 293-300

19. Brualdi, R.: Introductory Combinatorics. Pearson Education. Pearson Education International (2012)

20. Newman, M.H.A.: Elements of the Topology of Plane sets of Points. Dover Publications (1992)

21. Duda, R.O., Hart, P.E., Stork, D.G.: Pattern Classification. John Wiley & Sons (2012)

22. Friedman, J., Hastie, T., Tibshirani, R.: The Elements of Statistical Learning. Volume 1. Springer series in statistics Springer, Berlin (2001)