#  regulAS: A Bioinformatics Tool for the
Integrative Analysis of Alternative Splicing
Regulome using RNA-Seq data

Sofya Lipnitskaya
Johannes Gutenberg University Mainz, Mainz, Germany
<EMAIL_ADDRESS>
(July 16, 2023)

###### Abstract

The regulAS software package is a bioinformatics tool designed to support
computational biology researchers in investigating regulatory mechanisms of
splicing alterations through integrative analysis of large-scale RNA-Seq data
from cancer and healthy human donors, characterized by TCGA and GTEx projects.
This technical report provides a comprehensive overview of regulAS, focusing
on its core functionality, basic modules, experiment configuration, further
extensibility and customisation.

The core functionality of regulAS enables the automation of computational
experiments, efficient results storage and processing, and streamlined
workflow management. Integrated basic modules extend regulAS with features
such as RNA-Seq data retrieval from the public multi-omics UCSC Xena data
repository, predictive modeling and feature ranking capabilities using the
scikit-learn package, and flexible reporting generation for analysing gene
expression profiles and relevant modulations of alternative splicing
aberrations across tissues and cancer types. Experiment configuration is
handled through YAML files with the Hydra and OmegaConf libraries, offering a
user-friendly approach. Additionally, regulAS allows for the development and
integration of custom modules to handle specialized tasks.

In conclusion, regulAS provides an automated solution for alternative splicing
and cancer biology studies, enhancing efficiency, reproducibility, and
customization of experimental design, while the extensibility of the pipeline
enables researchers to further tailor the software package to their specific
needs. Source code is available under the MIT license at
https://github.com/slipnitskaya/regulAS.

##  I Introduction

Alternative splicing (AS) relates to a molecular mechanism that allows the
generation of multiple mRNAs from a single gene to produce functionally
distinct isoforms. This process is largely regulated by RNA-binding proteins
(RBPs) that control the recruitment of the splicing machinery defining which
exons are included in the resulting transcripts. Regulation of pre-mRNA
splicing by RBPs is crucial for generating biological diversity in mammalian
genomes, and this process is especially complicated in pathological
conditions, such as cancer [1].

The regulAS package allows easy and reliable exploration of the landscape of
alternative splicing events and its candidate modulators across human tumor
and healthy tissues through integrative transcriptomics analysis of large-
scale RNA sequencing (RNA-Seq) datasets from diverse omics data sources, and
by utilizing machine learning (ML) approach.

The purpose of this technical report is to provide a comprehensive overview
and documentation of the regulAS software package for investigating
alternative splicing regulome, utilizing external omics and associated
phenotype datasets generated by The Cancer Genome Atlas
(TCGA111https://www.cancer.gov/tcga) and Genotype-Tissue Expression
(GTEx222https://www.gtexportal.org/home) projects. Aimed at supporting
researchers, regulAS offers a robust set of tools and functionalities to
automate computational experiments, store, and process obtained results, and
facilitate efficient workflows for alternative splicing research and cancer
studies.

This report serves as a guide for both new and experienced users, offering
detailed insights into the design principles, core features, and extensibility
of regulAS. By providing a high-level understanding of the software package,
readers will gain the necessary knowledge to effectively utilize and harness
the full potential of regulAS in their research endeavors. The scope of this
report encompasses a thorough exploration of the core functionality of
regulAS, including its ability to automate computational experiments and
handle result storage and processing. Additionally, the report delves into the
basic modules integrated into regulAS, such as data retrieval from external
data sources, feature ranking capabilities, and the generation of tabular or
visual summary output reports.

Furthermore, this report highlights the support for flexible experiment
configuration offered by regulAS through the use of YAML files. Lastly, the
report addresses the extensibility aspect of regulAS, empowering end-users to
expand its functionality beyond the provided modules. By enabling the
development of custom modules in Python, regulAS offers researchers the
freedom to integrate their specialized algorithms, models, or data processing
techniques seamlessly.

Figure 1:  Workflow of the regulAS bioinformatics package for integrative
transcriptomic analysis of alternative splicing events based on machine
learning approach and RNA-Seq data from TCGA and GTEx data sources.

###  I-A Problem Definition

In the field of computational biology and bioinformatics, researchers often
face numerous challenges when integrating and analysing large-scale multi-
omics datasets based on various public data sources [2]. These challenges
include the need for efficient experimental design and automation, effective
management and processing of results, seamless integration with external
databases, and the ability to generate informative reports for downstream
analyses and interpretation purposes to support the findings and experimental
results.

Traditionally, researchers have had to rely on manual execution of
experiments, leading to time-consuming and error-prone processes.
Additionally, the management and processing of the vast amount of data
generated from these experiments pose significant difficulties, often
requiring extensive manual effort and specialized software tools. Furthermore,
integrating with external multi-omics data sources and retrieving relevant
datasets for analysing gene expression profiles and alternative splicing
patterns across different conditions (e.g., tumor and/or healthy), cancer
types (e.g., primary tumor and/or tumor-adjacent tissues) appear to be
challenging and time-consuming, also commonly necessitating specialized
knowledge and technical skills.

Other challenges are associated with the raw data processing and sample
aggregation, both of which are essential for effective subsequent
analysis—such as feature importance assessment or predictive survival
analysis—and interpretation of the results (e.g., for studying gene expression
abnormalities across tissues and physiological conditions).

Additionally, comprehensive summary reports and visualizations that present
research findings in a clear and concise manner are necessary for effective
communication and collaboration. Thus, researchers need standardized
computational solutions for integrative omics analysis to streamline data
exploration and computational workflows towards data-informed decision-making
about downstream experiments, hence contributing to a better understanding of
biological systems.

###  I-B Design Principles

The design of regulAS follows a few key concepts. First, a low barrier to
entry was prioritized, which implied following the “low-code” paradigm.
Specifically, the base modules allow performing computational experiments by
describing the desired workflow in a form of YAML configuration files, without
writing code in Python.

Second, the consistency among external and internal interfaces, and
intermediate representations was addressed, which required considerable
efforts in designing the architecture, however, paid off in an easy
extensibility of regulAS to user-defined data loaders, ML-models, metric
evaluators, and report generators.

Third, as the use of the scikit-learn [3] package has become a de facto
standard for performing computational experiments in a Python-based
environment, regulAS focuses on compatibility with the scikit-learn model API.
As a part of the experimental workflow, regulAS utilizes a supervised ML-based
approach for predictive modelling and feature ranking tasks to identify
relevant candidate RBPs of AS changes based on RNA-Seq data of gene expression
profiles of prospective RNA splicing modulators and matching junction reads
data to reflect exon-skipping events [4] for genes of interest.

Fourth, the base workflow steps such as data acquisition and preparation,
model training and evaluation, and generation of reports were isolated—as
depicted in Figure 1—to preserve modularity (and, therefore, extensibility)
and support reuse of modules in the experiments. The isolation of base steps
is accomplished by keeping the intermediate results in a persistent storage,
namely a relational database built upon the SQLite engine [5].

Finally, because bioinformatics and computational biology are rapidly evolving
fields, the specific methods and approaches may become outdated quite fast. To
address this, the architecture of regulAS was designed to be modular and
extensible, to allow practitioners to leverage existing libraries and
experimenting with their own components. For that, the implementation of
regulAS strived for a clean, readable, and consistent code.

##  II Package Organization

As the main priority in the design was ease of use, regulAS follows a flat
package structure and relies on the NumPy [6] and Pandas [7] types and data
structures.

The extensibility of regulAS through custom modules provides researchers with
unparalleled flexibility in adapting the software package to their unique
research needs. By leveraging the Python programming language, researchers can
harness the rich ecosystem of libraries and tools to develop custom modules
that seamlessly integrate with regulAS’s core functionality.

Custom modules can be easily integrated into regulAS, utilizing its modular
architecture and well-defined extension points. This allows researchers to
leverage the existing functionalities of regulAS while incorporating their own
custom logic and algorithms. The integration process ensures a smooth and
cohesive workflow, enabling researchers to exploit the full potential of
regulAS while building upon its foundations.

Figure 2: Schema of the regulAS database for storing experimental setups and
results.

###  II-A Core Functionality

regulAS provides researchers with the ability to automate computational
experiments, reducing the manual effort and time required for experiment
execution. By defining experiment configurations and parameters, researchers
can easily set up and execute complex computational experiments with ease.
This automation feature allows for increased productivity, reproducibility,
and scalability in research workflows.

regulAS offers a flexible and user-friendly approach to experiment
configuration through the use of YAML (YAML Ain’t Markup Language) files.
Experiment configuration is facilitated by the Hydra library [8], developed by
Facebook Research, and the underlying OmegaConf library, which provides a
powerful configuration system.

Hydra, a popular open-source Python library released by Facebook Research, is
utilized in regulAS for managing experiment configuration. Hydra simplifies
the process of working with YAML files by providing a hierarchical and modular
configuration system. It allows researchers to easily define and organize
their experiment parameters, enabling the configuration of various components
and options.

Underlying Hydra, OmegaConf provides the core configuration capabilities. It
enables researchers to read and merge YAML files, override default
configurations, and access experiment parameters programmatically. OmegaConf
also supports interpolation, which allows referencing and reusing values
across the configuration, enhancing flexibility and reusability.

As shown in Figure 1, after successfully loading the experiment configuration
file, regulAS loads the data, performs the training/testing split, and stores
the experimental setup in its database. Next, based on the configuration file
and data splits, regulAS extracts individual tasks and submits them
asynchronously to a pool of pre-allocated Python multiprocessing workers.

Then, each worker returns a task identifier, a success flag and the
corresponding output or None if the run failed. For a successful run, regulAS
stores the obtained predictions and feature importance scores (if available)
into the database.

###  II-B Data Loading

regulAS is bundled with base data loading modules that encompass retrieval
from both local (Python pickle) and remote (UCSC Xena333https://xena.ucsc.edu/
data hubs) data sources [9]. The latter data loader acquires the required
information from the remote databases, performs filtering and transformation
if needed, and stores the ready-to-process pickle-serialized data locally.
Respectively, the local data loader allows deserializing the downloaded data
and feeding them into the downstream processing pipeline.

Researchers can also develop custom modules to handle specialized data loading
tasks within regulAS. These modules can be designed to integrate with specific
data sources, formats, or APIs, allowing researchers to seamlessly import and
preprocess their unique datasets. By extending regulAS with custom data
loading modules, researchers gain the flexibility to incorporate their
proprietary or specialized data sources into their computational experiments,
ensuring compatibility and efficiency.

###  II-C Persistence

regulAS offers efficient storage and processing of obtained results, ensuring
that researchers can effectively manage and analyze their data. One of the key
components of the result storage in regulAS is the utilization of the SQLite
database engine. This lightweight and fast database engine enables reliable
storage and retrieval of experiment results, providing researchers with a
robust and scalable solution for data management. With the built-in
capabilities for querying and accessing stored results, researchers can
efficiently explore and extract valuable insights from their data. The visual
representation of the database schema is depicted in Figure 2.

Table Data represents the root entity of the database. An Experiment depends
on Data and, in turn, encapsulates several machine learning Pipelines.

Each Pipeline is associated with a number of data transformation steps
(TransformationSequence), and every step is defined by the Transformation
itself, HyperParameters used, and their corresponding values
(HyperParameterValue).

Finally, a successfully finished Pipeline yields a list of model Predictions
equipped with the corresponding true values, and—in case the underlying ML-
model (Transformation) supports it—numerical scores for FeatureRanking.

###  II-D Report Generation

The reporting module encompasses both intermediate and final report
generation. The former type of report focuses on the assessment of performance
of an ML-model and scoring of the feature importance, while the latter is
responsible for producing documents for end-users and includes tabular (CSV)
and visual (bar graph and scatter plot) reports.

By design, the report configuration organizes the report steps in a directed
acyclic graph, those leaf nodes are expected to produce (although not
required) tabular or visual documents. In turn, each leaf node depends on some
preceding nodes, which are to produce intermediate reports and not required to
store any documents.

When loading the report configuration file, regulAS checks for missing and
circular dependencies. In case of any, the report generation interrupts, and a
corresponding error appears in the standard output. If there is no cycle in
dependencies, and all of them are satisfied, regulAS organizes the reporting
steps into a linear structure that is processed sequentially, starting from
the independent reports.

The built-in report generation module enables regulAS to produce model
evaluation and feature ranking in a tabular form (implemented on top of
pandas.DataFrame). For the visual reports, bar graphs are available for the
performance evaluation and feature ranking purposes, while scatter plots allow
visualizing correlations.

Additionally, custom modules can be developed to expand regulAS’s report
generation capabilities. Researchers can design and implement modules that
generate reports in specific formats, layouts, or styles, aligning with their
specific reporting needs. These custom report generation modules can produce
reports that include additional visualizations, statistical summaries, or
customized annotations, providing researchers with comprehensive and tailored
reports for their analyses and presentations.

##  III Conclusion

This document provides a brief yet comprehensive summary of regulAS, a
software package that addresses the needs of researchers in computational
biology and bioinformatics. By automating computational experiments, managing
results, and providing flexible configuration options, regulAS simplifies
research workflows and enhances productivity. The integration of basic modules
and the ability to extend regulAS with custom modules further expand its
capabilities, ensuring that researchers can leverage the software package to
its full potential for their unique research objectives. The project is under
active development, and the future work includes performance improvements and
extended functionality of the experiment management.

###  III-A Citing regulAS

When using regulAS in academic work, authors are encouraged to reference this
work via Zenodo444https://doi.org/10.5281/zenodo.8152782 or by following the
instructions on the GitHub
repository555https://github.com/slipnitskaya/regulAS.

## References

  * [1] S. C. Bonnal, I. López-Oreja, and J. Valcárcel, “Roles and mechanisms of alternative splicing in cancer—implications for care,” Nature reviews Clinical oncology, vol. 17, no. 8, pp. 457–474, 2020.
  * [2] M. Picard, M.-P. Scott-Boyer, A. Bodein, O. Périn, and A. Droit, “Integration strategies of multi-omics data for machine learning analysis,” Computational and Structural Biotechnology Journal, vol. 19, pp. 3735–3746, 2021.
  * [3] F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blondel, P. Prettenhofer, R. Weiss, V. Dubourg, J. Vanderplas, A. Passos, D. Cournapeau, M. Brucher, M. Perrot, and E. Duchesnay, “Scikit-learn: Machine learning in Python,” Journal of Machine Learning Research, vol. 12, pp. 2825–2830, 2011.
  * [4] S. Schafer, K. Miao, C. C. Benson, M. Heinig, S. A. Cook, and N. Hubner, “Alternative splicing signatures in rna-seq data: percent spliced in (psi),” Current protocols in human genetics, vol. 87, no. 1, pp. 11–16, 2015.
  * [5] R. D. Hipp, “SQLite,” 2023.
  * [6] C. R. Harris, K. J. Millman, S. J. van der Walt, R. Gommers, P. Virtanen, D. Cournapeau, E. Wieser, J. Taylor, S. Berg, N. J. Smith, R. Kern, M. Picus, S. Hoyer, M. H. van Kerkwijk, M. Brett, A. Haldane, J. F. del Río, M. Wiebe, P. Peterson, P. Gérard-Marchant, K. Sheppard, T. Reddy, W. Weckesser, H. Abbasi, C. Gohlke, and T. E. Oliphant, “Array programming with NumPy,” Nature, vol. 585, pp. 357–362, Sept. 2020.
  * [7] Wes McKinney, “Data Structures for Statistical Computing in Python,” in Proceedings of the 9th Python in Science Conference (Stéfan van der Walt and Jarrod Millman, eds.), pp. 56 – 61, 2010.
  * [8] O. Yadan, “Hydra - a framework for elegantly configuring complex applications.” Github, 2019.
  * [9] M. J. Goldman, B. Craft, M. Hastie, K. Repečka, F. McDade, A. Kamath, A. Banerjee, Y. Luo, D. Rogers, A. N. Brooks, et al., “Visualizing and interpreting cancer genomics data via the xena platform,” Nature biotechnology, vol. 38, no. 6, pp. 675–678, 2020.