Team:GO Paris-Saclay/Model


bd hardware

Choosing the Best Marker Using Machine Learning

Choisir le meilleur marqueur à l'aide d'apprentissage automatique

Выбор лучшего маркера для тестирования с помощью машинного обучения


Aperçu

Dans notre projet, nous avons répondu au besoin d'un test de diagnostic de l'endométriose en utilisant des microARN comme biomarqueurs. Puisqu'un bon biomarqueur doit avoir une spécificité et une sensibilité élevées pour détecter une certaine condition, nous avons décidé d'analyser les performances de nos modèles à l'aide de courbes ROC qui tracent la sensibilité par rapport à un moins la spécificité d'un classificateur donné. Nous pouvons ensuite comparer les performances des courbes ROC à l'aide d'une statistique récapitulative, l'aire sous la courbe, en général notée AUC.

Puisque trouver un test de diagnostic revient à classer un individu comme ayant la maladie ou non, nous pouvons voir que pour trouver un test, nous pouvons mettre en œuvre en réalité un problème de classification binaire en fonction de certains biomarqueurs potentiels qui peuvent être traités en utilisant des marqueurs bien connus. algorithmes d'apprentissage automatique. Par conséquent, nous avons choisi quatre modèles d'apprentissage automatique dans notre recherche qui sont bien adaptés en tant que classificateurs binaires : le modèle de régression logistique, la machine à vecteurs de support, le réseau de neurones et l'arbre d'amplification de gradient. Avant d'adapter ces modèles, nous avons recherché de petits sous-ensembles de miARN qui pourraient bien fonctionner lors de la tâche de classification lorsqu'ils sont introduits dans les modèles, et qui pourraient offrir des pistes de biomarqueurs possibles à tester davantage en laboratoire à l'aide de la méthode CRISPR/Cas. Pour obtenir ces sous-ensembles, nous avons utilisé trois méthodes de sélection de caractéristiques différentes : la corrélation de Pearson, l'élimination de caractéristiques récursive et la régularisation au lasso, et quelques combinaisons de deux méthodes, et nous avons obtenu de bonnes AUC pour certaines d'entre elles. Les meilleurs scores ont été atteints lorsque nous avons combiné la méthode de corrélation de personne suivie de l'élimination récursive des fonctionnalités qui nous a donné un sous-ensemble de seulement trois miARN comme biomarqueurs potentiels. Il convient de noter que l'un de ces miARN, , est apparu dans tous les sous-ensembles obtenus à partir des différentes méthodes de sélection de caractéristiques, ce qui en fait notre candidat le plus prometteur pour un biomarqueur.


In our project, we addressed the need for a diagnostic test for endometriosis by using microRNAs as biomarkers. Since a good biomarker should have high specificity and sensitivity to detect a certain condition, we have decided to analyse the performance of our models through ROC curves which plot the sensitivity against one minus the specificity of a given classifier. We can then compare the performance of the ROC curves using a summary statistic, the area under the curve, in general denoted as AUC.

Since finding a diagnostic test is the same as classifying an individual as having the disease or not, we can see that to find a test we can implement in reality a binary classification problem in function of some potential biomarkers that can be addressed by using well known machine learning algorithms. Therefore, we have chosen four machine learning models in our research that are well adapted as binary classifiers: the logistic regression model, the support vector machine, the neural network, and the gradient boosting tree. Before fitting these models, we have searched for small subsets of miRNA which could perform well at the classification task when fed into the models, and that could offer some leads of possible biomarkers to be tested further in the lab using the CRISPR/Cas method. To obtain this subsets, we have used three different feature selection methods: the Pearson correlation, the recursive feature elimination, and the lasso regularisation, and some combinations of two methods, and we have obtained some good AUCs for some of them. The best scores have been reached when we have combined the Pearson correlation method followed by the feature recursive elimination which has given us a subset of only three miRNAs as potential biomarkers. It is worthy to be noted that one of this miRNA, miR-200c-3p, has appeared in all the subsets obtained from the different feature selection methods which makes it our most promising candidate for a biomarker.


Обзор



В нашем проекте мы обратились к необходимости диагностического теста на эндометриоз, используя микроРНК в качестве биомаркеров. Поскольку хороший биомаркер должен обладать высокой специфичностью и чувствительностью для выявления определенного состояния, мы решили проанализировать производительность наших моделей с помощью кривых ROC, которые отображают чувствительность в зависимости от единицы минус специфичность данного классификатора. Затем мы можем сравнить характеристики кривых ROC, используя сводную статистику, площадь под кривой, обычно обозначаемую как AUC.

Поскольку поиск диагностического теста - это то же самое, что классифицировать человека как имеющего заболевание или нет, мы можем видеть, что для поиска теста мы можем реализовать в реальности задачу бинарной классификации в зависимости от некоторых потенциальных биомаркеров, которые могут быть решены с помощью хорошо известных алгоритмы машинного обучения. Поэтому в нашем исследовании мы выбрали четыре модели машинного обучения, которые хорошо адаптированы в качестве бинарных классификаторов: модель логистической регрессии, машина опорных векторов, нейронная сеть и дерево повышения градиента. Перед подгонкой этих моделей мы провели поиск небольших подмножеств miRNA, которые могли бы хорошо справиться с задачей классификации при вводе в модели, и которые могли бы предложить некоторые выводы о возможных биомаркерах для дальнейшего тестирования в лаборатории с использованием метода CRISPR / Cas. Чтобы получить эти подмножества, мы использовали три различных метода выбора признаков: корреляцию Пирсона, рекурсивное исключение признаков и регуляризацию лассо, а также некоторые комбинации двух методов, и мы получили несколько хороших AUC для некоторых из них. Наилучшие результаты были достигнуты, когда мы объединили метод корреляции Person с последующим рекурсивным устранением признаков, что дало нам подмножество только трех miRNA в качестве потенциальных биомаркеров. Стоит отметить, что одна из этих микроРНК появилась во всех подмножествах, полученных с помощью различных методов отбора признаков, что делает ее наиболее многообещающим кандидатом на роль биомаркера.

Flowchart for our data analysis

Des données biologiques à l'analyse des données

From biological data to data analysis

От биологических данных к анализу данных

Les microARN comme biomarqueurs
MicroRNAs as biomarkers
МикроРНК как биомаркеры



Nous définissons un biomarqueur comme une caractéristique qui mesure objectivement un état biologique et fournit un indicateur unique des processus normaux et pathologiques [D'Hooghe]. En général, un bon biomarqueur doit être sensible, spécifique et non invasif, et les miARN ont montré ces dernières années qu'ils pouvaient répondre à ces attentes. Les miARN circulants ont un grand potentiel pour être des biomarqueurs sensibles et spécifiques pour le diagnostic de tumeurs et d'autres maladies []. Dans le cas de l'endométriose, un bon biomarqueur doit également être indépendant du cycle menstruel, et des précautions doivent être prises avec les miARN, car certains d'entre eux sont connus pour changer en fonction de la phase du cycle, étant donné qu'ils sont régulés par l'ovaire. hormones oestrogène et progestérone [D'Hooghe].



We define a biomarker as a characteristic that objectively measures a biological state and provides a unique indicator of a normal versus a pathological process [D'Hooghe]. In general, a good biomarker should be sensitive, specific, and non-invasive, and in recent years miRNAs have shown that they can fulfill these expectations. Circulating miRNAs have a great potential to be sensitive and specific biomarkers for the diagnosis of tumors and other diseases [Faruq]. In the case of endometriosis, a good biomarker should also be menstrual cycle independent, and care should be taken regarding miRNAs since some are known to vary with the cycle phase given that they are regulated by ovarian steroids [D'Hooghe].



Мы определяем биомаркер как характеристику, которая объективно измеряет биологическое состояние и обеспечивает уникальный индикатор нормального и патологического процесса [D'Hooghe]. В общем, хороший биомаркер должен быть чувствительным, специфичным и неинвазивным, и в последние годы miRNA показали, что они могут оправдать эти ожидания. Циркулирующие миРНК обладают большим потенциалом быть чувствительными и специфическими биомаркерами для диагностики опухолей и других заболеваний []. В случае эндометриоза хороший биомаркер также должен быть независимым от менструального цикла, и следует проявлять осторожность в отношении miRNA, поскольку известно, что некоторые из них меняются в зависимости от фазы цикла, учитывая, что они регулируются гормонами яичников - эстрогеном и прогестероном [D'Hooghe].

Le besoin de protocoles et de pipelines standard
Need for having standard protocols and pipelines
Необходимость стандартных протоколов и пайплайнов


Les variations des niveaux de miARN en fonction du cycle menstruel montrent certains des problèmes qui peuvent survenir lors de la recherche de biomarqueurs de miARN : les données collectées peuvent être obtenues à différentes phases du cycle, ou le dérèglement d'un miARN donné peut être beaucoup plus prononcé à différents phases du cycle.


These variations in miRNA levels with menstrual cycle show some problems that might appear while searching for miRNA biomarkers: the collected data might be taken at different cycle phases, or the dysregulation of a given miRNA might be much more pronounced at a different phase cycle than at the phase the data has been collected.


Вариации уровней miRNA в зависимости от менструального цикла показывают некоторые проблемы, которые могут возникнуть при поиске биомаркеров miRNA: собранные данные могут быть получены на разных фазах цикла, или нарушение регуляции данной miRNA может быть гораздо более выраженным на разных фазах цикла.


Mais c'est loin d'être le seul problème lorsque l'on essaie de collecter des données. Étant donné que les modèles d'apprentissage automatique nécessitent de grandes quantités de données et qu'une étude générale sur l'endométriose collecte des données sur un petit échantillon de patientes, les données de différentes études doivent être regroupées. Ce n'est pas une tâche facile, car chaque étude a sa propre conception et ses propres méthodes : procédures de collecte, de traitement et de traitement des tissus ; une méthode spéciale de profilage des miARN (qRT-PCR, séquençage de différentes générations, y compris la prochaine génération (NGS), nanopores) ; divers algorithmes de traitement et de normalisation des données, etc.


But this if far from being the only problem when trying to collect data. Since machine learning models need large amounts of data, and in a general endometriosis study data is collected on a small sample of patients, data from different studies must be merged. This is not an easy task since each study has its given design and methods: procedures for tissue collection, handling and processing; a specific miRNA profiling technique (qRT-PCR, microarray, deep sequencing or next generation sequencing (NGS), nanopores); different algorithms for processing and normalizing the data, etc.


Но это далеко не единственная проблема при попытке сбора данных. Поскольку для моделей машинного обучения требуются большие объемы данных, а в общем исследовании эндометриоза данные собираются на небольшой выборке пациентов, данные из разных исследований необходимо объединить. Это непростая задача, поскольку каждое исследование имеет свой собственный дизайн и методы: процедуры сбора, обработки и обработки тканей; специальный метод профилирования miRNA (qRT-PCR, секвенирование различных поколений в том числе и следующего поколения (NGS), нанопоры); различные алгоритмы обработки и нормализации данных и др.


Toute cette variabilité dans la conception de l'étude se traduit par diverses études qui trouvent des ensembles de miARN à peine chevauchants non régulés dans l'endométriose. Par conséquent, nous sommes encore dans une phase où différentes études sur les miARN proposent différents candidats miARN pour les tests de diagnostic, indiquant la nécessité de protocoles et de pipelines standard [D'Hooghe].


All this variability in the study design translates into various studies finding barely overlapping miRNA sets deregulated in endometriosis. Therefore, we are still in a phase where different miRNA studies propose different candidate miRNA for a diagnostic test, which shows the necessity of having standard protocols and pipelines [D'Hooghe].


Вся эта вариативность в дизайне исследования переводится в различные исследования, в которых обнаруживаются едва перекрывающиеся наборы miRNA, нерегулируемые при эндометриозе. Следовательно, мы все еще находимся в фазе, когда различные исследования miRNA предлагают разных кандидатов miRNA для диагностического теста, что показывает необходимость наличия стандартных протоколов и конвейеров [D'Hooghe].

Introduction de procédures standard
Introducing standard procedures
Введение стандартных процедур


Heureusement, beaucoup d'efforts ont été déployés pour standardiser les procédures utilisées pour diagnostiquer l'endométriose. Par exemple, de grands efforts ont été déployés pour développer des normes pour la collecte, le traitement et le stockage des tissus dans la recherche sur l'endométriose, notamment par l'Université de Californie, qui a créé la NIH Endometrial Tissue and DNA Bank en utilisant des procédures opérationnelles standard généralement acceptées et bien décrites. (SOPs), ainsi que par la World Foundation. Cet effort pour parvenir à un consensus sur la façon dont les données seront générées permettra la reproductibilité et la comparabilité des résultats, et contribuera à l'épanouissement d'un plus grand nombre d'études longitudinales.


Fortunately, many efforts are made into standardizing the procedures used in finding a diagnosis for endometriosis. For example, great efforts have been made to develop standards for tissue collection, processing and storage in endometriosis research notably by the University of California who established the NIH Human Endometrial Tissue and DNA Bank using the now common and well-described standard operating procedures (SOPs), and by the World Endometriosis Research Foundation who established the Endometriosis Phenome and Biobanking Harmonization Project (EPHect) [Becker]. This effort to obtain a consensus on how data is obtained is going to permit the reproducibility and comparability of results, but also more longitudinal studies to flourish.


К счастью, прилагается много усилий для стандартизации процедур, используемых при диагностике эндометриоза. Например, большие усилия были предприняты для разработки стандартов сбора, обработки и хранения тканей при исследованиях эндометриоза, в частности Калифорнийским университетом, который учредил Банк эндометриальных тканей и ДНК человека NIH с использованием общепринятых и хорошо описанных стандартных операционных процедур (СОП), а также Всемирным фондом исследований эндометриоза, который учредил Проект гармонизации феномена эндометриоза и биобанков (EPHect) []. Это усилие по достижению консенсуса в отношении того, как будут получены данные, позволит обеспечить воспроизводимость и сопоставимость результатов, а также будет способствовать процветанию большего числа лонгитюдных исследований.

Un exemple de pipeline potentiel
An example of potential pipeline
Пример потенциального пайплайна


Note du traducteur : un pipeline (alias pipeline) dans les calculs est un ensemble d'éléments de traitement de données connectés en série, où la sortie d'un élément est l'entrée du suivant. Les éléments d'un pipeline (convoyeur ou pipeline) sont souvent exécutés en parallèle ou à intervalle de temps. De la mémoire tampon est souvent insérée entre les éléments.

En ce qui concerne la standardisation du traitement et de l'analyse des données, il reste du travail à faire. Notre recherche documentaire a révélé qu'il existe de nombreuses options possibles pour le choix d'un pipeline [Actor, Collins, Elias, Moustafa etc.],

Mais jusqu'à présent, il n'y a pas eu d'examen où une comparaison conjointe des options est présentée.




Regarding standardizing the way data is processed and analyzed, work remains to be done. From our literature search, it appears there are many possible variations for choosing a pipeline [Akter, Collins, Elias, Moustafa, etc], and not yet a review to compare them together.



Примечание от переводчика: pipeline (он же пайплайн) в вычислениях - представляет собой набор данных , обрабатывающих элементов , соединенных последовательно, где выход одного элемента является входом следующего. Элементы пайплайна (конвейера или трубопровода) часто выполняются параллельно или с временным интервалом. Некоторое количество буферной памяти часто вставляется между элементами.

Что касается стандартизации способов обработки и анализа данных, еще предстоит проделать работу. Из нашего поиска литературы выяснилось, что существует множество возможных вариантов выбора пайплайна [Актер, Коллинз, Элиас и т. Д.],

Но пока нет обзора где представлено совместное сравнение вариантов.






Nous allons juste prendre un exemple intéressant de pipeline de l'article de [Elias] pour identifier les patientes atteintes d'un cancer de l'ovaire, car il a inspiré le modèle que nous avons proposé. Dans cet article, les données des miARN sont traitées à partir de deux études différentes utilisant la technologie de séquençage de nouvelle génération d'Illumina : les miARN sont filtrés de sorte que chaque miARN soit présent dans au moins 50 % des deux cohortes avec plus de 10 transcrits par million (cela exclut un nombre impressionnant de 2 386 miARN) , puis les effets de lot sont supprimés entre les cohortes à l'aide de ComBat.



We are only going to take the example of an interesting pipeline from the article [Elias] for detecting patients with ovarian cancer since it has inspired the model we have proposed. In this article, miRNA data is processed from two different studies using the Illumina next generation sequence technology: miRNAs are filtered so that each miRNA is present in at least 50% of both cohorts with a number of transcripts per million greater than 10 (this eliminates an impressive 2386 miRNAs), and then batch effects are removed between cohorts using ComBat.


Мы только собираемся взять пример интересного пайплайна из статьи [Элиас] для выявления пациентов с раком яичников, поскольку он вдохновил модель, которую мы предложили. В этой статье данные miRNA обрабатываются из двух разных исследований с использованием технологии последовательностей следующего поколения Illumina: miRNA фильтруются так, чтобы каждая miRNA присутствовала по крайней мере в 50% обеих когорт с числом транскриптов на миллион больше 10 (это исключает впечатляющие 2386 miRNAs), а затем пакетные эффекты удаляются между когортами с помощью ComBat.




Une fois que les données des miARN ont été traitées et que les informations à analyser ont été collectées dans un tableau répertoriant le nombre de transcrits par million de miARN d'intérêt pour chaque patient, les auteurs passent à un modèle d'apprentissage automatique. Ils commencent par diviser les données en un ensemble d'apprentissage pour obtenir les paramètres du modèle et un ensemble de test pour tester l'exactitude des prédictions. Étant donné que le nombre de caractéristiques dans le modèle (c'est-à-dire le nombre de miARN) est supérieur au nombre de patients, seuls certains des miARN sont sélectionnés à l'aide de trois méthodes différentes de sélection de caractéristiques dans l'ensemble d'apprentissage.

Ensuite, pour chaque ensemble de données abrégé, 11 modèles de classificateurs différents sont développés qui fourniront une fonction de notation pour prédire notre classification en patients malins et normaux / borderline. Les performances de combinaison croisée entre les méthodes de sélection de caractéristiques et les modèles de classificateur seront ensuite évaluées sur l'ensemble de test à l'aide de courbes ROC (https://en.wikipedia.org/wiki/Receiver_operating_characteristic) et de son AUC. (Area Under Curve) - l'aire délimitée par la courbe ROC et l'axe de la proportion de classifications faussement positives. Plus l'indicateur AUC est élevé, meilleur est le classificateur, tandis que la valeur de 0,5 démontre l'inadéquation de la méthode de classification choisie (correspond à une estimation aléatoire). Une valeur inférieure à 0,5 indique que le classificateur agit exactement à l'opposé : si les positifs sont appelés négatifs et vice versa, le classificateur fonctionnera mieux.)




After the miRNA data has been processed, and the information to be analyzed condensed into a table giving for each patient the number of transcripts per million of the miRNAs of interest, the authors now pass to the machine learning model. They will start by splitting the data into a training set to obtain the parameters of the model, and into a test set to verify the accuracy of the predictions.

Since the numbers of features in the model (i.e., number of miRNAs) is greater than the number of patients, only some of the miRNAs are selected using three different feature selection methods on the training set.

Then, for each reduced data set, 11 different classifier models are developed that will give a scoring function in order to predict our classification into cancerous vs normal/borderline patients. The performance of the cross-combination between the feature selection methods and the classifier models, will then be assessed on the test set using ROC curves, and its AUC. The best model is then selected according to its AUC, and revalidated on the batch unadjusted data, and compared to experimental data.




После того, как данные miRNA были обработаны и информация, которая должна быть проанализирована, была собрана в таблице, в которой для каждого пациента указано количество транскриптов на миллион интересующих miRNA, авторы переходят к модели машинного обучения. Они начинают с разделения данных на обучающий набор для получения параметров модели и на тестовый набор для проверки точности прогнозов. Поскольку количество признаков в модели (то есть количество miRNA) больше, чем количество пациентов, только некоторые из miRNA выбираются с использованием трех различных методов выбора признаков в обучающей выборке.

Затем для каждого сокращенного набора данных разрабатываются 11 различных моделей классификаторов, которые дадут функцию оценки, чтобы предсказать нашу классификацию на злокачественных и нормальных / пограничных пациентов. Затем эффективность перекрестной комбинации между методами выбора признаков и моделями классификатора будет оцениваться на тестовом наборе с использованием кривых ROC (https://en.wikipedia.org/wiki/Receiver_operating_characteristic) и его AUC. (Area Under Curve, площадь под кривой) — площадь, ограниченная ROC-кривой и осью доли ложных положительных классификаций.

Чем выше показатель AUC, тем качественнее классификатор, при этом значение 0,5 демонстрирует непригодность выбранного метода классификации (соответствует случайному гаданию). Значение менее 0,5 говорит, что классификатор действует с точностью до наоборот: если положительные назвать отрицательными и наоборот, классификатор будет работать лучше.)


Dans les sections suivantes, nous essaierons de mieux comprendre certaines idées derrière ce workflow de machine learning et de développer les bases théoriques de notre modèle. Nous allons en fait travailler à rebours pour comprendre les concepts de ce flux de travail puisque c'est la façon dont notre problème est réellement posé.


In the following sections, we will try to better understand some ideas behind this machine learning workflow and develop the theoretical basis of our model. We will actually work backwards to understand the concepts in this workflow since it's the way that our problem is actually posed.


В следующих разделах мы постараемся лучше понять некоторые идеи, лежащие в основе этого рабочего процесса машинного обучения, и разработать теоретические основы нашей модели. На самом деле мы будем работать в обратном направлении, чтобы понять концепции этого рабочего процесса, поскольку именно так и ставится наша проблема.

Flowchart of study design in [Elias].
(a) Protocol for miRNA sequencing, filtering, batch adjustment and separation into the training and testing sets.
(b) Protocol for model development and testing.
https://doi.org/10.7554/eLife.28932.003

Problèmes de classification et leur évaluation

Classification problems and their assessment

Проблемы классификации и их оценка

Le test de diagnostic comme problème de classification
Diagnostic test as a classification problem
Диагностический тест как проблема классификации


Lors de la conception d'un test de diagnostic pour une certaine maladie, nous examinons en fait un problème de classification. Nous voulons avoir un test qui prédit avec précision si un certain patient a une maladie ou non. Par conséquent, nous pouvons traduire un test de diagnostic en un problème de classification en cherchant un moyen d'attribuer à chaque individu dans un ensemble l'un des deux états : 0 (ne pas avoir la maladie) ou 1 (avoir la maladie). Ces états peuvent également être considérés comme deux sous-ensembles différents : N, le sous-ensemble d'individus n'ayant pas la maladie, et P, le sous-ensemble de patients ayant la maladie. Nous pouvons alors appliquer les mathématiques de la théorie de la décision pour comprendre le lien entre les deux.


When designing a diagnostic test for a certain disease, we are actually looking at a classification problem. We want to have a test that will accurately predict if a certain patient has a disease or not. Therefore, we can translate a diagnostic test to a classification problem by searching a way to assign to each individual in a set one of two states: 0 (not having the disease), or 1 (having the disease). These states can also be seen as two different subsets: N, the subset of individuals not having the disease, and P, the subset of patients having the disease. We can then apply the mathematics of decision theory to understand the connection between the two.


При разработке диагностического теста для определенного заболевания мы фактически сталкиваемся с проблемой классификации. Мы хотим иметь тест, который точно предскажет, есть ли у конкретного пациента заболевание или нет. Следовательно, мы можем преобразовать диагностический тест в задачу классификации, ища способ присвоить каждому человеку в наборе одно из двух состояний: 0 (отсутствие заболевания) или 1 (наличие заболевания). Эти состояния также можно рассматривать как два разных подмножества: N - подмножество людей, не страдающих заболеванием, и P - подмножество пациентов, страдающих этим заболеванием. Затем мы можем применить математику теории принятия решений, чтобы понять связь между ними.


Pour ce faire, nous allons utiliser un type spécial de classificateur composé d'une fonction de notation qui est une fonction de l'ensemble des individus de notre étude sur l'ensemble des nombres réels, et d'un processus de décision dichotomique qui est une fonction de l'ensemble des individus aux deux états décrits précédemment {0,1}. Une fonction de notation, que nous allons désigner par S, sera donnée par nos modèles d'apprentissage automatique entraînés, et le processus de décision dichotomique peut être basé sur la spécification d'une règle seuil basée sur t du type :

  • si S(X)>t, alors X est considéré comme un individu malade, c'est-à-dire que X appartient à P(t), tandis que
  • si S(X)≤t, alors X est considéré comme un individu sain, c'est-à-dire que X appartient à N(t),

où X décrit un certain individu dans notre étude (dans notre cas, ce sera le vecteur mesurant le niveau de miARN), P(t) est l'ensemble positif, ou l'ensemble des individus malades assignés au seuil t, et N(t ) est l'ensemble négatif, ou l'ensemble des individus sains assignés au seuil t.


In order to do this, we are going to use a special type of classifier composed by a scoring function which is a function from the set of individuals in our study onto the set of real numbers, and a dichotomous decision process which is a function from the set of individuals to the two states described earlier {0,1}. A scoring function, which we are going to denote by S, will be given by our trained machine learning models, and the dichotomous decision process can be based on specifying a threshold t-based rule of the type:

  • if S(X)>t, then X is considered to be a sick individual, i.e. X belongs to P(t), while
  • if S(X)≤t, then X is considered to be a healthy individual, i.e. X belongs to N(t),

where X describes a certain individual in our study (in our case it’s going to be the vector measuring the level of miRNAs), P(t) is the positive set, or the set of assigned sick individuals at threshold t, and N(t) is the negative set, or the set of assigned healthy individuals at threshold t. >


Чтобы сделать это, мы собираемся использовать специальный тип классификатора, состоящий из функции оценки, которая является функцией от набора индивидов в нашем исследовании на набор действительных чисел, и дихотомического процесса принятия решения, который является функцией от набор индивидов в два состояния, описанных ранее {0,1}. Функция оценки, которую мы собираемся обозначить буквой S, будет предоставлена нашими обученными моделями машинного обучения, а дихотомический процесс принятия решения может быть основан на указании порогового правила типа t на основе t:

  • если S (X)> t, то X считается больным, т.е. X принадлежит P (t), а
  • если S (X) ≤t, то X считается здоровым человеком, т.е. X принадлежит N (t),

где X описывает определенного человека в нашем исследовании (в нашем случае это будет вектор, измеряющий уровень miRNA), P (t) - положительный набор или набор назначенных больных на пороге t, а N (t ) - отрицательный набор или набор назначенных здоровых людей на пороге t. >


On peut facilement voir que par cette décision, nous supposons que des valeurs plus élevées sont indicatives de décisions positives. Ainsi, à travers nos modèles d'apprentissage automatique, nous aimerions trouver une fonction de scoring qui séparera le plus la distribution de la fonction de scoring sur les deux vrais ensembles, les individus sains et les malades. S'il y a une certaine séparation des distributions, alors l'hypothèse selon laquelle des valeurs plus grandes indiquent les individus malades peut facilement être atteinte même si l'inverse se produit en utilisant le négatif de la fonction de notation.


It can be easily seen that by this decision we are assuming that larger values are indicative of positive decisions. Thus, through our machine learning models, we would like to find a scoring function that will separate the most the distribution of the scoring function on the two true sets, the healthy individuals and the sick ones. If there is some separation of distributions, then the assumption that larger values indicate the sick individuals can easily be reached even if the converse happens by using the negative of the scoring function.


Легко видеть, что этим решением мы предполагаем, что большие значения указывают на положительные решения. Таким образом, с помощью наших моделей машинного обучения мы хотели бы найти функцию оценки, которая будет максимально разделять распределение функции оценки на два истинных набора: здоровых людей и больных. Если есть некоторое разделение распределений, то предположение о том, что большие значения указывают на больных, может быть легко достигнуто, даже если обратное произойдет, если использовать отрицательное значение функции подсчета.

Évaluation des performances du classificateur : sensibilité et spécificité
Classifier performance assessment: sensitivity, and specificity
Оценка работы классификатора: чувствительность и специфичность


Pour évaluer la performance de chacune de nos fonctions de scoring, nous allons développer une méthode basée sur les probabilités suivantes :

  • p(S>t|P) = se : la probabilité qu'un individu malade ait une fonction de score supérieure à t, c'est-à-dire la probabilité qu'un individu malade soit classé comme ayant la maladie, aussi appelé taux de vrais positifs, ou sensibilité, notée se ;
  • p(S≤t|P) = 1 – se : la probabilité qu'un individu malade ait une fonction de score inférieure ou égale à t, c'est-à-dire la probabilité qu'un individu malade soit classé comme n'ayant pas la maladie, également appelée le taux de faux négatifs ;
  • p(S≤t|N) = sp : la probabilité qu'un individu sain ait une fonction de score inférieure ou égale à t, c'est-à-dire la probabilité qu'un individu sain soit classé comme n'ayant pas la maladie, aussi appelée le vrai taux négatif, ou spécificité, noté sp ;
  • p(S>t|N) = 1 – sp : la probabilité qu'un individu sain ait une fonction de notation supérieure à t, c'est-à-dire la probabilité qu'un individu sain soit classé comme ayant la maladie, aussi appelé le faux positif taux.



To assess the performance of each of our scoring functions, we are going to develop a method based on the following probabilities:

  • p(S>t|P) = se: the probability that a sick individual has a scoring function greater than t, i.e., the probability that a sick individual is classified as having the disease, also called the true positive rate, or sensitivity, denoted se;
  • p(S≤t|P) = 1 – se: the probability that a sick individual has a scoring function smaller or equal to t, i.e., the probability that a sick individual is classified as not having the disease, also called the false negative rate;
  • p(S≤t|N) = sp: the probability that a healthy individual has a scoring function smaller or equal to t, i.e., the probability that a healthy individual is classified as not having the disease, also called the true negative rate, or specificity, denoted sp;
  • p(S>t|N) = 1 – sp: the probability that a healthy individual has a scoring function greater than t, i.e., the probability that a healthy individual is classified as having the disease, also called the false positive rate.


Чтобы оценить эффективность каждой из наших оценочных функций, мы собираемся разработать метод, основанный на следующих вероятностях:

  • p (S> t | P) = se: вероятность того, что у больного человека оценочная функция больше, чем t, т. е. вероятность того, что больной будет классифицирован как имеющий заболевание, также называемая истинно положительным показателем, или чувствительность, обозначаемая как se;
  • p (S≤t | P) = 1 - se: вероятность того, что у больного человека оценочная функция меньше или равна t, т. е. вероятность того, что больной человек будет классифицирован как не имеющий заболевания, также называется ложноотрицательный показатель;
  • p (S≤t | N) = sp: вероятность того, что у здорового человека функция оценки меньше или равна t, т. е. вероятность того, что здоровый человек будет классифицирован как не страдающий заболеванием, также называемая истинной отрицательная ставка или специфичность, обозначаемая sp;
  • p (S> t | N) = 1 - sp: вероятность того, что у здорового человека оценочная функция больше, чем t, т. е. вероятность того, что здоровый человек будет классифицирован как страдающий заболеванием, также называемый ложноположительным. Оценить.



On peut résumer ces probabilités à l'aide d'une matrice de confusion :

Matrice de confusion
Condition prévue
+-
Condition réelle+p(S>t|P)
vrai taux positif
sensibilité
p(S≤t|P)
taux de faux négatifs
-p(S≤t|N)
taux de faux négatifs
spécificité
p(S>t|N)
taux de faux positifs




We can summarize these probabilities by the help of a confusion matrix:

Confusion matrix
Predicted condition
+-
Actual condition+p(S>t|P)
true positive rate
sensitivity
p(S≤t|P)
false negative rate
-p(S≤t|N)
false negative rate
specificity
p(S>t|N)
false positive rate


Мы можем суммировать эти вероятности с помощью матрицы неточностей:

Матрица путаницы
Прогнозируемое условие
+ -
Фактическое состояние + p (S> t | P)
истинно положительный коэффициент
чувствительность
p (S≤t | P)
ложноотрицательный показатель
- p (S≤t | N)
ложноотрицательный рейтинг
специфичность
p (S> t | N)
количество ложных срабатываний



Évaluation des performances du classificateur : courbes ROC
Classifier performance assessment: ROC curves
Оценка работы классификатора: кривые ROC


À partir des probabilités définies précédemment, nous allons construire un graphique de la courbe dite ROC, qui est simplement définie comme une courbe paramétrique donnée par deux de nos probabilités précédentes :
x(t) = p(S>t|P)
y(t) = p(S>t|N),
qui, comme on peut le voir, ne sont que le taux de vrais positifs, la sensibilité, par rapport au taux de faux positifs, un moins la spécificité.



From the previously defined probabilities, we are going to construct a graphic of the so-called ROC curve, which is simply defined as a parametric curve given by two of our previous probabilities:
x(t) = p(S>t|P)
y(t) = p(S>t|N),
which, as we can see, are just the true positive rate, the sensitivity, against the false positive rate, one minus the specificity.


Из ранее определенных вероятностей мы собираемся построить график так называемой кривой ROC, которая просто определяется как параметрическая кривая, заданная двумя из наших предыдущих вероятностей:
x (t) = p (S> t | P)
y (t) = p (S> t | N), Как мы видим, это всего лишь показатель истинных положительных результатов, чувствительность по сравнению с показателем ложных срабатываний за вычетом специфичности.



Le classificateur idéal aura une courbe ROC réduite à deux lignes : une verticale le long de l'axe y de (0,0) à (0,1), et une ligne horizontale de (0,0) à (1,1), tandis qu'un classificateur parfaitement aléatoire aura une courbe ROC composée d'une ligne de (0,1) à (1,1). En pratique, nous n'allons jamais atteindre ces courbes spécifiques, mais nous pouvons voir à partir d'elles que plus une courbe ROC est proche du coin supérieur gauche (0,1), meilleur est le classificateur. On peut donc comparer naïvement deux courbes ROC avec ce critère.


The ideal classifier will have a ROC curve reduces to two lines: a vertical one along the y axis from (0,0) to (0,1), and a horizontal line from (0,0) to (1,1), while a perfectly random classifier will have a ROC curve composed of one line from (0,1) to (1,1). In practice, we are never going to attain these specific curves, but we can see from them that the closer a ROC curve is from the upper left corner (0,1), the better a classifier is. Therefore, we can compare naively two ROC curves with this criterion.


Идеальный классификатор будет иметь кривую ROC, сокращенную до двух линий: вертикальную по оси y от (0,0) до (0,1) и горизонтальную линию от (0,0) до (1,1), в то время как совершенно случайный классификатор будет иметь кривую ROC, состоящую из одной линии от (0,1) до (1,1). На практике мы никогда не получим этих конкретных кривых, но мы можем видеть из них, что чем ближе кривая ROC от верхнего левого угла (0,1), тем лучше классификатор. Следовательно, мы можем наивно сравнивать две кривые ROC с этим критерием.

Examples of ROC curves for different classifiers.
By cmglee, MartinThoma - Roc-draft-xkcd-style.svg, CC BY-SA 4.0,
https://commons.wikimedia.org/w/index.php?curid=109730045
Évaluation des performances du classificateur : AUC
Classifier performance assessment: AUC
Оценка эффективности классификатора: AUC


D'un autre côté, si deux courbes ROC se croisent, il n'est pas si facile de décider quelle courbe décrit le classifieur le plus performant. Afin de différencier dans un tel cas, des statistiques récapitulatives ont été développées pour faciliter cela. Ici, nous allons travailler avec un seul d'entre eux, l'aire sous la courbe notée généralement AUC. Puisque nous parlons d'une zone, sa définition formelle suit immédiatement, l'AUC c'est juste l'intégrale de y par rapport à x.


On the other hand, if two ROC curves intersect, it is not so easy to decide which curve describes the classifier performing better. In order to differentiate in such a case, some summary statistics have been developed to facilitate this. Here we are going to work with only one of them, the area under the curve denoted generally as AUC. Since we are talking about an area, its formal definition follows immediately, the AUC it's just the integral of y with respect to x.


С другой стороны, если две кривые ROC пересекаются, не так просто решить, какая кривая описывает классификатор, работающий лучше. Для того чтобы различать в таком случае, были разработаны некоторые сводные статистические данные, облегчающие это. Здесь мы собираемся работать только с одним из них, площадью под кривой, обычно обозначаемой как AUC. Поскольку мы говорим о площади, ее формальное определение следует сразу же, AUC - это просто интеграл от y относительно x.


Nous pouvons voir l'AUC comme une représentation à l'échelle de la courbe ROC 2D, c'est donc une quantité qu'il est beaucoup plus facile de comparer. Il convient de noter que puisque l'AUC est une partie de l'aire du carré unitaire, ses valeurs vont de 0 à 1, et que pour nos deux courbes ROC spécifiques décrites précédemment, nous avons une AUC de 1 pour un classificateur idéal, et une AUC de 0,5 pour un classificateur aléatoire. On peut donc avoir un nouveau critère de comparaison : plus un classificateur est bon, plus son AUC va être proche de 1.


We can see the AUC as a scaler representation of the 2D ROC curve, hence it’s a quantity that it’s much easier to compare. We should note that since the AUC is a portion of the area of the unit square, its values range from 0 to 1, and that for our two specific ROC curves described earlier, we have an AUC of 1 for an ideal classifier, and an AUC of 0.5 for a random classifier. Therefore, we can have a new comparison criterion: the better a classifier is, the closer its AUC is going to be of 1.


Мы можем рассматривать AUC как масштабное представление 2D-кривой ROC, следовательно, это величина, которую намного легче сравнить. Следует отметить, что, поскольку AUC является частью площади единичного квадрата, его значения варьируются от 0 до 1, а для двух наших конкретных кривых ROC, описанных ранее, у нас есть AUC, равная 1 для идеального классификатора, и AUC 0,5 для случайного классификатора. Следовательно, у нас может быть новый критерий сравнения: чем лучше классификатор, тем ближе его AUC будет к 1.


Il convient également de noter que pour un classificateur idéal, nous aurions une spécificité et une sensibilité de 1, et que des valeurs plus élevées d'AUC équivalent à une spécificité et une sensibilité plus élevées, ce qui est exactement ce que nous recherchions dans un bon biomarqueur. Par conséquent, il est logique de comparer les classificateurs que nous allons introduire ensuite en utilisant l'AUC. Nous pouvons maintenant procéder à l'introduction d'un apprentissage automatique qui donnera les fonctions de notation dont nous avons besoin pour notre classification. Nous pouvons maintenant procéder à l'introduction d'un apprentissage automatique qui donnera les fonctions de notation dont nous avons besoin pour notre classification.


We should also note that for an ideal classifier, we would have a specificity and a sensitivity of 1, and that higher values of AUC are equivalent to higher specificity and sensitivity which is exactly what we were looking for in a good biomarker. Therefore, it makes sense to compare the classifiers we are going to introduce next by using the AUC. We can now then proceed with introducing some machine learning models that will give the scoring functions we need for our classification.


Мы также должны отметить, что для идеального классификатора у нас были бы специфичность и чувствительность, равные 1, и что более высокие значения AUC эквивалентны более высокой специфичности и чувствительности, что именно то, что мы искали в хорошем биомаркере. Следовательно, имеет смысл сравнить классификаторы, которые мы собираемся ввести в следующий раз, с помощью AUC. Теперь мы можем приступить к внедрению некоторого машинного обучения, которое даст функции оценки, которые нам нужны для нашей классификации. Теперь мы можем перейти к введению некоторого машинного обучения, которое даст функции оценки, которые нам нужны для нашей классификации.

Modèles d'apprentissage automatique

Machine learning models

Модели машинного обучения


Les modèles d'apprentissage automatique peuvent résoudre différents types de problèmes, mais nous ne nous intéressons ici qu'aux problèmes de classification, et plus précisément aux problèmes de classification binaire. Dans ce type de problèmes, nous voulons alimenter le modèle d'un vecteur d'entrée X, dans notre cas le vecteur des niveaux d'expression de miARN pour un individu donné, et le modèle nous donnera une sortie Y avec une plage dans un ensemble de deux valeurs, en notre cas 0 pour les individus sains et 1 pour les individus malades.


Machine learning models can solve various types of problems, but here we are interested only in classification problems, and more precisely in binary classification problems. In this type of problems, we want to feed into the model an input vector X, in our case the vector of miRNA expression levels for a given individual, and the model will give us an output Y with range in a two value set, in our case 0 for healthy individuals, and 1 for sick individuals.


Модели машинного обучения могут решать различные типы задач, но здесь нас интересуют только задачи классификации, а точнее задачи двоичной классификации. В задачах этого типа мы хотим передать в модель входной вектор X, в нашем случае вектор уровней экспрессии miRNA для данного человека, и модель выдаст нам выход Y с диапазоном в наборе двух значений, в в нашем случае 0 для здоровых людей и 1 для больных.


Afin de déterminer les paramètres du modèle et d'évaluer ses performances, nous allons séparer les données en deux ensembles : un ensemble d'entraînement {(X(i)train, Y(i)train)} et un ensemble de test {(X(i)test,Y(i)test)}, où (X(i),Y(i)) décrit l'individu (i) avec X(i) étant le vecteur des niveaux d'expression des miARN pour l'individu (i), et Y(i) étant 0 ou 1 selon si l'individu est vraiment en bonne santé ou malade . Nous allons adapter notre modèle à l'ensemble d'apprentissage, et donc obtenir ses paramètres. Ceci est suivi par l'évaluation des performances du modèle ayant ces paramètres sur l'ensemble de test, et la description de nos résultats à l'aide des courbes ROC comme déjà expliqué dans la section précédente.


In order to determine the parameters of the model and asses its performance, we are going to separate the data in two sets: a training set {(X(i)train,Y(i)train)} and a test set {(X(i)test,Y(i)test)}, where (X(i),Y(i)) describes individual (i) with X(i) being the vector of miRNA expression levels for individual (i), and Y(i) being 0 or 1 according if the individual is truly healthy or sick. We are going to fit our model on the training set, and hence obtain its parameters. This is followed by assessing the performance of the model having these parameters on the test set, and describing our findings using ROC curves as already explained in the previous section.


Чтобы определить параметры модели и оценить ее производительность, мы разделим данные на два набора: обучающий набор {(X (i) train , Y (i) train )} и тестовый набор {(X (i) test , Y (i) test )}, где (X (i) , Y (i) ) описывает человека (i) где X (i) является вектором уровней экспрессии miRNA для человека (i), а Y (i) равно 0 или 1 в зависимости от того, действительно ли человек здоров или болен . Мы собираемся подогнать нашу модель к обучающей выборке и, следовательно, получить ее параметры. Затем следует оценка производительности модели, имеющей эти параметры на тестовом наборе, и описание наших результатов с использованием кривых ROC, как уже объяснялось в предыдущем разделе.


Nous allons maintenant décrire les modèles que nous avons sélectionnés pour résoudre notre problème de classification, et qui sont régulièrement utilisés pour les classifications binaires en machine learning : la régression logistique, la machine à vecteurs de support, les réseaux de neurones et les arbres de boosting de gradient.


We are now going to describe the models we have selected to solve our classification problem, and which are regularly used for binary classifications in machine learning: the logistic regression, the support vector machine, neural networks, and gradient boosting trees.


Теперь мы собираемся описать модели, которые мы выбрали для решения нашей проблемы классификации и которые регулярно используются для двоичных классификаций в машинном обучении: логистическая регрессия, машина опорных векторов, нейронные сети и деревья повышения градиента.

Régression logistique
Logistic regression
Логистическая регрессия


La régression logistique est spécifiquement conçue comme une méthode de classification pour les problèmes de classification binaire, où nous voulons affecter à une entrée X, qui est un vecteur de variables à valeur réelle (dans notre cas, les variables de caractéristiques ou les niveaux d'expression de miARN pour un individu donné), une classe Y qui est une valeur booléenne discrète (dans notre cas, 0 pour les individus sains et 1 pour les individus malades). L'idée globale derrière ce modèle est d'apprendre une probabilité conditionnelle P(Y|X) directement à partir des données observées afin de pouvoir classer les individus dans les deux groupes, sains et malades.


The logistic regression is specifically built as a classification method for binary classification problems, where we want to assign to an input X, which is a vector of real-valued variables (in our case, the feature variables or the expression levels of miRNA for a given individual), a class Y which is a discrete boolean value (in our case, 0 for healthy individuals, and 1 for sick individuals). The global idea behind this model is to learn a conditional probability P(Y|X) directly from observed data in order to be able to classify the individuals into the two groups, healthy and sick.


Логистическая регрессия специально построена как метод классификации для задач бинарной классификации, где мы хотим присвоить входу X, который является вектором переменных с действительным знаком (в нашем случае это переменные признаков или уровни экспрессии miRNA для заданный индивидуум), класс Y, который представляет собой дискретное логическое значение (в нашем случае 0 для здоровых людей и 1 для больных). Глобальная идея, лежащая в основе этой модели, состоит в том, чтобы узнать условную вероятность P (Y | X) непосредственно из наблюдаемых данных, чтобы иметь возможность классифицировать людей на две группы: здоровые и больные.


La probabilité conditionnelle pour la régression logistique est obtenue en faisant quelques hypothèses sur l'indépendance et les distributions de X, et , qui donnent la formule suivante :


The conditional probability for the logistic regression is obtained by making some assumptions on the independence and distributions of X, and , which give the following formula:


Условная вероятность логистической регрессии получается путем принятия некоторых предположений о независимости и распределении X, и, которые дают следующую формулу:


Avant de pouvoir utiliser cette probabilité conditionnelle comme fonction de scoring, on voit qu'il faut identifier le vecteur w. Ceci est réalisé en résolvant un problème d'optimisation qui maximise la vraisemblance conditionnelle des données d'apprentissage en utilisant un algorithme de descente de gradient.


Before being able to use this conditional probability as a scoring function, we see that we have to identify the vector w. This is done by solving an optimization problem that maximizes the conditional likelihood of the training data by using a gradient descent algorithm.


Прежде чем использовать эту условную вероятность в качестве функции оценки, мы видим, что нам нужно идентифицировать вектор w. Это делается путем решения задачи оптимизации, которая максимизирует условную вероятность обучающих данных с помощью алгоритма градиентного спуска.


Maintenant que nous avons une fonction de notation connue, nous pouvons classer les individus en deux groupes en utilisant le processus de décision dichotomique donné par :

  • Si p(Y=1|X)>t, on classe l'individu comme ayant la maladie, donc en P(t),
  • si p(Y=1|X)≤t, nous classons l'individu comme n'ayant pas la maladie, donc en N(t).


Nous pouvons alors construire notre courbe ROC, calculer l'AUC, et donc évaluer ce classificateur.


Now that we have a known scoring function, we can classify the individuals into two groups by using the dichotomous decision process given by:

  • If p(Y=1|X)>t, we classify the individual as having the disease, hence in P(t),
  • if p(Y=1|X)≤t, we classify the individual as not having the disease, hence in N(t).


We can than build our ROC curve, calculate the AUC, and therefore evaluate this classifier.


Теперь, когда у нас есть известная функция подсчета очков, мы можем разделить людей на две группы, используя дихотомический процесс принятия решений, определяемый следующим образом:

  • Если p (Y = 1 | X)> t, мы классифицируем человека как больного, следовательно, в P (t),
  • если p (Y = 1 | X) ≤t, мы классифицируем человека как не имеющего заболевания, следовательно, в N (t).


Затем мы можем построить нашу кривую ROC, вычислить AUC и, следовательно, оценить этот классификатор.

Machine à vecteur de soutien
Support vector machine
Машина опорных векторов


Un autre type de modèle qui peut être utilisé pour les problèmes de classification binaire est la machine à vecteurs de support, en abrégé SVM. En tant que régression logistique, il s'agit également d'un modèle linéaire, mais il a la spécificité de pouvoir être utilisé pour des données non linéairement séparables en mappant les données d'origine dans un espace supérieur où elles sont linéairement séparables grâce à l'utilisation d'un noyau. Néanmoins, dans notre cas, nous n'allons pas parler de cette propriété impressionnante puisque les meilleures performances de notre modèle SVM ont été obtenues en utilisant le noyau linéaire.


Another type of model that can be used for binary classification problems is support vector machine, abbreviated SVM. As the logistic regression, it’s also a linear model, but it has the specificity that it can be used for non-linearly separable data by mapping the original data to a higher space where it’s linearly separable through the use of a kernel. Nonetheless, in our case we are not going to talk about this impressive property since the best performance in our SVM model was given by using the linear kernel.


Другой тип модели, которую можно использовать для задач двоичной классификации, - это машина опорных векторов, сокращенно SVM. Как и логистическая регрессия, это также линейная модель, но у нее есть особенность, заключающаяся в том, что ее можно использовать для нелинейно разделяемых данных путем сопоставления исходных данных с более высоким пространством, где они могут быть линейно отделены с помощью ядра. Тем не менее, в нашем случае мы не будем говорить об этом впечатляющем свойстве, поскольку лучшая производительность в нашей модели SVM была получена при использовании линейного ядра.


Le modèle le plus simple de SVM, utilisant le noyau linéaire, est ce que l'on appelle le classificateur à marge maximale. L'idée derrière ce modèle est de trouver un hyperplan optimal, wtX – b = 0, qui sépare linéairement nos données dans les deux classes, les individus sains et malades, encore une fois en résolvant un problème d'optimisation : minimiser la norme de w soumise à Y(i)(wtX(i) - b)≥1, où (X (i),Y(i)) est notre ensemble d'entraînement. Cela devient un programme quadratique qui peut être facilement résolu par des méthodes standard utilisant des multiplicateurs de Lagrange. Ce problème d'optimisation réduit le nombre de poids non nuls dans w à quelques-uns qui correspondent aux caractéristiques importantes qui « comptent » pour décider de l'hyperplan de séparation, et ces poids non nuls sont appelés vecteurs de support car ils « soutiennent » l'hyperplan de séparation. .


The simplest model of SVM, using the linear kernel, is the so-called maximal margin classifier. The idea behind this model is to find an optimal hyperplane, wtX – b = 0, that linearly separates our data in the two classes, healthy and sick individuals, again by solving an optimization problem: minimize the norm of w subject to Y(i)(wtX(i) - b)≥1, where (X(i),Y(i)) is our training set. This becomes a quadratic program that can be easily solved by standard methods using Lagrangian multipliers. This optimization problem reduces the number of weights in w that are nonzero to just a few that correspond to the important features that ‘matter’ in deciding the separating hyperplane, and these nonzero weights are called the support vectors because they ‘support’ the separating hyperplane.


Простейшей моделью SVM, использующей линейное ядро, является так называемый классификатор максимальной маржи. Идея, лежащая в основе этой модели, состоит в том, чтобы найти оптимальную гиперплоскость, w t X - b = 0, которая линейно разделяет наши данные на два класса, здоровых и больных людей, снова путем решения задачи оптимизации: минимизировать норма w при условии Y (i) (w t X (i) - b) ≥1, где (X (i) , Y (i) ) - наш обучающий набор. Это становится квадратичной программой, которую можно легко решить стандартными методами с использованием множителей Лагранжа. Эта задача оптимизации сокращает количество весов в w, которые не равны нулю, до нескольких, которые соответствуют важным характеристикам, которые `` имеют значение '' при выборе разделяющей гиперплоскости, и эти ненулевые веса называются опорными векторами, потому что они `` поддерживают '' разделяющую гиперплоскость. .

Maximum-margin hyperplane and margins for an SVM trained with samples from two classes.
Samples on the margin are called the support vectors.
By Larhmam - Own work, CC BY-SA 4.0,
https://commons.wikimedia.org/w/index.php?curid=73710028


Maintenant que nous avons un candidat pour un hyperplan séparateur, nous pouvons introduire à nouveau un processus de décision dichotomique donné par

  • Si wtX – b>t, on classe l'individu comme ayant la maladie, donc en P(t),
  • si wtX – mais, nous classons l'individu comme n'ayant pas la maladie, donc en N(t).

qui nous aidera dans la phase de test pour la classification.



Now, that we have a candidate for a separating hyperplane we can introduce again a dichotomous decision process given by

  • If wtX – b>t, we classify the individual as having the disease, hence in P(t),
  • if wtX – b≤t, we classify the individual as not having the disease, hence in N(t).

which will help us in the test phase for classification.


Теперь, когда у нас есть кандидат на разделяющую гиперплоскость, мы можем снова ввести дихотомический процесс принятия решения, задаваемый формулой

  • Если w t X - b> t, мы классифицируем человека как больного, следовательно, в P (t),
  • если w t X - b≤t, мы классифицируем человека как не имеющего заболевания, следовательно, в N (t).

что поможет нам на этапе тестирования для классификации.


les réseaux de neurones
Neural networks
нейронные сети


Les réseaux de neurones sont un type de vastes modèles polyvalents, sur lesquels nous avons choisi de faire un calcul de perceptrons multicouches qui se fait simplement en calculant en avant une fonction d'activation entre les nœuds. Puisque nous nous sommes intéressés à effectuer une classification binaire, le sigmoïde est un choix naturel pour une fonction d'activation puisqu'il s'agit d'une fonction de distribution cumulative allant de 0 à 1, et représente donc une probabilité. Un autre choix important est que la fonction de perte soit une fonction de perte logarithmique, également appelée fonction d'entropie croisée, qui convient bien aux problèmes de classification binaire. Avec ces paramètres, nous pouvons ajuster une distribution de probabilité qui nous donnera la probabilité qu'étant donné une sortie X, notre entrée Y sera 1. Par conséquent, nous pouvons appliquer à nouveau un processus de décision dichotomique en utilisant cette distribution de probabilité.


Neural networks are a type of vast, multi-purpose models, on which we have chosen to do a multi layer perceptrons computation which is done simply by computing forward an activation function between the nodes. Since we have been interested in performing a binary classification, the sigmoid is a natural choice for an activation function since it is a cumulative distribution function going from 0 to 1, and hence it represents a probability. Another important choice is for the loss function to be a log loss function, also called a cross-entropy function, that is well suited for binary classification problems. With these settings, we can fit a probability distribution that will give us the probability that given an output X, our input Y will be 1. Therefore, we can apply again a dichotomous decision process using this probability distribution.


Нейронные сети - это тип обширных многоцелевых моделей, на которых мы решили выполнять многослойные вычисления персептронов, которые выполняются просто путем прямого вычисления функции активации между узлами. Поскольку мы были заинтересованы в выполнении бинарной классификации, сигмоид является естественным выбором для функции активации, поскольку это кумулятивная функция распределения, переходящая от 0 до 1, и, следовательно, она представляет собой вероятность. Другой важный выбор состоит в том, чтобы функция потерь была функцией потерь журнала, также называемой функцией кросс-энтропии, которая хорошо подходит для задач двоичной классификации. С этими настройками мы можем подобрать распределение вероятностей, которое даст нам вероятность того, что при выходе X наш вход Y будет равен 1. Следовательно, мы можем снова применить дихотомический процесс принятия решений, используя это распределение вероятностей.

TArbre d'amplification de dégradé
Gradient boosting tree
Дерево повышения градиента


L'arbre d'amplification de gradient est un algorithme itératif qui modifie de manière incrémentielle une fonction donnée en ajoutant une petite fonction à chaque étape afin de minimiser une fonction de perte. On peut dire que le modèle construit un modèle fort en utilisant une collection de modèles « plus faibles ». Intuitivement, un apprenant « faible » classe mal les données, mais, de manière itérative, nous pouvons construire un modèle plus fort en apprenant de chacun des apprenants faibles, renforçant ainsi le modèle. Ceci est fait en utilisant un processus d'optimisation de descente de gradient sur la fonction de perte, qui devrait être à nouveau une fonction de perte logarithmique dans le cas d'un arbre d'amplification de gradient utilisé pour un problème de classification binaire. En ce qui concerne le réseau de neurones, nous pouvons obtenir à partir du modèle la probabilité qu'étant donné une sortie X, notre entrée Y sera 1, nous pouvons donc appliquer à nouveau le processus de décision dichotomique pour évaluer les performances de notre modèle.


The gradient boosting tree is an iterative algorithm that changes incrementally a given function by adding a small function at each step in order to minimise a loss function. We can say that the model is building a strong model by using a collection of "weaker" models.  Intuitively, a “weak” learner classifies the data poorly, but, iteratively, we can build a stronger model by learning from each of the weak learners, hence boosting the model. This is done by using a gradient descent optimisation process on the loss function, that it should be again a log loss fonction in the case of a gradient boosting tree used for a binary classification problem. As for the neural network, we can obtain from the model the probability that given an output X, our input Y will be 1, so we can apply again the dichotomous decision process to evaluate the performance of our model.


Дерево повышения градиента - это итерационный алгоритм, который постепенно изменяет заданную функцию, добавляя небольшую функцию на каждом шаге, чтобы минимизировать функцию потерь. Можно сказать, что модель строит сильную модель, используя набор «более слабых» моделей. Интуитивно «слабый» ученик плохо классифицирует данные, но итеративно мы можем построить более сильную модель, обучаясь у каждого из слабых учеников, тем самым улучшая модель. Это делается с помощью процесса оптимизации градиентного спуска для функции потерь, которая снова должна быть функцией логарифмических потерь в случае дерева повышения градиента, используемого для задачи двоичной классификации. Что касается нейронной сети, мы можем получить из модели вероятность того, что для данного выхода X наш вход Y будет равен 1, поэтому мы можем снова применить дихотомический процесс принятия решений для оценки производительности нашей модели.


Maintenant que nous avons quelques candidats pour la classification binaire des individus, nous pouvons revenir au problème de la sélection de moins de caractéristiques afin d'améliorer les performances des classifieurs.



Now that we have some candidates for the binary classification of individuals, we can return to the problem of selecting less features in order to improve the performance of the classifiers.


Теперь, когда у нас есть несколько кандидатов для бинарной классификации людей, мы можем вернуться к проблеме выбора меньшего количества признаков, чтобы повысить производительность классификаторов.


Méthodes de sélection des fonctionnalités

Feature selection methods

Методы выбора характеристик


Le problème avec les données biologiques comme dans l'article précédent [Elias], et qui est similaire aux données attendues d'une grande étude sur l'endométriose, est que les caractéristiques des données, c'est-à-dire les niveaux d'expression des miARN, sont en plus grand nombre que les nombre de patients dans les données pouvant conduire à un surapprentissage : avec l'augmentation de la dimension de l'espace des caractéristiques, il y a un risque que les données d'apprentissage s'adaptent parfaitement au modèle, mais ce ne sera pas le cas sur les données de test, et nous ne pouvons donc pas généraliser à de nouveaux échantillons. Il est donc important de prétraiter les caractéristiques de grande dimension car, en général, cela empêchera le surapprentissage et améliorera également les performances de l'algorithme d'apprentissage.


The problem with biological data as in the previous article [Elias], and which is similar with the data expected from a large endometriosis study, is that the features in the data, i.e. the expression levels of the miRNAs, are in larger number than the number of patients in the data which can lead to overfitting: with the increase in the dimension of the feature space, there is a risk that the training data will fit perfectly the model, but this will not be the case on the test data, and so we cannot generalize to new samples. So, it's important to preprocess high-dimensional features since, in general, this will prevent overfitting and will also improve the performance of the learning algorithm.


Проблема с биологическими данными, как в предыдущей статье [Elias], и которая аналогична данным, ожидаемым от большого исследования эндометриоза, заключается в том, что особенности в данных, то есть уровни экспрессии miRNA, в большем количестве, чем количество пациентов в данных, которое может привести к переобучению: с увеличением размера пространства признаков существует риск того, что обучающие данные будут идеально соответствовать модели, но этого не будет с тестовыми данными, и поэтому мы не можем делать обобщения на новые образцы. Таким образом, важно предварительно обработать многомерные функции, поскольку в целом это предотвратит переоснащение, а также улучшит производительность алгоритма обучения.


Afin de diminuer le nombre de fonctionnalités, plusieurs possibilités sont disponibles. Il existe trois catégories principales de sélection de fonctionnalités :

  • Méthodes de filtrage : les caractéristiques sont filtrées à l'aide d'une métrique extérieure comme la corrélation ou le test du Khi-deux.
  • Méthodes wrapper : les méthodes dépendent d'un classificateur et utilisent l'algorithme d'apprentissage automatique comme une boîte noire pour donner un sous-ensemble de fonctionnalités qui donnent le meilleur score. Quelques exemples sont l'élimination de caractéristiques récursives et la sélection directe.
  • Méthodes intégrées : les fonctionnalités sont sélectionnées directement dans un algorithme d'apprentissage automatique qui n'a pas besoin d'être réexécuté pour chaque sous-ensemble de fonctionnalités comme dans la méthode wrapper, cette méthode est donc moins gourmande en calculs. Quelques exemples sont la méthode de régularisation Lasso et la forêt aléatoire intégrée.




In order to decrease the number of features, several possibilities are available. There are three main categories of feature selection:

  • Filter methods: the features are filtered using some exterior metric like the correlation or the chi-square test.
  • Wrapper methods: the methods depend on a classifier and use the machine learning algorithm as a black box to give a subset of features that give the best score. Some examples are the recursive feature elimination and the forward selection.
  • Embedded methods: the features are selected directly inside a machine learning algorithm which does not need to be rerun for each feature subset as in the wrapper method, so this method is less computationally demanding. Some examples are the Lasso regularisation method and the embedded random forest.


Чтобы уменьшить количество функций, доступно несколько возможностей. Существует три основных категории выбора функций:

  • Методы фильтрации : характеристики фильтруются с использованием некоторого внешнего показателя, такого как корреляция или критерий хи-квадрат.
  • Методы оболочки : методы зависят от классификатора и используют алгоритм машинного обучения в качестве черного ящика, чтобы дать подмножество функций, которые дают лучший результат. Некоторыми примерами являются удаление рекурсивной функции и прямой выбор.
  • Встроенные методы : функции выбираются непосредственно внутри алгоритма машинного обучения, который не требует повторного запуска для каждого подмножества функций, как в методе оболочки, поэтому этот метод менее требователен к вычислениям. Некоторыми примерами являются метод регуляризации Лассо и встроенный случайный лес.




Pour notre modèle, nous avons choisi de sélectionner les caractéristiques à l'aide d'une méthode de chaque catégorie, et de combiner la méthode filtre et wrapper, et la méthode filtre et embarqué. Par conséquent, nous allons avoir plusieurs sous-ensembles différents selon les méthodes suivantes que nous allons décrire dans les sous-sections à venir :

  • Méthode de filtrage : corrélation de Pearson.
  • Méthode wrapper : élimination de caractéristiques récursives.
  • Méthode embarquée : régularisation au lasso.




For our model, we have chosen to select the features using a method from each category, and to combine the filter and wrapper method, and the filter and embedded method. Therefore, we are going to have several different subsets according to the following methods which we are going to describe in the subsections to come:

  • Filter method: Pearson correlation.
  • Wrapper method: recursive feature elimination.
  • Embedded method: lasso regularisation.



Для нашей модели мы выбрали выбор функций с использованием метода из каждой категории и объединение метода фильтра и оболочки, а также фильтра и встроенного метода. Следовательно, у нас будет несколько разных подмножеств в соответствии со следующими методами, которые мы собираемся описать в следующих подразделах:

  • Метод фильтрации : корреляция Пирсона.
  • Метод оболочки : устранение рекурсивной функции.
  • Встроенный метод : регуляризация лассо.



Corrélation de Pearson
Pearson correlation
Корреляции Пирсона


Les sélections de caractéristiques basées sur des filtres sont l'une des méthodes les plus élémentaires qui évaluent chaque caractéristique et sélectionnent les caractéristiques avec le score le plus élevé (ou le plus petit). Un score potentiel est la corrélation de Pearson qui est une mesure de la corrélation linéaire entre deux caractéristiques et a la forme :

où F1 et F2 sont deux caractéristiques, cov est la covariance entre les deux et σF est l'écart type de F.



Filter-based feature selections are one of the most basic methods that score each feature and select those features with the largest (or smallest) score. A potential score is the Pearson correlation that is a measure of the linear correlation between two features and has the form:

where F1 and F2 are two features, cov is the covariance between the two, and σF is the standard deviation of F.


Выбор функций на основе фильтров является одним из самых основных методов оценки каждой функции и выбора тех функций с наибольшей (или наименьшей) оценкой. Потенциальная оценка - это корреляция Пирсона, которая является мерой линейной корреляции между двумя функциями и имеет форму:

где F 1 и F 2 - две характеристики, cov - ковариация между ними, а σ F - стандартное отклонение Ф.



Notre méthode de sélection des caractéristiques est basée sur le calcul de la corrélation de Pearson entre toutes les paires de caractéristiques, puis sur l'élimination de l'une des caractéristiques d'une paire si les deux sont fortement corrélées, avec un coefficient de corrélation supérieur à un seuil t spécifié. Cette méthode fait l'hypothèse que les caractéristiques fortement corrélées auront le même effet dans l'apprentissage des modèles, nous pouvons donc écarter ces caractéristiques.



Our method to select features is based on calculating the Pearson correlation between all pairs of features and then eliminating one of the features in a pair if the two are highly correlated, with a correlation coefficient greater than a specified threshold t. This method makes the assumption that highly correlated features will have the same effect in the training of the models, so we can therefore discard those features.


Наш метод выбора признаков основан на вычислении корреляции Пирсона между всеми парами признаков и последующем исключении одного из признаков в паре, если они сильно коррелированы, с коэффициентом корреляции, превышающим заданный порог t. Этот метод предполагает, что сильно коррелированные функции будут иметь такой же эффект при обучении моделей, поэтому мы можем отбросить эти функции.


Pearson correlation matrix.
If two miRNAs are highly correlated, one is going to be eliminated.
Élimination des fonctionnalités récursives
Recursive feature elimination
Рекурсивное устранение признаков


Comme nous l'avons vu, l'élimination de caractéristiques récursives est une méthode wrapper, ce qui signifie que différents algorithmes d'apprentissage automatique peuvent être utilisés au cœur de la méthode, et pour notre modèle, nous avons choisi d'utiliser la régression logistique. La sélection des caractéristiques est réalisée de manière rétrograde : la méthode adapte les données d'apprentissage dans l'algorithme d'apprentissage automatique, classe les caractéristiques par importance en fonction des poids trouvés par le classificateur, élimine les caractéristiques les moins importantes et le processus est répété jusqu'à ce qu'un nombre spécifié de caractéristiques soit obtenu.


As we have seen, recursive feature elimination is a wrapper method which means that different machine learning algorithms can be used in the core of the method, and for our model we have chosen to use the logistic regression. The selection of the features is achieved in a backward stepwise manner: the method fits the training data into the machine learning algorithm, ranks the features by importance according to the weights found by the classifier, discards the least important features, and the process is repeated until a specified number of features is obtained.


Как мы видели, устранение рекурсивных функций - это метод-оболочка, который означает, что в основе метода могут использоваться различные алгоритмы машинного обучения, а для нашей модели мы выбрали логистическую регрессию. Выбор функций осуществляется в обратном порядке: метод подбирает обучающие данные в алгоритм машинного обучения, ранжирует функции по важности в соответствии с весами, найденными классификатором, отбрасывает наименее важные функции, и процесс повторяется. пока не будет получено указанное количество функций.


Par conséquent, nous pouvons voir que cette méthode dépend du choix de deux hyperparamètres : l'algorithme utilisé pour choisir les fonctionnalités et le nombre de fonctionnalités à sélectionner. Néanmoins, en général, les performances de cette méthode ne dépendent pas fortement du choix des hyperparamètres, donc pour le choix de l'algorithme nous avons choisi arbitrairement la régression logistique. D'autre part, puisque la sélection des caractéristiques est de la plus haute importance pour nous, puisque cela donne les biomarqueurs candidats, nous avons décidé d'itérer la méthode sur tout le nombre de caractéristiques possibles et de sélectionner le nombre de caractéristiques qui donne le plus But.


Therefore, we can see that this method is dependent on choosing two hyperparameters: the algorithm used to choose features and the number of features to select. Nonetheless, in general, the performance of this method does no depend strongly on the choice of hyperparameters, so for the choice of algorithm we have chosen arbitrarily the logistic regression. On the other hand, since the selection of features is of the most importance for us, since this gives the candidate biomarkers, we have decided to iterate the method on all the number of possible features and to select the number of features that gives the highest score.


Таким образом, мы можем видеть, что этот метод зависит от выбора двух гиперпараметров: алгоритма, используемого для выбора функций, и количества функций для выбора. Тем не менее, в целом производительность этого метода не сильно зависит от выбора гиперпараметров, поэтому для выбора алгоритма мы произвольно выбрали логистическую регрессию. С другой стороны, поскольку выбор характеристик является для нас наиболее важным, поскольку это дает кандидату биомаркеры, мы решили повторить метод для всего количества возможных характеристик и выбрать количество характеристик, которые дают наивысшие характеристики. счет.

Régularisation au lasso.
Lasso regularisation.
Регуляризация лассо.


Un type de méthodes wrapper sont les modèles de régularisation qui pénalisent ou réduisent les coefficients de prédiction afin d'améliorer le modèle à ajuster. Le nom lasso est l'acronyme de Least Absolute Shrinkage and Selection Operator puisqu'il s'agit d'un modèle de régularisation qui peut réduire les coefficients au zéro absolu. Cela peut être fait en imposant l1 conditions pour le problème d'optimisation intégré dans le modèle. Le modèle rejette ensuite les caractéristiques liées aux coefficients nuls et conserve le reste des caractéristiques.



A type of wrapper methods are the regularisation models which penalize or shrink predictor coefficients in order to improve the model to fit. The name lasso is the acronym of Least Absolute Shrinkage and Selection Operator since it is a regularisation model that can shrink coefficients to absolute zero. This can be done by imposing l1 conditions for the optimization problem embedded in the model. The model then discards the features related to the zero coefficients and keeps the rest of the features.


Типом методов-оберток являются модели регуляризации, которые штрафуют или уменьшают коэффициенты предиктора, чтобы улучшить модель, чтобы она соответствовала. Название лассо является аббревиатурой от оператора наименьшего абсолютного сжатия и выбора, поскольку это модель регуляризации, которая может сжимать коэффициенты до абсолютного нуля. Это можно сделать, наложив l 1 условий для задачи оптимизации, встроенной в модель. Затем модель отбрасывает признаки, связанные с нулевыми коэффициентами, и сохраняет остальные признаки.


Bibliographie

References

Rиспользованная литература

  1. Akter, Sadia, et al. "Machine learning classifiers for endometriosis using transcriptomics and methylomics data." Frontiers in genetics 10 (2019): 766.
  2. Becker, Christian M., et al. "World endometriosis research foundation endometriosis phenome and biobanking harmonisation project: I. Surgical phenotype data collection in endometriosis research." Fertility and sterility 102.5 (2014): 1213-1222.
  3. Brownlee, Jason. "Data preparation for machine learning: data cleaning, feature selection, and data transforms in Python." Machine Learning Mastery, (2020).
  4. Collins, Rachel, and Norman Fenton. "Bayesian network modelling for early diagnosis and prediction of Endometriosis." medRxiv (2020).
  5. D'Hooghe, Thomas. "Biomarkers for endometriosis." Fertility and Sterility 99.4 (2017).
  6. Elias, Kevin M., et al. "Diagnostic potential for a serum miRNA neural network for detection of ovarian cancer." Elife 6 (2017): e28932.
  7. Estève, Loïc, et al. "Machine learning in Python with scikit-learn" FUN MOOC INRIA (2021): https://www.fun-mooc.fr/en/courses/machine-learning-python-scikit-learn/
  8. Faruq, Omar, and Andrea Vecchione. "microRNA: diagnostic perspective." Frontiers in medicine 2 (2015): 51.
  9. Friedman, Jerome H. "The elements of statistical learning: Data mining, inference, and prediction." Springer (2017).
  10. Joseph, Shaini, and Smita D. Mahale. "Endometriosis Knowledgebase: a gene-based resource on endometriosis." Database 2019 (2019).
  11. Krzanowski, Wojtek J., and David J. Hand. "ROC curves for continuous data." Crc Press, (2009).
  12. Kuhn, Max, and Kjell Johnson. "Feature engineering and selection: A practical approach for predictive models." CRC Press, (2019).
  13. Moustafa, Sarah, et al. "Accurate diagnosis of endometriosis using serum microRNAs." American journal of obstetrics and gynecology 223.4 (2020): 557-e1.
  14. Okun, Oleg. "Feature selection and ensemble methods for bioinformatics: algorithmic classification and implementations." Information Science Reference-Imprint of: IGI Publishing, (2011).


Nous pouvons conclure en rappelant qu'entre les miARN sélectionnés pour cette méthode de sélection de caractéristiques apparaît également le miARN hsa-miR-200c-3p, qui semble être notre meilleur candidat pour un bon biomarqueur. Il convient de mentionner que ce miARN est apparu toutes les autres fois où nous avons exécuté le code avec différents ensembles d'entraînement et de test.


We can conclued by remembering that between the selected miRNAs for this feature selection method appears also the miRNA hsa-miR-200c-3p, which appears to be our best candidate for a good biomarker. It's worthy to mention, that this miRNA appeared all the other times we have run the code with different training and testing sets.


Мы можем сделать вывод, вспомнив, что между отобранными miRNA для этого метода отбора признаков также появляется miRNA hsa-miR-200c-3p, которая, по-видимому, является нашим лучшим кандидатом на роль хорошего биомаркера. Стоит отметить, что эта miRNA появлялась все время, когда мы запускали код с разными наборами для обучения и тестирования.