Я выполняю бинарную классификацию:
- положительный класс: подтвержденные сайты связывания REST
- отрицательный класс: необязательные последовательности (совпадающие по длине и содержанию GC).
Возможности на данный момент:
- 64 3-мерных частоты (фиксирует тринуклеотидные паттерны)
- 5 ячеек содержания GC вдоль последовательности (позиционный GC)
- Несовпадение GC/AT
- Соотношение пуринов/пиримидинов
- Соотношение наблюдаемого/ожидаемого CpG
- Ранее я также проверял частоты моно/динуклеотидов без каких-либо результатов
Модель
ROC-AUC
PR-AUC
F1
Примечания
HistGradientBoosting
0,7608
0,7298
0,7103
лучший результат, минимальная переобучение
Случайный лес
0,7584
0,7220
0,7092
немного больше переобучения
SVM (RBF)
0,7547
0,7129
0,7118
стабильно, медленнее
Обучающий набор: 24 000 образцов × 70 функций
Проверочный набор: 5 000 образцов
Реализация: scikit-learn (с RandomizedSearchCV и изотонической калибровкой)
Вопрос
Мне хотелось бы получить совет о следующих шагах по повышению производительности, в идеале ROC-AUC > 0,8 (или 0,9).
Какие виды улучшений наиболее эффективны для такого типа проблем с биологической последовательностью?
- Существуют ли дополнительные свойства, полученные из последовательностей, или структурные функции, которые часто помогают при связывании TF?
- Должен ли я попробовать глубокое обучение (CNN/гибриды CNN-RNN) на необработанной последовательности вместо инженерных функций?
- Любые подходы ансамблевого или метаобучения (например, суммирование, голосование), которые имеют тенденцию помочь здесь?
- Вы ожидаете, что ROC-AUC >0,8 будет реалистичным для REST с чисто числовыми функциями, или это типичный потолок?
Подробнее здесь: https://stackoverflow.com/questions/798 ... c-auc-0-76
Мобильная версия