AI for Everyone — Course Summary
A lot of us have heard about AI. AI is creating tremendous amounts of value to the way people work and live. But how to apply it to our own organizations/projects?
Andrew’s course is recommended by one of my friends to be read to make us more understand how to apply the meaning behind common AI terminology, how to apply AI in your own organization, and how to navigate ethical societal discussions surrounding AI. This course will help us, especially for non-technical people to have more knowledge about AI.
So here is the resume of AI For Everyone that contains important points to help us have a better understanding about AI. Andrew separate the course into 4 weeks course :
- What is AI?
- Building AI Projects
- Building AI In Your Company
- AI and Society
WHAT IS AI?
AI is changing the way people work and live. Even though AI is already creating tremendous amounts of value into the software industry, a lot of the value to be created in the future lies outside the software industry. AI is separated into Artificial Narrow Intelligence (ANI) such as a smart speaker, self-driving car, and web search engine. The second concept of AI is Artificial General Intelligence (AGI). They can do anything a human can do or even more things than any human can.
The most commonly used type of machine learning is supervised learning that learns A to B, or input to output mappings. Examples of supervised learning are spam filtering, speech recognition, machine translation.
AI has really taken off recently due to the rise of modern AI neural networks and deep learning. With small, medium, and large neural networks the performance just gets better and better with more data. To have the best possible levels of performance, we need two things: a lot of data and we want to be able to train a very large neural network.
What is Data?
There are three ways to acquire data by manual labeling, observing user behaviours or other types of behaviours, download from a website or to get it from a partner.
AI team can give feedback to the IT team on what types of valuable data to collect and guide the development of our IT infrastructure. Other things: data is messy. If the data is bad, then the AI will learn inaccurate things. The AI team needs to figure out how to clean up the data or how to deal with the incorrect labels and all missing values.
The Terminology of AI
The boundaries between two terms, machine learning and data science are actually a little bit buzz, and these terms are not used consistently even in the industry today.
Machine learning is the field of study that gives computers the ability to learn without being explicitly programmed. A machine learning project will often result in a piece of software that runs, that outputs B given A.
Data science is the size of extracting knowledge and insights from data. The output of a data science project is often a slide deck, the PowerPoint presentation that summarized conclusions for executives to take business actions or that summarized conclusions for a product team to decide how to improve a website.
Neural network or sometimes called artificial neural networks is the big thing in the middle that combines inputs we have in order to output the price. This big artificial neural network is just a big mathematical equation that tells it given the inputs A, how do you compute the price B. Terms neural network and deep learning are used almost interchangeably today but they mean essentially the same thing. Neural networks were originally inspired by the brain, but the details of how they work are almost completely unrelated to how the biological brain works.
What Makes an AI Company?
Companies that use a few neural networks or few deep learning algorithms do not turn the company into an AI company. Thinking through how to get data is a key part of the great AI companies. This is why many of the large consumer tech companies may have three products that do not monetize and it allows them to acquire data that they can monetize elsewhere.
For a company to become good at AI means, architecting for a company to do the things that AI makes it possible to do really well. For a company to become good at AI requires a systematic process.
The five step AI transformation playbook that Andrew recommends to companies that want to become effective at using AI :
- To execute pilot projects to gain momentum.
So, just to a few small projects to get a better sense of what AI can or cannot do and get a better sense of what doing an AI project feels like.
- Building in the house AI team
- Provide broad AI training
- Develop an AI strategy
- Develop internal and external communications
What Machine Learning Can and Cannot Do
One imperfect rule of thumb we can use to decide what supervised learning may or may not be able to do is pretty much anything we could do with a second of thought, we can probably now or soon automate using supervised learning, using input-output mapping. For example, we can determine the position of other cars in less than a second, we can tell if a phone is scratched or not. Whereas in contrast, something that AI cannot do would be: analyze a market and write a 50-page report.
Here are a couple of other rules of thumb to quickly filter feasible or not feasible projects :
- Learning a “simple” concept is more likely to be feasible (something that takes us less than a second to come up with conclusion)
- A machine learning problem is more likely to be feasible if we have lots of data (input A and output B)
More Examples of What Machine Learning Can and Cannot Do
One of the challenges of becoming good at recognizing what AI can and cannot do is that it does take seeing a few examples of concrete successes and failures of AI. Machine learning tends to work poorly when :
- Learning complex concepts from small amounts of data
- It is asked to perform on new types of data.
For example pneumonia detection that uses high-quality chest X-ray images as an input. Different hospitals or different medical centers may generate the difference in quality or angle of chest X-ray images. If the AI system has learned from high-quality X-ray images and the system is applied to a different medical center that generates different quality or angle of X-ray images, then it’s performance will be quite poor.
Building AI Projects
Different projects have different steps. The second thing we learned is a framework for brainstorming and selecting potentially promising projects to work on. Finally, we also learn how to organize the data as well as the team for executing an AI project.
Workflow of a Machine Learning Project
We learned the key steps of a machine learning project, which are :
- Collect data
- Train the model
- Deploy the model
Workflow of a Data Science Project
The output of a data science project is often a set of actionable insights, a set of insights that may cause us to do things differently. Data science projects have a different workflow than machine learning projects.
- Collect data
- Analyze the data
- Suggest hypotheses and actions
- Continue to get the data back and reanalyze the data periodically
Every Job Function Needs to Learn How to Use Data
Everything from sales, recruiting, marketing to manufacturing to farming agriculture is being affected by data, data science, and machine learning.
How to choose an AI project (Part 1)
What we like to do is try to select projects that are at the intersection of these two sets, that are both feasible, that can be done with AI, and that is also valuable for our business. So when brainstorming projects that AI can do and are valuable for our business, bring together both AI experts, as well as domain experts. Sometimes we call these cross-functional teams.
Three principles or three ideas for how we can have a team brainstorm project:
- Think about automating tasks rather than automating jobs.
- The main drivers of business value.
- The main pain points in business.
One last piece of advice for brainstorming AI projects, which is that we can make progress even without big or tons of data. Big data is great when we can get it, but big data is also sometimes over-hyped, and even with a small dataset, we can still often make progress.
How to Choose an AI Project (Part 2)
Before committing to a big AI project, we want to spend some time to make sure a project is feasible and valuable by going through technical diligence and business diligence processes.
Technical diligence is the process of making sure that the AI system we want to build is feasible. We might talk to AI experts :
- Whether or not the AI system can actually meet the desired level of performance
- How much data is needed to get to this desired level of performance
- How to get that much data.
- How long it will take and how many people it will take to build that system
Business diligence is the process of thinking through carefully for the AI system that we’re building would allow us to achieve our business goals. Although not explicitly listed on the slide, one thing that we also must consider is ethical diligence to make sure that whatever we’re doing is actually making humanity and making society better off.
Machine learning projects can be in-house or outsourced. If we outsource a machine learning project, we can have access much more quickly to talent and get going faster on a project.
Data science projects are more commonly done in-house. They’re not impossible to outsource but data science projects are often so closely tied to our business that it takes very deep day-to-day knowledge about our business to do the best data science projects.
We should build things that are quite / completely specialized to us and buy the things that will be industry standard. It’ll be more efficient rather than to build it in-house
Working with an AI Team
As part of our specification for the acceptance criteria, we should make sure that the AI team has a dataset that can be used to measure the performance so that they can know the accuracy they’ve achieved / test set. Consult with an AI expert for a better sense of how big the test set needed to evaluate the goal accuracy.
AI teams group data into two main datasets: a training set and a test set. The training set is just a set of input together with labels. The training set is the input to the machine learning software that lets it figure out what is this A to B mapping. The test set is used by the AI teams to evaluate their learning algorithm's performance. Finally for technical reasons some AI teams will need not just one but two different test sets.
Avoid 100% accuracy from AI software. Here are some of the reasons it may not be possible for a piece of AI software to be 100% accurate :
- Machine Learning still has limitations and just can’t do everything
- Insufficient data
- Data is messy and sometimes data can be mislabeled
Building AI In Your Company
We’ll learn about :
- Case studies of complex AI products
- Roles in an AI team
- AI Transformation Playbook
- Taking our first step
Case study: Smart speaker
The steps smart speaker needed to process the command “Hey device, tell me a joke”
- Trigger word / wake word detection : “Hey device”.
The speaker uses a machine learning algorithm to input the audio clip and output.
- Speech recognition : “Tell me a joke”
The speaker uses a machine learning algorithm to map the audio to a text transcript.
- Intent recognition
The speaker must take what we have said and figure out what we actually wanted to do.
- Execute joke
There will be a software engineer that has written a piece of code to randomly select a joke and to play the joke back through the speaker.
One of the challenges of the smart speaker world is that, if the smart speaker has 20 different functions, we will need software engineering teams to write 20 specialized pieces of software. Smart speakers today actually do so many things that is difficult for many users to keep straight in their heads exactly what they can and cannot do.
Case study: Self-driving car
These are the key steps for deciding how to drive self-driving car :
- Car & pedestrian detection uses supervised learning.
The car will input various sensors such as pictures, radar, or Lidar to detect a car and pedestrians.
- Motion Planning
A motion planning is a piece of software that plans the motions or path we want our car to take, so we can make progress to our destination while avoiding any collisions. The motion planning software’s job is to output the path as well as speed we should drive our car.
On a large self-driving car team, it would not be that unexpected to have a team or maybe a few people working on each of the boxes shown here in red, and it’s by building all of these components and putting them together that we can build a self-driving car.
Example Roles of an AI Team
From the last two examples, we can see that some AI products may require a large AI team. One caveat, because AI is evolving so fast, the job titles and various responsibilities are not yet 100 percent defined, and they are a little bit different across different companies.
- Software Engineer
- Machine Learning Engineer
- Machine Learning Researcher
- Applied Machine Learning Scientists
- Data Scientists
- Data Engineers
- AI Product Managers
AI Transformation Playbook (Part 1 & Part 2)
Here are the five steps of the AI Transformation Playbook :
- Execute pilot projects to gain momentum
Our first one or two pilot projects can be either in-house or outsourced. If we do not yet have a large in-house AI team, it is advisable to outsource some all of our first AI projects in order to get more expertise in house and to let us start building that momentum faster. Beyond a certain point, we will need our own in-house AI team to execute a long-term sequence of maybe many dozens of AI projects.
- Build an in-house AI team
It is recommended for most companies to build a centralized AI team and then to take the talent in the matrix organization and two matrix them into these different business units to support their work.
- Provide broad AI Training
To become good at AI is not just that we need engineers to know AI, we need multiple people at multiple levels of the company to understand how AI interacts with their roles. The world today does not have nearly enough AI engineers and so in-house training is a key part of many companies building up their in-house AI capabilities.
- Develop AI strategy
One unusual part of this playbook is that developing the AI strategy is step four not step one. This will work much better for the company than if we tried to formulate an AI strategy before the company has a deeper understanding of what AI can and cannot do for our industry sector. We should also consider creating a data strategy. Leading AI companies are very good at strategic data acquisition.
- Develop internal and external communications
AI Pitfalls to Avoid
Here are five don’ts and do’s for if we’re trying to build AI for our company.
- Don’t expect AI to solve everything
Instead be realistic about what AI can or cannot do, given the limitations of technology, data, and engineering resources.
- Don’t just hire two or three machine learning engineers and count solely on them to come up with use cases for our company.
Instead pair the engineer talents with business talent and work cross-functionally to find feasible and valuable projects.
- Don’t expect AI project to work the first time
AI development is often an iterative process so should plan for it through an iterative process with multiple attempts needed to succeed.
- Don’t expect traditional planning processes to apply without charge
Instead, we should work with the AI team to establish timeline estimates, milestones, and KPIs or metrics that do make sense.
- Don’t think you need superstar AI engineers before we can do anything
Instead, keep building the team and get going with a team we have realizing that there are many Ai engineers in the world today including many that have learned primarily from online courses.
Taking Your First Step in AI
Here are some initial steps we recommend to take :
- Get friends to learns about AI
- Start brainstorming projects.
No project is too small and it’s better to start small and succeed, than to start too big and not succeed.
- Hire a few machine learning or data science people to help out, in addition to providing in-house training to develop the in-house talent.
- If we are ready to go bigger, we might also try to have our company to hire or appoint an AI leader.
- If we want our company to become greater AI, we would also consider trying to discuss with our CEO, the possibility of trying to execute an AI transformation.
AI and Society
AI’s impact on society :
- AI and Hype
For citizens and business leaders and government leaders to navigate the rises of AI, it’s importance is that we all have a realistic view of AI
- Limitations of AI
AI can be biased and discriminate unfairly against minorities. AI technology is also susceptible to adversarial attacks.
- AI, developing economies, and jobs
Developed economies such as the US and China, are already using AI extensively, but they’ll also have a big impact on developing economies and on the global jobs landscape
Many of these issues are implicated in AI and ethics. To make sure that the work we do in AI is ethical.
A Realistic View of AI
AI is having a huge impact on society and on so many people’s lives. So, for all of us to make good decisions, it is important that we have a realistic view of AI. We should not be too optimistic about AI technologies and we shouldn’t over allocate resources either to defending against a danger that realistically will not come for a long time.
On the flip side, we don’t want to be too pessimistic about AI either. There are some things AI cannot do.
There are limitations of AI :
- Performance limitations
- Explainability is hard (but sometimes doable)
It works very well but the AI doesn’t know how to explain why it does what it does.
- Biased AI through biased data
- Adversarial attacks
Depending on our application, it may be important to make sure that we are not open to these types of attacks on your AI systems.
Discrimination / Bias
AI community has put a lot of effort into combating bias, for example :
- Technical solutions
- Example: simplifying the description a little bit, researchers have found that when an AI system learns a lot of different numbers with which to store words, there are few numbers that correspond to the bias
- Try to use less biased and or more inclusive data
- Transparency and/or auditing processes
If any, these AI systems are exhibiting, we can at least recognize the problem if it exists, and then take steps to address it.
- Diverse workforce
If we have a diverse workforce, then the individuals in our workforce are more likely to be able to spot different problems, and maybe they’ll help make our data more diverse and more inclusive in the first place.
Adversarial Attacks on AI
In computer security, an attack against a secure system means an attempt to make it do something other than what it was intended to do. In the same way, an adversarial attack on an AI system is an attempt to make it do something other than what it was intended to do, such as trying to fool it into outputting incorrect classifications.
Fortunately, the AI world has been working on new technologies to make them harder to attack. The defenses tend to be very technical but there are ways of modifying neural networks and other AI systems to make them somewhat harder to attack. One downside is that these defenses do incur some cost.
Adverse Uses of AI
There are few adverse uses of AI :
AI technology has been used to create deep fakes and that means to synthesize videos of people doing things that they never actually did.
- Undermining democracy and privacy.
- Generating fake comments
Using AI technology is now possible to generate fake comments. Either on the commercial side, fake comments of products, or in political discourse, fake comments about political matters in the public discourse, and to generate fake comments much more efficiently than if we only had humans writing them.
- Spam vs. anti-spam and fraud vs. anti-fraud
Similar to the battles of spam versus anti-spam and fraud versus anti-fraud, for all of these issues, there may be a competition on both sides for quite some time to come.
AI and Developing Economies
With the rise of earlier waves of technology, many economies have shown that they can leapfrog developed economies and jump straight to a more advanced technology.
While developed economies are also rapidly embracing all of these technologies, one of the advantages of developing economies is that without an entrenched incumbents system, perhaps there are areas that they could build even faster. The US and China are leading, and the UK and Canada and a few other countries also have vibrant AI communities. Even though AI is creating tremendous economic value, most of the value to be created is still off in the future. There is some advice to developing economies to focus on AI to strengthen a country’s vertical industries. Strengthen what country is good and what that country wants to do in the future. Finally, public-private partnerships, meaning governments and corporations working together, can really help accelerate a vertical industry’s AI developments.
AI and Jobs
With the rise of AI, we can now automate things much bigger than before. This also has an accelerating impact on jobs. McKinsey Global Institute did a study in which they estimated that 400 to 800 million jobs will be displaced by AI automation by 2030. No one can predict with certainty exactly what will happen in 2030, but there is a sense that the impact of jobs worldwide will be significant. AI is creating many jobs even as it is displacing some.
To navigate citizens and nations to the coming impact of AI on jobs :
- Conditional basic income: provide a safety net but incentivize learning
- Lifelong learning
- Political solutions
AI for Everyone course help us to have more knowledge about AI. This course will help us to understand AI technologies and help us to apply AI to problems in our organization. With this course we will be given example what AI can and cannot do. This course is also explain how AI is impacting society and how to navigate through this technological change. Andrew explains everything in a coherent and intuitive way so it is highly recommended for anyone that wants to start learning about AI.