DeepLearning.AI NLP Learner Community Event ft. Sachin Wani

Sachin Wani shares his path into machine learning, from undergraduate research with professors to grad school decisions. He recommends Andrew Ng's Coursera courses, Two Minute Papers for staying current, and answers questions on NER approaches and career preparation.
Questions this video answers
October 29, 2020
University of Florida (Master's in Computer and Information Sciences, specialization in Deep Learning)
NIT Raipur (B.Tech/CAC)
October 2018
License plate recognition (CCTV-based) and cardiac arrhythmia prediction/classification (ECG-based)
Chapters
So hello everyone and welcome to the Deep Learning AI's online mini event series for NLP Learner Community. I want to say good morning, good evening or good afternoon depending on where you're watching this. I'm very honored and excited to be your guest speaker today. I'll be speaking for the first 25 or 30 minutes and then I'll be answering your questions on Slack for the rest of the time. So don't forget to post your comments or questions and upload those questions in the Slack channel. And let's begin with the presentation. I will share my screen right now. So the NLP Learner Community event and this will be the table of contents that we'll be basically going through. We'll start with some introduction about me, then I will speak about my journey to ML and how I started in the AI and ML industry, the academics, basically what I'm currently doing and if you have any doubts which are posted on Slack, I'll answer all your doubts. So a few points About Me I am an alpha tester and mentor at Deep Learning AI working on multiple specializations, testing them and once they are launched, mentoring to help the learners. I am also a student at University of Florida doing my Masters in Computer and Information Sciences with specialization in Deep Learning. I have completed my BTEC in CAC from NIT Raipur and I have worked under my professors in multiple domains of machine learning like computer vision, natural language processing, reinforcement learning and I have built multiple projects during the course of my Bachelor's degree. So about my journey to machine learning, how I got interested in this field. So my first encounter with machine learning was in my Bachelor's college in my second year when our seniors introduced me to the concept of machine learning where instead of explicit coding of rules and data, we had that magical model that basically where we serve in the data and the results and we get rules by itself. So after that once I was intrigued by it and once I was fascinated by this model and architecture, I started searching for topics within AI and ML and I was fascinated how machine can learn without explicit instructions because before it all that I knew was that machine had basically zero intelligence, zero IQ and it does what you basically tell them to. And this was something new for me and through that I basically started my journey with ML into ML with Coursera. So I completed few courses to get an in depth information. So about how Coursera helped me gain the relevant skills, I would say that I started with the machine learning course by Andrew, which is a really good course that I did in October 2018 and it was basically the foundation for machine learning, if anyone wants to get into it. It's a really good course, it's 12 weeks long and it contains all the basics that one has to learn. And after that, to get more in depth into deep learning, I finished the five course deep learning specialization which was made by DeepLearning AI, which was also made by Andrew. And for me, retaining those knowledge which I learned in those courses and specializations, I made some proper notes. So I would suggest myself that while you're taking the course, do not rush through it, learn the concepts pretty well and try to make your own notes. So for me, making my own notes helped me whenever I wanted to go back and just revise it, but see what techniques works best for you. It might be making some PDF or just writing down some formulas. And I guess it's up to you how you want to get that information to stay for a long time instead of just running through the course. So one of the most important things in machine learning is mathematics. And I have to stress this, that you cannot ignore mathematics if you want to go into machine learning. So as most of the bachelors or undergrads, as grads, you will know that computer science and mathematics are basically linked together and just go hand in hand. And for machine learning and AI, that correlation just increases. Mathematics is really super important for making your own projects if you want to understand the concepts intuitively. If you want to develop your own model from scratch, I think you will have to learn the machine learning mathematics. So if you want to do some research in the field, if you want to create your own model from scratch, if you want to debug some problems, I think learning mathematics and machine learning is going to be the best thing for you. So I will recommend these three specializations for mathematics which I am currently doing myself right now. And the first one is Mathematics for Data Science which is by the Higher School of Economics of National Research University in Russia. I think this is a four core specialization that starts with linear algebra, then goes about calculus and within the calculus, derivatives and optimization for machine learning. So I would recommend you start with this first, then you can go on to the famous Mathematics for Machine Learning course by Imperial College London, which is also available on Coursera. I will be sharing these slides with you so that all those hyperlinks that are embedded in this text can be used by you guys so that it will automatically go to the specialization link that you want. And the final specialization that I would recommend is the Intro to Discrete Mathematics for Computer science, which has been made in collaboration with UC San Diego and the Higher School of Economics in Russia. So I am currently doing these myself and I would highly recommend, if anyone wants to learn about mathematics, for data science and machine learning, to at least do one of these. So about my academics. So this speaker event was basically focused towards beginners or aspiring students who wants to make a career in the ML field. So if you're currently in an undergraduate degree, I would say that I would mention some points and give you some tips on how you can work better during your undergraduate degree and how you could publish some projects, you can be with the community. So and how you can stay with the up to date in the with the latest news in the field. So I would recommend that you start your journey with a small project. After gaining the necessary skills, you can put them into practice by applying them to solve a problem. There are multiple repositories where you can find all those data sets, Kaggle being one of them. There's various public repositories which you can find. The University of California, Irvine has a machine learning repository with a lot of data sets that you can get. And it's really good that once you. I would recommend once you complete the machine learning course as well as the deep learning course, or if you're currently enrolled in the Natural language processing specialization, once you complete that, I would say that if you want to put them into practice, if you will put them into practice, it will be a lot better and you would gain a lot of intuition as well. And there you might face some challenges or some problems that you did not face while doing the specialization. So while doing your own project or applying them for certain data sets, I think it will help you to overcome those challenges as well. One of the most important points that I would like to mention here is that if you're in your undergrad during your bachelor's or planning to do your bachelor's, working under your college professors is the most important thing that you can do. So right now for most of the beginners, 10, they just do the machine learning projects while writing certain lines of code and just running them. But working under your college professors, you will start to learn how to document your work, how to specify what you have done, how to write the algorithms in these specific manner, and this documentation will help you to start writing your own research papers. The second point I would like to mention is that literature review most of the college professors will tell you to and tell you and refer that you should read more papers related to the topic to get the insights. And this will basically open you up to the field of machine learning or AI, where you will start learning about the current research that has been going on the past research. And you can get insights as well as compare your ideas with the ones that are that already exist. And this will give you a practice to read the research papers. And I think this literature review is also one of the important things that working under your college professors gives you. And the experience of the professors, how they have went through the process, how they can help you in your own documentation and literature review is of immense importance. Their insights and their experience will help you a lot. Because as a beginner you might not know what topic to get into or how to start working for a research paper or how to start your own project. I think consulting with the professors in your own college or outside college can help you a lot. And finally more ideas. So since the professor has the experience, the professor has done multiple projects, he or she can give you a lot of ideas and topics that you can work on. So if you do not know whether in NLP you want to go with named entity recognition, if you want to go with some transformer models, if you want to propose some research in the current neural networks, I think the professors can give you a great idea on what to get started with. So about taking the next big step. For me and most students, getting into a grad school for AI and ML is the next big step. It's a huge decision and you may face many challenges. So I'll be mentioning some of the points and some challenges that I faced while applying for grad school and I will just briefly explain them. So timeline of my journey. So I joined my Bachelor's in NIT Raipur in 2016. In 2017 I got introduced to ML like I said about how my seniors told me about this magical model that can learn on itself. And in 2018, since I completed my Coursera course, I completed various self made projects. In 2019 I worked under my college professors and did two major projects under them. And in 2020 I applied to grad schools and got accepted for my master's journey. So the challenges that I faced during my journey were these four specific points. So one of the starting points is that finding a community of learners or peers with whom you can discuss. So for this I would recommend that Slack Workspace right Now in DeepLearning AI NLP channel has a lot of good people that can help you out. It's a whole community right there. I think There are over 10,000 people in this workspace. So you can communicate with them. There's the introductions channel, there's the random channel. And within that you can introduce yourself, you can propose your topic or you could propose that you want to work in this research field. And I think most of the people would be there willing to help. And it's a really great community that we have already established. And for others I would say that who are in college or who are currently working to. Finding a community online is a great resource. There's a lot of places where you can register yourself to a certain community and I will be linking that on the Slack channel so that you can, you guys can see it. The second challenge that I faced was finding ideas for projects. So since I was in my third years when I just got the information and completed my machine learning and deep learning specialization, I was still skeptical about which field I should go in this computer vision where you could do image classification, image recognition and various tasks. There's natural language processing where you could use the text to send for sentiment analysis. There's language translations. There's a lot of various topics within nlp. There's reinforcement learning about autonomous driving. There's even games that you can make using reinforcement learning. The AI which is used in the video games could be trained using reinforcement learning. And there were various multiple topics in machine learning that is using deny based classifiers, decision trees, trying to make some changes into them. So for that I was, there were a lot of ideas, but choosing one concretely was a big challenge for me. And I think that I started reading some research papers about the current, in the current field about where the NLP is going, where computer vision is going and how reinforcement learning is getting well. So through those research papers, consulting with my professors, I started my major projects with under them in the field of computer vision. Since my professor, my professors themselves had some experience in computer vision. So it was easier for me. And once I got into the computer vision field, it was easier for me since they had the experience so that I could solve my doubts pretty well with them. And that's how I got the ideas for my projects. So in my college I did two major projects. One of them was license plate recognition which was basically using some CCTV camera and then capturing the image of a car and then recognizing the license plate which could be used for the finding system or to catch anyone if it's feeding or if there's an accident and so on. And the second one was about prediction and classification of cardiac arrhythmia so it was using the ECG report, we could tell if a person has a certain kind of cardiac arrhythmia. So those were the two major projects that I had. And the third main challenge was the decision of choosing Masters over job job experience. So for most of the undergrads in India as well as in other countries, this is a big question that do you want to start a job after you graduate? I mean after you complete your bachelor's or do you want to go for your masters? So there's no right answer here. It actually depends upon you. So if you really want to get into doing your masters and completing this process of learning as soon as you want, then I would recommend that if you have a decent enough profile right now, if you have multiple projects already under your belt, I would say that you can choose your Masters. But if you are someone who is right now in the last year of your college and has not started in the field of AI or machine learning, I would personally recommend that you can get a job experience of two years before applying to some grad colleges because job experience is also a plus point and it will help you, it will help you in deciding which college you want. So the fourth point is choosing foreign universities over Indian colleges. So I completed my bachelor's in NIT Raipur, as I said. And one of the biggest points of choosing foreign universities over my Indian colleges is that in foreign universities you have a lot of elective subjects. So basically, even if you plan on doing your specializations in deep learning, you can always select the subjects that you want to learn. So suppose if a person thinks that his data structures or algorithms is weak, you can always choose that subject to learn in whatever semester he is in versus in Indian colleges. For example, in IITs and NITs at least the curriculum is rigid and fixed. There are very few electives. At least it was the case in my college that there was a fixed curriculum and you had to follow it. You could not skip on it, you could not choose any other subjects that you could want. So that was the main decision of choosing foreign universities and the us. So about tips for making taking the next big step. So this might be a verbose slide, but I would continue point by point. So I would highly recommend to stay in contact with your current professors. If you are currently working, please stay in contact with the professors under which you have completed your bachelor's. If you are currently in college, I would also recommend that you keep in touch with the professors, try to be engaging with them. Because for grad schools, you require a thing called as the letter of recommendation. And you basically require three recommendations from your professors. And this letter of recommendation could well be the deciding factor for getting an admit or getting a rejection. So the point I would like to make is that stay in contact with the current professors because their letter of recommendation is important. And one more point is that keep your profile well balanced. It's like all work and no play is not a decent profile. So if you have just high curricular activity, high academic marks, even if you score 4.0 GPA or even if you have 100 results passing all the exams with the first rank, if you do not have some extracurricular activities with you, it might be something that the recruiters will look at, the college selectors will look at. So I would recommend that you keep your profile well balanced. You could do your own projects, you could collaborate with your friends to make some projects on their own. You could go for some extracurricular activities. So there might be some cultural clubs or technical clubs that you can join. And this will help you to keep your profile well balanced as it also helps in the process of making a good profile. So that the selectors who are in the colleges that are that will be looking at your profile will see that you have good academics as well as some good extracurricular activities. So the most important point I would say is that keep working on self made or your professor projects and try to publish some research papers. So doing your own projects or the projects under your professor will really help you to get the information as well as it will help you guys to make your profile even better. So having a research paper published will be the single most important thing that a recruiter and the college would look at. So keep working on the self made projects. If you are currently working and you do not have any professor that you can work under, I would recommend that you start with your own self made projects. I think that the deep learning specialization as well as the natural language specialization, natural language processing specialization has a lot of assignments that you worked on. You could tweak them to change it. Like I remember Sven telling me this yesterday, that in the deep learning specialization, he was doing the assignment where you had to generate the dinosaur names and he took that assignment and basically changed them so that instead of generating the dinosaur names, he started generating some Swedish names. And you could take these assignments, try to tweak them and make them into your own projects. So it will be really helpful and I would say that take the next step only if you are ready. So this is not about getting there first, it's about reaching there with the enthusiasm to continue. So if you feel like you are not yet ready for Masters, I would recommend that you do not just rush into it. If you think that there's still you want some time to get your profile better, if you think that you want some job experience or if you want to be financially stable before you go for your Masters, then I would absolutely recommend that you take the time. It's not getting there first, but it's about reaching there with the enthusiasm to continue. So yeah, I would say that if you can stay for two to three years, it's completely fine. There's no compulsion that you have to just go into your Masters right after your Bachelor's. So about staying updated with the latest news in the field. So for the information, the latest information in the field of artificial intelligence and machine learning, if I would recommend these three topics or main thing is the first one is the batch. So the batch is Basically Deep Learning AI's very own weekly newsletter that features all the latest happenings. It includes the latest news in the field of AI. It includes certain research papers that have been published and you can subscribe to this through this link which I will be sending you guys and it's really good to stay updated with the latest news in the field. Also, I personally use this YouTube channel called as Two Minute Papers, which is a great YouTube channel that shows all the latest research papers. It's not completely related to just the field of AI or machine learning, but most of the research papers that he mentions are related to it and he explains those papers really well. So if you are a beginner who cannot grasp the idea of reading a 72 page research paper, I would highly recommend that you use this YouTube link and a YouTube channel called as Two Minute Papers which explains it so that even a layman could get it. And the third one is that using medium blocks so you can follow machine learning and data science to get the latest blogs on medium. Medium features some really good blogs by people that who are in the current field as well as people who are aspiring to be who are aspiring to be in this field. So I will also have some link to the medium blocks where you could check and follow some of those information. So this is a great medium block to stay up to date. It's by the startup which specifies the top 20 websites for machine learning and data science in 2020. So this was created by Benedict Neo and he basically has mentioned the 20 different websites that you can Follow that you can go to for getting the information about machine learning and data science. I have the link embedded right here. I will be sharing this slide with you guys and you can look through it. So that's the end of my presentation and I will be starting to take the questions from you guys. So if you haven't yet submitted your questions, I would start recommend I would recommend that you start putting in your questions right now and I will try to answer them all. And if I don't get the time during this event, I will still continue to answer those questions once the event ends. So thanks for the presentation and I will start taking your questions right now. So the first question is from Sayan who says that can neural network or deep learning be used for regression analysis and predictions? So far I found it's best for classification only. So I would like to say, Saiyan, that you can absolutely use this neural networks or the deep learning models for regression analysis and predictions. So it's not only for classification, you can always use it for regression analysis and various predictions. So for classification we usually use a last layer that is the softmax or the sigmoid layer. But if you do not have that layer, you can always use it for predictions as well as regression analysis. So yeah, it's not only constrained to just classification. So the second question also comes from Sayan that is, what's the most popular deep learning language in recent times? TensorFlow, Keras, PyTorch or Tracks. What do you recommend? So for this I would say that the most popular deep learning language, I mean, I think even in the framework, I think it's TensorFlow with Keras. So for a beginner I would recommend that you start with those TensorFlow and Keras. So it's one of the easiest tools and the frameworks that can get you started into deep learning. And if you are well acquainted with the TensorFlow Keras and you have the knowledge about how to build your own models, once you are after that level of beginner that if you're an amateur, I would say that you can start yourself with Pytorch because Pytorch gives you the level of flexibility that the Keras framework cannot or the TensorFlow 2.0 cannot. So if you're an amateur, you have been already coding some of the models, then you could go on and start with Pytorch. And Tracks is basically a framework that is used for faster calculations. It's the code is nearly pretty much the same as what you would use in TensorFlow and Keras. So I would recommend that you start with TensorFlow and Keras, then go on to the Pytorch if you want, if you like it, and then you could experiment with tracks. So that's my recommendation. Coming on to the next question by Heidi, it says that within the name entity recognition, what is the difference between ontology and deep learning based named entity recognition? Which method do you recommend? So this is a good question. For named entity recognition, I would say that using deep learning based NERs are actually helpful in the cases where we do not need to update the corpus every time. For most of me personally in India there are so many languages and there aren't many ontology based purposes that you could use for ners. So using the deep learning based ners is really helpful as you do not have to manually enter all those entities and you could always just use the deep learning as it not only associates those words with a particular entity, but even if it encounters a new word which is not in the corpus, it can use that deep learning power that it can correctly recognize the proper entity. So I have one really good medium blog about this and I will be sharing this on the slack with you so that you could refer it. It's a really good blog. So Sven asks in what domain do you think that NLP is underutilized? For that matter, which unsolved NLP problems and the areas of active NLP research do you find the most intriguing? So about the domains they think the NLP is underutilized is I think the language to language translation. Right now Google has support for a lot of languages. So the most famous languages including English, French, Japanese, Spanish are all converted so that you could use speech to speech translation. So if one could speak in English and the output is already some voice that is in Spanish, this is a really great thing which is happening right now under natural language processing. But it is underutilized as I would say in that there are not many languages that have been yet added. And I think that Google is trying to add a lot of languages. So I think in the given enough time it will be well enough. And the areas did you find most intriguing? Yes, I would say the same thing that speech to speech translation in the real time is one of the things that I find intriguing. So it can really help meet people. So if and if you are going to some a random country where you do not speak the language of the people, you could always use certain IoT device or your mobile and you could speak in your own language into it and it automatically gets translated into the other language and vice versa. So you could have a conversation without knowing the language. And I think that's what the Turing problem was. So it's really great that we are going there. So part Agarwal asks a generic one, but most of the time undergrads or people breaking into AI are confused with which domain to pick up. So computer vision, nlp, reinforcement learning, core data analysis, which path to choose for further studies and would like to know how you maneuvered yourself from the same situation when you decided that you wanted to get into AI. So yeah, like I mentioned in my slides that it was one of the challenges that I did face. It was mainly around whether to go for natural language processing or whether to go for computer vision. But as I said, consulting with your professors and getting their input is things that will really help you. So what I did was if anyone is in there currently in their bachelor's, I would recommend that you speak with your professors, get their inputs. And in my case it was that my professors with were well versed with the computer vision technology. So I basically went into computer vision. But I also did some projects of NLP and reinforcement learning after studying the deep learning specialization. So you could basically try and make some projects of your own, start reading some research papers about these topics and see what you find intriguing or if you want to go further into it. So that would help. So Mo asks, can you share us some tips about necessary qualifications for NLP engineer to apply for jobs? Will a learner fulfill those skills after taking this NLP specialization? So one thing I would say for an NLP engineer is that you need to have your foundational concepts pretty clear. So for someone who just can make a machine learning model or a deep learning model using just TensorFlow with Keras and having no background information will not be qualified for an NLP engineer job. So taking this NLP specialization really gives you a lot of insights. And if after taking this NLP specialization, if you try to implement one or two projects of your own, try to deploy them, I think that it will be necessary enough skills and qualifications to apply as an NLP engineer. So Mo's last question is, in your opinion, would you recommend reading papers in NLP or implementing practical end to end NLP projects to broaden your abilities and knowledge in nlp. So I would recommend that if someone who is taking this natural language processing specialization, he or she could start with implementing practical end to end NLP projects right now to broaden their abilities. And once they could start writing the code themselves, I think it is good enough for getting taking the next big step or getting a job. But if you want to broaden your abilities and some knowledge once I would recommend that, I would recommend that you start with the practical end to end deep learning or NLP models. And then after that, once you are well acquainted with it, then I would recommend that you start reading papers in nlp because for a beginner, reading those papers can be a bit cumbersome and might frighten them. So I would recommend that reading the papers would be the second thing that you could do. So I think that Sven already just shared that Medium website, so thanks for that. And. I think we have no more questions right now. So I'll just wait for a while if we can see some questions. Okay. So Luis has one question about how was your first experience by doing research? So for me, the first research that I did was in the last year of my bachelor's under my professor and it was about, like I said, it was about the license plate recognition. So even the all the experience and the skills that I have gained through the deep learning specialization helped me. It was what we did in the research was using a process that was not end to end image recognition, but in a modular manner so that if anyone wanted to change sub models, suppose we use YOLO V3 and in the future a YOLO V5 is released. We could easily swap that into place and get better predictions and recognitions. So that was our research project. I did it with two of my colleagues and under my professors. So there were total three of us doing this project together under our professor. And we each of us took the responsibilities of doing that or doing our proper research. We started with the literature review and for the first time I must have read a lot of papers during that time and it was really insightful to read those research papers. And once we had formulated a plan, created some flowcharts about what we had to do, and given the timeline, we started onto the coding part. I think that the whole project, that whole one project took us about six months, that is one semester and we had submitted an IEEE journal paper. So it was really good in that sense and it was a really good experience. So I think I took a liking to doing research as it's basically just you trying to do something new that you want. And for me it was a really great experience. I just remembered that somebody had replied to me in the Slack channel about and asking me about some questions. So Saurav Joshi asked me that he needs guidance on research paper publications. In particular how and what to target, which journals to go to or if international conferences need assist as I'm planning to go for masters as well. So it really depends on what topic you're working on. If it's computer vision or natural language processing, there are a lot of conferences or thesis publications in particular that is suited for those needs. But overall what topic you're working on. If it's computer vision or natural language processing, there are a lot of conferences or thesis publications in particular that is suited for those needs. But overall, if you are aiming for a really good research paper or research paper publications, I would recommend that there's IEEE and There's also elsewhere that is the ScienceDirect.com and those two are the publications where if you could get your paper published, it's a really good plus point. So yeah, I don't think there's any more questions, So you guys can always just post your questions anytime you want. I will be answering them after the event ends. So I would like to thank you all for joining today. I hope you enjoyed the event and as I said, you can always leave your questions on slack and I will answer them once the event ends. The recording of the today's event will be available on YouTube under the same link. If you want to rewatch it later, you could share it with your friends or with your family and I would like to wrap this event up and thank you once again to DeepLearning AI for giving me this opportunity to share my interests and thank you for it.










