开源日报 每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,坚持阅读《开源日报》,保持每日学习的好习惯。
今日推荐开源项目:《课程大全 open-source-cs》
今日推荐英文原文:《AI: Why it Actually Makes a Difference》

今日推荐开源项目:《课程大全 open-source-cs》传送门:GitHub链接
推荐理由:来自斯坦福大学,麻省理工大学等著名大学的免费课程列表——当然了都是关于计算机科学方面的,包括了 CS 基础,编程,数学,理论和应用等等。如果你对它们其中的某些感兴趣的话,兴许可以在假期尝试一下它们。
今日推荐英文原文:《AI: Why it Actually Makes a Difference》作者:Madhav Malhotra
推荐理由:AI 与人类的不同在于难以进行一些对人类来说简单的决策,作者以开车为例子介绍了这一点

AI: Why it Actually Makes a Difference

Simple Human Decisions are Hard for Computers:

Think of all the decisions you make in a single day. From what you eat in the morning to how you get home from work at night. Many things you do right are like second nature by now, but they’re actually really hard to do. For instance, how do you figure out the right way to pour milk and cereal into a bowl in the morning without spilling any? Or, more significantly, how do you figure out the right time to apply the brakes without ending up in a crash? Surprisingly, some of these small, routine decisions are the ones keeping us alive. While each of these individual decisions is trivial for humans, it’s been hard to replicate them efficiently with computers — a necessary task to avoid catastrophic mistakes and make our lives easier.

Photo by Bacila Vlad on Unsplash.

That’s where Artificial Intelligence comes in. There’s many different aspects and types of Artificial Intelligence but they all have the same end goal: to allow computers to cleverly make decisions on behalf of humans, and maybe even better than humans. In the example of deciding when to stop a car, there has been great interest in creating computers which can think like humans for more convenience and safety in transportation. Let’s break down some of the factors which must be considered for that decision:
  1. Speed of car
  2. Stopping distance
  3. Hazards and traffic direction

Computers Must Consider many Factors like Humans:

These are just three of many factors and, as you may be thinking, they can be broken down into further considerations themselves. To show how Artificial Intelligence is used to address this problem, I’ll focus in on the last point and highlight one major usage of Artificial Intelligence: object detection.

Photo by Evan Dennis on Unsplash.

When you look out for other cars around you, your first priorities might be to gauge the speed and distance of those cars. This, however, skips the task of identifying what you see as a car; this simple step is so automatic for humans, we rarely pause to think about it. Most humans have years of experience identifying objects around them for 100% of their waking lives. Computers, without our human experiences, have difficulty doing this as well as humans: just the first step in making the deceptively complex, yet important decision of braking a car. Recently, Artificial Intelligence has been helping to address this, as well as or better than humans, through Neural Networks.

Neural Networks Let Computers Teach Themselves:

Neural Networks were so complicated for me at first, I changed their acronym, CNN, from Convolutional Neural Networks to Convoluted Neural Networks. After some persistence, however, I found an analogy that worked for me. Think about the way your past experiences shape your actions today. If you got something wrong in the past, you’re less likely to repeat it. For instance, if you burned your finger on a hot stove, you would change the way you approach cooking next time. Equally, if you discovered a favourite menu item at a new restaurant, you might order it again next time. This process of using the positive and negative inputs of life gradually increase your capability and understanding over time. Now, imagine what could happen if you were able to go through all of life thousands of times, learning and relearning from such feedback to find the best approach to virtually any problem.

Photo by Benjamin Elliott on Unsplash

This is the capability computers offer through Neural Networks. We train computer programs to try solutions to problems, such as identifying cars in images. Initially, they may just randomly guess whether an object is a car based on features like lines, colours, shadows, etc. Sometimes, programs get this right and other times they do not. Using feedback on whether they successfully identified a car, they can modify the way they approach the problem. Perhaps, they look for lighter shadows or straighter lines in the image next time, because that allowed them to more accurately guess for cars. Eventually, computers modify the way they look for the car’s features, or their search parameters, to become more accurate. This would be just like a human learning over time; a baby may be able to tell the difference between a car and a tree but a toddler can tell the difference between a car and a truck. This is where we see the inherent advantage in using Artificial Intelligence in this task; a human can only look at one image at a time at certain times during his/her life but a computer can simultaneously look through thousands of images at the same time, effectively living through thousands of human experiences at once.

There are Real Advantages from Artificial Intelligence:

Due to advantages such as this, Artificial Intelligence offers an immediate benefit in creating solutions that previously lacked feasibility.

By teaching computers to think more like humans, computers are teaching us they can think more than humans.

Photo by Franck V. on Unsplash

In fact, they also think more than other computers, as Artificial Intelligence allows computers to learn to better solve problems on their own without requiring additional programming. That is not to say, however, Artificial Intelligence exceeds human ability in all areas just yet. In recognising a car, particularly, there are many outliers neural networks have harder times identifying. For instance, what if a windshield’s sun glare partially masks a car’s outline? Or what if a car is seen at night with only its tail-lights visible? Due to the large variation in even such a simple task, one can imagine how Artificial Intelligence still has difficulty completely meeting or surpassing human capabilities in more complicated tasks. It is important to note, however, that just as the problems Artificial Intelligence must surpass are vast, so are the opportunities in which it can be used.

Many Practical Innovations are Occurring Right Now:

Photo by Roberto Nickson on Unsplash

Currently, using Artificial Intelligence to solve problems like identifying cars and deciding when to brake is part of automated driving, one of many advances in the area. You’ve likely heard about huge companies like Google and Tesla actively working on implementing this in real life. There are many other sectors making use of Artificial Intelligence, from healthcare to marketing, that merit their own articles on the topic. Think of the complicated issues we broke down in just one simple application of Artificial Intelligence here and imagine all the issues that exist across these different fields and applications of Artificial Intelligence. Certainly, the challenges of implementing Artificial Intelligence are great, but so are its promises in many different areas. That is the reason why Artificial Intelligence is so beneficial: it extends the capabilities of computers beyond what we simply program into them and it teaches them to think more like humans to solve problems intelligently.

3 Things to Understand about Artificial Intelligence:

Photo by Andy Kelly on Unsplash.

So here are the key things to remember:
  1. Artificial Intelligence is a broad field but it all comes down to making computers think by themselves in a smarter manner.
  2. There are many challenges in Artificial Intelligence but there are also clever techniques like Neural Networks to make computers overcome challenges themselves.
  3. Many immense companies have important projects in the field right now. It’s easy to get caught up in the hype but it’s harder, and more important, to get informed on the details.