Machine Learning

Machine Lessons I Learned This Month

will you be working in the coming months? Years? Maybe even decades?

Many people will be working at that time. And while many things about the future are uncertain, there are things that may still be in our works. Projects, for example – classically organized efforts to move forward. Here is what I learned about them this March.

Diligence ensures fluid continuity

At work, we all have projects that we dread. But we also have projects that we love, and wish we could spend more time on. Whether we like the project or not, projects are often long-term. And they don't exist for their own sake (although sometimes we get the uncomfortable impression that they actually exist). Instead, projects are planned efforts that bring us – or our company – to a chosen goal.

In the world of machine learning, such a goal can take many forms. It could be sending a model to a customer. It can mean writing a paper. It may also mean setting up an MLOps pipeline. In any case, it requires our attention over time. And especially, these projects need the support of others.

Yes, support. Not in the sense that others need to enthusiastically push the project forward (which is very welcome, though!). Rather, in the sense that others need to give you this or that to help you progress. Sometimes this can be something small, such as authorizing you to use a particular computer resource. In some cases, it can be large, such as agreeing to the purchase of much needed software.

It's not uncommon for projects to ride smoothly, with the wind always blowing in the right direction. On the contrary, you need to find this, do that, and then check something else – and each of these can be a roadblock.

What I've learned here is that standing up can prevent many roadblocks from happening in the first place. Therefore, cultivating hard work is a skill that goes beyond ML projects. I think it has a lot to do with agency: the ability to deliberately direct one's actions and find solutions on one's own.

In ML project work, efficiency can take many forms: asking for approval in advance, creating backup plans, fixing backlogs, or allocating extra time up front to create a buffer.

Blocking time to get projects done

Since I just said that action can prevent roadblocks, I now move on to the next lesson I learned: to make things happen, you need, again, determination – and block the time to do them.

This sounds obvious, as it does the most important things once you learn them. However, the fact that something is obvious does not mean that it can be done in an obvious way.

Let's look at a typical ML doctor's day. For our purposes, it doesn't matter if they are in research, engineering, or management. The only thing that changes between these roles are the projects one works on.

But here's the twist: it's rarely a project (singular). In general, the projectS.

Our ML work probably has more than one project. There is a main project (writing the MLOps pipeline, writing the paper, developing the compute cluster). And then – as any PhD student can testify – there are other (“side”) projects: presenting results, giving lectures, day-to-day management. All of these require attention and time. And here we return to the main project: time spent on other projects is not available for the main project.

So, how can one spend more time on the main project (without neglecting other projects)? It turns out the answer is simple: block time on your calendar.

Any free space on your calendar can invite others to invite you to a meeting. Instead, by simply blocking off parts of your calendar, you can devote enough time to the main project. Then, unblocked time is still available for other projects.

Actually, it boils down to prioritization in 90% of cases: prioritize the big project. For the remaining 10%, emergencies are allowed to break the law.

Planning, organizing, and maintaining a plan is a plan

Looking back over the month – and the past two lessons learned – I think all of this calls for a broader lesson: planning. Also: keeping the plan is the plan.

In our fast-paced world, there is always something new. Looking for an example? The notebook I am writing these lines with is from 2020. Since then, a new iteration of it has emerged.

Or: still remember GPT-3? However, we are now on GPT-5.4 (and ChatGPT became multi-modal).

Or, if other arguments are needed: news. Every day there is something new. All this means: when you plan something, it's easy to kick the plan and do something different.

That would be great – but getting good at something requires us to spend time and time on that thing. And that, in fact, means action, blocking time, and… planning. It can be real by writing a plan, or it can be unconscious in your head.

For the ML projects we've discussed here, nothing can be done without programming. Not paper. Not new hardware. Not a pipe.

If you plan well enough – but not too precisely – then you can make things happen. But only if you make the program always a program, it can't be interrupted by new stories.

Source link

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button