最後更新時間 02/22/2022
Let’s celebrate(?)graduation during the quarantine. First of all, I want to congratulate the entire class of 2020, including myself, even though everyone knows this could be the worst job market for new grads since the financial crisis.
Finding one’s dream job is more difficult
For now, job searching is hard work, but finding a job you love is even harder. Moreover, for human flourishing, it’s not just a question of finding a job — any job. It’s important to find the right job. I want to suggest that one way to approach our job search that finding our dream job is like the machine learning process of running gradient descent.
Why do I say that? Usually, it’s hard to snag our favorite job the first time around. Perhaps that’s because we don’t know what we actually want. Maybe it’s because we missed out on the job we want or we had thought that was a job we wanted, but after doing it, we found out it was not.
Don’t worry if you have the same situation. A Gallup survey has revealed that a mere 34% of employees in the U.S. are involved in, enthusiastic about, and committed to their work and workplace.
Utilize machine learning logic to search for jobs as an extended process
The key is to think about how you can learn from each situation in order to perform better in the future. In other words, just like AI (artificial intelligence) can be taught to perform better via machine learning, humans can use our natural intelligence to achieve our goals.
When we choose which machine learning models might be better, such as KNN, Logistic Regression, Linear SVM, and so on, a machine learning model itself typically has parameters (weights and biases) and a cost function to evaluate how effective a particular set of parameters are.
Then gradient descent is one of the most popular algorithms for training machine learning models. To put it simply, we need to find a better set of weights for the model that minimizes the cost function, and gradient descent provides a method to achieve this goal.
Imagine this: we want to hike down to the river at the bottom of a valley (your dream job) and our goal is to use the fastest way to get to the bottom of a valley. We look around and realize we have more than one path to choose from. However, we want to know which one is the fastest way. How can we take a step that takes us as close as possible to the cool splashing waters below? Up to this point, it is not clear how to take this step. That is where the gradient can help us.
Gradient descent is an iterative method. We first start with some set of values for our model parameters (weights and biases) and then improve them gradually. In the end, we find the best parameters (pathway) for this model (blazing a trail to the river below).
Did you notice I say it improves them gradually?
Proceed step by step
Let me explain all this in an easier way. Below is a 2D graph, but this may not always be the case especially in cases of higher dimensions. For those cases, we need to devise an algorithm to locate the minima.
Now, consider that we are walking along with the graph below, and currently at the ‘green’ dot. Our aim is to reach the minimum: the ‘red’ dot, but from our position, we are unable to view it. We could choose to go upward or downward and whether to take a bigger step or a little step to reach our destination.
Gradient descent is the way to help us to decide. Focus on the ‘green’ dot and the ‘blue’ dot. The slope at the blue dot is less steep than the slope at the green dot. That means it will take much smaller steps from the green dot than from the blue dot to reach the minimum. It’s only two dots on the graph, but actually there are many dots on the line, and one must pass them dot-by-dot to reach the red dot.
For my part, this illustration reminds me not that only finding the job I love should be a step-by-step process, but also that even few steps will help me reach my goals more quickly.
You are almost to your destination
Finding a job we love is not a straightforward, pre-programmed situation like passing an exam or a class. In those cases, there are obvious rules to follow, with ready-made feedback from which to learn. Instead, job searching is a process to find the best parameters step by step (every job you have across time). You have to generate your own feedback. It takes time and energy. However, if you do not give up trying and discovering, you will attain the best machine learning model (your dream job).
延伸閱讀:
Life: Just Like Development of SQL to NoSQL
Is it possible to predict a person’s future by linear regression?