Neural networks for protein structure prediction brown jmb 1999
1 / 35

Neural Networks for Protein Structure Prediction Brown, JMB 1999 - PowerPoint PPT Presentation

  • Uploaded on

Neural Networks for Protein Structure Prediction Brown, JMB 1999. CS 466 Saurabh Sinha. Outline. Goal is to predict “secondary structure” of a protein from its sequence Artificial Neural Network used for this task Evaluation of prediction accuracy. What is Protein Structure?.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Neural Networks for Protein Structure Prediction Brown, JMB 1999' - akio

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Neural networks for protein structure prediction brown jmb 1999

Neural Networks for Protein Structure PredictionBrown, JMB 1999

CS 466

Saurabh Sinha


  • Goal is to predict “secondary structure” of a protein from its sequence

  • Artificial Neural Network used for this task

  • Evaluation of prediction accuracy

Protein structure
Protein Structure

  • An amino acid sequence “folds” into a complex 3-D structure

  • Finding out this 3-D structure is a crucial and challenging task

  • Experimental methods (e.g., X-ray crystallography) are very tedious

  • Computational predictions are a possibility, but very difficult

What is secondary structure
What is “secondary structure”?





Secondary structure prediction
Secondary structure prediction

  • Well, the whole 3-D “tertiary” protein structure may be hard to predict from sequence

  • But can we at least predict the secondary structural elements such as “strand”, “helix” or “coil”?

  • This is what this paper does

  • .. and so do many other papers (it is a hard problem !)

A survey of structure prediction
A survey of structure prediction

  • The most reliable technique is “comparative modeling”

    • Find a protein P whose amino acid sequence is very similar to your “target” protein T

    • Hope that this other protein P does have a known structure

    • Predict a similar structure similar to that of P, after carefully considering how the sequences of P and T differ

A survey of structure prediction1
A survey of structure prediction

  • Comparative modeling fails if we don’t have a suitable homologous “template” protein P for our protein T

  • “Ab initio” tertiary methods attempt to predict the structure without using a protein structure

    • Incorporate basic physical and chemical principles into the structure calculation

    • Gets very hairy, and highly computationally intensive

  • The other option is prediction of secondary structure only (i.e., making the goal more modest)

    • These may be used to provide constraints for tertiary structure prediction

Secondary structure prediction1
Secondary structure prediction

  • Early methods were based on stereochemical principles

  • Later methods realized that we can do better if we use not only the one sequence T (our sequence), but also a family of “related sequences”

  • Search for sequences similar to T, build a multiple alignment of these, and predict secondary structure from the multiple alignment of sequence

What s multiple alignment doing here
What’s multiple alignment doing here ?

  • Most conserved regions of a protein sequence are either functionally important or buried in the protein “core”

  • More variable regions are usually on surface of the protein,

    • there are few constraints on what type of amino acids have to be here (apart from bias towards hydrophilic residues)

  • Multiple alignment tells us which portions are conserved and which are not

hydrophobic core

What s multiple alignment doing here1
What’s multiple alignment doing here ?

  • Therefore, by looking at multiple alignment, we could predict which residues are in the core of the protein and which are on the surface (“solvent accessibility”)

  • Secondary structure then predicted by comparing the accessibility patterns associated with helices, strands etc.

  • This approach (Benner & Gerloff) mostly manual

  • Today’s paper suggest an automated method

The psi pred algorithm
The PSI-PRED algorithm

  • Given an amino-acid sequence, predict secondary structure elements in the protein

  • Three stages:

  • Generation of a sequence profile (the “multiple alignment” step)

  • Prediction of an initial secondary structure (the neural network step)

  • Filtering of the predicted structure (another neural network step)

Generation of sequence profile
Generation of sequence profile

  • A BLAST-like program called “PSI-BLAST” used for this step

  • We saw BLAST earlier -- it is a fast way to find high scoring local alignments

  • PSI-BLAST is an iterative approach

    • an initial scan of a protein database using the target sequence T

    • align all matching sequences to construct a “sequence profile”

    • scan the database using this new profile

  • Can also pick out and align distantly related protein sequences for our target sequence T

The sequence profile looks like this
The sequence profile looks like this

  • Has 20 x M numbers

  • The numbers are log likelihood of each residue at each position

Preparing for the second step
Preparing for the second step

  • Feed the sequence profile to an artificial neural network

  • But before feeding, do a simply “scaling” to bring the numbers to 0-1 scale

Intro to neural nets the second and third steps of psipred
Intro to Neural nets second and third steps of PSIPRED)

Artificial neural network
Artificial Neural Network

  • Supervised learning algorithm

  • Training examples. Each example has a label

    • “class” of the example, e.g., “positive” or “negative”

    • “helix”, “strand”, or “coil”

  • Learns how to predict the class of an example

Artificial neural network1
Artificial Neural Network

  • Directed graph

  • Nodes or “units” or “neurons”

  • Edges between units

  • Each edge has a weight (not known a priori)

Layered architecture
Layered Architecture

Input here is a four-dimensional vector. Each dimension goes

into one input unit

Layered architecture1
Layered Architecture


What a unit neuron does
What a unit (neuron) does

  • Unit i receives a total input xi from the units connected to it, and produces an output yi = fi(xi) where fi() is the “transfer function” of unit i

wi is called the “bias” of the unit

Weights bias and transfer function
Weights, bias and transfer function

Unit takes n inputs

Each input edge has weight wi

Bias b

Output a

Transfer function f()

Linear, Sigmoidal, or other

Weights bias and transfer function1
Weights, bias and transfer function

  • Weights wij and bias wi of each unit are “parameters” of the ANN.

    • Parameter values are learned from input data

  • Transfer function is usually the same for every unit in the same layer

  • Graphical architecture (connectivity) is decided by you.

    • Could use fully connected architecture: all units in one layer connect to all units in “next” layer

Where s the algorithm
Where’s the algorithm?

  • It’s in the training of parameters !

  • Given several examples and their labels: the training data

  • Search for parameter values such that output units make correct predictions on the training examples

  • “Back-propagation” algorithm

    • Read up more on neural nets if you are interested

Back to psipred
Back to PSIPRED …

Step 2
Step 2

  • Feed the sequence profile to the input layer of an ANN

  • Not the whole profile, only a window of 15 consecutive positions

  • For each position, there are 20 numbers in the profile (one for each amino acid)

  • Therefore ~ 15 x 20 = 300 numbers fed

  • Therefore, ~ 300 “input units” in ANN

  • 3 output units, for “strand”, “helix”, “coil”

    • each number is confidence in that secondary structure for the central position in the window of 15









Input layer



Step 3
Step 3

  • Feed the output of 1st ANN to the 2nd ANN

  • Each window of 15 positions gave 3 numbers from the 1st ANN

  • Take 15 successive windows’ outputs and feed them to 2nd ANN

  • Therefore, ~ 15 x 3 = 45 input units in ANN

  • 3 output units, for “strand”, “helix”, “coil”

Test of performance
Test of performance

Cross validation

  • Partition the training data into “training set” (two thirds of the examples) and “test set” (remaining one third)

  • Train PSIPRED on training set, test predictions and compare with known answers on test set.

  • What is an answer?

    • For each position of sequence, a prediction of what secondary structure that position is involved in

    • That is, a sequence over “H/S/C” (helix/strand/coil)

  • How to compare answer with known answer?

    • Number of positions that match