FOntCell: Fusion of Ontologies of Cells

High-throughput cell-data technologies such as single-cell RNA-Seq create a demand for algorithms for automatic cell classification and characterization. There exist several classification ontologies of cells with complementary information. However, one needs to merge them in order to combine synergistically their information. The main difficulty in merging is to match the ontologies since they use different naming conventions. To overcome this obstacle we developed an algorithm that merges ontologies by integrating the name-matching search between class label names with the structure mapping between the ontology elements. To implement our algorithms, we developed FOntCell, a software module in Python for efficient automatic parallel-computed fusion of ontologies in the same or similar knowledge domains. It processes the ontology attributes to extract relations and class synonyms. FOntCell integrates the semantic, name with synonyms, mapping with a structure mapping based on graph convolution. Since the structure mapping assessment is time consuming process, we designed two methods to perform the graph convolution: vectorial structure matching and constraint-based structure matching. To perform the vectorial structure matching we designed a general method to calculate the similarities between vectors of different lengths for different metrics. Additionally, we adapted the slower Blondel method to work for structure matching. These functionalities of FOntCell allow the unification of dispersed knowledge in one domain into a unique ontology. FOntCell produces the results of the merged ontology in OBO format that can be iteratively reused by FOntCell to adapt continuously the ontologies with the new data, such of the Human Cell Atlas, endlessly produced by data-driven classification methods. To navigate easily across the fused ontologies, it generates HTML files with tabulated and graphic summaries, and an interactive circular Directed Acyclic Graphs of the merged results. We used FOntCell to fuse CELDA, LifeMap and LungMAP Human Anatomy cell ontologies to produce comprehensive cell ontology. Author Summary There is a strong belief in the research community that there exist more cell types than the described in the literature, therefore new technologies were developed to produce a high volume of data to discover new cells. One issue that arises once the cells are discovered is how to classify them. One way to perform such classification is to use already existing cell classifications from different ontology sources but it is difficult to merge them. An ontology has semantic information providing the meaning of each term and structural information providing the relationship between terms as a graph. We developed a new Python module, FOntCell that merges efficiently cell ontologies and integrates semantic and structure information with our own graph convolution technique. Since the structure mapping assessment is time-consuming process we designed two methods to optimize the graph convolution: vectorial and constraint-based structure matching. To perform the vectorial structure matching we designed a method that calculates the similarities between vectors describing the graphs of different sizes. The functionalities of FOntCell allow the unification of dispersed knowledge into a unique ontology, to adapt continuously from new data, and to navigate across the fused ontologies by a graphic use interface.