Live data from Hacker News

Building an AI to predict human age from a blood sample

colekillian.com

61–68 of 68 posts

Re: Building an AI to predict human age from a blood sample

#61
Good to see other people interested in this!

Our startup (Chronomics) has built the most accurate epigenetic clock from Saliva (no needles..) which looks at 20 million positions (or features) https://www.chronomics.com/science

Really interesting area and we are starting to be able to define many more novel indicators of actionable health risks such as smoke exposure, alcohol consumption and metabolic status from DNA methylation.

Re: Building an AI to predict human age from a blood sample

#62
post #59

When you post an article, please don't publish the code somewhere an account must be created in order to read it. In this case, I cannot check the full code because it is hosted at https://colab.research.google.com , a tarball attached to the article or a publicly accessible host like gitlab.com or github.com would have been fine.

Definitely a good tip. I'll try not to make that mistake again.

You can now find the jupyter notebook code here: https://github.com/Ruborcalor/Age-Prediction-Via-Blood-Sampl...

Re: Building an AI to predict human age from a blood sample

#63
post #61

Good to see other people interested in this! Our startup (Chronomics) has built the most accurate epigenetic clock from Saliva (no needles..) which looks at 20 million positions (or features) https://www.chronomics.com/science Really interesting area and we are starting to be able to define many more novel indicators of actionable health risks such as smoke exposure, alcohol consumption and metabolic status from DNA…

Wow very cool startup; wish you guys the best of luck!

Re: Building an AI to predict human age from a blood sample

#64
The idea of selecting the 25 features based on maximum correlation seems to be weak because it should introduce a lot of collinearity. In chapter 6 of the ISLR book there are many methods to work in high dimension, that is when number of features is bigger than number of samples. For example principal components regression, partial least squares, the lasso, ridge regression, forward stepwise selection and PCL. All of those methods can be used with 10 or so lines of R using the packages and examples described in the ISLR book, lab in chapter 6.

Re: Building an AI to predict human age from a blood sample

#65
post #5

>Back to the computer science: 470,000+ features sounds nice at first, but is a recipe for overfitting when we only have 700 samples at our disposal. Proceeds to use (1024^2 * 2 + 1024) parameters in the neural network.

what a meme haha :) after many similar comments I plan on implementing a simpler model and seeing how it compares

I forked your colab. There was abit of code it couldn't run. `Gxxx_matrix.csv` not found.

Re: Building an AI to predict human age from a blood sample

#66
post #31

Earlier quoted context omitted.

that's exactly the thing I'm seeing in my field (computational materials science). Basically a simple regression model (with very simple features) brings you 90% there, still people compete on publishing (on ONE shitty benchmark dataset) ever better results – the most-cited people are using KRR, e.g. each fit uses 2TB of RAM and "days" of CPU (features of length O(1000) and 100000 samples). The sample data is probabl…

I haven't thought as much about it as you have probably, but ok you get 90% of the way there, but now what? How do you get that last 10%? It would be a huge amount of work right?

you get the last 10% by running a calculation for that (which itself is not necessarily accurate...). The whole situation is a little bit like Plato's cave... And also from what I've seen so far, those models either are 90% there or they are overfitting like hell.

Re: Building an AI to predict human age from a blood sample

#67
post #12

Interesting write up. I'd be interested to see how it performs with k-folds validation as well as shuffling. Kind of worried its learning order or samples.

Thanks I really appreciate it. I'll try and get back to you with the performance of k-folds validation and shuffling. I don't think it can be learning the order or samples because the train and test data sets are separated very early on. If it were learning order or samples of the training set it would have to perform very poorly on the test set.

This had been bugging me all day in the back of my head... turns out shuffle is enabled by default. Both in sklearn and in tf.keras (also original keras).

On a separate note, I think there may be a source file missing in your notebook. I kept getting an error when trying to load "GSE87571_series_matrix.csv". Might just be me.

[sklearn ref](https://scikit-learn.org/stable/modules/generated/sklearn.mo...)

[tf.keras](https://www.tensorflow.org/api_docs/python/tf/keras/Model#fi...)

Re: Building an AI to predict human age from a blood sample

#68
post #14

For some context, the author is an undergraduate student.

Haha yes good point take everything with a grain of salt

I don’t know if you’re the OP but I didn’t mean it in a negative way. This is extremely well written and researched, better than most graduate student writings yet alone non-academics.
Post reply on HN