Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

Ordinary programmers must master these data skills for entry-level machine learning.

2025-04-06 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >

Share

Shulou(Shulou.com)06/03 Report--

In fact, machine learning has been solving all kinds of important problems. In the mid-1990s, for example, people began to use neural networks to scan credit card transactions for fraud; in the late 1990s, Google used the technology to search the Internet.

But at that time, machine learning had nothing to do with ordinary engineers. To develop a machine learning system, you need to read a PhD and find a group of like-minded and like-minded friends.

Now, machine learning is finally stronger and more people-friendly.

An ordinary software engineer can use machine learning to develop a very good system without having to go back to the furnace to recreate a graduate student.

Of course, the average programmer has to make up some lessons and learn some data skills in order to make good use of machine learning. InforWorld's article describes some techniques and strategies that can help developers use machine learning more effectively.

Let the data speak.

In good software engineering practice, you can often get the required design through reasoning, write the software part, and then test the solution directly and independently.

Sometimes, you can even prove that your software is correct mathematically. But this is often difficult to achieve in practical problems, especially when considering human participation, but if you have good norms, you can still implement the right solution.

But machine learning is different. In general, you don't need a strict specification. You have data that represents the past experience of the system, and then you need to build a system that will work in the future.

In order to test whether the system really works, you need to evaluate its performance in real situations. There will be a lot of resistance to switching to this "data over elaboration" development model, but this is a key step in building a machine learning system.

Learn to identify better models

It is easy to compare the size of two numbers. Assuming that they are all valid values (not non-numeric types), you just need to determine which value is larger, and it's over.

When comparing the accuracy of machine learning, the problem is not so simple.

The model you want to compare has a large number of outputs without a clear answer. A very basic ability to build a machine learning system is to determine which model is more appropriate for your problem situation by observing the decisions made before the two models.

To make this judgment, you need to consider the data as a whole rather than a single value. This usually also requires you to be able to visualize data well, such as using histograms, scatter charts, and many other related data representations.

Remain skeptical of your conclusion

It's just as important to be skeptical about your own conclusions as to which model is better.

Is your result just a statistical accident that is no longer valid when there are more data? Has the situation changed after your assessment, so are the previous decisions still valid?

Building a system with embedded machine learning means that you need to make sure that the system is still doing the tasks you assigned in the first place. This skepticism is a necessary quality to make vague comparisons in changing realities.

Build multiple models for filtering

There is an old saying in the software industry that the first version of the system you build is doomed to be thrown away. The meaning of this sentence is that until you actually build an effective system, you can fully understand the problem and build the system better. So you can first build a version to accumulate experience, and then apply the experience to the design to build an actual system.

For machine learning, the situation is the same or even worse. It is not enough to build a system to practice, you should be prepared to build dozens of versions. Some versions may use different ways of learning, or just different parameter settings; others may restate the problem or training data completely differently.

For example, you may find that in addition to the signals you want to predict, you can use other alternative signals to train the model. In this way, you may have ten times more raw data to train. Or you can try to restate the problem in another way to make it easier to solve.

The world is changing rapidly. For example, when you build a model to detect fraud, even if you have built a successful system, you still need to make changes in the future. Because liars will identify your loopholes and change their behavior. You will be forced to adopt new countermeasures.

So in order to succeed, you need to build a series of machine learning models to discard. Don't hope that there will be a permanent universal model.

Be not afraid of change

At first, the problem you want to solve with machine learning is usually wrong, or even very wrong. Therefore, we may encounter models that cannot be trained at all, or data that can not be collected for training, or the optimal results of the model training are of limited value.

Re-examining this problem may make a simple model of great value.

I once encountered a problem about recommending products, even with some high-end skills, it is difficult to get a little Weibo revenue.

But in fact, the high-value issue we should pay attention to is when good goods will be on the market. As long as you know this point in time, there will be many good products to choose from, and the problem of "what products to recommend" will be easily solved.

Redefine the problem to make the whole project easier to solve.

"start small."

It is valuable to apply your original system to some simple situation or a sub-problem. This will allow you to focus on gaining expertise in the problem area and gain the support of your peers in the modeling process.

"write from the big point."

Make sure you have enough training data. In fact, if possible, you need to collect 10 times as much data as you originally expected.

Expertise is still important.

In machine learning, it is one thing to figure out how a model makes decisions or predictions, and more importantly, to figure out where the real problem lies.

In this regard, if you already have a lot of expertise, you are more likely to ask the right questions so that you can apply machine learning to a viable product. Professional knowledge is crucial to correctly judge where careful inspection is needed.

Programming skills are still important.

There are many tools that allow you to build a machine learning model simply by dragging and dropping. In fact, most of the work of building a machine learning system has nothing to do with machine learning or models, but rather collecting data and building systems that can use models to output results.

Therefore, it is particularly important to have good programming skills.

Although there are some stylistic differences in the code that processes the data, it is not difficult for different people to understand each other. So the ability to develop is very useful in many machine learning problems.

There are many tools and emerging technologies that enable almost all software engineers to develop machine learning systems for interesting problems. Basic program development skills will be very useful in this building process, but you need to pay more attention to the data when using them.

The best way to master these new skills is to build something interesting from now on.

Ordinary programmers for entry-level machine learning must master these data skills-self-study video-CMD navigation network

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Internet Technology

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report