Link: <a href="https://www.nlpdemystified.org/" rel="nofollow">https://www.nlpdemystified.org/</a><p>Hi HN:<p>After a year of work, I've published my free NLP course. The course helps anyone who knows Python and a bit of math go from the basics to today's mainstream models and frameworks.<p>I strive to balance theory and practice, so every module consists of detailed explanations and slides along with a Colab notebook putting the ideas into practice (in most modules).<p>The notebooks cover how to accomplish everyday NLP tasks including extracting key information, document search, text similarity, text classification, finding topics in documents, summarization, translation, generating text, and question answering.<p>The course is divided into two parts. In part one, we cover text preprocessing, how to turn text into numbers, and multiple ways to classify and search text using "classical" approaches. And along the way, we'll pick up valuable bits on how to use tools such as spaCy and scikit-learn.<p>In part two, we dive into deep learning for NLP. We start with neural network fundamentals and go through embeddings and sequence models until we arrive at transformers and the mainstream models of today.<p>No registration required: <a href="https://www.nlpdemystified.org/" rel="nofollow">https://www.nlpdemystified.org/</a>
Thank you for sharing this! I am currently studying NLP..<p>Along the way, I've been struggling with a question and I hope someone can help me understand how to go about this: how would you build a model that does more than one NLP task? For a simple classifier like input: text (a tweet) and output: text (an emotion), you can fine-tune an existing classifier on such a data set. But, how would you build a model that does NER and sentiment analysis? E.g. input: text (a Yelp review of a restaurant) and output: list of (entity, sentiment) tuples (e.g. [("tacos", "good"), ("margaritas", "good"), ("salsa", "bad")]). If you have a data set structured this way, and want to fine-tune a model, how does that model know how to make use of a Python list of tuples?
I love your course for being very comprehensive and technical while not getting lost in mundane details. Like the opposite of the following quote:<p>“I didn't have time to write a short letter, so I wrote a long one instead.” [1]<p>[1] <a href="https://www.goodreads.com/quotes/21422-i-didn-t-have-time-to-write-a-short-letter-so" rel="nofollow">https://www.goodreads.com/quotes/21422-i-didn-t-have-time-to...</a>
I like that your site runs properly with only first party scripts enabled in ublock, very rare these days.<p>Secondly kudos for not requiring a sign up and for making it free!<p>Looks like a brilliant resource, thank you.
This is awesome! I just finished watching the Unit 10 video ("Neural Networks I") and it filled in quite a few gaps in my understanding.<p>I really love that you build a complete working example, all the way down to the matrix multiplications, so that we can see how everything works, at every layer of abstraction.<p>I'm looking forward to the next unit, and I can already tell this is going to be an indispensable reference I'll come back to review again and again.<p>Thank you!!
Part 1 thread 6 mos ago: <a href="https://news.ycombinator.com/item?id=31421232" rel="nofollow">https://news.ycombinator.com/item?id=31421232</a>
great work!
just a note regarding tf-idf, when you mention log10:
i think you're missing the point on the reason of log and most importantly base 10.
namely, using log10 gives us a perspective on the number of digits of the term/document frequency.
if a term "A" occurs 23 times and a term "B" occurs 50, they will have a very close representation (because both numbers are 2 digits ones).<p>anyway, thanks for the submission
off topic: When did the default semantics for "NLP" change from Nonlinear programming [0] to Natural Language Processing?<p>[0] <a href="https://en.wikipedia.org/wiki/Nonlinear_programming" rel="nofollow">https://en.wikipedia.org/wiki/Nonlinear_programming</a>