4 ms·
Datasets of T-cell receptors cannot be arranged as numbers into rows and columns, representing what we call non-conforming features. By forcing ourselves to dev
by jostmey 7y ago
Datasets of T-cell receptors cannot be arranged as numbers into rows and columns, representing what we call non-conforming features. By forcing ourselves to develop methods to cope with non-conforming features, we have developed a new approach we call Dynamic Kernel Matching for classifying complex, non-conforming data. We think this approach may be useful for other problems.
- inetknght 7y agoIn your README, you state: > we implement the Needleman-Wunsch algorithm in TensorFlow. What sort of performance do you get with your implementation on TensorFlow vs other implementations of Needleman-Wunsch? What scores did you use for gap opens and extensions?
- jostmey 7y ago> What sort of performance do you get with TensorFlow vs other implementations of Needleman-Wunsch? TensorFlow runs > 10,000 instances of the Needleman-Wunsch algorithm in parallel. But I believe each instance of algorithm runs in serial. This is very efficient if all the sequences are roughly the same length, allowing for millions of sequences to be processed each second. Here's my implementation of the Needleman-Wunsch algorithm: https://github.com/jostmey/dkm/blob/master/antigen-classification-problem/model/alignment_score.py https://github.com/jostmey/dkm/blob/master/antigen-classific... > What scores did you use for gap opens and extensions? Another great question! There are two gap penalties. One for skipping weights and one for skipping features. If I know there are always more features than weights, then I set the penalty for skipping a feature to zero. This does not penalize the model for having more features than weights. I then set the penalty for skipping weights to a value approximating negative infinity. This ensures every weight is used and is not wasted.
- gliese1337 7y agoWhy can they not be arranged as numbers into rows and columns, and why does not being able to represent them as numbers matter? Stats and ML people have been dealing with non-numeric data for a long time, after all.
- jostmey 7y agoMany approaches for dealing with symbols reduce the information to numbers. Consider regression of categorial variables. The categorical variables are usually converted into a vector of numbers using a one-hot encoding. Now, if you are classifying a sequence, the number of categorical variables will vary depending on the sequence length. Some sequences will be longer than others, resulting in an irregular number of features. Consequently, you will not have a fixed number of columns for our regression model. Statistics and ML are vast, so there are lots of methods that cannot be pigeonholed like this. If you mention a specific method, we can contrast DKM to that method.
- hobs 7y agoSo, I dont know much about these methods, but if you dont have a fixed number of columns, the entity attribute value approach is clunky but can definitely model an N+ set of "columns".
- jrumbut 7y agoYou're definitely right that there are a number of simple-ish ways to represent the data, but in a tradition regression model the 102nd attribute being the letter A could mean something totally different than the 103rd attribute equaling A. So therefore the authors had a challenge having sequences that are different lengths. In the past, one possible workaround that people have done with some success is taking some fixed length summary (say, the proportion of As, Cs, Gs, and Ts). Then you can control the order and avoid having to consider a possibly intractable number of sub-sequence comparisons, but you also lose information that might be important.