I am trying to solve the following question - Given a text file containing a bunch of biological information, find out the one gene which is {up/down}regulated. Now, for this I have many such (60K) files and have annotated some (1000) of them as to which gene is {up/down}regulated.

Conditions -

  • Many sentences in the file have some gene name mention and some of them also have neighboring text that can help one decide if this is indeed the gene being modulated.
  • Some files also have NO gene modulated. But these still have gene mentions.

Given this, I wanted to ask, what sequence learning algorithm/tool do I use that can take in my annotated training data and can build a model to help give the required output

Example data -

Title: Assessment of Thermotolerance in preshocked hsp70(-/-) and (+/+) cells

Organism: Mus musculus

Experiment type: Expression profiling by array

Summary: From preliminary experiments, HSP70 deficient MEF cells display moderate thermotolerance to a severe heatshock of 45.5 degrees after a mild preshock at 43 degrees, even in the absence of hsp70 protein. We would like to determine which genes in these cells are being activated to account for this thermotolerance. AQP has also been reported to be important.

Keywords: thermal stress, heat shock response, knockout, cell culture, hsp70

Overall design: Two cell lines are analyzed - hsp70 knockout and hsp70 rescue cells. 6 microarrays from the (-/-)knockout cells are analyzed (3 Pretreated vs 3 unheated controls). For the (+/+) rescue cells, 4 microarrays are used (2 pretreated and 2 unheated controls). Cells were plated at 3k/well in a 96 well plate, covered with a gas permeable sealer and heat shocked at 43degrees for 30 minutes at the 20 hr time point. The RNA was harvested at 3hrs after heat treatment

Here my gene is hsp70 and it is down-regulated (deducible from hsp(-/-) or HSP70 deficient). Many other gene names are also there like AQP. There could be another file with no gene modified at all. In fact, more files have no actual gene modulation than those who do, and all contain gene name mentions.

Any idea would be great!!

  • $\begingroup$ Also, I talked to a CS prof. regarding this and he said that applying sequence learning algorithm would be more appropriate here than SVM, for example. I am not sure why though. Any clue? $\endgroup$
    – user1995
    Sep 3, 2016 at 11:20
  • 1
    $\begingroup$ @Chahat_Upreti I would fire the professor if he also didn't tell you how exactly you should approach the method. It's his job to tell you what you should be doing. $\endgroup$
    – SmallChess
    Sep 3, 2016 at 11:24
  • $\begingroup$ @StudentT, oh! he was just another professor. Not my real mentor. I am actually in a Biology department $\endgroup$
    – user1995
    Sep 3, 2016 at 11:35
  • $\begingroup$ This is too broad to be answerable here. You will need to work with a consultant. $\endgroup$ Sep 3, 2016 at 15:56
  • $\begingroup$ @gung : Is it possible to give me some pointers on how to deal with english biological text, i.e. some text mining approach? $\endgroup$
    – user1995
    Sep 5, 2016 at 14:24

1 Answer 1


This looks like a binary classification to me, so you can google binary classification on Google.

There're many possibilities, however, I don't think the decision boundary will be linear, so a simple linear model should not work (but you can check). Bioinformaticians have used support-vector machine very effectively. For example, SVM has been successfully in breast cancer diagnostic. Your problem is even easier because your output will have just two states.

SVM has also been used for genetic variants; the outputs are also two possibilities; true variant or false variant, the inputs are also biological data, so you might want to take a quick look.

  • $\begingroup$ thanks, I will. so you mean I should use SVM for doing binary classification ? And, I would need to convert the sentences to vectors somehow, right? $\endgroup$
    – user1995
    Sep 3, 2016 at 11:12
  • $\begingroup$ @ChahatUpreti Your question is about building a model assuming your data is available, not how to do text mining. Text mining is another issue you'll need to consider. Do you want to start a new question for your text mining issue? $\endgroup$
    – SmallChess
    Sep 3, 2016 at 11:13
  • $\begingroup$ Yes, my question is about building the model. I am not sure though what you mean by text mining. I thought this whole project is overall called a text mining problem. Is there any specific meaning you have for text mining here? (I am new to the field) $\endgroup$
    – user1995
    Sep 3, 2016 at 11:17
  • $\begingroup$ @ChahatUpreti In the question you said you'd convert the text to vector, I took it as your knew how to prepare input data for your model. So your question to me was about how to build a ML model given a working data set. $\endgroup$
    – SmallChess
    Sep 3, 2016 at 11:19
  • $\begingroup$ @ChahatUpreti Anytime that you convert text data into some other format is called text mining. Text mining is very common in bioinformatics. $\endgroup$
    – SmallChess
    Sep 3, 2016 at 11:19

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