duminică, 4 iunie 2023

MNIST Digit Classification


 MNIST


MNIST este un set de date clasic în domeniul recunoașterii de imagini, utilizat 

pentru a antrena și evalua algoritmi de învățare automată în recunoașterea 

cifrelor scrise de mână. Acest set de date a devenit o referință în comunitatea 

științifică și a avut un impact semnificativ în dezvoltarea domeniului învățării 

automate.


Originea și caracteristicile setului de date MNIST:

MNIST (Modified National Institute of Standards and Technology) a fost creat în 

anii '90 ca o bază de date standard pentru evaluarea performanței algoritmilor de 

recunoaștere a cifrelor scrise de mână. Setul de date conține 60.000 de imagini de 

antrenare și 10.000 de imagini de testare, cu dimensiuni de 28x28 de pixeli. 

Fiecare imagine este etichetată cu cifra corespunzătoare de la 0 la 9.


Importanța MNIST în dezvoltarea învățării automate:

MNIST a devenit un punct de referință pentru dezvoltarea și evaluarea algoritmilor 

de învățare automată datorită următoarelor motive:

  • Simplitate: Setul de date MNIST este relativ simplu și accesibil, permițând cercetătorilor și dezvoltatorilor să testeze rapid algoritmi și modele noi.
  • Relevanță: Problema recunoașterii cifrelor scrise de mână este unul dintre cele mai vechi și mai fundamentale aspecte ale învățării automate, iar MNIST reflectă această provocare într-un mod simplificat.
  • Comparabilitate: Deoarece MNIST a fost utilizat pe scară largă în comunitatea științifică, rezultatele obținute de diferiți cercetători și algoritmi pot fi comparate direct, facilitând avansul domeniului.

Utilizări și contribuții:

MNIST a servit ca bază pentru dezvoltarea și evaluarea multor tehnici de învățare 

automată. Printre cele mai notabile contribuții se numără:

  • Algoritmi de clasificare: Setul de date MNIST a fost utilizat pentru antrenarea și evaluarea algoritmilor de clasificare, cum ar fi mașinile cu vectori de suport (SVM), rețelele neurale convoluționale (CNN) și arborii de decizie.
  • Benchmark-uri: MNIST a fost utilizat ca benchmark pentru a evalua performanța diferitelor modele și algoritmi. Acest lucru a permis compararea rezultatelor obținute de diferiți cercetători și a încurajat dezvoltarea de noi abordări și tehnici.
  • Învățarea automată pentru începători: Datorită simplității și accesibilității sale, MNIST a devenit un set de date popular pentru introducerea învățării automate în mediul academic și în comunitatea dezvoltatorilor.

Un exemplu din viața reală în care setul de date MNIST este întâlnit este 

recunoașterea cifrelor scrise de mână în aplicațiile de recunoaștere optică a 

caracterelor (OCR).

Multe companii și organizații folosesc tehnologia OCR pentru a digitaliza 

documente, cum ar fi chitanțe, facturi sau formulare completate manual. În astfel 

de cazuri, MNIST poate fi utilizat pentru a antrena modele de învățare automată 

pentru a recunoaște și a interpreta cifrele scrise de mână din aceste documente.

De exemplu, să luăm în considerare o aplicație bancară care permite clienților să 

își încarce imagini cu cecuri pe telefonul mobil pentru a le depune în conturile lor. 

Utilizând tehnologia OCR bazată pe modele de învățare automată antrenate pe 

setul de date MNIST, aplicația poate recunoaște cifrele scrise de mână de pe cec și 

să le convertească în format digital, astfel încât suma să poată fi procesată corect 

și depusă în contul corespunzător.

Astfel, MNIST joacă un rol important în dezvoltarea aplicațiilor OCR și în asigurarea 

unei recunoașteri precise și eficiente a cifrelor scrise de mână într-o gamă largă de 

scenarii, de la sectorul bancar și financiar până la automatizarea proceselor de 

birou și administrare.


Concluzie:

MNIST a jucat un rol semnificativ în avansarea învățării automate și recunoașterii 

de imagini. Acest set de date clasic a oferit o bază solidă pentru testarea și 

compararea algoritmilor și a reprezentat o sursă de inspirație pentru dezvoltarea 

de tehnici și modele noi. MNIST continuă să fie o resursă valoroasă în învățarea 

automată și va rămâne un punct de referință important în acest domeniu în 

continuă dezvoltare.

Referinte: 

https://en.wikipedia.org/wiki/MNIST_database

https://www.mdpi.com/2076-3417/9/15/3169

https://ieeexplore.ieee.org/abstract/document/7966217

miercuri, 31 mai 2023

 

Machine learning for drug discovery

 

    Introduction: All stages of drug discovery and development, including clinical trials, have embarked on developing and utilizing ML algorithms and software  to identify novel targets, provide stronger evidence for target–disease associations, improve small-molecule compound design and optimization, increase understanding of disease mechanisms, increase understanding of disease and non-disease phenotypes, develop new biomarkers for prognosis, progression and drug efficacy, improve analysis of biometric and other data from patient monitoring and wearable devices, enhance digital pathology imaging and extract high-content information from images at all levels of resolution.

 

    Model: The aim of a good ML model is to generalize well from the training data to the test data at hand. Generalization refers to how well the concepts learned by the model apply to data not seen by the model during training. Within each technique, several methods exist , which vary in their prediction accuracy, training speed and the number of variables they can handle. Algorithms must be chosen carefully to ensure that they are suitable for the problem at hand and the amount and type of data available. The amount of parameter tuning needed and how well the method separates signal from noise are also important considerations.

DL is a modern reincarnation of artificial neural networks from the 1980s and 1990s and uses sophisticated, multi-level deep neural networks (DNNs) to create systems that can perform feature detection from massive amounts of unlabelled or labelled training data.

 

    Applications:The first step in target identification is establishing a causal association between the target and the disease. Establishing causality requires demonstration that modulation of a target affects disease from either naturally occurring (genetic) variation or carefully designed experimental intervention. However, ML can be used to analyse large data sets with information on the function of a putative target to make predictions about potential causality, driven, for instance, by the properties of known true targets. ML methods have been applied in this way across several aspects of the target identification field. Costa et al.17 built a decision tree-based meta-classifier trained on network topology of protein–protein, metabolic and transcriptional interactions, as well as tissue expression and subcellular localization, to predict genes associated with morbidity that are also druggable.

Li et al. conducted a case study using standard-of-care drugs in which they first built models for drug sensitivity to erlotinib and sorafenib. When they applied the models to stratify patients, they demonstrated that the models were predictive and drug-specific. The model-derived biomarker genes were shown to be reflective of the mechanism of action of each drug, and when combined with globally normalized public domain data from various cancer types, the model predicted sensitivities of cancer types to each drug that were consistent with their FDA-approved indications. Knowing this is useful because it can be used to fight cancer cells that seem unaffected by certain drugs.





 

Machine learning for mining DNA sequence data

 

    Introduction: According to statistics, the amount of biological data approximately doubles every 18 months. In 1982, GenBank’s first nucleic acid sequence database had only 606 sequences, containing 680,000 nucleotide bases (Bilofsky et al., 1986). As of February 2013, its database already contains 162 million biological sequence data, containing 150 billion nucleotide bases. How to mine knowledge from these huge data and guide biological research s an important research content of bioinformatics.

 

 

    The method: 

    1. Data cleaning. Because of the increasing amount of heterogeneous data, data sets often         have missing data and inconsistent data. Low data quality will have a serious negative            impact on the information extraction process. Therefore, deleting incomplete, or                        inconsistent data is the first step in data mining;

2. Data integration. If the source of the data to be studied is different, it must be aggregated consistently;

3. Data selection. Accurately select relevant data based on the research content;

4. Data conversion. Transform or merge data into a form suitable for mining, and integrate new attributes or functions useful for the data mining process;

5. Data mining. Select the appropriate model according to the problem and make subsequent improvements;

6. Mode evaluation. After acquiring knowledge from the data, select appropriate indicators to evaluate the model.

    Challenges:

1. Large data sets are the key to machine learning. At present, the magnitude of most biological data sets is still too small to meet the requirements of machine learning algorithms. Although the total amount of biological data is huge and increasing day by day, the collection of data comes from different platforms. Due to the differences in technology and biology itself, it is very difficult to integrate different data sets;

2. Due to the differences in biological data itself, machine learning models trained on one data set may not be well generalized to other data sets. If the new data is significantly different from the training data, the analysis results of the machine learning model are likely to be false;

3. The black-box nature of machine learning models brings new challenges to biological applications. It is usually very difficult to interpret the output of a given model from a biological point of view, which limits the application of the model.

 

 

The BATTLE Trial: Personalizing Therapy for Lung Cancer -Edward S. Kim; Roy S. Herbst; Ignacio I. Wistuba; J. Jack Lee; George R. Blumenschein, Jr.; Anne Tsao; David J. Stewart; Marshall E. Hicks; Jeremy Erasmus, Jr.; Sanjay Gupta; Christine M. Alden; Suyu Liu; Ximing Tang; Fadlo R. Khuri; Hai T. Tran; Bruce E. Johnson; John V. Heymach; Li Mao; Frank Fossella; Merrill S. Kies; Vassiliki Papadimitrakopoulou; Suzanne E. Davis; Scott M. Lippman; Waun K. Hong

 

Review on the Application of Machine Learning Algorithms in the Sequence Data Mining of DNAAimin Yang1, Wei Zhang, Jiahao Wang, Ke Yang, Yang Han and Limin Zhang

 

Applications of machine learning in drug discovery and development Jessica Vamathevan 1*, Dominic Clark, Paul Czodrowski , Ian Dunham, Edgardo Ferran, George Lee, Bin Li, Anant Madabhushi, Parantu Shah, Michaela Spitzer and Shanrong Zhao

Machine Learning for Detecting Malware in PE Files

Machine Learning for Detecting Malware in PE Files

Introduction

    The paper titled "Machine Learning for Detecting Malware in PE Files" explores the use of machine learning (ML) algorithms for detecting malware in Portable Executable (PE) files, which are commonly used in Microsoft Windows operating systems to store executable programs and libraries. The authors propose a feature engineering approach to extract relevant features from the PE files and train an ML model to classify the files as either malicious or benign.

Solution

    The authors compare the performance of various ML models, such as Random Forest, Support Vector Machines (SVM), and Gradient Boosting Machines (GBM), for detecting malware in PE files. Their approach involves carefully selecting features that can help differentiate between malicious and benign files, such as the use of specific APIs and the presence of certain code sequences. They then train an ML model using these features to classify the files.

    The authors evaluate the effectiveness of their approach using several metrics, such as accuracy, precision, recall, and F1 score, on a large dataset of PE files. They also compare their approach with other existing methods for detecting malware in PE files, such as static analysis and dynamic analysis.

    Results show that the proposed approach outperforms other methods in terms of accuracy and detection rate, with the Random Forest algorithm achieving the best performance. The authors also acknowledge the limitations of their approach, such as the need for a large and diverse dataset to train the ML model and the challenge of dealing with evasive malware.

Conclusion

    Overall, the paper presents a promising approach for detecting malware in PE files using ML algorithms and feature engineering. The authors emphasize the importance of selecting appropriate feature engineering techniques and ML models for different types of malware and datasets, and suggest that further research is needed to improve malware detection.

ANN Architecture and performance:




Comparing Machine Learning Algorithms with or without Feature Extraction for DNA Classification

Comparing Machine Learning Algorithms with or without Feature Extraction for DNA Classification

Introduction

    DNA classification is an important task in bioinformatics and genetics that involves predicting characteristics of DNA sequences. Machine learning (ML) algorithms can be applied to this task, but effective feature extraction is essential for optimal performance. The paper compares the performance of ML algorithms with and without feature extraction for DNA classification tasks.

Solution

    The authors compare the performance of several ML algorithms, including K-Nearest Neighbours (KNN), Support Vector Machines (SVM), Decision Tree (DT), Random Forest (RF), and Artificial Neural Networks (ANNs), with and without feature extraction techniques such as Principal Component Analysis (PCA), Linear Discriminant Analysis (LDA), and Wavelet Transform (WT). Experiments are conducted on three different DNA datasets: Pseudo-nucleotide composition, k-mer nucleotide frequency, and DNA shape features.

    Results show that feature extraction can significantly improve the performance of some ML algorithms, while others perform better without feature extraction. For example, PCA and LDA can improve the performance of KNN, while RF and ANNs do not benefit as much from feature extraction. The results also demonstrate that different feature extraction techniques are suitable for different datasets, highlighting the importance of selecting appropriate feature extraction techniques based on the dataset at hand.

Conclusion

    The paper provides a comprehensive comparison of ML algorithms with and without feature extraction for DNA classification tasks. The results demonstrate that feature extraction can significantly improve the performance of some ML algorithms, while others perform better without feature extraction. The authors emphasize the importance of selecting the right approach based on the dataset at hand, and they suggest that future research should explore the use of other feature extraction techniques and ML algorithms for DNA classification. Overall, the paper provides valuable insights into the application of ML for DNA classification and can guide researchers and practitioners in selecting the best approach for their specific tasks.

Synthetic Data in Healthcare

Synthetic Data in Healthcare

Introduction

    Synthetic data is crucial for developing AI systems, especially in healthcare, where data is sensitive and patient-specific. Simulators are used to generate data at scale for training and testing. Synthetic data generation can be divided into physical models, which require parameterization and simulate real-world physics, and statistical models, which capture probabilistic representations of datasets. Both types have their advantages and drawbacks. Minimizing the sim2real domain gap is crucial in healthcare applications, and this can be achieved through domain randomization, domain adaptation, and differentiable simulation techniques.

Applications of Synthetic Data in Healthcare

    Synthetic data has various applications in healthcare, including:

  • Structured Data: Synthetic data aids clinical studies, data sharing, and validates AI-generated realistic data in electronic health records (EHRs).
  • Natural Language Records: Synthetic data improves AI models for diagnosis and phenotype prediction, and supports clinical decision-making using EHRs.
  • Physiological Measurements: Synthetic data enhances the accuracy of diagnoses and models relationships in ECGs, phonocardiograms, and PPGs.
  • Medical Imaging: Synthetic data improves image-based models for cancer detection, COVID-19 diagnosis, and tumor segmentation using various generative techniques.

Challenges and Risks

    In summary, synthetic data has great potential in various applications in healthcare, including structured data, natural language records, physiological measurements, and medical imaging. However, it also presents significant challenges and risks. Some of these challenges include:

  • Flaws and limits in the simulation engine.
  • Unknown unknowns.
  • Lack of standards and regulations for evaluating models trained with synthetic data.
  • Lack of representation and bias.
  • Data leakage.

Conclusion

    In conclusion, synthetic data offers promising opportunities in healthcare for machine learning but comes with challenges and risks. Addressing issues like data generation flaws, biases, and data leakage is crucial. Ensuring models are tested on real data and fostering collaboration between synthetic data creators and clinical experts are vital steps for successful implementation in medical applications.

AudioGPT

 AudioGPT: Understanding and Generating Speech, Music, Sound, and Talking Head 

AudioGPT este un sistem de inteligență artificială multimodal [1] , care a permite procesarea complexă a informațiilor audio și a dialogului vorbit, în completarea modelelor lingvistice mari actuale, cum ar fi ChatGPT. Testat pentru înțelegerea intențiilor umane și pentru cooperare, AudioGPT prezintă capacitățile de rezolvare a sarcinilor de inteligență artificială cu ajutorul vorbirii, muzicii, sunetului și înțelegerii și generării de capete vorbitoare în dialoguri cu mai multe runde. Cum funcționează: AudioGPT este un sistem capabil să înțeleagă și să genereze conținut audio prin interacțiuni de limbaj natural cu oamenii. Face acest lucru prin utilizarea unei combinații de două tehnologii: 

 1) ChatGPT, un model de limbaj care poate înțelege și genera informații bazate pe text și

 2) modele de fundație audio, care sunt modele de învățare automată concepute special pentru a înțelege și genera conținut audio. 





AudioGPT funcționează în mai multe etape. În primul rând, acesta transformă sunetul vorbit în text. Apoi, acesta analizează sarcina în cauză și o atribuie modelului de fundație audio corespunzător. Modelul de bază procesează informațiile audio și oferă un răspuns în format text, pe care AudioGPT îl convertește înapoi în audio vorbit pentru utilizator. În general, AudioGPT permite oamenilor să comunice cu ușurință sarcini audio complexe și le dă posibilitatea de a crea conținut audio divers și bogat.

[1] Un sistem de inteligență artificială care poate procesa și înțelege informații din mai multe surse sau modalități, cum ar fi textul, imaginile, videoclipurile și sunetul.

Modelele lingvistice mari (Large language models - LLM) precum ChatGPT au revoluționat procesarea limbajului natural. Cu toate acestea, LLM-urile se luptă cu procesarea informațiilor audio, care sunt esențiale pentru realizarea inteligenței generale artificiale. AudioGPT excelează în înțelegerea și generarea vorbirii, a muzicii, a sunetului și a dialogurilor cu mai multe runde. Formarea LLM-urilor pentru procesarea audio este o provocare din cauza datelor și a resurselor computaționale limitate. Prin urmare, folosim o interfață de uz general (ChatGPT) pentru a permite AudioGPT să rezolve numeroase sarcini de înțelegere și generare audio. LLM-urile multimodale devin din ce în ce mai populare și este necesar să se evalueze performanța acestora în înțelegerea intenției umane și în coordonarea mai multor modele de fundație. Această lucrare prezintă principiile de proiectare și procesul de evaluare a AudioGPT, care este capabil să proceseze informații audio complexe în dialoguri cu mai multe runde. Evaluating Multi-Modal LLMs Popularitatea LLM-urilor multimodale a crescut si a creat nevoia de a evalua performanța acestora în înțelegerea intenției umane, raționamentul și coordonarea modelelor de fundație audio. Vom evalua LLM-urile multimodale (în special, AudioGPT) în trei domenii:

 1) Consecvența în înțelegerea intenției utilizatorului și atribuirea modelelor de fundație audio adecvate; [1] Un sistem de inteligență artificială care poate procesa și înțelege informații din mai multe surse sau modalități, cum ar fi textul, imaginile, videoclipurile și sunetul. 



2) Capacitatea de a gestiona sarcini audio complexe, cum ar fi generarea de vorbire și muzică; 



 3) Robustețea în tratarea cazurilor speciale. Pentru a testa dacă LLM-urile multimodale pot raționa și rezolva probleme fără o pregătire explicită, evaluăm consistența lor. Cerem adnotatorilor umani să furnizeze indicații pentru fiecare sarcină și folosim capacitatea de generare de limbaj a LLM-urilor pentru a produce descrieri cu diferite expresii. Apoi, cerem evaluatorilor umani din mulțime să evalueze cât de bine se aliniază răspunsul LLM-ului cu cogniția și intenția umană pe o scală Likert 20-100, fără exemple prealabile de sarcini. Rezultatele sunt documentate cu intervale de încredere de 95%. Pentru a evalua robustețea LLM-urilor multimodale, testăm capacitatea acestora de a gestiona cazuri speciale. Aceste cazuri se încadrează în mai multe categorii, inclusiv lanțuri lungi de evaluare, sarcini fără suport, gestionarea erorilor modelelor multimodale și întreruperi în context. Lanțurile lungi de evaluare implică un lanț de sarcini care poate fi prezentat ca o interogare care necesită aplicarea secvențială a modelelor audio candidate sau ca interogări consecutive care solicită sarcini diferite. Sarcinile nesuportate se referă la interogări care necesită sarcini care nu sunt acoperite de modelele de bază, în timp ce gestionarea erorilor modelelor multimodale se referă la scenarii în care modelele de bază eșuează din cauza argumentelor sau a formatelor de intrare nesuportate. În cele din urmă, întreruperile de context se referă la procesarea interogărilor care nu se află într-o secvență logică, cum ar fi atunci când un utilizator trimite interogări aleatorii într-o secvență de interogări, dar continuă să continue cu interogări anterioare care au mai multe sarcini.

Limitari 

 Deși AudioGPT excelează în rezolvarea unor sarcini complexe de inteligență artificială legate de audio, au putut fi observate limitări în acest sistem, după cum urmează: 

 1) Inginerie de prompt: AudioGPT utilizează ChatGPT pentru a conecta un număr mare de un număr mare de modele de fundație și, prin urmare, necesită inginerie promptă pentru a descrie fundația audio modelele de fundație audio în limbaj natural, ceea ce ar putea necesita timp și expertiză; 

 2) Lungime Limitare: Lungimea maximă a token-urilor din ChatGPT poate limita dialogul cu mai multe ture, ceea ce, de asemenea influențează instrucțiunea de context a utilizatorului;

 3) Limitarea capacității: AudioGPT se bazează în mare măsură pe modele de fundație audio pentru a procesa informațiile audio, care este puternic influențat de acuratețea și eficacitatea acestor modele. 

Arhitectură 

AudioGPT utilizează o arhitectură multimodală care combină modelul de limbaj ChatGPT cu modelele de bază audio și o interfață de transformare a modalității pentru a permite dialogul vorbit. Sistemul valorifică puterea modelelor lingvistice de mari dimensiuni preinstruite, cum ar fi ChatGPT, pentru a gestiona procesarea limbajului natural, integrând, în același timp, modele specifice audio pentru a gestiona sarcinile legate de audio, cum ar fi recunoașterea vorbirii, analiza muzicii și generarea de sunete. AudioGPT este un sistem care combină ChatGPT cu modele de fundație audio și o interfață de transformare a modalității pentru a gestiona sarcinile audio și a permite dialogul vorbit. Acesta are performanțe bune în ceea ce privește transformarea modalității, analiza sarcinilor, atribuirea modelelor și generarea de răspunsuri. Pentru a evalua abilitățile sale, AudioGPT a fost testat în ceea ce privește coerența, capacitatea și robustețea în înțelegerea și generarea vorbirii, a muzicii, a sunetului și a capului vorbitor în dialoguri cu mai multe runde. Rezultatele au arătat că AudioGPT este mai performant în rezolvarea sarcinilor de inteligență artificială legate de audio, facilitând crearea de conținut audio divers de către oameni. 

Proof of Concept in Artificial-Intelligence-Based Wearable Gait Monitoring for Parkinson's Disease Management Optimization


 Nowadays, the research is oriented towards AI-based wearables for early diagnosis and Parkinson's disease monitoring. Our objective is the monitoring and assessment of gait in PD patients. We tried to classify gait patterns assessed by means of correlation using convolutional neural networks. 

 Goal and proposed solution: Wearable sensors have the potential to revolutionize the healthcare industry by reducing many types of diseases to mathematical decisions. The data collected by wearables can be easily classified with a well-trained AI model and provide a specific diagnosis that can be difficult to provide without computer intelligence. Our project goal is to be able to precisely classify Parkinson's disease from the data we collect and create a smart and easy-to-use solution to implement in the medical sector. 

 Solution: Our solution is a proposed wearable miniature physiograph with AI decisional support for gait monitoring and assessment in Parkinson's disease. 

 The Physiograph: The wearable physiograph consists of a bunch of sensors that have the purpose of collecting gait data from people, including three plantar pressure sensors for each leg, two EMG channels for each leg, and one accelerometer mounted on the user's dominant wrist.

Data: The data for this project was collected from a study group consisting of eleven patients diagnosed with Parkinson's disease and three healthy people. For each person from the study group, we generated a set of images representing a coefficient matrix surface plot to visualize the biomechanical and temporal parameters of gait. 
AI-Decisional support: The AI decisional support consists of an AI model that is trained to classify the images generated from the data. To find the best model, we compared 3 architectures, MobileNet, EfficientNetB0 and Xception. 

Generative Adversarial Networks (GAN): To increase the training dataset, we proposed a conditional deep convolutional generative adversarial network to generate images. The network is designed to generate 512x512 images of healthy individuals as well as patients with neurodegenerative disease. 
 
Conclusion: In conclusion, our project has a significant potential to be successful in classifying Parkinson's disease in incipient stages before any visible symptoms, which could substantially extend a patient's life. To strengthen our project, we propose complementary solutions such as classifying writing, voice, and even facial muscle behavior, which would give doctors a much better diagnosis of the disease.

MNIST Digit Classification

  MNIST MNIST este un set de date clasic în domeniul recunoașterii de imagini, utilizat  pentru a antrena și evalua algoritmi de învățare au...