Skip to main content

A package for KinPFN, a novel prior-data fitted network (PFN) for the approximation of kinetic RNA folding time distributions.

Project description

KinPFN: Bayesian Approximation of RNA Folding Kinetics using Prior-Data Fitted Networks

Welcome to the official repository for KinPFN, a deep learning model designed to approximate the distributions of RNA first passage times.

Overview

Understanding the kinetics of RNA folding is crucial for various applications in molecular biology. One important metric is the First Passage Time—the time it takes for an RNA molecule to reach a specific folded state for the first time. Computing the cumulative distribution function (CDF) of these times over a certain statistically significant number of simulations provides valuable insights into the folding process, including the likelihood of achieving a particular folded state within a given time frame. This helps researchers identify potential kinetic barriers and evaluate the overall efficiency of folding pathways. However, accurately simulating RNA folding kinetics is computationally expensive, requiring extensive computational resources and time. Therefore we introduce KinPFN, a deep learning model that approximates the CDF of RNA first passage times efficiently by using a very small set of real first passage times as context. For this work, we used the Kinfold algorithm as a reference for generating the real first passage times.

Why KinPFN?

The most widely used method for simulating RNA folding kinetics is the Kinfold algorithm, which relies on the Gillespie algorithm, a powerful Monte Carlo simulation procedure. However, while effective, Kinfold is computationally intensive, making it less suitable for large-scale studies or real-time applications.

To address these challenges, we introduce KinPFN, a deep learning model that leverages Prior-Data Fitted Networks (PFNs) to approximate the CDFs of RNA first passage times efficiently. KinPFN is designed to provide a fast and accurate addition (not alternative) to common RNA kinetic simulators like Kinfold.

Key Features

  • Deep Learning for RNA Folding Kinetics: Trained on synthetic RNA folding times, KinPFN approximates the distributions of real first passage times accurately.

  • Efficient CDF Approximation: Utilizes a minimal set of real folding times, processed in a single forward pass, to predict the posterior predictive distribution's CDF.

  • Pre-Trained Model: KinPFN comes pre-trained, offering high accuracy in approximating real RNA first passage time distributions.

Getting Started

Installation

To use KinPFN, clone this repository and install the necessary dependencies. It's recommended to use a virtual environment, such as conda, for managing dependencies.
The following commands assume that you have conda installed. If not, you can download it from the official conda page.

git clone https://github.com/automl/KinPFN.git
cd KinPFN
conda create --name kinpfn_iclr_env python=3.9
conda activate kinpfn_iclr_env
pip install -r requirements.txt
pip install -e .

By running these commands, you'll set up a Python environment with all required dependencies and the KinPFN package. This environment allows you to execute the provided project notebooks seamlessly.

Tutorial

See the tutorial for a guide on how to use KinPFN to approximate RNA first passage time distributions.

Cite the work

KinPFN was published as a conference paper at the International Conference on Learning Representations (ICLR) 2025:

@inproceedings{
scheuer2025kinpfn,
title={Kin{PFN}: Bayesian Approximation of {RNA} Folding Kinetics using Prior-Data Fitted Networks},
author={Dominik Scheuer and Frederic Runge and J{\"o}rg K.H. Franke and Michael T. Wolfinger and Christoph Flamm and Frank Hutter},
booktitle={The Thirteenth International Conference on Learning Representations},
year={2025},
url={https://openreview.net/forum?id=E1m5yGMOiV}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kinpfn-1.2.1.tar.gz (18.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kinpfn-1.2.1-py3-none-any.whl (58.2 kB view details)

Uploaded Python 3

File details

Details for the file kinpfn-1.2.1.tar.gz.

File metadata

  • Download URL: kinpfn-1.2.1.tar.gz
  • Upload date:
  • Size: 18.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for kinpfn-1.2.1.tar.gz
Algorithm Hash digest
SHA256 3501d8918bf423d09fe1d8fb5c0503a59bd953fa81a12f453d8d24028599451a
MD5 c061d7207124108d9723c22f69f66c0c
BLAKE2b-256 903ae3636e083f97e432a0d2239a1f25858c663570e69accf98f269214e95d61

See more details on using hashes here.

File details

Details for the file kinpfn-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: kinpfn-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 58.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for kinpfn-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ec3397530bcf96458a19aff8ffacc0fefdb18c8e19875c1d6cad6a144d13270f
MD5 a415ae34b9c42c7d9d7e173a4ddebb4f
BLAKE2b-256 59a48b21c3e296057bf4cc3f78e6fda294593aac752c89465ec6f199e1c38644

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page