1
$\begingroup$

I have created a model with SVM classifier and evaluated it with 5-fold cross-validation. The dataset was sequence data containing lysine modified sites. Now I want to build a web server where anyone can input any sequence in FASTA format. Apparently, I have no label information at this point. So how can I will be able to extract features or use any feature selection method which requires label information? How can I extract or create the test set to predict? Suppose I have used f-score feature selection method in my model and selected 50 features from the given dataset. But for web server, having no label information, how can I select 50 features from the sequence that are provided by an user and then test it with my previously trained model?

As being a novice in the world of bioinformatics, I am seeking the answer which might be improper for others. But it will be very much helpful for me. I am giving some link of some papers and its corresponding web servers.

  1. iPTM-mLys: identifying multiple lysine PTM sites and their different type (https://academic.oup.com/bioinformatics/article/32/20/3116/2196525)

    Web server link : http://www.jci-bioinfo.cn/iPTM-mLys

  2. iHyd-PseCp: Identify hydroxyproline and hydroxylysine in proteins by incorporating sequence-coupled effects into general PseAAC (https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5190098/)

    Web server link : http://www.jci-bioinfo.cn/iHyd-PseCp

$\endgroup$
4
  • $\begingroup$ There are too many questions really and not enough background, but I presume the gist of the question is this, you've a trained model and you want to know how to turn it into a website. So really you are looking for basic information on how to reproduce your model via a website. Is that correct? $\endgroup$
    – M__
    Apr 27 '20 at 8:37
  • $\begingroup$ Yes, it is @Michael. Basically I am using sequence-coupling effect to extract features and ANOVA F-test to select features where label information is necessary. Therefore, to reproduce my model in a website, I have to extract the query protein sequence given by an user and apply F-test again on it and later use it for detecting the class. Is this the process or there is other rules for it? I have given two links that contain some background I hope. $\endgroup$ Apr 27 '20 at 9:01
  • 1
    $\begingroup$ Interesting application. I would simply suggest using Flask, which is described in O'Reilly's Programming PyTorch, chapter 8. PyTorch in Production. Obviously this is Deep Learning rather than ML but the basic gist will hold. You should also think about building a docker for distribution (same chapter). We're in lockdown so I don't have this book with me. $\endgroup$
    – M__
    Apr 27 '20 at 9:22
  • $\begingroup$ Thanks @Michael for suggesting me a path! Hope this will work. I look forward to reading it. $\endgroup$ Apr 27 '20 at 9:34
1
$\begingroup$

Interesting application. I would suggest using Python's Flask system, which is described in a few pages in O'Reilly's Programming PyTorch, chapter 8. PyTorch in Production. Django is not really recommended (don't say that on Stackoverflow however). O'Reilly do an entire book on Flask, but thats to make the site pretty.

Obviously, the explanation here is Deep Learning rather than ML but the basic gist will hold. You should also think about building a docker for distribution which is easy (same chapter). We're in lockdown so I don't have this book with me.

The difficult part will be web architecture because you shouldn't have the CPU/GPU on the same server as the quiry interface, otherwise you are prone to a denial of service attack or just sytem overload. To do this you need to consider Representational state transfer (RESTful) and that is not easy at all (at least for me). Flask facilitates RESTful, but thats like systems admin stuff. I guess before getting into RESTful I'd see how popular your website is, but if its the same server as your institute website you'd need to be really careful because an external user could bring your institutional website down (you wouldn't be popular).

$\endgroup$
1
  • $\begingroup$ That would be very helpful. As I have to go through the book you have mentioned, I am not quite sure it is related to feature extraction or feature selection procedures. I just wanted to know that without any class labels, how can I classify a protein sequence. Such as an F-test requires class labels for statistical analysis. A query protein which is completely new and not included in my trained model's dataset, is to be classified as either positive or negative. $\endgroup$ Apr 27 '20 at 10:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.