/ Модель

Характеристики

Контекст
1 024 токена
Лицензия
MIT
Архитектура
rnafm · dense
Библиотека
transformers
Опубликована
5 июн 2026

RNA-FM

Заполнение пропусковТекст → текст3 профессии

RNA-FM — трансформер, предварительно обученный на некодирующих последовательностях РНК для предсказания замаскированных нуклеотидов и получения представлений последовательностей.

184скачиваний за 30 дней0лайковвеса обновлены26 авг 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

RNA-FM — языковая модель последовательностей РНК, созданная Chen et al.; порт для Hugging Face поддерживает Taykhoom Dalal. Это плотный 12-слойный трансформер в стиле BERT с 20 головами внимания и размерностью эмбеддингов 640. Модель предварительно обучена методом masked language modeling на 23,7 млн некодирующих последовательностей РНК из RNAcentral100 и принимает последовательности в обозначениях РНК, где используется U вместо T.

Модель предсказывает замаскированные нуклеотиды и формирует контекстные представления последовательностей, которые можно использовать для классификации и регрессии после дообучения. Проверка реализации показала совпадение скрытых представлений с исходной моделью. Порт поддерживает Transformers и форматы вычислений SDPA и Flash Attention 2. Лицензия — MIT.

Сценарии применения

  • предсказание замаскированных нуклеотидов в последовательности РНК
  • получение эмбеддингов для сравнения последовательностей РНК
  • классификация последовательностей РНК с дообученной классификационной головой
  • регрессия свойств последовательностей РНК с дообученной моделью

Ограничения

Модель рассчитана на последовательности РНК в нотации с U вместо T и предварительно обучена на некодирующих РНК. Для классификации или регрессии требуется отдельная голова и дообучение.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

RNA-FM

A 12-layer BERT-style transformer pre-trained on 23.7 million non-coding RNA sequences via masked language modelling.

Architecture

ParameterValue
Layers12
Attention heads20
Embedding dimension640
FFN hidden dimension5120 (GELU)
Vocabulary size25
Positional encodingLearned
NormalizationLayerNorm (embedding, pre-attention/pre-FFN, and final)
ArchitectureESM-1b-style pre-LN Transformer encoder
Max sequence length1024 total tokens (1022 nucleotides plus CLS/EOS)

Vocabulary: <cls>, <pad>, <eos>, <unk>, A, C, G, U, R, Y, K, M, S, W, B, D, H, V, N, -, and 4 null-padding tokens, <mask>.

Pretraining

  • Objective: Masked language modelling (BERT-style, 15% masking rate)
  • Data: RNAcentral100 -- 23.7 million non-coding RNA sequences
  • Source checkpoint: RNA-FM_pretrained.pth from cuhkaih/rnafm

Parity Verification

Hidden-state representations verified identical (max abs diff = 0.00) to the original implementation at all 13 representation levels (embedding + 12 transformer layers). Verified on GPU (CUDA) with PyTorch 2.7 / transformers 4.57.6. SDPA numerical differences are expected (~1e-4 max diff over 12 layers) and are not a correctness issue.

Related Models

See the full RNA-FM collection.

ModelTraining dataEmbedding dimNotes
RNA-FM23.7 M ncRNA640This model
mRNA-FM45 M CDS1280Codon (3-mer) tokenisation

Usage

Embedding generation

import torch
from transformers import AutoTokenizer, AutoModel

tokenizer = AutoTokenizer.from_pretrained("Taykhoom/RNA-FM", trust_remote_code=True)
model = AutoModel.from_pretrained("Taykhoom/RNA-FM", trust_remote_code=True)
model.eval()

sequences = [
    "GGGUGCGAUCAUACCAGCACUAAUGCCCUCCUGGGAAGUCCUCGUGUUGCACCCCU",
    "AUCGGGCUUAGCAUAGCUU",
]
# RNA-FM was trained on RNA sequences (U not T). T is not in the vocabulary.
# If your sequences use DNA notation, convert first:
#   sequences = [s.replace("T", "U") for s in sequences]
enc = tokenizer(sequences, return_tensors="pt", padding=True)

with torch.no_grad():
    out = model(**enc)

cls_emb   = out.last_hidden_state[:, 0, :]   # (batch, 640) -- CLS token
token_emb = out.last_hidden_state             # (batch, seq_len, 640) -- per-token

# Intermediate layers
out_all = model(**enc, output_hidden_states=True)
layer6_emb = out_all.hidden_states[6]         # layer 0 = embedding, 1-12 = transformer layers

MLM logits

import torch
from transformers import AutoTokenizer, AutoModelForMaskedLM

tokenizer = AutoTokenizer.from_pretrained("Taykhoom/RNA-FM", trust_remote_code=True)
model = AutoModelForMaskedLM.from_pretrained("Taykhoom/RNA-FM", trust_remote_code=True)
model.eval()

enc = tokenizer(["GGG<mask>GCGAU"], return_tensors="pt")
with torch.no_grad():
    logits = model(**enc).logits   # (1, seq_len, 25)

Fine-tuning

Standard HF conventions. Use the CLS token embedding (out.last_hidden_state[:, 0, :]) as input to a classification or regression head for sequence-level tasks.

Implementation Notes

The original implementation uses F.multi_head_attention_forward (eager). This HF port adds attn_implementation="sdpa" and attn_implementation="flash_attention_2" support, which were not part of the original codebase.

Input sequences are expected to use RNA notation (U not T).

Citation

@article{chen2022_rnafm,
  title   = {Interpretable {RNA} Foundation Model from Unannotated Data for Highly Accurate {RNA} Structure and Function Predictions},
  author  = {Chen, Jiayang and Hu, Zhihang and Sun, Siqi and Tan, Qingxiong and Wang, Yixuan and Yu, Qinze and Zong, Licheng and Hong, Liang and Xiao, Jin and Shen, Tao and King, Irwin and Li, Yu},
  journal = {arXiv preprint arXiv:2204.00300},
  year    = {2022},
  doi     = {10.48550/arXiv.2204.00300}
}

Credits

Original model and code by Chen et al. Source: GitHub. Hugging Face port maintained by Taykhoom Dalal.

License

MIT, following the original repository.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers · fill-mask

Нельзя запустить

Модели нужен код из репозитория; автор пока не в списке доверенных организаций.

Класс архитектуры
RnaFmForMaskedLM
Ревизия весов
204c14d

0 моделей