简体   繁体   中英

Linear Regression Model that improves as the user selects and trains data

I'm developing a script that detects peaks on a signal data from a biological source. I want to create a semi-automated model that helps predict which peaks are the correct ones. This script improves as the user manually selects a few of these peaks to help teach the model which ones are correct.

The workflow I'm trying to attain is this: 1. User manually selects data 2. Script obtains the correct data and fits it into the model 3. Use the model to predict the likelihood of a given peak to be correct. 4. Hopefully with enough data and training, it could be automated to run through the rest.

I also don't know the name of the general topic and I'm struggling to find what to google.

I've tried to fit it on linear regression model in scikit learn but I don't have enough datasets (as it learns from the user's first intervention). Is what I'm doing possible?

Sorry for the general-ness of this answer but the OP asked for general topics.

It sounds like semi-supervised learning and here for scikit-learn and here for more details may work.

There is no labeled data to start. A manual process is started to gain some labeled data. Soon, semi-supervised can kick in and take over - with a process measuring its accuracy. A match to your situation and a good place to start.

Eventually you may have "enough" correctly labeled data that you can investigate fitting a classic algorithm to predict the remainder. "Enough" being relative to how hard the problem is. Could be tens, hundreds, thousands, ...

Depending on other details of your situation, Reinforcement learning may work. As you described the situation, this may not work but there may be other details in your environment to leverage this family.

Word of warning - machine learning and semi-supervised in particular may not always work great to every problem. Measure, measure, measure.

Thank you everyone for all your help. I was talking to a colleague and he referred me to Online Machine Learning . I think this was the one I was looking for. Although I would not be handling time-series data nor streaming data from online, the method i think is sufficient for my needs. This method allows that data is trained one by one and not as a batch. I think SciKit Learn currently does not have the ability of out-of-the-box online machine learning.

This i think gives a great rundown on the strengths of online machine learning (also showcasing of the creme python library).

Thanks again!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM