Aria Chang How to break into machine learning technologies as a young professional
Unlocking Your Potential: A Journey Into Machine Learning
Welcome to a session designed to demystify the world of Machine Learning. Be it beginners just dipping their toes into coding or experienced professionals proficient in programming, this article helps elucidate the process of diving into Machine Learning and improving your portfolio.
My Journey In Machine Learning
My journey in Machine Learning began during my Bachelor's at UC Davis where I received one of the Top 50 MLH Most Inspirational Hackers award and an IEEE conference paper award. Even with these successes, it's essential to acknowledge that my journey wasn't always smooth.
Three years before these accolades, I was struggling to understand basic computer science concepts, felt lost and disheartened. However, an internship in web development at a nonprofit human rights organization turned things around, bestowing me with the confidence that I needed and a defining moment in my tech career.
While learning can be arduous initially, remember, there is always light at the end of the tunnel – never give up!
Developing Machine Learning Expertise
The first step to getting started in machine learning is to identify your passion. Mine lay in the intrinsic beauty of writing math proofs and implementing a neural network using Python. Remember to stick to your enthusiasm – whatever it might be!
Creating Your Machine Learning Application
- Build a Support System: This could be a mentor, professor, or an industry professional who can provide you with insights and feedback.
- Decide the Type of Application: It's crucial to have a team that covers the entire app development stack, backend server and database management, front-end development, and has knowledge of the machine learning libraries.
- Know Your Target Audience: Understanding who is going to use your model is crucial in evaluating its performance.
- Find Training Data: Remember, finding data to train your machine learning model isn't the hard part; it's finding data you can use for testing after you have trained your model.
- Develop and Deploy Your Model: Finally, decide on your platform for deployment.
Incorporate these steps into creating your application if you decide to venture into research.
An Example: Reinforcement Learning
During an AI class in my undergrad days, my team developed a reinforcement learning model for the real-time strategy game Starcraft. The successful deployment of this project, where the AI showed marginal improvement, sparked my interest in machine learning, leading me to a summer internship at a Smart Grid Institute.
The Crucial Takeaway
Always apply what you have learned to new projects and take on new challenges. Remember, every meaningful project you complete adds up, vastly improving your portfolio and increasing your chances of securing a valuable position in AI or machine learning.
Building a Machine Learning Portfolio
Want to gain visibility? Attend hackathons or participate in competitions. Engaging in such events instills confidence and enhances your profile. More importantly, use such platforms to create projects on something you are passionate about, whether it's beneficial for social good or healthcare needs.
Stay committed, ask questions, seek and give help freely, and never be afraid to take on new challenges.
Conclusion
Remember, "It doesn't matter how long it takes you to get to where you want as long as you get there in the end". Engage, experience, learn, and you too can carve your path in Machine Learning. Connect with me on LinkedIn and feel free to ask any queries or discuss any doubts. Happy learning!
Video Transcription
Right. Welcome everyone uh to the session. So I have really enjoyed the uh every presenter's talks in the past day, um felt very inspired. And uh some of you reached out to me on linkedin with questions you have.Um So I will try to address all of them in the talk today and do feel free to go to the link at the top to um put your questions there. Um or something you want me to talk about. If I'm not covering it, it'll be easier for me to see the questions since I'm viewing the notes on a separate screen. All right. So um I assume everybody who's looking at this session right now, um You all have different backgrounds but you are here because you want to learn more about machine learning and how you could also get into the field. Um But it doesn't matter if you're a completely new beginner or even if you are just new to coding in general, um or if you're proficient in programming and also familiar with some of the machine learning concepts A I concepts or if you have done some machine learning research and projects, but you want to create a more attractive portfolio, then you're at the right place.
So I am here today to show you how I went from zero to where I am today so that you could also achieve your goal. So let's get it started within my last year. During my bachelor's at UC Davis, I was awarded uh for one of the top 50 Mlh most inspirational hackers award and the paper based on a model I built using reinforcement learning uh for a smart grid model uh was awarded one of the uh best I triple E conference paper awards. And this model is currently used in production at a real power grid. And also I won uh five hackathon awards in a row for the projects. Uh my teammates and I built using applied machine learning technologies since the first hackathon I've ever attended. But can you imagine that just three years before this, I struggled to even understand the most basic computer science concepts such as a four loop and what is even a function in input and output? I had a very hard time figuring everything out and I was very disheartened. I tried to learn the data structures and algorithms in the lower division computer science classes. But I just felt like I was so far behind my peers, I felt I was lost uh like I was left to survive on my own. Um But toward the end of the year, I was able to find an internship uh doing web development at a nonprofit human rights organization uh working on content management management system, even though this internship wasn't related to anything I learned in school the previous year, uh I was still able to make an impact um such as in tasks such as uh content management system version migration using file transfer protocol software.
And I, and this was a defining moment in my tech career because uh my peers and my manager, they gave me very good feedback. Um They gave me the confidence I needed to continue pursuing the career and not give up. So it's important to understand your learning curve if you're also like me um where you have to spend weeks, months, even years to even uh get started in a field that you don't have any previous experience with do not give up because there will be light at the end of the tunnel.
So let's dig in to see how I got started um in my machine learning journey when I took my first machine learning class after the summer internship. Um I learned about the major areas that fall under the big umbrella uh artificial intelligence. Um So natural language pro uh programming uh processing is uh used in conversational A I or uh sentiment analysis, um algorithms that are able to determine um the sentiment of the text, uh classify it into anger, happiness, uh sadness, different sentiments. And there are great cloud computing platforms uh which can help you integrate this technology into the app uh predictive analysis. This is for things like uh there are examples like uh stock and weather prediction, not saying how well uh current research is doing in predicting stock prices.
But uh it's an area where you could use a historical time series data uh to attempt to find some pattern within it. And then there is um computer vision which is heavily used in autonomous vehicles. So, you know, the self driving cars, their ability to determine if there are pedestrians or moving cars uh in the surroundings um or tell if an image is uh a cat or a dog. Um And then planning and optimization. Uh This is um there are the examples would be uh real time strategy games, uh A I games like Starcraft, which I will talk about later in the later slides and also such as alphago um who, which was able to defeat the best go player in the world. And when I was learning all of this, I just so head over heels in love with the probability proofs in the machine learning theory class and even implementing a neural network using Python from the ground up. So the takeaway from this is uh find the one thing that speaks to you. It might not be in the intrinsic beauty of writing math proofs like how I found it, but whatever it is just find your passion and don't let it go. So now we're going to talk about some action steps that you actually care about and how you could create your very own machine learning application.
So the first step, you need to have a team, you, it might be possible that um you want to create an application from the ground up all on your own and you don't want anyone else to be a collaborator in your github Repo. That's completely fine, but it's always good to have a support system. Uh In the case of creating machine learning application, this would be a mentor, a professor or some industry professional, someone who is a little more knowledgeable than you who can provide you with uh some insights.
Or um if they know more about the work that you're currently working on the existing uh state of the art uh applications or research that you can uh learn something from before you develop your application. And then the second step would be, it would be to decide the type of application if you decide to proceed with developing the application um that you would need a team of four, at least in my opinion. Um You need someone who knows the entire app development stack um such as the mean stack so that you could actually develop an application um which can be used by users. And then you need someone who is familiar with the backend server and database side of things. And then someone uh another person who uh is a front end developer who knows the design aspects of things. And with front-end Lro in languages such as uh javascript, CS S HTML. And then, uh most importantly, it is an ML application. You'll need someone who knows the machine learning libraries and the tools um to use or someone who is very good at learning them, who is passionate about them, which uh is very likely that that person will be you. Uh So you need uh Python, usually it would be the language to go.
Um And the passion to learn the technologies is very important in this because there are always new tools coming out and you have the ability to learn if you have enough passion and you want to put in uh invest uh en enough time into making it happen. Um And then you have to determine who are your intended targets who will use this model. After you develop the application, this is very crucial in evaluating the model performance. Um So then after that, you will develop uh you uh sorry, I'm on the third step. Then you have to find the training data that's important. Um Because machine learning model, you can't have one without data. Um There are a lot of open source uh databases uh on the uh on the web where you can find in pretty much any machinery tasks you can think of. Um But do keep in mind that finding the training data isn't the hard part. Um What's harder would be finding data you could use to test how it works after you have trained your model. Um I'll give you an example. Um during one of the hackathons, I attended my team and I my teammates and I, we created an application to predict uh seizure um for patients who experience epileptic seizures uh on a regular basis. So we were able to create the application.
Um The accuracy was very well uh in um to predict the seizure on the training data that we used, which was open sourced. But we weren't able to find any patients who uh that we could actually test our model on because uh for medical research, uh this concerns the uh privacy law, privacy laws. In the case of medical research, the HP A uh compliance will have to be applied. So just keep this in the back of your mind when you conduct your uh in the first research period, uh what kind of data you will need and where you could possibly get your data after you create your model. So then the last step will just be develop and then deploy your train model, decide on your uh platform. Uh If it's uh the web application, the mobile application where you want to host your services, you are going to use the cloud platform. Um This is for an application. But if you decide to go into the research route, you'll have to uh do a lot of literature review of uh peer review, peer reviewed um research papers so that, you know, uh what the existing state of the artwork is. Um So yes, let's move on to an actual example. I also took a, an A I class during my undergrad career and for, during this class, my teammates and I, we created a reinforcement learning model uh for the real time strategy game called Starcraft.
Maybe some of you have played it before. I have very addicted to it. So for um this project, uh we were able to make some marginal improvement uh for the performance of the A I based on the uh best performance uh A I model we could find at the time. Um But later on alpha star, as many of you may know, um alpha star, which was created by deep mind was able to defeat the best human Starcraft two player in the world. So you see how powerful A I reinforcement learning can be. And looking at all of this, it gave me so much thrill to continue pursuing uh in the field of A I using machinery technologies. So this price how I was able to get my summer internship uh in machine learning research at a smart grid institute. Um I was able to uh compare the two systems with similarities, there are between the two systems. Um So let's talk about the basics of creating a reinforcement, learning application. Um You have to define three things very clearly. Um In the case of the um uh game A I for Starcraft, this stage will be whatever you can see on the screen when you play the game. Um the actions will be building training, new units, new.
Um No, everything you can uh like for the structures and the upgrades, everything action or can go scout your enemies camp and then attack them. All of these fall under the action variable. And the third thing will be the reward, the reward uh for the reward function in the Starcraft project that we defined it as for every iteration of the game. If the A I we have is able to uh win the game and the A I would be rewarded by uh accumulating the points. Otherwise it will be the points will be deducted from the system. Um And in the case of the smart grid, uh it was very similar, the part the power grid would be uh like everything um that's in that defines a power grid sys system status will be the state and then the actions will be the actions that a human operator is able to take to the contingencies in the power system.
Uh such as if there's an explosion nearby blows up the um blows up the buses and the within the power system and you would be able to take some actions to change the settings in order to um navigate around the contingency. And the reward function will be defined as if the action you perform uh during this iteration is able to fix the contingencies in the power system. And this one achieved a very good results. So the lesson the takeaway from uh this story is that you have to apply what you learned to the new projects. Um and keep taking on new challenges, never be afraid and never be afraid. Uh You cannot do it and never be afraid that the projects are not important enough. If you just slap it onto your resume for all the meaningful projects you do, then it will add up. And chances are the recruiter when they look at your resume, they all they all see that you have this experience and likely you are able to take on the a similar challenge at work even though you might lack industry experience previously. And also it doesn't matter what industry you are in, you could always employ machine learning technologies into your domain. Um I've talked to several people who approached me on linkedin. I know that uh some of you are in the legal uh legal domain and um the healthcare domain.
Um It is possible to use the extremely powerful machine learning uh technologies to make your system better. You just have to have the willingness to uh learn. It might be very hard in the beginning, but the longer you work in this field, the easier it becomes. So how should what your portfolio if you wish to uh be known for your machine learning expertise? Um My suggestion is to attend the hackathons. If you are a uh student, there are collegiate hackathons. Um Out there very famous ones, uh you can look them up. It's a very good way to give you confidence. I have a little anecdote to share with you. So after I took the machine learning and A I classes at uh at college, I had this strong desire to just make cool applications uh at hackathons using what I had learned and also to win prizes. Um I remember how um unbelievable. I thought the first time uh at my first hackathon when my team's name was announced at the closing ceremony, I couldn't believe when uh my team's name was called the first time or the second time. In that same closing ceremony. It gave me so much adrenaline rush and the confidence I need it even though it's bad to seek approval from the outside world. But when your values are being affirmed from um an external organization, it just makes it official somehow.
It's like when you get an offer for an internship for a full time position makes you feel good. Um So from hackathons, I also learned uh to stay up when I have to. Um usually it would be staying up for two nights, three days straight and then uh probably only sleep like 30 minutes um each night, but it just felt so incredible when you actually create your application in the end. Uh Something that other users can use and benefit from it, especially if it's in um an area that you're passionate about such as benefiting. Uh So for the social good or for um people with health needs anything like that. Um Don't forget to ask questions. I don't see any questions. Maybe you're posting in the chat, I'll check in a little bit. So yes or competitions if you are interested. Uh It's a great way to increase your pro profile visibility as well. Um There are c competitions they're very famous and hard to beat, but it can be your short term goal if you're, if you're um motivated. So keep applying what you learn to new projects always. And I will end my presentation with this something which I hold true. Hold dear to my heart. It doesn't matter how long it takes you to get to where you want as long as you get there in the end, even if it might take you 10 years. OK. So let me see if anyone had any questions for me. OK?
I see uh quite a few questions. Um I see some of you are completely new beginners. If this talk isn't enough to answer all your questions do feel free to. Um oh, this is a uh a QR code for the link, my linkedin profile, so scan it and connect with me there. Um So, one question I'm seeing is OK. Uh I'm currently working as an associate data analyst. Could you help me how to allocate myself and the resources? How can I start? Firstly? Congratulations. Um You already stepped into the door of data science. Um And I hope you are enjoying your work. So, yeah, continue uh excelling at your work. Um And if you wish to um advancing your career, um it's important to um work on more machine learning projects. If your work doesn't involve too much um model training. And if you think you need um more knowledge, more knowledge in the domain, then you could take some training courses on the side. Uh There are a lot of them that are really good. I am not going to promote them in the video. Um But yeah, I'll talk to you after and some other question, how do you find teammates for the hackathon? Very good question. So, um if it's a collegiate hackathon, um I'm going to take it that probably Sharon, you don't have much with it.
Uh So for all the collegiate hackathons, um the organization would create um channels uh using specific Softwares where you could uh look for teammates, there would be channels for like team uh teammate finding. So that's a good way where you can like put your linkedin profile and tell them. Uh what kind of experience you have and what kind of projects you're interested in creating and um what skills you need you're looking for in your team and potential teammates. Um If it's a industry backed hackathon, then I'm sure they all have, I haven't attended too many of those, but I have seen uh in some of the talks during the conference that uh some uh organizations host women only hackathons, which sound really incredible. Um To me, so you should definitely look into those. Um And always reach out to the organi uh organiz organizers of the hackathons if you have any questions. And then can I talk a little bit about the tech step that I've used for machinery projects? So I have mostly worked on research projects uh for these ones uh the uh except for the Hexon projects. Then the research projects didn't uh that don't necessarily involve um deploying the models uh using the, using some of the cloud uh technologies, not going to name names.
Um So for the research projects, it's um usually just finding the data and then you do a lot of feature engineering, train your model uh for the supervised supervised machine learning tasks. Uh and then evaluate and uh evaluate validate and test during your training process and then test against uh real data uh and then continue improving your uh model and don't forget to tune your hyper parameters. Um Is there any other question any other resources um for the rising sophomore. Yes. Um Major league hacking is to go about it if you're a college student or even a high school student, um, they have some summer half aon going on every weekend uh these days. So do them virtually great way to make experience and other questions? Ok. What about getting over the lack of experience? I have industry experience but not, not experience. That is great. If sharing, if your industry experience is in a software related field, then you already have the very important uh skills because uh a lot of the machine learning uh in the data science positions uh like data engineer, machine engineer, you will have to code uh if you're a software program, uh it just makes everything so much easier.
So for machinery expertise, uh you could take courses online and create projects on your own time. Uh find a platform to collaborate with your, with teammates. Um There are organizations um I will share the resources if you send me a private message, trying not to uh cover too much. Mm Reset. Could you elaborate a little on getting started in hackathons? It looks difficult. Um I would say if you're new to hackathons, just very important thing to keep in mind is do not be scared, do not be scared to ask for help, ask for the mentors that are in the hackathons. Um Tell them you're a beginner and ask for advice. And actively participate in all of the workshops that they have. Um if they will have uh workshops on how to create your first web application and what kind of tech stack uh you should use. Um Do not be afraid. Um Even if your first application you try to, you attempt to finish, doesn't work out, continue working on it even after the hackathon uh or during another one. And also um there would be uh teams who have more experienced engineers and they are looking for someone who could give them a different perspective, even from a nontraditional uh computer science field, it will be OK.
So uh do not be scared that you are, you lack experience or anything like that. How do I start an internship if you're just beginning? So Hannah asked this question, um It's important to yes, uh feel free to go attend your next session. I'm just going to try to finish the la uh answering the last few questions um as a beginner without previous experience, how do you gonna gonna gain an? So I said, um if you're in school, uh take the relative class, relevant classes um do side projects. Um even it doesn't give you a, even if it doesn't have any monetary gain, it's always good to gain experience, just like even software related experience will be great. I wish I had more time. Otherwise I would be able to talk more about how uh the the other uh non machine experience contributed a great deal. Um OK are around. I will definitely uh talk to you more 8 p.m. A Ellington. Um What different algorithms do you suggest that a beginner's profile must contain? Um That's a good question. Uh be for beginners profile. I would say if you just get started on a basic classification task. Um Yeah, you would be able to touch on the basic algorithms uh related to machine learning. Um So it's hard to answer it in one sentence but um feel free to chat with me after. Um Yes, how do you get in contact with me for more resources?
Um Scan the QR code uh on the slide if you can still see it. Um I will definitely answer, connect with all of you and answer all of your questions. Um I think that's pretty much it. Great. I'm really happy that you guys attended my session. I am really thrilled to be sharing my experience with all of you and I, I'm an advocate for women's success. Um So I would love to contribute whatever I could. If you just uh send me a message on linkedin, I will schedule a um video talk with you if that's something you need. Um Or however I could help with that, I will leave the presentation. I could figure out how um great. Thank you guys so much. I was very nervous. It was my first virtual presentation. Cool. I hope you guys enjoy the rest of the uh the I was gonna say hackathon the rest of the conference tomorrow. I think it's networking day. You can talk to a lot of, a lot of the recruiters, ask them what skills they need. Uh What kind of experience you should aim toward getting if you are interested in the position in the data science, machinery field. Great. Bye guys.