15 ms·
Ask HN: How to get back into AI?
I was involved in machine learning and AI a few years ago, mainly before the onset of the new diffusion models, large transformers (GPT*), Graph NNs and Neural ODE stuff.
I am comfortable with autograd/computation graphs, PyTorch, "classic" neural nets and ones used for vision-type applications, as well as the basics of Transformer networks (I've trained a few smaller ones myself) and RNNs.
Do you know of any good resources to slowly get back into the loop?
So far I plan on reading through the original Diffusion/GPT papers and start going from there but I'd love to see what you think are some good sources. I would especially love to see some Jupyter notebooks to fiddle with as I find I learn best when I get to play around with the code.
Thank you
- greggarious 4y agoFind the paper that got you into that (or anything else) then see who's cited it since and catch up that way.
- optbuild 4y ago> I am comfortable with autograd/computation graphs, PyTorch, "classic" neural nets and ones used for vision-type applications, as well as the basics of Transformer networks (I've trained a few smaller ones myself) and RNNs. Maybe I am a bit off the track. But how do someone reach this state?
- newsoul 4y agoYou can try out fast.ai's courses. Also there is a youtube series by Andrej Karpathy that goes into much more detail and builds a library from scratch.
- yonz 4y agoIn the same spirit, what are the three learning algorithms to implement for learning? My to-do list has: 1) Refresher: RNNs, deep net classifier 2) LSTMS 3) Self Attention anything Any other suggestions for getting back in the loop?
- jstx1 4y ago> I am comfortable with autograd/computation graphs, PyTorch, "classic" neural nets and ones used for vision-type applications, as well as the basics of Transformer networks (I've trained a few smaller ones myself) and RNNs. It sounds like you're into it already. And you already know which new papers are interesting to you.
- sigmoid10 4y agoTo be honest, for transformers just go to huggingface.co and see what interests you. They have tons of examples to run and they also link to all the papers in the documentation. It doesn't get much easier to get into it. Even for the more recent stuff like vision transformers and diffusion models.
- jerpint 4y agoThe “hard” part is taking an example and adapting it to new tasks. This is the best way to learn imo
- anonreeeeplor 4y agoI think you should be careful about dropping whatever you are doing and running back to this new iteration of AI. Quite honestly, the opportunity all seems to be on the front end. The idea that you are going to airdrop yourself as a hands on AI programmer into this market doesn’t make a huge amount of sense to me from a career perspective. The opportunity is with the tools and how they are applied. Building front end experiences on ChatGPT and integrations and applied scenarios. You actually doing the AI yourself means competing with PHDs and elite academics immersed in the field. I think knowledge of AI is far less valuable than knowledge of the emerging landscape combined with a broad understanding of different tools and how they are applied. The new trend here is very strongly Large Language Models (LLM). You should be far more specific with what your goal is and where to spend your time. A lot of the “AI” you are referring to seems to be no longer relevent or interesting to the market. If you are spending time with Jupiter notebooks I would say you are probably completely wasting your time and heading in the wrong direction. LLM is the major trend. Focus entirely on that and the tools landscape and how to integrate it and apply it. It feels like you are navigating using an out of date map.
- cbsudux 4y agoThis is a good reply, but the OP might be generally interested in the fundamentals of ML
- steve_adams_86 4y agoIs LLM even applicable to many things though? If we want more nuanced and contextual vision, does LLM help?
- f0e4c2f7 4y agoThis should jog your memory and catch you up with the latest and greatest. https://course.fast.ai https://course.fast.ai
- nestorD 4y agoThis is the course I used last time I wanted to get up to date, I would recommend.
- turkeygizzard 4y agoSimilar situation as you. I stopped keeping up around 2015ish. I just read Francois Chollet's Deep Learning with Python and found it to be a fantastic high level overview of all the recent progress. There's some code, but not a lot. I mostly just appreciated it as a very straightforward plain-language treatment of RNNs, CNNs, and transformers. Now I'm going through Stanford's CS224 lectures. I'm sort of planning to read papers but as some other comments have pointed out, I'm less sure of the ROI on that since I'm not sure how feasible a future in AI is for me
- macrolime 4y agoI'm in the same boat kinda, but even more outdated on some parts. I had some AI specialization back in college, but that was before deep learning was even a thing, so we did stuff like self-organizing maps and evolutionary algorithms, but it wasn't really all that useful for much back then. Been following deep learning from the sidelines, but for work my AI work has been restricted to GOFAI until recently. Some of the stuff I'm currently reading/watching or have recently Practical Deep Learning, though it sounds like you may know this stuff already (https://course.fast.ai/ https://course.fast.ai/) Practical Deep learning part 2, more about diffusion models. Full course coming early next year (https://www.fast.ai/posts/part2-2022-preview.html https://www.fast.ai/posts/part2-2022-preview.html) Hugging Face course (https://huggingface.co/course/chapter1/1 https://huggingface.co/course/chapter1/1) Diffusion models from hugging face https://huggingface.co/blog/annotated-diffusion https://huggingface.co/blog/annotated-diffusion https://huggingface.co/docs/diffusers/index https://huggingface.co/docs/diffusers/index Andrej Karpathy's Neural Networks: Zero to Hero. He goes from the basics up to how GPT etc, so you can start wherever suits you (https://www.youtube.com/playlist?list=PLAqhIrjkxbuWI23v9cThsA9GvCAUhRvKZ https://www.youtube.com/playlist?list=PLAqhIrjkxbuWI23v9cThs...) 3blue1brown's videos. I've found all his videos on neural networks and math worth watching, even for stuff that I already know, he sometimes has some new perspectives and nice animations. brilliant.org. Nice math refresher and the courses there are almost like fun little games.
- Railsify 4y agoHave you had a look at https://nnfs.io/ https://nnfs.io/ ? I bought the book and am gearing up to start working through it, I would be interested to know your thoughts. Generally I want to chart a personal curriculum from data engineer to practical application of modern AI to real business problems.
- macrolime 4y agoI hadn't seen that book before. Looks like it's a companion to this YouTube series that looks pretty interesting https://youtube.com/playlist?list=PLQVvvaa0QuDcjD5BAw2DxE6OF2tius3V3 https://youtube.com/playlist?list=PLQVvvaa0QuDcjD5BAw2DxE6OF... I will check it out for sure
- CoastalCoder 4y agoWhat's your goal? For example, do you want to develop models as a hobby? Make models or software for a living? Use AI in some particular problem domain?
- quibono 4y agoI meant more as a hobby, though I would love to practically apply some of these models in a little side project.
- CoastalCoder 4y agoEveryone is different, but I'd have trouble making time for a project like this unless it served some goal I truly cared about. If you're the same, is there something more specific to help you focus and put in the time?
- mythhouse 4y agoHow are you software engineering skills. Thats the biggest gap i currently see at my current employer. Way too many data scientists not able to make an impact because they are not able to put their notebooks into a product and run it in prodction.
- grepfru_it 4y agoI see this too. So many well intended projects that were scrapped because management didn't see a business case from jupyter notebook results...
- civilized 4y agoI partly agree with this but I think it's a bit overrated. There's no massive barrier to getting an actually good model into production. If the model seems promising but no one can figure out how to productionize it, it probably has fatal flaws as a model. There's no guarantee that a mess of Python code that somehow produces a nice AUC curve is actually doing anything valuable. As in science in general, there are many ways to fool yourself in data science.
- mythhouse 4y agoI am not saying its a hard skill or anything. But asking your manager everytime to go find someone to put your notebooks in productions is not good strategy to succeed at work. If you can get your notebook pretty far into production and have software engineering skills it goes a long way.
- stephc_int13 4y agoRead all the leading papers, many times, to get a deep understanding, the writing quality is usually pretty low, but the information density can be very high, you'll probably miss the important details the first time. Most medium and low-quality papers are full of errors and noise, but you can still learn from them. Get your hands dirty with real code. I would take a look at those: https://github.com/geohot/tinygrad https://github.com/geohot/tinygrad https://github.com/ggerganov/whisper.cpp https://github.com/ggerganov/whisper.cpp
- zone411 4y agoDisagree. The information density of 99% of ML research papers is not high. It's usually just one idea that's often just an evolutionary modification of something that already exists, or something that worked in a different ML area applied here, along with an intro, maybe some supporting math, and some experiments. The information density might seem high if you're not familiar with previous papers that are referenced. I also don't agree that medium quality (how to decide what's medium quality anyway? includes main conferences?) papers are full of errors.
- stephc_int13 4y agoThis comes from my experience with Computer Vision papers about ten years ago. I've done some work in the field, and I've seen errors in almost all papers. Sometimes they are not really errors, but they give a solution that only works in the very specific context they tested it and completely falls apart anywhere else. I've lost countless hours and days studying and replicating papers. Of course, ML could be an entirely different experience.
- zone411 4y agoI do expect that it was different back then. The replication situation has improved somewhat lately but it's still not great.
- axpy906 4y agoFollowing. I got off the train about two years ago to work more in engineering. The way I see it, if you’re not a research scientist - this field is best addressed as an ML engineer as there are more challenges in systems. Would love to be proved wrong.
- curious-guy 4y agoHey, I am a research engineer/applied ai person building vision models in healthcare domain. I am currently preparing to transition to engineering roles like you did. For that, I am currently going through web dev - both frontend and backend. Would love to get some pointers from you on my approach and any recommendations from your side. Thanks!
- axpy906 4y agoThe best advice I could give: Build out your portfolio so you have projects that you can speak to and show your tech depth. FWIW, I do AI backend at FAANG and mentor as tech lead.
- bobleeswagger 4y agoMaybe it's just me, but it sounds like you're only interested in getting back into AI because it is currently in the limelight. "Working in AI" a few years ago doesn't mean much if you have nothing to show for it. What I'm getting at, is your motivations don't seem genuine; there's nothing that tells me you care about the technology advancing more than a paycheck. As someone with 10 years of professional experience in software, I find every AI "trend" that has come up in that time to be incredibly odd. It is certainly remarkable what chatGPT, StableDiffusion, and other examples are doing today... Ultimately people are giving waaaaaaaay too much credit without understanding the technical details. These are pidgeon-holed examples that still aren't solving any real problems. AI is still just statistics with marketing.
- spyder 4y agoHuh, WTF? What's wrong in getting interested in something because there is new progress in it? And how can you assume he is only interested in it because of the money when he only asked about how to learn, play around with code and didn't ask anything about finding a job or projects to work on?
- bobleeswagger 4y agoIt's disingenuous. There's a difference between getting into a topic because it interests someone, and getting into a topic because it's incredibly hyped right now. Do you really believe it's the former...? Considering OP mentioned a lot of recent hype trains relating to AI, it's perfectly reasonable to assume they are chasing dollars, rather than contributing to the underlying technology without further expectations. So, OP comes off as very disingenuous when they lead with the hype and provide nothing of substance.
- joenot443 4y agoOn the side, I make cheap Wordpress sites for small businesses (mostly as a favor to folks I know personally) and always had a hard time writing good marketing copy. I’ve found that what ChatGPT comes up with is often a great start and has already saved me hours of time. Is it as good as paying a professional? Probably not. But I think it’s fair to say these models are already solving real world problems, even if they still need a bit of a helping hand. Just my thoughts, I’m not an expert on the models themselves.
- marban 4y agoRelated question, what's the current state of paraphrasing text with off-the-shelf Python libs — PyTorch/Transformers?
- rg111 4y agoVery easy to do. Just use Hugging Face.
- marban 4y agoYeah, last time I played around with it was something like FB/Bart-CNN but I was under the impression that things have evolved/changed a lot since then.
- Der_Einzige 4y agoPlease give an actual answer next time. The OP wants specifically sentence-transformers, which are hosted on huggingface but it's a separate library. You'll want to go with whatever models that the sentence transformers documentation recommends.
- deleted 4y ago[deleted]
- marban 4y agoFor Python, here's a nice compilation: https://github.com/ml-tooling/best-of-ml-python/blob/main/README.md https://github.com/ml-tooling/best-of-ml-python/blob/main/RE...
- mathgladiator 4y agoI'm curious what you discover as I did some AI decades ago, and now I have a new AI problem. I'm trying to research how to build a generic self learning board game agent for my platform ( https://www.adama-platform.com/ https://www.adama-platform.com/ ) as I've reduced the game flow to a decision problem. How I intend to start is to experiment with simple stuff at a low level, and then use that experience to find out what to buy.
- quibono 4y agoOP here. For some context, something I should have mentioned in the original post but failed to do: I was not intending to do a professional pivot to an AI role; it is more of a personal interest. I used to be really excited about this stuff and am looking forward to getting involved in it again just because I find it interesting. Thank you, I really appreciate everyone's responses.
- godelski 4y agoI'm not sure why people are telling you professional stuff. You do you. I am an ML researcher working on generative modeling. I think you have enough experience that you'll catch up quickly. But the question is most what you're interested in? With that I can give better advice. Don't let anyone stop you from learning just to learn. Not everything has to be a career. A lot of us got here because it's fun. I do think you'll pick up diffusion models quickly. I like the explicit density side of things more and density estimation. So I like Song's works and similar with Kingma. Also check out Lilian Wang's blogs. They are a wealth of material and sources. Can't go wrong there. You'll find that diffusion and VAEs are kinda similar. The difficulty you'll have in understanding something like stable diffusion is actually the programming (at least this was the hardest part for me). Good luck and let me know if I can help.
- maurits 4y agoIm an ML researcher (reinforcement learning). I learned by implementing papers from scratch endlessly. Any specific subfield you are interested in?
- optbuild 4y agoWhat kind of programming and math proficiency is good to have before someone starts to implement papers?
- Simon_O_Rourke 4y agoIf you're something of a snakeoil salesman with some, but not deep, technical knowledge, then AI Ethics is for you. There are (or were) companies out there who would pay big bucks for folks to tell them some models potentially could be biased or otherwise discriminatory because of poorly selected data. Wash, rinse, repeat and see your paychecks roll in.
- 29athrowaway 4y agoI recommend this video from Andrew Ng: https://www.youtube.com/watch?v=avoijDORAlc https://www.youtube.com/watch?v=avoijDORAlc
- usgroup 4y agoDo you guys expect DL to have longevity generally speaking, or is the usurper already on the horizon? There are a few non equivalent universal approximation approaches. I’m not sure I fully understand why this is will end up being the one even on a 10 year horizon.
- qorrect 4y agoBy Deep Learning you mean neural networks with more than one hidden layer ? I've seen some results from massive random forests that are on par, but I don't know of anything that is set to replace the NN architecture, which at this point has been around in one form or another since 1957.
- alexmolas 4y agoFor diffusion models I recommend you this blog post https://eugeneyan.com/writing/text-to-image/ https://eugeneyan.com/writing/text-to-image/
- matchagaucho 4y agoSimilarly, my linear regression and decision tree ML skills are feeling really outdated :) But understanding AI fundamentals gives me a fresh perspective on how to build applications that leverage ChatGPT (for example). Crafting the inputs to achieve desired outputs. Training the models with a corpus of data relevant to a niche industry, etc...
- ttul 4y agoI signed up for Jeremy Howard’s second AI course at the University of Queensland. The course lectures were streamed live to participants around the world in October and November. An online forum organizes everything. When this course becomes public next year, I think it will be a great way to get caught up. In the meantime, you might still be able to pay the AU $500 fee and watch the course content, which was all recorded, if you are anxious to get going.
- zone411 4y agoStart with survey papers. Starting with GPT is jumping in the middle. It's better to know the big picture first.
- wbsun 4y ago+1 to this. This is the way to start a PhD research (assuming OP is trying to stay up-to-date in this area by "get back").
- ineptech 4y agoPossibly too basic for you, but I was hugely impressed with https://www.nlpdemystified.org/course https://www.nlpdemystified.org/course (found on HN a week or two back). Each chapter has a large jupyter notebook with lots of annotated sample code. Also there's no cost, no book to buy, no email signup, it's just a guy sharing knowledge like the old days. Great course.
- sjkoelle 4y agoPersonally I think that contributing to an open source community is the move. Join the Eleuther Discord. Futz around on Hugging Face. Play with notebooks on Uberduck. Have fun!!! Gatekeeping is dumb.
- Der_Einzige 4y agoEleuther has many members who are very difficult to work with. Also, if they ever make another dataset like the pile, don't expect to get your own data into it (even if they say that they will add it). I'd work with other groups if I were you.
- deleted 4y ago[deleted]
- naruvimama 4y ago
- nektro 4y agodon't
- uoaei 4y agoAI is so much more than the eye-catching generative art experiments.
- jdeaton 4y agoI am an ML researcher working in the industry: by far the most effective way to maintain/advance my understanding of ML methods is implement the core of an interesting paper and reproduce (some) of their results. Completing a working implementation really forces your understanding to be on another level than if you just read the paper and think "I get it". It can be easy to read (for example) a diffusion/neural ode paper and come away thinking that you "get it" while still having a wildly inadequate understanding of how to actually get it to work yourself. You can view this approach in the same way that a beginner learns to program. The best way to learn is by attempting to implement (as much on your own as possible) something that solves a problem you're interested in. This has been my approach from the start (for both programming and ML), and is also what I would recommend for a beginner. I've found that continuing this practice, even while working on AI systems professionally, has been critical to maintaining a robust understanding of the evolving field of ML. The key is finding a good method/paper that meets all of the following 0) is inherently very interesting to you 1) you don't already have a robust understanding of the method 2) isn't so far above your head that you can't begin to grasp it 3) doesn't require access to datasets/compute resources you don't have of course, finding such a method isn't always easy and often takes some searching. I want to contrast this with other types of approaches to learning AI with include - downloading and running other people's ML code (in a jupyter notebook or otherwise) - watching lecture series / talks giving overviews of AI methods - reading (without putting into action) the latest ML papers all of which I have found to be significantly less impactful on my learning.
- Throwaway23459 4y agoMost recent papers, in NLP at least, are so sparse on detail that it is impossible to reproduce their models. And then there's the compute cost, as at least one other poster has mentioned.
- janalsncm 4y agoCan you recommend some papers which fit those criteria?
- HybridCurve 4y ago
- whiplash451 4y agoThe latest development in AI are very cool, but a big lure in my opinion. You have two options: 1. Work full-time for companies doing this state-of-the-art stuff (OpenAI, Meta, etc.) 2. Work full-time for a (good) AI company that is doing interesting AI work, but most likely not based on GPT/SD/etc. In both cases, you will learn a lot. Anything else seems like a costly and dangerous distraction to me.