Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / artificial-intelligence / machine-learning

How to Get Started as a Developer in AI

5.00/5 (5 votes)
4 May 2017CPOL5 min read 14.9K  
This article will go over some basics of AI, and outline some tools and resources that may help.

The promise of artificial intelligence has captured our cultural imagination since at least the 1950s—inspiring computer scientists to create new and increasingly complex technologies, while also building excitement about the future among regular everyday consumers. What if we could explore the bottom of the ocean without taking any physical risks? Or ride around in driverless cars on intelligent roadways? While our understanding of AI—and what’s possible—has changed over the the past few decades, we have reason to believe that the age of artificial intelligence may finally be here. So, as a developer, what can you do to get started? This article will go over some basics of AI, and outline some tools and resources that may help.

First Things First—What Exactly is AI?

While there are a lot of different ways to think about AI and a lot of different techniques to approach it, the key to machine intelligence is that it must be able to sense, reason, and act, then adapt based on experience.

  • Sense—Identify and recognize meaningful objects or concepts in the midst of vast data. Is that a stoplight? Is it a tumor or normal tissue?
  • Reason—Understand the larger context, and make a plan to achieve a goal. If the goal is to avoid a collision, the car must calculate the likelihood of a crash based on vehicle behaviors, proximity, speed, and road conditions.
  • Act—Either recommend or directly initiate the best course of action. Based on vehicle and traffic analysis, it may brake, accelerate, or prepare safety mechanisms.
  • Adapt—Finally, we must be able to adapt algorithms at each phase based on experience, retraining them to be ever more intelligent. Autonomous vehicle algorithms should be re-trained to recognize more blind spots, factor new variables into the context, and adjust actions based on previous incidents.

What Does AI Look Like Today?

These days, artificial intelligence is an umbrella term to represent any program that can sense, reason, act, and adapt. Two ways that developers are actually getting machines to do that are machine learning and deep learning.

  • In machine learning, learning algorithms build a model from data, which they can improve on as they are exposed to more data over time. There are four main types of machine learning: supervised, unsupervised, semi-supervised, and reinforcement learning. In supervised machine learning, the algorithm learns to identify data by processing and categorizing vast quantities of labeled data. In unsupervised machine learning, the algorithm identifies patterns and categories within large amounts of unlabeled data—often much more quickly than a human brain could. You can read a lot more about machine learning in this article.
  • Deep learning is a subset of machine learning in which multilayered neural networks learn from vast amounts of data.

AI in Action: A Machine Learning Workflow

As we discussed above, artificial intelligence is able to sense, reason, and act, then adapt based on experience. But what does that look like? Here is a general workflow for machine learning:

  1. Data Acquisition—First, you need huge amounts of data. This data can be collected from any number of sources, including sensors in wearables and other objects, the cloud, and the Web.
  2. Data Aggregation and Curation—Once the data is collected, data scientists will aggregate and label it (in the case of supervised machine learning).
  3. Model Development—Next, the data is used to develop a model, which then gets trained for accuracy and optimized for performance.
  4. Model Deployment and Scoring—The model is deployed in an application, where it is used to make predictions based on new data.
  5. Update with New Data—As more data comes in, the model becomes even more refined and more accurate. For instance, as an autonomous car drives, the application pulls in real-time information through sensors, GPS, 360-degree video capture, and more, which it can then use to optimize future predictions.

Opportunities for AI Developers

One of most exciting things about AI is that it has the potential to revolutionize not just the computing industry, or the software industry, but really every industry that touches our lives. It will transform society in much the same way as the industrial revolution, the technical revolution, and the digital revolution altered every aspect of daily life. Intel provides the foundation, frameworks, and strategies to power artificial intelligence. And when it comes to deep learning and machine learning technologies, Intel can help developers deliver projects better, faster, and more cost-effectively.

For developers, the expansion of the AI field means that you have the potential to apply your interest and knowledge of AI toward an industry that you’re also interested in, like music or sports or healthcare. As you explore the world of AI, think about what else you find interesting, and how you’d like contribute to that field in a meaningful way. The ideas are limitless, but here are a few examples to get you thinking.

So, Where Should I Get Started? Intel Can Help.

Intel is supporting rapid innovation in artificial intelligence. The Intel Software Developer Zone for AI is a great starting point for finding community, tools, and training. Here are some specific links to get you started.

  • Join the AI Community – There is a robust community of AI developers worldwide. Connect with them on Facebook and LinkedIn, and look for Meetups, workshops, and events happening in your area. Intel regularly participates in conferences and puts on webinars about AI topics— learn more here.
  • Are you a student? See if the Intel® Software Student Developer Program is at your campus. Get hands-on training from industry experts, professors and professionals to build your skillset. Learn more here.
  • Optimized frameworks – Caffe* is one of the most popular community applications for image recognition, and Theano* is designed to help write models for deep learning. Both frameworks have been optimized for use with Intel® architecture. Learn how to install and use these frameworks, and find a number of useful libraries, here.
  • Hardware - Intel® Xeon Phi™ processor family – These massively multicore processors deliver powerful, highly parallel performance for machine learning and deep learning workloads. Get a brief overview of deep learning using Intel® architectures here, and learn more about the Intel® Xeon Phi™ processor family’s competitive performance for deep learning here.The topic of AI is incredibly deep, and we’ve only scratched the surface so far. Come back soon for more articles about what’s happening and how you can get involved.

The topic of AI is incredibly deep, and we’ve only scratched the surface so far. Come back soon for more articles about what’s happening and how you can get involved.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)