Loading [MathJax]/extensions/tex2jax.js

понедельник, 10 февраля 2025 г.

Нейросетевое будущее клинических исследований

В 2024 г. большое количество выступлений на R in Pharma было посвящено различным аспектам применения LLM: 

  • трансляция кода R↔SAS;
  • автоматизация medical writing-а;
  • AI-ассистенты для написания кода, а именно Shiny Assistant;
  • встраивание чат-бота в Shiny-приложение для управления этим приложением командами на естественном языке;
  • извлечение информации в структурированном виде из текстов и картинок, в том числе из файлов в формате pdf.

AI-ассистентами уже никого не удивишь. Например, Copilot в RStudio работает "из коробки", бесплатно и без СМС (к сожалению, другие помощники пока не доступны). Автоматизация написания текстов в GxP-среде выглядит делом еще более отдаленного будущего, чем диагностика и лечение пациентов ИИ-докторами. Поэтому наиболее близкой к практическому применению кажется идея заставить нейросетки читать статьи вместо человека и доставать из них нужную информацию в человеко- и машиночитаемом формате, ведь на чтении сотен страниц можно сэкономить гораздо больше времени, чем на написании пары десятков строк кода. В этой публикации оценим, на что способны модели ChatGPT 4o, DeepSeek R1, Claude 3.5 Sonnet и Gemini 2.0 Flash.

пятница, 27 декабря 2024 г.

Побеждаем базу данных UNIPROT при помощи duckdb

Широко известную в узких кругах базу UNIPROT можно скачать для локального использования в виде очень простых по своей структуре, но не очень удобных в использовании файлов. Например, goa_uniprot_gcrp.gpa.gz (contains all GO annotations for canonical accessions from the UniProt reference proteomes for all species, which provide one protein per gene. The reference proteomes comprise the protein sequences annotated in Swiss-Prot or the longest TrEMBL transcript if there is no Swiss-Prot record) содержит несколько строк комментариев, начинающихся с "!", за которыми следует таблица из 12 столбцов и 400 млн. строк без заголовков. В разархивированном виде файл весит 44 Гб, и для нормальной работы с ним в традиционном R-стиле с загрузкой таблицы целиком в ОЗУ нужно иметь в запасе ~128 Гб. Под катом решение в несколько строк кода, позволяющее снизить требования по памяти до пары Гб при сохранении приемлемой скорости работы.

среда, 31 января 2024 г.

Enefit - Predict Energy Behavior of Prosumers

Буквально только что закончилось соревнование Enefit - Predict Energy Behavior of Prosumers, в котором нужно было предсказывать объемы производства и потребления электроэнергии для субъектов в Эстонии, являющихся так называемыми просьюмерами (проще говоря, теми потребителями, которые еще и сами вырабатывают электричество при помощи своих солнечных станций). Это задача регрессии с 2 таргетами и честным оцениванием на новых данных в будущем, после окончания приема самбитов. Результаты будут не скоро - в конце апреля, поэтому по горячим следам пишу краткий отчет.

среда, 10 января 2024 г.

Ранняя остановка при обучении бустингов с mlr3, или Шах и мат, sklearn

Долгие годы использование ранней остановки при обучении бустингов было больной темой. С нативными интерфейсами xgboost/lightgbm/catboost проблем, разумеется, нет. Но что делать, если нужно затюнить гиперпараметры более сложной модели с обучаемыми этапами предварительной обработки (такими как импутация пропусков или таргет энкодинг), используя при этом (кросс)валидацию? UPD содержимое поста устарело, по данной теме см. https://mlr3book.mlr-org.com/chapters/chapter15/predsets_valid_inttune.html

среда, 20 декабря 2023 г.

CAFA 5 Protein Function Prediction

Вступление

20 декабря 2023 г. закончилось соревнование CAFA5: активная фаза длилась с середины апреля по конец августа, затем ждали результатов на честном тестовом наборе данных, собранном после окончания приема сабмитов. Маленькая команда R-щиков в составе Антонины Долгоруковой и меня выступила достаточно успешно, заняв 16 место на публичном лидерборде и 13 на приватном, буквально на десятитысячных долях (kaggle-style) дотянув до золотой медали. Можно ознакомиться с кратким описанием решения, ну а в этом сообщении рассказывается максимально подробно, что делали в ходе соревнования, чему научились и на чем обломались.

суббота, 22 февраля 2020 г.

Перевод Feature Spec interface

Feature Spec interface

Перевод https://tensorflow.rstudio.com/guide/tfdatasets/feature_spec/

В этом руководстве будут рассмотрены основы использования интерфейса feature_spec() пакета tfdatasets. Перед прочтением полезно ознакомиться с R interface to TensorFlow Dataset API.

feature_spec() в R представляет собой дружественный интерфейс к модулю tf.feature_column в Python, который позволяет задавать преобразования и представления столбцов при работе с табличными данными. Реализация в R выполнена в едином стиле с пакетом recipes, краткий обзор возможностей которого был рассмотрен в публикации Инфраструктура для обучения моделей на R: rsample и recipes.