MATLAB Answers

Machine learning for peak characterisation

6 views (last 30 days)
David on 26 Jun 2015
Commented: David on 29 Jun 2015
I have intensity profiles (extracted from an image analysis). Basically just f(x). With large datasets of different profiles. The user should train a machine learning algorithm to identify peaks, their size (if scalar is too complicated then just qualitatively: small, medium, large) and one class of three (based on their position/x-value) with a subset and it should run over the large dataset.
Or if this is overly complicated have multiple classes (~10) and assign one class for each profile.
I have tried hard coded parameters for findpeaks in the past, but there were multiple issues with that. First of all the data is noisy, but more important the users (no Matlab experience and low math exposure) had a hard time finding and tuning the parameters until results matched what they see when looking at the images and since parameters changed between experiments this meant a decrease in usability and hence usage.
I haven't implemented any machine learning so far and I'm just basically looking at initial directions to work with. I'm already unsure whether I should look more into the Statistics and Machine Learning Toolbox or the Neural Network Toolbox.
Any help is greatly appreciated!

Answers (1)

Greg Heath
Greg Heath on 27 Jun 2015
I am only familiar with the latter, so I cannot compare.
If noisy data peaks thwart your feature detection, preprocess with a low-pass filter.
Hope this helps.
Thank you for formally accepting my answer
  1 Comment
David on 29 Jun 2015
Sorry but this does not really answer my question. I have tried low pass filtering, moving average, etc. The problem is more the difficulties unexperienced users have tuning the parameters of findpeaks to find and differentiate between meaningful peaks and unimportant ones. And also to measure the width of a peak reliably. That's why I want to move away from these hard coded parameters and rather let the user train the computer and let it figure out the parameters for himself.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by