# data[].attributes.attachment_link.readable_text
A genetic algorithm is a search heuristic that is inspired by Charles Darwin's theory of natural evolution. This algorithm reflects the process of natural selection where the fittest individuals are selected for reproduction in order to produce offspring of the next generation.

Notion of Natural Selection

The process of natural selection starts with the selection of fittest individuals from a population. They produce offspring which inherit the characteristics of the parents and will be added to the next generation. If parents have better fitness, their offspring will be better than parents and have a better chance at surviving. This process keeps on iterating and at the end, a generation with the fittest individuals will be found.

This notion can be applied for a search problem. We consider a set of solutions for a problem and select the set of best ones out of them.

Five phases are considered in a genetic algorithm.

Initial Population

The process begins with a set of individuals which is called a Population. Each individual is a solution to the problem you want to solve.

An individual is characterized by a set of parameters (variables) known as Genes. Genes are joined into a string to form a Chromosome (solution).

In a genetic algorithm, the set of genes of an individual is represented using a string, in terms of an alphabet. Usually, binary values are used (string of 1s and 0s). We say that we encode the genes in a chromosome.

Fitness Function

The fitness function determines how fit an individual is (the ability of an individual to compete with other individuals). It gives a fitness score to each individual. The probability that an individual will be selected for reproduction is based on its fitness score.

Selection

The idea of selection phase is to select the fittest individuals and let them pass their genes to the next generation.

Two pairs of individuals ( parents) are selected based on their fitness scores. Individuals with high fitness have more chance to be selected for reproduction.

Crossover

Crossover is the most significant phase in a genetic algorithm. For each pair of parents to be mated, a crossover point is chosen at random from within the genes.

For example, consider the crossover point to be 3 as shown below.

Offspring are created by exchanging the genes of parents among themselves until the crossover point is reached.

The new offspring are added to the population.

Mutation

In certain new offspring formed, some of their genes can be subjected to a mutation with a low random probability. This implies that some of the bits in the bit string can be flipped.

Mutation occurs to maintain diversity within the population and prevent premature convergence.

Termination

The algorithm terminates if the population has converged (does not produce offspring which are significantly different from the previous generation). Then it is said that the genetic algorithm has provided a set of solutions to our problem.

Comments

The population has a fixed size. As new generations are formed, individuals with least fitness die, providing space for new offspring.

The sequence of phases is repeated to produce individuals in each new generation which are better than the previous generation.

Psuedocode

START
Generate the initial population
Compute fitness
REPEAT
 Selection
 Crossover
 Mutation
 Compute fitness
UNTIL population has converged
STOP

Example Implementation in Java

Given below is an example implementation of a genetic algorithm in Java. Feel free to play around with the code.

Given a set of 5 genes, each gene can hold one of the binary values 0 and 1.

The fitness value is calculated as the number of 1s present in the genome. If there are five 1s, then it is having maximum fitness. If there are no 1s, then it has the minimum fitness.

This genetic algorithm tries to maximize the fitness function to provide a population consisting of the fittest individual, i.e. individuals with five 1s.

Note: In this example, after crossover and mutation, the least fit individual is replaced from the new fittest offspring.

# data[].attributes.attachment_link.title
Introduction to Genetic Algorithms - Including Example Code

# data[].attributes.attachment_link.description
A genetic algorithm is a search heuristic that is inspired by Charles Darwin's theory of natural evolution. This algorithm reflects the process of natural selection where the fittest individuals are selected for reproduction in order to produce offspring of the next generation. The process of natural selection starts with the selection of fittest individuals from a population.

# data[].attributes.attachment_link.readable_text
Background

Backpropagation is a common method for training a neural network. There is no shortage of papers online that attempt to explain how backpropagation works, but few that include an example with actual numbers. This post is my attempt to explain how it works with a concrete example that folks can compare their own calculations to in order to ensure they understand backpropagation correctly.

If this kind of thing interests you, you should sign up for my newsletter where I post about AI-related projects that I'm working on.

Backpropagation in Python

You can play around with a Python script that I wrote that implements the backpropagation algorithm in this Github repo.

Backpropagation Visualization

For an interactive visualization showing a neural network as it learns, check out my Neural Network visualization.

Additional Resources

If you find this tutorial useful and want to continue learning about neural networks, machine learning, and deep learning, I highly recommend checking out Adrian Rosebrock's new book, Deep Learning for Computer Vision with Python. I really enjoyed the book and will have a full review up soon.

Overview

For this tutorial, we're going to use a neural network with two inputs, two hidden neurons, two output neurons. Additionally, the hidden and output neurons will include a bias.

Here's the basic structure:

In order to have some numbers to work with, here are the initial weights, the biases, and training inputs/outputs:

The goal of backpropagation is to optimize the weights so that the neural network can learn how to correctly map arbitrary inputs to outputs.

For the rest of this tutorial we're going to work with a single training set: given inputs 0.05 and 0.10, we want the neural network to output 0.01 and 0.99.

The Forward Pass

To begin, lets see what the neural network currently predicts given the weights and biases above and inputs of 0.05 and 0.10. To do this we'll feed those inputs forward though the network.

We figure out the total net input to each hidden layer neuron, squash the total net input using an activation function (here we use the logistic function), then repeat the process with the output layer neurons.

Total net input is also referred to as just net input by some sources.

Here's how we calculate the total net input for :

We then squash it using the logistic function to get the output of :

Carrying out the same process for we get:

We repeat this process for the output layer neurons, using the output from the hidden layer neurons as inputs.

Here's the output for :

And carrying out the same process for we get:

Calculating the Total Error

We can now calculate the error for each output neuron using the squared error function and sum them to get the total error:

Some sources refer to the target as the ideal and the output as the actual.

The

is included so that exponent is cancelled when we differentiate later on. The result is eventually multiplied by a learning rate anyway so it doesn't matter that we introduce a constant here [ 1].

For example, the target output for is 0.01 but the neural network output 0.75136507, therefore its error is:

Repeating this process for (remembering that the target is 0.99) we get:

The total error for the neural network is the sum of these errors:

The Backwards Pass

Our goal with backpropagation is to update each of the weights in the network so that they cause the actual output to be closer the target output, thereby minimizing the error for each output neuron and the network as a whole.

Output Layer

Consider . We want to know how much a change in affects the total error, aka .

is read as "the partial derivative of

with respect to

". You can also say "the gradient with respect to

".

By applying the chain rule we know that:

Visually, here's what we're doing:

We need to figure out each piece in this equation.

First, how much does the total error change with respect to the output?

When we take the partial derivative of the total error with respect to

, the quantity

becomes zero because

does not affect it which means we're taking the derivative of a constant which is zero.

Next, how much does the output of change with respect to its total net input?

The partial derivative of the logistic function is the output multiplied by 1 minus the output:

Finally, how much does the total net input of change with respect to ?

Putting it all together:

To decrease the error, we then subtract this value from the current weight (optionally multiplied by some learning rate, eta, which we'll set to 0.5):

We can repeat this process to get the new weights , , and :

We perform the actual updates in the neural network after we have the new weights leading into the hidden layer neurons (ie, we use the original weights, not the updated weights, when we continue the backpropagation algorithm below).

Hidden Layer

Next, we'll continue the backwards pass by calculating new values for , , , and .

Big picture, here's what we need to figure out:

Visually:

We're going to use a similar process as we did for the output layer, but slightly different to account for the fact that the output of each hidden layer neuron contributes to the output (and therefore error) of multiple output neurons. We know that affects both and therefore the needs to take into consideration its effect on the both output neurons:

Starting with :

We can calculate using values we calculated earlier:

And is equal to :

Plugging them in:

Following the same process for , we get:

Therefore:

Now that we have , we need to figure out and then for each weight:

We calculate the partial derivative of the total net input to with respect to the same as we did for the output neuron:

Putting it all together:

You might also see this written as:

We can now update :

Repeating this for , , and

Finally, we've updated all of our weights! When we fed forward the 0.05 and 0.1 inputs originally, the error on the network was 0.298371109. After this first round of backpropagation, the total error is now down to 0.291027924. It might not seem like much, but after repeating this process 10,000 times, for example, the error plummets to 0.0000351085. At this point, when we feed forward 0.05 and 0.1, the two outputs neurons generate 0.015912196 (vs 0.01 target) and 0.984065734 (vs 0.99 target).

If you've made it this far and found any errors in any of the above or can think of any ways to make it clearer for future readers, don't hesitate to drop me a note. Thanks!

# data[].attributes.attachment_link.description
Background Backpropagation is a common method for training a neural network. There is no shortage of papers online that attempt to explain how backpropagation works, but few that include an example with actual numbers. This post is my attempt to explain how it works with a concrete example that folks can compare their own calculations...

# data[].attributes.attachment_link.readable_text
Artificial neural networks are statistical learning models, inspired by biological neural networks (central nervous systems, such as the brain), that are used in machine learning. These networks are represented as systems of interconnected "neurons", which send messages to each other. The connections within the network can be systematically adjusted based on inputs and outputs, making them ideal for supervised learning.

Neural networks can be intimidating, especially for people with little experience in machine learning and cognitive science! However, through code, this tutorial will explain how neural networks operate. By the end, you will know how to build your own flexible, learning network, similar to Mind.

The only prerequisites are having a basic understanding of JavaScript, high-school Calculus, and simple matrix operations. Other than that, you don't need to know anything. Have fun!

Understanding the Mind

A neural network is a collection of "neurons" with "synapses" connecting them. The collection is organized into three main parts: the input layer, the hidden layer, and the output layer. Note that you can have n hidden layers, with the term "deep" learning implying multiple hidden layers.
Screenshot taken from this great introductory video, which trains a neural network to predict a test score based on hours spent studying and sleeping the night before.
Hidden layers are necessary when the neural network has to make sense of something really complicated, contextual, or non obvious, like image recognition. The term "deep" learning came from having many hidden layers. These layers are known as "hidden", since they are not visible as a network output. Read more about hidden layers here and here.

The circles represent neurons and lines represent synapses. Synapses take the input and multiply it by a "weight" (the "strength" of the input in determining the output). Neurons add the outputs from all synapses and apply an activation function.

Training a neural network basically means calibrating all of the "weights" by repeating two key steps, forward propagation and back propagation.

Since neural networks are great for regression, the best input data are numbers (as opposed to discrete values, like colors or movie genres, whose data is better for statistical classification models). The output data will be a number within a range like 0 and 1 (this ultimately depends on the activation function-more on this below).

In forward propagation, we apply a set of weights to the input data and calculate an output. For the first forward propagation, the set of weights is selected randomly.

In back propagation, we measure the margin of error of the output and adjust the weights accordingly to decrease the error.

Neural networks repeat both forward and back propagation until the weights are calibrated to accurately predict an output.

Next, we'll walk through a simple example of training a neural network to function as an "Exclusive or" ("XOR") operation to illustrate each step in the training process.

Forward Propagation
Note that all calculations will show figures truncated to the thousandths place.
The XOR function can be represented by the mapping of the below inputs and outputs, which we'll use as training data. It should provide a correct output given any input acceptable by the XOR function.

input | output -------------- 0, 0 | 0 0, 1 | 1 1, 0 | 1 1, 1 | 0

Let's use the last row from the above table, (1, 1) => 0, to demonstrate forward propagation:
Note that we use a single hidden layer with only three neurons for this example.
We now assign weights to all of the synapses. Note that these weights are selected randomly (based on Gaussian distribution) since it is the first time we're forward propagating. The initial weights will be between 0 and 1, but note that the final weights don't need to be.

We sum the product of the inputs with their corresponding set of weights to arrive at the first values for the hidden layer. You can think of the weights as measures of influence the input nodes have on the output.

1 * 0.8 + 1 * 0.2 = 1 1 * 0.4 + 1 * 0.9 = 1.3 1 * 0.3 + 1 * 0.5 = 0.8

We put these sums smaller in the circle, because they're not the final value:

To get the final value, we apply the activation function to the hidden layer sums. The purpose of the activation function is to transform the input signal into an output signal and are necessary for neural networks to model complex non-linear patterns that simpler models might miss.

There are many types of activation functions-linear, sigmoid, hyperbolic tangent, even step-wise. To be honest, I don't know why one function is better than another.
Table taken from this paper.
For our example, let's use the sigmoid function for activation. The sigmoid function looks like this, graphically:

And applying S(x) to the three hidden layer sums, we get:

S(1.0) = 0.73105857863 S(1.3) = 0.78583498304 S(0.8) = 0.68997448112

We add that to our neural network as hidden layer results:

Then, we sum the product of the hidden layer results with the second set of weights (also determined at random the first time around) to determine the output sum.

0.73 * 0.3 + 0.79 * 0.5 + 0.69 * 0.9 = 1.235

..finally we apply the activation function to get the final output result.

S(1.235) = 0.7746924929149283

This is our full diagram:

Because we used a random set of initial weights, the value of the output neuron is off the mark; in this case by +0.77 (since the target is 0). If we stopped here, this set of weights would be a great neural network for inaccurately representing the XOR operation.

Let's fix that by using back propagation to adjust the weights to improve the network!

Back Propagation

To improve our model, we first have to quantify just how wrong our predictions are. Then, we adjust the weights accordingly so that the margin of errors are decreased.

Similar to forward propagation, back propagation calculations occur at each "layer". We begin by changing the weights between the hidden layer and the output layer.

Calculating the incremental change to these weights happens in two steps: 1) we find the margin of error of the output result (what we get after applying the activation function) to back out the necessary change in the output sum (we call this delta output sum) and 2) we extract the change in weights by multiplying delta output sum by the hidden layer results.

The output sum margin of error is the target output result minus the calculated output result:

And doing the math:

Target = 0 Calculated = 0.77 Target - calculated = -0.77

To calculate the necessary change in the output sum, or delta output sum, we take the derivative of the activation function and apply it to the output sum. In our example, the activation function is the sigmoid function.

To refresh your memory, the activation function, sigmoid, takes the sum and returns the result:

So the derivative of sigmoid, also known as sigmoid prime, will give us the rate of change (or "slope") of the activation function at the output sum:

Since the output sum margin of error is the difference in the result, we can simply multiply that with the rate of change to give us the delta output sum:

Conceptually, this means that the change in the output sum is the same as the sigmoid prime of the output result. Doing the actual math, we get:

Delta output sum = S'(sum) * (output sum margin of error) Delta output sum = S'(1.235) * (-0.77) Delta output sum = -0.13439890643886018

Here is a graph of the Sigmoid function to give you an idea of how we are using the derivative to move the input towards the right direction. Note that this graph is not to scale.

Now that we have the proposed change in the output layer sum (-0.13), let's use this in the derivative of the output sum function to determine the new change in weights.

As a reminder, the mathematical definition of the output sum is the product of the hidden layer result and the weights between the hidden and output layer:

The derivative of the output sum is:

..which can also be represented as:

This relationship suggests that a greater change in output sum yields a greater change in the weights; input neurons with the biggest contribution (higher weight to output neuron) should experience more change in the connecting synapse.

Let's do the math:

hidden result 1 = 0.73105857863 hidden result 2 = 0.78583498304 hidden result 3 = 0.68997448112 Delta weights = delta output sum / hidden layer results Delta weights = -0.1344 / [0.73105, 0.78583, 0.69997] Delta weights = [-0.1838, -0.1710, -0.1920] old w7 = 0.3 old w8 = 0.5 old w9 = 0.9 new w7 = 0.1162 new w8 = 0.329 new w9 = 0.708

To determine the change in the weights between the input and hidden layers, we perform the similar, but notably different, set of calculations. Note that in the following calculations, we use the initial weights instead of the recently adjusted weights from the first part of the backward propagation.

Remember that the relationship between the hidden result, the weights between the hidden and output layer, and the output sum is:

Instead of deriving for output sum, let's derive for hidden result as a function of output sum to ultimately find out delta hidden sum:

Also, remember that the change in the hidden result can also be defined as:

Let's multiply both sides by sigmoid prime of the hidden sum:

All of the pieces in the above equation can be calculated, so we can determine the delta hidden sum:

Delta hidden sum = delta output sum / hidden-to-outer weights * S'(hidden sum) Delta hidden sum = -0.1344 / [0.3, 0.5, 0.9] * S'([1, 1.3, 0.8]) Delta hidden sum = [-0.448, -0.2688, -0.1493] * [0.1966, 0.1683, 0.2139] Delta hidden sum = [-0.088, -0.0452, -0.0319]

Once we get the delta hidden sum, we calculate the change in weights between the input and hidden layer by dividing it with the input data, (1, 1). The input data here is equivalent to the hidden results in the earlier back propagation process to determine the change in the hidden-to-output weights. Here is the derivation of that relationship, similar to the one before:

Let's do the math:

input 1 = 1 input 2 = 1 Delta weights = delta hidden sum / input data Delta weights = [-0.088, -0.0452, -0.0319] / [1, 1] Delta weights = [-0.088, -0.0452, -0.0319, -0.088, -0.0452, -0.0319] old w1 = 0.8 old w2 = 0.4 old w3 = 0.3 old w4 = 0.2 old w5 = 0.9 old w6 = 0.5 new w1 = 0.712 new w2 = 0.3548 new w3 = 0.2681 new w4 = 0.112 new w5 = 0.8548 new w6 = 0.4681

Here are the new weights, right next to the initial random starting weights as comparison:

old new ----------------- w1: 0.8 w1: 0.712 w2: 0.4 w2: 0.3548 w3: 0.3 w3: 0.2681 w4: 0.2 w4: 0.112 w5: 0.9 w5: 0.8548 w6: 0.5 w6: 0.4681 w7: 0.3 w7: 0.1162 w8: 0.5 w8: 0.329 w9: 0.9 w9: 0.708

Once we arrive at the adjusted weights, we start again with forward propagation. When training a neural network, it is common to repeat both these processes thousands of times (by default, Mind iterates 10,000 times).

And doing a quick forward propagation, we can see that the final output here is a little closer to the expected output:

Through just one iteration of forward and back propagation, we've already improved the network!!
Check out this short video for a great explanation of identifying global minima in a cost function as a way to determine necessary weight changes.
If you enjoyed learning about how neural networks work, check out Part Two of this post to learn how to build your own neural network.

# data[].attributes.attachment_link.title
Mind: How to Build a Neural Network (Part One)

# data[].attributes.attachment_link.description
Artificial neural networks are statistical learning models, inspired by biological neural networks (central nervous systems, such as the brain), that are used in machine learning. These networks are represented as systems of interconnected "neurons", which send messages to each other. The connections within the network can be systematically adjusted based on inputs and outputs, making them ideal for supervised learning.

# data[].attributes.attachment_link.readable_text
There are so many amazing ways artificial intelligence and machine learning are used behind the scenes to impact our everyday lives and inform business decisions and optimize operations for some of the world's leading companies. Here are 27 amazing practical examples of AI and machine learning.
Consumer goods
Using natural language processing, machine learning and advanced analytics, Hello Barbie listens and responds to a child. A microphone on Barbie's necklace records what is said and transmits it to the servers at ToyTalk. There, the recording is analyzed to determine the appropriate response from 8,000 lines of dialogue. Servers transmit the correct response back to Barbie in under a second so she can respond to the child. Answers to questions such as what their favorite food is are stored so that it can be used in conversation later.

Coca-Cola's global market and extensive product list-more than 500 drink brands sold in more than 200 countries-make it the largest beverage company in the world. Not only does the company create a lot of data, it has embraced new technology and puts that data into practice to support new product development, capitalize on artificial intelligence bots and even trialing augmented reality in bottling plants.

Even though Dutch company Heineken has been a worldwide brewing leader for the last 150 years, they are looking to catapult their success specifically in the United States by leveraging the vast amount of data they collect. From data-driven marketing to the Internet of Things to improving operations through data analytics, Heineken looks to AI augmentation and data to improve its operations, marketing, advertising and customer service.
Creative Arts
Culinary arts require the human touch, right? Yes and no. AI-enabled Chef Watson from IBM offers a glimpse of how artificial intelligence can become a sous-chef in the kitchen to help develop recipes and advise their human counterparts on food combinations to create completely unique flavors. Working together, AI and humans can create more in the kitchen than working alone.

Another way AI and big data can augment creativity is in the world of art and design. In one example, IBM's machine learning system, Watson, was fed hundreds of images of artist Gaudi's work along with other complementary material to help the machine learn possible influences for his work including Barcelona, its culture, biographies, historical articles and song lyrics. Watson analyzed all the information and delivered inspiration to the human artists who were charged with the creating a sculpture "informed" by Watson and in the style of Gaudi.

Music-generating algorithms are now inspiring new songs. Given enough input-millions of conversations, newspaper headlines and speeches-insights are gleaned that can help create a theme for lyrics. There are machines such as Watson BEAT that can come up with different musical elements to inspire composers. AI helps musicians understand what their audiences want and to help determine more accurately what songs might ultimately be hits.
Energy
Global energy leader, BP is at the forefront of realizing the opportunities big data and artificial intelligence has for the energy industry. They use the technology to drive new levels of performance, improve the use of resources and safety and reliability of oil and gas production and refining. From sensors that relay the conditions at each site to using AI technology to improve operations, BP puts data at the fingertips of engineers, scientists and decision-makers to help drive high performance.

In an attempt to deliver energy into the 21 st century, GE Power uses big data, machine learning and Internet of Things (IoT) technology to build an "internet of energy." Advanced analytics and machine learning enable predictive maintenance and power, operations and business optimization to help GE Power work toward its vision of a "digital power plant."
Financial Services
With approximately 3.6 petabytes of data (and growing) about individuals around the world, credit reference agency Experian gets its extraordinary amount of data from marketing databases, transactional records and public information records. They are actively embedding machine learning into their products to allow for quicker and more effective decision-making. Over time, the machines can learn to distinguish what data points are important from those that aren't. Insight extracted from the machines will allow Experian to optimize its processes.

American Express processes $1 trillion in transaction and has 110 million AmEx cards in operation. They rely heavily on data analytics and machine learning algorithms to help detect fraud in near real time, therefore saving millions in losses. Additionally, AmEx is leveraging its data flows to develop apps that can connect a cardholder with products or services and special offers. They are also giving merchants online business trend analysis and industry peer benchmarking.
Healthcare
AI and deep learning is being put to use to save lives by Infervision. In China, where there aren't enough radiologists to keep up with the demand of reviewing 1.4 billion CT scans each year to look for early signs of lung cancer. Radiologists need to review hundreds of scans each day which is not only tedious, but human fatigue can lead to errors. Infervision trained and taught algorithms to augment the work of radiologists to allow them to diagnose cancer more accurately and efficiently.

Neuroscience is the inspiration and foundation for Google's DeepMind, creating a machine that can mimic the thought processes of our own brains. While DeepMind has successfully beaten humans at games, what's really intriguing are the possibilities for healthcare applications such as reducing the time it takes to plan treatments and using machines to help diagnose ailments.
Manufacturing
Cars are increasingly connected and generate data that can be used in a number of ways. Volvo uses data to help predict when parts would fail or when vehicles need servicing, uphold its impressive safety record by monitoring vehicle performance during hazardous situations and to improve driver and passenger convenience. Volvo is also conducting its own research and development on autonomous vehicles.

BMW has big data-related technology at the heart of its business model and data guides decisions throughout the business from design and engineering to sales and aftercare. The company is also a leader in driverless technology and plans for its cars to deliver Level 5 autonomy-the vehicle can drive itself without any human intervention-by 2021.

The AI tech revolution has hit farming as well, and John Deere is getting data-driven analytical tools and automation into the hands of farmers. They acquired Blue River Technology for its solution to use advanced machine learning algorithms to allow robots to make decisions based on visual data about whether or not a plan is a pest to treat it with a pesticide. The company already offers automated farm vehicles to plough and sow with pinpoint-accurate GPS systems and its Farmsight system is designed to help agricultural decision-making.
Media
The BBC project, Talking with Machines is an audio drama that allows listeners to join in and have a two-way conversation via their smart speaker. Listeners get to be a part of the story as it prompts them to answer questions and insert their own lines into the story. Created specifically for smart speakers Amazon Echo and Google Home, the BBC expects to expand to other voice-activated devices in the future.

UK news agency Press Association (PA) is hoping robots and artificial intelligence might be able to save local news. They partnered with news automation specialist Urbs Media to have robots write 30,000 local news stories each month in a project called RADAR (Reporters and Data and Robots). Fed with a variety of data from government, public services and local authorities, the machine uses natural language generation technology to write local news stories. These robots are filling a gap in news coverage that wasn't being filled by humans.

Big data analytics is helping Netflix predict what its customers will enjoy watching. They are also increasingly a content creator, not just a distributor, and use data to drive what content it will invest in creating. Due to the confidence they have in the data findings, they are willing to buck convention and commission multiple seasons of a new show rather than just a pilot episode.
Retail
When you first think of Burberry, you likely consider its luxury fashion and not first consider them a digital business. However, they have been busy reinventing themselves and use big data and AI to combat counterfeit products and improve sales and customer relationships. The company's strategy for increasing sales is to nurture deep, personal connections with its customers. As part of that, they have reward and loyalty programs that create data to help them personalize the shopping experience for each customer. In fact, they are making the shopping experience at their brick-and-mortar stores just as innovative as an online experience.

As the world's second-largest retailer, Walmart is on the cutting edge of finding ways to transform retail and provide better service to its customers. They use big data, machine learning, AI and the IoT to ensure a seamless experience between the online customer experience and the in-store experience (with 11,000 brick-and-mortar stores, something rival Amazon isn't able to do. Enhancements include using the Scan and Go feature on the app, Pick-up Towers and they are experimenting with facial recognition technology to determine if customers are happy or sad.
Service
Central to everything Microsoft does is leveraging smart machines. Microsoft has Cortana, a virtual assistant; chatbots that run Skype and answer customer service queries or deliver info such as weather or travel updates and the company has rolled out intelligent features within its Office enterprise. Other companies can use the Microsoft AI Platform to create their own intelligent tools. In the future, Microsoft wants to see intelligent machines with generalized AI capabilities that allow them to complete any task.

When you bring together cloud computing, geo-mapping and machine learning, some really interesting things can happen. Google is using AI and satellite data to prevent illegal fishing. On any given day, 22 million data points are created that show where ships are in the world's waterways. Google engineers found that when they applied machine learning to the data, they could identify why a vessel was at sea. They ultimately created Global Fishing Watch that shows where fishing is happening and could then identify when fishing was happening illegally.

Always at the top of delivery extraordinary service, Disney is getting even better thanks to big data. Every visitor gets their own MagicBand wristband that serves as ID, hotel room key, tickets, FastPasses and payment system. While guest enough the convenience, Disney gets a lot of data that helps them anticipate guests' needs and deliver an amazing, personalized experience. They can resolve traffic jams, give extra services to guests who may have been inconvenienced by a closed attraction and data even allows the company to schedule staff more efficiently.

Google is one of the pioneers of deep learning from its initial foray with the Google Brain project in 2011. Google first used deep learning for image recognition and now is able to use it for image enhancement. Google has also applied deep learning to language processing and to provide better video recommendations on YouTube, because it studies viewers' habits and preferences when they stream content. Next up, Google's self-driving car division also leverages deep learning. Google also used machine learning to help it figure out the right configuration of hardware and coolers in their data centers to reduce the amount of energy expended to keep them operational. AI and machine learning has helped Google unlock new ways of sustainability.
Social Media
From what tweets to recommend to fighting inappropriate or racist content and enhancing the user experience, Twitter has begun to use artificial intelligence behind the scenes to enhance their product. They process lots of data through deep neural networks to learn over time what users preferences are.

Deep learning is helping Facebook draw value from a larger portion of its unstructured datasets created by almost 2 billion people updating their statuses 293,000 times per minute. Most of its deep learning technology is built on the Torch platform that focuses on deep learning technologies and neural networks.

Instagram also uses big data and artificial intelligence to target advertising and fight cyberbullying and delete offensive comments. As the amount of content grows in the platform, artificial intelligence is critical to be able to show users of the platform information they might like, fight spam and enhance the user experience.

# data[].attributes.attachment_link.title
27 Incredible Examples Of AI And Machine Learning In Practice

# data[].attributes.attachment_link.description
Every day there seems to be a new way that artificial intelligence (AI) and machine learning is used behind the scenes to enhance our daily lives and improve business for many of today's leading companies. Here are 27 amazing, and practical examples of AI and machine learning.

# data[].attributes.headline
State how do you feel now and please take time to response in the mentimeter. The code is 684233

# data[].attributes.subject
State how do you feel now and please take time to response in the mentimeter. The code is 684233

# data[].attributes.body
Thank you for today and see you on Friday!

# data[].attributes.attachment_link.title
Enter the Code to Join & Vote on a Presentation - Mentimeter

# data[].attributes.attachment_link.description
Enter the code from the Mentimeter presentation to join in and start voting. Make your voice heard!

# data[].attributes.body
List your inquiries in this chapter

Co-develop your knowledge on Ch7 and share it https://docs.google.com/document/d/1vdFghYgG-felv-yr3Drh0ja-Vmrdi-qA_XXcEUK0t-0/edit?usp=sharing

# data[].attributes.attachment_link.readable_text
In this Java AIML tutorial, we will learn to create simple chatbot program in Java. A Chatbot is an application designed to simulate the conversation with human users, especially over the Internet. Internally it uses any NLP (Natural Language Processing) system to interpret the human interactions and reply back with meaningful information.

AIML (Artificial Intelligence Markup Language) is an XML dialect for creating natural language software agents. It contains the basic rules which Natural Language Understanding (NLU) unit uses internally. It can be think of as a heart of the engine. The more rules we add in AIML - the more intelligent our Chatbot will be.

It's important to know the difference between NLP and NLU. NLP refers to all systems that work together to handle end-to-end interactions between machines and humans in the preferred language of the human. In other words, NLP lets people and machines talk to each other "naturally". NLU is actually a subset of the wider world of NLP. It helps in parsing unstructured inputs e.g. mispronunciations, swapped words, contractions, colloquialisms, and other quirks.

Table of Contents

1. Prerequisite2. Java AIML Chatbot Example3. Add Custom Patterns in Chatbot4. Summary

1. Prerequisite

Reference AIML Implementation - To get started, we shall use an already working reference application. There is one such java based implementation called program-ab hosted on google-code repository. Download the program-ab latest distribution from google code repository.

Eclipse and Maven - for coding and development.

2. Java AIML Chatbot Example

Follow these simple steps for building your first Chatbot application.

2.1. Download Unzip the program-ab distribution

We need to first unzip the program-ab distribution to a convenient folder. We will need to take Ab.jar and existing AIML rules from it.

2.2. Create eclipse project

Create eclipse maven project to start the development. So let's create a maven project with .

2.3. Create project and import AIML library

Create eclipse maven project to start the development. Choose packaging as jar and GAV coordinate as your choice and import to eclipse. Now create a folder lib in the base folder and copy the Ab.jar from the program-ab distribution to this folder.

2.4. Add AIML to classpath

To add AIML to classpath, add Ab.jar to deployment assembly in eclipse. Alternatively you can install this jar into your local maven repository and then use it.

Add below AIML maven dependency to pom.xml. Now build the maven project by command mvn clean install.

 <dependencies>
	<dependency>
		<artifactId>com.google</artifactId>
		<groupId>Ab</groupId>
		<version>0.0.4.3</version>
		<scope>system</scope>
		<systemPath>${basedir}/lib/Ab.jar</systemPath>
	</dependency>
</dependencies>

2.5. Copy default AIML rules

Copy the bots folder from program-ab directory into the resources folder of your maven project. This folder contains default AIML sets that we will use initially. Later we will see how we can add our custom rules into our Chatbot.

2.6. Create Hello World Chatbot Program

Now create a simple java program i.e. Chatbot.java. It's main() method will invoke the chat program which will run on the command prompt. Basic structure of this program will be to introduce a infinite loop and in each loop take a user input from command prompt and then we will ask program-ab API to give the answer of the input provided by user.

More details about the program-ab API interaction is mentioned in the wiki link.

package com.howtodoinjava.ai;

import java.io.File;
import org.alicebot.ab.Bot;
import org.alicebot.ab.Chat;
import org.alicebot.ab.History;
import org.alicebot.ab.MagicBooleans;
import org.alicebot.ab.MagicStrings;
import org.alicebot.ab.utils.IOUtils;

public class Chatbot {
	private static final boolean TRACE_MODE = false;
	static String botName = "super";

	public static void main(String[] args) {
		try {

			String resourcesPath = getResourcesPath();
			System.out.println(resourcesPath);
			MagicBooleans.trace_mode = TRACE_MODE;
			Bot bot = new Bot("super", resourcesPath);
			Chat chatSession = new Chat(bot);
			bot.brain.nodeStats();
			String textLine = "";

			while(true) {
				System.out.print("Human : ");
				textLine = IOUtils.readInputTextLine();
				if ((textLine == null) || (textLine.length() < 1))
					textLine = MagicStrings.null_input;
				if (textLine.equals("q")) {
					System.exit(0);
				} else if (textLine.equals("wq")) {
					bot.writeQuit();
					System.exit(0);
				} else {
					String request = textLine;
					if (MagicBooleans.trace_mode)
						System.out.println("STATE=" + request + ":THAT=" + ((History) chatSession.thatHistory.get(0)).get(0) + ":TOPIC=" + chatSession.predicates.get("topic"));
					String response = chatSession.multisentenceRespond(request);
					while (response.contains("&lt;"))
						response = response.replace("&lt;", "<");
					while (response.contains("&gt;"))
						response = response.replace("&gt;", ">");
					System.out.println("Robot : " + response);
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private static String getResourcesPath() {
		File currDir = new File(".");
		String path = currDir.getAbsolutePath();
		path = path.substring(0, path.length() - 2);
		System.out.println(path);
		String resourcesPath = path + File.separator + "src" + File.separator + "main" + File.separator + "resources";
		return resourcesPath;
	}
}

2.7. Test Chatbot Interactions

Now our program is ready and we can now start conversation with chat. To do that just run the program as java application. To exit, you shall type q or wq.

Human : Hi
Robot : Hi! It's delightful to see you.
Human : How are you
Robot : Feeling really joyful today.
Human : My name is sajal
Robot : Glad to see you, Sajal
Human : what is my name
Robot : Sajal
Human : tell me my name
Robot : Sajal

Like this, you can do basic talk with the chat bot.

3. Add Custom Patterns in Chatbot

Now we can add our custom patterns in the bot to add more intelligence in the interactions. To do that create a new .aiml file in the aiml directory of your bot ( src\main\resources\bots\super\aiml) . Add as many categories in that file as you wish. Here category refer to the human questions and template refers to chat bot's response. I have created a file called a-custom-entry.aiml and added three questions as below.

<?xml version="1.0" encoding="UTF-8"?>
<aiml>
	<category><pattern>WHAT IS JAVA</pattern>
		<template>Java is a programming language.</template>
	</category>
	<category><pattern>WHAT IS CHAT BOT</pattern>
		<template>Chatbot is a computer program designed to simulate
		conversation with human users, especially over the Internet.</template>
	</category>
	<category><pattern>WHAT IS INDIA</pattern>
		<template>wonderful country.</template>
	</category>
</aiml>

Now we can ask bot these three questions as well.

Once our custom aiml file is ready, we need to do generate corresponding entries for other folders parallel to aiml. To do it, we need to invoke the bot.writeAIMLFiles(). I have created another java program called AddAiml.java for this purpose. Once you are done with the aiml editing, just run this program once before starting the bot. It will add these custom entries to the bot's brain.

package com.howtodoinjava.ai;

import java.io.File;
import org.alicebot.ab.Bot;
import org.alicebot.ab.MagicBooleans;

public class AddAiml {

	private static final boolean TRACE_MODE = false;
	static String botName = "super";

	public static void main(String[] args) {
		try {

			String resourcesPath = getResourcesPath();
			System.out.println(resourcesPath);
			MagicBooleans.trace_mode = TRACE_MODE;
			Bot bot = new Bot("super", resourcesPath);

			bot.writeAIMLFiles();

		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private static String getResourcesPath() {
		File currDir = new File(".");
		String path = currDir.getAbsolutePath();
		path = path.substring(0, path.length() - 2);
		System.out.println(path);
		String resourcesPath = path + File.separator + "src" + File.separator + "main" + File.separator + "resources";
		return resourcesPath;
	}
}

3.1. Test custom chat patterns

After running the AddAiml, once you have added the new entries into the AIML, run the chat bot program again and ask the new questions. It should give proper response.

In my case, here is the output.

Human : What is java
Robot : Java is a programming language.
Human : what is chat bot
Robot : Chatbot is a computer program designed to simulate
		conversation with human users, especially over the Internet.
Human : what is india
Robot : wonderful country.

4. Summary

In this AIML Java tutorial, we have learn to create simple command line based chatbot program with program-ab reference application. Next time, when you have any such requirement, you can think of AIML based chat bot. It is capable to doing moderate stuffs easily.

To enhance your knowledge, you may try to -

Play with AIML and create more interesting conversations. AIML has many tags which you can use, it also give some option to configure Sraix to invoke external REST based web services.

Add your own custom placeholder in the template section and parse that from the AIML response and do more based on your identifier in the response, like You can able to invoke your own web service to get some more information.

Convert this command line chat program to web based chat, I am currently working on that and will publish a followup post on that.

You can add your custom rule engine on top of your AIML response to do more.

AIML can do lots of things, but now a days much more sophisticated techniques are available specially in the Machine Learning space, try to learn those as well.

I have deleted the Ab.jar file from this source code distribution due to the size restriction. Please add the jar file from program-ab distribution that you have downloaded initially.

Happy Learning !!

# data[].attributes.attachment_link.title
Java chatbot example using aiml library - HowToDoInJava

# data[].attributes.attachment_link.description
In this Java AIML tutorial, we will learn to create simple chatbot program in Java. A Chatbot is an application designed to simulate the conversation with human users, especially over the Internet. Internally it uses any NLP (Natural Language Processing) system to interpret the human interactions and reply back with meaningful information.

# data[].attributes.body
List your inquiries regarding this chapter here

Co-develop your knowledge on Ch5 and share it https://docs.google.com/document/d/141n58aKDbQcP9U0CcwTQnLdAQlbKGGveKQrOcYuNR6Q/edit?usp=sharing

# data[].attributes.attachment_link.readable_text
In this article, we'll go over an overview of Artificial Intelligence (AI) libraries in Java.

Since this article is about libraries, we'll not make any introduction to AI itself. Additionally, theoretical background of AI is necessary in order to use libraries presented in this article.

AI is a very wide field, so we will be focusing on the most popular fields today like Natural Language Processing, Machine Learning, Neural Networks and more. In the end, we'll mention few interesting AI challenges where you can practice your understanding of AI.

2. Expert Systems
2.1. Apache Jena
Apache Jena is an open source Java framework for building semantic web and linked data applications from RDF data. The official website provides a detailed tutorial on how to use this framework with a quick introduction to RDF specification.

2.2. PowerLoom Knowledge Representation and Reasoning System

PowerLoom is a platform for the creation of intelligent, knowledge-based applications. It provides Java API with detailed documentation which can be found on this link.

2.3. d3web

d3web is an open source reasoning engine for developing, testing and applying problem-solving knowledge onto a given problem situation, with many algorithms already included. The official website provides a quick introduction to the platform with many examples and documentation.

2.4. Eye

Eye is an open source reasoning engine for performing semi-backward reasoning.

2.5. Tweety

Tweety is a collection of Java frameworks for logical aspects of AI and knowledge representation. The official website provides documentation and many examples.

3. Neural Networks

3.1. Neuroph

Neuroph is an open source Java framework for neural network creation. Users can create networks through provided GUI or Java code. Neuroph provides API documentation which also explains what neural network actually is and how it works.

3.2. Deeplearning4j

Deeplearning4j is a deep learning library for JVM but it also provides API for neural network creation. The official website provides many tutorials and simple theoretical explanations for deep learning and neural networks.

4. Natural Language Processing

4.1. Apache OpenNLP

Apache OpenNLP library is a machine learning based toolkit for the processing of natural language text. The official website provides API documentation with information on how to use the library. Here is an Introduction to Apache OpenNLP.

4.2. Stanford CoreNLP

Stanford CoreNLP is the most popular Java NLP framework which provides various tools for performing NLP tasks. The official website provides tutorials and documentation with information on how to use this framework.

5. Machine Learning

5.1. Java Machine Learning Library (Java-ML)

Java-ML is an open source Java framework which provides various machine learning algorithms specifically for programmers. The official website provides API documentation with many code samples and tutorials.

5.2. RapidMiner

RapidMiner is a data science platform which provides various machine learning algorithms through GUI and Java API. It has a very big community, many available tutorials, and an extensive documentation.

5.3. Weka

Weka is a collection of machine learning algorithms which can be applied directly to the dataset, through the provided GUI or called through the provided API. Similar as for RapidMiner, a community is very big, providing various tutorials for Weka and machine learning itself.

5.4. Encog Machine Learning Framework

Encong is a Java machine learning framework which supports many machine learning algorithms. It's developed by Jeff Heaton from Heaton Research. The official website provides documentation and many examples.

6. Genetic Algorithms

6.1. Jenetics

Jenetics is an advanced genetic algorithm written in Java. It provides a clear separation of the genetic algorithm concepts. The official website provides documentation and a user guide for new users.

6.2. Watchmaker Framework

Watchmaker Framework is a framework for implementing genetic algorithms in Java. The official website provides documentation, examples, and additional information about the framework itself.

6.3. ECJ 23

ECJ 23 is a Java based research framework with strong algorithmic support for genetic algorithms. ECJ is developed at George Mason University's ECLab Evolutionary Computation Laboratory. The official website provides extensive documentation and tutorials.

6.4. Java Genetic Algorithms Package (JGAP)

JGAP is a genetic programming component provided as a Java framework. The official website provides documentation and tutorials.

6.5. Eva

Eva is a simple Java OOP evolutionary algorithm framework.

7. Automatic programming

7.1. Spring Roo

Spring Roo is a lightweight developer tool from Spring. It's using AspectJ mixins to provide separation of concerns during round-trip maintenance.

7.2. Acceleo

Acceleo is an open source code generator for Eclipse which generates code from EMF models defined from any metamodel (UML, SysML, etc.).

8. Challenges

Since AI is very interesting and popular topic, there are many challenges and competitions online. This is a list of some interesting competitions where you can train and test your skills:

9. Conclusion

In this article, we presented various Java AI frameworks which can be used in everyday work.

We also saw that AI is a very wide field with many frameworks and services - all of which can make your applications better and more innovative.

# data[].attributes.attachment_link.title
Overview of AI Libraries in Java | Baeldung

# data[].attributes.attachment_link.description
In this article, we'll go over an overview of Artificial Intelligence (AI) libraries in Java. Since this article is about libraries, we'll not make any introduction to AI itself. Additionally, theoretical background of AI is necessary in order to use libraries presented in this article.

# data[].attributes.body
Search.

# data[].attributes.body
List your inquiries regarding this chapter here

# data[].attributes.body
List your inquiries regarding this chapter here

Co-develop your knowledge on Ch6 and share it
https://docs.google.com/document/d/1iafXqKl5-yVcD1kaKcJ7WMwF4AhaH69XwBYnZaIxz40/edit?usp=sharing

# data[].attributes.attachment_link.description
Zoom is the leader in modern enterprise video communications, with an easy, reliable cloud platform for video and audio conferencing, chat, and webinars across mobile, desktop, and room systems. Zoom Rooms is the original software-based conference room solution used around the world in board, conference, huddle, and training rooms, as well as executive offices and classrooms. Founded in 2011, Zoom helps businesses and organizations bring their teams together in a frictionless environment to get more done.

# data[].attributes.attachment_link.title
What's the difference between machine learning, AI, and NLP?

# data[].attributes.attachment_link.description
Answer (1 of 33): Let's put NLP aside for now. Let's say you want to build a computer algorithm to play tic-tac-toe. In the case of AI, you will give it rules, and take it by its hand to learn how to play.

# data[].attributes.body
Hi everyone. This is about health problem for expert system.

# data[].attributes.body
Additional slide for ch3

# data[].attributes.headline
Illustration for Crystal's Expert System

# data[].attributes.subject
Illustration for Crystal's Expert System

# data[].attributes.body
This is the interface that we imagined to be in the expert system :)

# data[].attributes.body
Group name: Crystal
Members: Ain, Arissa, Azizah, Mardhiah

# data[].attributes.body
Group : Zifasal
Group member:
1) Hazira
2) Faezah
3) Syifa

# data[].attributes.body
Group faezah , syifa , epa , aina , sasha

# data[].attributes.body
https://infograph.venngage.com/ps/oSFlTXLTX4/intelligence?fbclid=IwAR2Itd_LpeC2ZEQq_lqpsfMLNGx4059cahcRHrzI9HgNQS6PxWWIWetNlaM

# data[].attributes.body
Hi guys, for those who have time and interested.. Can watch this video.. You guys can look out at Tech Insider in YouTube for more..

# data[].attributes.attachment_link.title
Alexis Ohanian Isn't Afraid Of Robots Taking Over Humanity | IGNITION 2018

# data[].attributes.body
Hi everyone. This is the padlet from my previous class

# data[].attributes.attachment_link.description
This course covers concepts and techniques of data mining, which include data pre-processing, as well as data mining functions and software. The chosen techniques are applied in the data mining problem solving.

# data[].attributes.body
https://m.facebook.com/story.php?story_fbid=1654321671364377&id=100003596802126

# data[].attributes.headline
Intelligent That Characterizes An Intelligent Computing Application

# data[].attributes.subject
Intelligent That Characterizes An Intelligent Computing Application

# data[].attributes.body
Group: Shahirah, Hazirah, Amanina, Aishah, Ainy

# data[].attributes.body
Arissa,Ain,Azizah, Mardiah,Kirtana

# data[].attributes.body
Kirtana, Mardiah, Ain,Arissa,Azizah

# data[].attributes.body
Draft for Group faezah

# data[].attributes.body
From right faezah , syifa , aina , sasha , epa

# data[].attributes.body
prepare an infographic (poster) that explains about the intelligence that characterises an intelligent computing apps. In your infographic, create pictures, write infos, put your pictures and include the references. To complete this activity, you need to COLLABORATIVELY share information and build the poster. At 11.50, pls upload a wefie of your group and snap the drafts of your poster (may not be in the infographic yet, but most importantly you've got some info)

# data[].attributes.body
Computational Intelligence (CI) approaches the creation of a reasoning or thinking similar to the ones human beings perform.  In other other it intends to develope a system that will solve issues based of past experiences as humans.

# data[].attributes.body
A definition found on a science website says it is the study of the design of “intelligent agents.” That may be confusing, and so the website goes on to define an agent as “ something that acts in an environment.” Agents act. Worms do that, and so do people and thermostats. An intelligent agent is one that acts in a way that is appropriate for the circumstances to achieve a goal. The intelligent agent learns and adapts.

# data[].attributes.attachment_link.readable_text
Technology depends upon discovery, and discovery upon the advancement of technology; that is certainly the case with Computational Intelligence. It is almost a "catch 22" situation. Good science produces theories that are explored through experimentation and the experiments depend upon the theories for direction. The discipline of CI is a new one with ancient roots.

What is Computational Intelligence?

A definition found on a science website says it is the study of the design of "intelligent agents." That may be confusing, and so the website goes on to define an agent as " something that acts in an environment." Agents act. Worms do that, and so do people and thermostats. An intelligent agent is one that acts in a way that is appropriate for the circumstances to achieve a goal. The intelligent agent learns and adapts.

Another name associated with CI is artificial intelligence. The example of intelligent life generally cited is the human, but there is something more intelligent. Organizations contain the sum of skills that make them more intelligent than one individual. The same is true of ants. One ant is probably not very intelligent, but the colony is able to use its skills to find food and construct dwellings. CI devices work much the same way through experimentation with computer systems.

What is the Difference Between AI and CI?

The two terms are basically the same. The primary goal of each is to understand what makes intelligence possible. That study covers intelligence in nature and in artificial systems. Instead of the term "artificial," many scientists prefer synthetic. The reason is in the inferences made from the terms. "Artificial" denotes something that is not real. "Synthetic" means something that is synthesized but still real in the way that a synthetic pearl is still a pearl, although it is not natural. These agents are synthesized to investigate hypotheses. The primary question is whether reasoning is based on algorithms. Scientists postulate ideas that engineers use to create "artifacts" such as computers that are able to perform many tasks that we generally view as intelligent.

How Is the Science Used ?

Although the primary goal of the science is understanding intelligence and not the construction of intelligent machines, experiments have resulted in some beneficial creations. The website Wise Geek lists robotics as one example. People have been trying to synthesize intelligence since ancient times. A story from the third century BC is about a man who develops an artificial man and takes him to show his king, who is duly impressed. Robot toys have been around since the early part of the twentieth century. The toys moved and, in some cases, responded to commands. The newest robots, however, have sensory devices that allow them not only to respond but to act according to the information they receive through their sensors. Robots are used to detect explosives and then to disarm or explode them, saving human lives. Automatic vacuums learn the dimensions and layouts of a home and then are able to function by themselves. Voice recognition intelligence is used in cell phones and cars, and enables security systems to protect against hackers. The computer learns the voice patterns of the owner or manager and responds to commands that are issued in that pattern.

Although man has been dreaming for centuries about creating synthetic intelligence, the science is young. As scientists learn more from the experiments, they develop more theories . These, in turn, lead to more experiments. The things that can, and no doubt will arise from Computational Intelligence will make the future look vastly different for all of us.

See also: Top 20 Artificial Intelligence Engineering Schools in the U.S. 2016

# data[].attributes.attachment_link.description
Technology depends upon discovery, and discovery upon the advancement of technology; that is certainly the case with Computational Intelligence. It is almost a "catch 22" situation. Good science produces theories that are explored through experimentation and the experiments depend upon the theories for direction. The discipline of CI is a new one with ancient roots.

# data[].attributes.body
Computational Intelligence is something that tries to immitate human-behavior, and then try to find a solution to a complex problem, consisting of not so perfect/clear situation. In other words, these problems couldn't be solved with classic mathematical calculations.
In order to acomplish this, it follows one or more of the following princilpes -
1. Fuzzy Logic
2. Neural Networks
3. Evolutionary computation
4. Learning theory
5. Probabilistic methods

Artificial Intelligence solves problems, which have clear data and output, in the form of 1's or 0's. Thus, AI works more on hard-computing techniques, where they only work on binary system.

# data[].attributes.attachment_link.readable_text
Technology depends upon discovery, and discovery upon the advancement of technology; that is certainly the case with Computational Intelligence. It is almost a "catch 22" situation. Good science produces theories that are explored through experimentation and the experiments depend upon the theories for direction. The discipline of CI is a new one with ancient roots.

What is Computational Intelligence?

A definition found on a science website says it is the study of the design of "intelligent agents." That may be confusing, and so the website goes on to define an agent as " something that acts in an environment." Agents act. Worms do that, and so do people and thermostats. An intelligent agent is one that acts in a way that is appropriate for the circumstances to achieve a goal. The intelligent agent learns and adapts.

Another name associated with CI is artificial intelligence. The example of intelligent life generally cited is the human, but there is something more intelligent. Organizations contain the sum of skills that make them more intelligent than one individual. The same is true of ants. One ant is probably not very intelligent, but the colony is able to use its skills to find food and construct dwellings. CI devices work much the same way through experimentation with computer systems.

What is the Difference Between AI and CI?

The two terms are basically the same. The primary goal of each is to understand what makes intelligence possible. That study covers intelligence in nature and in artificial systems. Instead of the term "artificial," many scientists prefer synthetic. The reason is in the inferences made from the terms. "Artificial" denotes something that is not real. "Synthetic" means something that is synthesized but still real in the way that a synthetic pearl is still a pearl, although it is not natural. These agents are synthesized to investigate hypotheses. The primary question is whether reasoning is based on algorithms. Scientists postulate ideas that engineers use to create "artifacts" such as computers that are able to perform many tasks that we generally view as intelligent.

How Is the Science Used ?

Although the primary goal of the science is understanding intelligence and not the construction of intelligent machines, experiments have resulted in some beneficial creations. The website Wise Geek lists robotics as one example. People have been trying to synthesize intelligence since ancient times. A story from the third century BC is about a man who develops an artificial man and takes him to show his king, who is duly impressed. Robot toys have been around since the early part of the twentieth century. The toys moved and, in some cases, responded to commands. The newest robots, however, have sensory devices that allow them not only to respond but to act according to the information they receive through their sensors. Robots are used to detect explosives and then to disarm or explode them, saving human lives. Automatic vacuums learn the dimensions and layouts of a home and then are able to function by themselves. Voice recognition intelligence is used in cell phones and cars, and enables security systems to protect against hackers. The computer learns the voice patterns of the owner or manager and responds to commands that are issued in that pattern.

Although man has been dreaming for centuries about creating synthetic intelligence, the science is young. As scientists learn more from the experiments, they develop more theories . These, in turn, lead to more experiments. The things that can, and no doubt will arise from Computational Intelligence will make the future look vastly different for all of us.

See also: Top 20 Artificial Intelligence Engineering Schools in the U.S. 2016

# data[].attributes.attachment_link.description
Technology depends upon discovery, and discovery upon the advancement of technology; that is certainly the case with Computational Intelligence. It is almost a "catch 22" situation. Good science produces theories that are explored through experimentation and the experiments depend upon the theories for direction. The discipline of CI is a new one with ancient roots.

# data[].attributes.body
Computational intelligence gent is the study of adaptive mechanisms that enable intelligent behaviour in complex and changing environment. It also imitates the human-behaviour to find a solution to complex problem.
https://youtu.be/1MxtaH30pNY

# data[].attributes.body
https://hackernoon.com/artificial-intelligence-a-brief-overview-4459fd16408b
Artificial Intelligence is the hot tech paradigm of the moment. It is the subject of a great deal of media hype, woes and mythologising. It seems worthwhile, therefore, to try to set the scene, look at some definitions, and see where it is currently being applied.

With regard to definitions, well that is unfortunately not quite so straightforward. Terms such as ‘neural network’, ‘deep learning’ and ‘general AI’ are used frequently in the media, and often interchangeably. The OED defines ‘artificial intelligence’ as ‘…the theory and development of computer systems able to perform tasks normally requiring human intelligence, such as visual perception, speech recognition, decision-making, and translation between languages.’

The word ‘intelligence’ derives from the Latin terms intelligentia and intellēctus, which originally roughly translated as the ability to perceive, comprehend or understand something. More recently intelligence has served in many ways as a catch-all term to include the ability to demonstrate logical coherence, show reason, behave autonomously and to be adaptable to situations. The term has also widened through the work of Howard Gardner and others to include emotional intelligence, spatial awareness, kinesthetic intelligence, and many more aspects besides.

# data[].attributes.body
AI is an area of study in Computer Science that focuses on creating computer systems that perform tasks that require human intelligence. This can include visual perception, decision-making, translation, and even speech recognition.

# data[].attributes.attachment_link.provider_name
Becoming Human: Artificial Intelligence Magazine

# data[].attributes.attachment_link.readable_text
In the recent decade, artificial intelligence, also known as AI, has gained popularity. However, most of us have only seen the movies about it. There have been movies, like AI in 2001, where robots have human intelligence and human-like features but lack emotion. Although we still haven't reached the movie levels of artificial intelligence, there are so many breakthroughs from the research done in the field. Today, we have machinery to replace humans so they don't have to work in hostile conditions. The automobile market is also starting to promote autonomous driving cars, which is in the scope of AI. We still ask the question though, what is artificial intelligence?

What is Artificial Intelligence?

To answer this question, you would have to open your mind up to the possibilities of the human brain. Artificial Intelligence is a very broad field wherein it cannot be just defined by robots and machines. AI is an area of study in Computer Science that focuses on creating computer systems that perform tasks that require human intelligence. This can include visual perception, decision-making, translation, and even speech recognition.
Artificial Intelligence Graduate Programs
Computer science and artificial intelligence go hand-in-hand towards creating AI development. Students who are interested in machine intelligence require basic knowledge in many aspects of computer science like computational language and algorithms. There are artificial intelligence courses in the US offered by multiple colleges. However, there may be some pre-requisites for AI courses. Many universities and colleges that offer artificial intelligence graduate courses have faculty members that are on top of the AI game. The faculty members in universities are part of research groups or are industry leaders in AI development.
Advantages of having a Master's degree in Computer Science and Artificial Intelligence
There are multiple advantages to getting your master's degree in computer science with a specialization in artificial intelligence. As it was mentioned earlier, artificial intelligence in itself is a broad scope as it branches out to other specific areas of study. Meanwhile, there are those who focus on the engineering side of AI and others focus on the programming language. Together, these two groups create and develop real products. But, what are the advantages of taking up a master's degree in AI? Well, here are some of what we've come up with:

Salary: Since there is a huge gap between the supply and demand of experts in the AI field, graduates will average about $140k per year in salary. This salary average is actually expected to increase as there aren't a lot of people going into this profession.

Knowledge: If you are like others who are "hungry for knowledge," then this program would definitely be one for the books. The in-depth knowledge you will learn during your time studying computer science and artificial intelligence will bring about professional skills and machine learning frameworks.

Opportunities: By completing a master's degree and a PhD in AI, you're opening doors to new opportunities. Many universities have industry partners and affiliates wherein students will have the opportunity to use their knowledge in real life situations.

Networking: Not only will you gain a higher salary, in-depth knowledge, and better job opportunities, you will also be able to meet the best people in the industry. Both master's and PhD programs will also allow you to work together with the leaders in the industry.

Artificial Intelligence Courses in USA: College and University List
While there are a lot of colleges and universities offering Artificial Intelligence courses in the US, we will be sharing with you our top ten choices. In each school, we'll provide a short excerpt of what you can expect from each university.
Rice University https://csweb.rice.edu/algorithms-artificial-intelligence-research-areas
Rice University offer its students who are interested in the Artificial Intelligence program the newest technological advances in the field. While using these advances, students will be able to work in groups for research to learn from existing methodologies and develop new ones. Rice University's AI program also has algorithm courses that will help students be ready for data analysis and computational work.
University of Connecticut http://www.engr.uconn.edu/~jinbo/Spring2015_Artificial_Intelligence.htm
The University of Connecticut offers two graduate programs in the field of Artificial Intelligence, which are Master of Science or Master of Engineering degrees. The former program focuses on computer systems and language development while the latter focuses on building systems. However, both programs still allow students to learn reasoning, machine learning, natural language processing, and knowledge representation in intelligent machines. UConn's programs require students to work hand-in-hand with faculty members and colleagues to develop their own intelligent machine.
Brown Graduate School https://cs.brown.edu/research/areas.html
Studying at Brown University's graduate school computer science program can allow students interested in Artificial Intelligence to perform research tasks. Students are expected to gain more knowledge in subjects like machine perception, natural language interpretation, face and gesture recognition. Through theoretical and empirical studies, students in the university's graduate program will know how to use theory- and application-based knowledge first-hand.
University of Michigan-Ann Arbor https://www.eecs.umich.edu/eecs/research/area.html?r_id=2
The University of Michigan-Ann Arbor's AI program provide students a multi-faceted team of faculty members to work in many areas of research in the field. Students will be able to perform theoretical and experimental investigations of both computer and intelligent systems. The university's program allows students to not just increase their knowledge in Artificial Intelligence but also in computer science, statistics, philosophy, psychology, and many others.
Cornell NYC Tech https://www.cs.cornell.edu/research/ai
Cornell University's artificial intelligence program has helped the world develop. The university houses faculty members who are leading in AI knowledge. It's also a home to a number of researchers in the field with the vision of improving research in machine learning. While Cornell only accepts a handful of students for their graduate programs in computer science, students who get accepted will be with like-minded individuals. Together, collaboration and cooperation is expected so that everyone can flourish in the program.
Duke Graduate School https://gradschool.duke.edu/academics/programs-degrees/computer-science
Duke's Graduate School offers master's and PhD programs in Computer Science with courses in Artificial Intelligence. Students will be able to collaborate with top-of-the-line researchers in the field and will have the opportunity to publish an academic paper or two. In addition, students will be able to work together with Stanford's industry partners. This provides a great addition to the professional skills students can use later on in their career.
Stanford University http://ai.stanford.edu/
Established in 1962, Stanford University's Department of Computer Science has a whole lab dedicated to learning Artificial Intelligence. From theory to practice, students will be able to partake in researches faculty members. Since research groups are part of the program, students will be able to collaborate with faculty and colleagues from different areas of specialization such as robotics, machine learning, autonomous driving, and computer vision.
University of Notre Dame Graduate School http://graduateschool.nd.edu/departments-and-programs/ph-d-programs/computer-science-and-engineering/
Students in the University of Notre Dame's graduate program will learn about artificial intelligence, computer vision, and data mining. AI courses in the university is complemented with Computer Science so that students can learn more about computer systems as well. The faculty members that students will get to work with specialize in a number of areas including in computer vision, artificial intelligence, and grid computing.
Brandeis University http://www.brandeis.edu/gsas/programs/computer_science.html
Brandeis University's Computer Science program offers artificial intelligence courses. Since AI is such a big field, students can expect to learn a lot like intelligent behavior, machine learning, cognitive science, and bioinformatics. This university also provides students with faculty members who have different specializations to work with.
University of Wisconsin - Madison http://guide.wisc.edu/graduate/computer-sciences/computer-sciences-ms/
The University of Wisconsin-Madison's computer science program offers great introductory Artificial Intelligence courses. Students can expect to learn AI search techniques and automation deduction. The courses puts importance on both knowledge-based representation and application-based tasks. Students will become knowledgeable on machine learning, probabilistic reasoning, and predicate logic. Some of the application-based tasks students can expect are problem solving, speech recognition, and robotics.

Come visit the CollegeHippo blog for more posts similar to this.

# data[].attributes.attachment_link.title
What is Artificial Intelligence? Why Should You Pursue a Higher Degree?

# data[].attributes.attachment_link.description
In the recent decade, artificial intelligence, also known as AI, has gained popularity. However, most of us have only seen the movies about it. There have been movies, like AI in 2001, where robots have human intelligence and human-like features but lack emotion.

# data[].attributes.headline
Affection of Artificial Intelligence in industries

# data[].attributes.subject
Affection of Artificial Intelligence in industries

# data[].attributes.attachment_link.provider_name
Becoming Human: Artificial Intelligence Magazine

# data[].attributes.attachment_link.readable_text
Down to its core, artificial intelligence (AI) describes the advanced process for a machine to make decisions based on logic. AI has already made a global impact with the creation of conversational chatbots, self-driving cars, and recommendation systems. AI is growing in its reputation among business leaders as an emerging asset to the workforce and is presently found in multiple industries already, transforming the the way businesses and societies operate.

Healthcare

The adoption of AI is on the rise inside the healthcare industry, solving a variety of problems, saving money and paving new roads to a broader understanding of health sciences. AI technologies in the healthcare industry are mostly used to efficiently collect individual patient data. Now we are seeing AI technology gather more in-depth data for more pressing conditions like asthma management, Parkinson's tremors and heart conditions.

Healthcare is even seeing assistance in AI-driven diagnostics that sort through massive amounts of data all at once to suggest possible conditions and ways to treat them. Inside the hospital, there is now AI-assisted anesthesia delivery and professional AI support during medical procedures. According to Health IT Analytics, "Revolutionary changes in health and health care are already beginning in the use of AI-based health and health care tools."

Trending AI Articles:

1. From Perceptron to Deep Neural Nets

2. Neural networks for solving differential equations

3. Turn your Raspberry Pi into homemade Google Home

Finance

AI is also dominating the finance market faster and more efficiently than humans - from managing investments, to collecting financial data and using predictive analytics to anticipate changes in the stock market, which big financial firms use as a guide for investment opportunities. Almost every company in the financial technology sector has already started using AI to save time, reduce costs and add value.

Customers that bank with Wells Fargo are now directed to an AI-driven chatbot when they want to discuss account information or reset their account password. JPMorgan Chase now uses AI as an image recognition software to analyze legal banking documents that extracts particular information and clauses in seconds compared to the 360,000 hours it takes to manually review 12,000 annual commercial credit agreements.

Education

Georgia Institute of Technology professor Goel, who teaches an artificial intelligence class, recently developed an AI chatbot to help answer specific student questions online. Goel told Digital Trends "We thought that if an AI TA (teacher assistant) would automatically answer routine questions that typically have crisp answers, then the (human) teaching staff could engage the students on the more open-ended questions." Some professors and teachers worry that AI technology may replace them in the near future, but many developers and educational technology researchers suggest that AI technology is meant to assist teachers rather than take their jobs.

This includes exploring where courses could be improved. From finding gaps in lectures during class to giving students extra educational support, AI technology can provide immensely helpful feedback to both educators and students to rapidly improve educational methods and refine the curriculum.

Transportation

Transportation is the most known industry where AI technology is discussed. While self driving cars and trucks may be the most anticipated developments, AI can go as far as collecting data from a variety of sources to optimize and adjust the shipping routes and simplify distribution networks.

According to Engadget, Japanese shipping companies want to build self-navigating cargo ships. "The plan is to implement an AI-driven steering system that could lay out the shortest, safest and most fuel-efficient routes based on information about things like weather and any obstacles that might be in a ship's way." Working alongside shipbuilders, their goal is to develop new technology that can predict malfunctions, reduce maritime accidents and improve efficiency.

Artificial intelligence is steadily transforming day-to-day businesses and way of life. With further analytical developments and improvements in AI-driven technology, and the further we push AI logical processing, society will redefine efficiency.

# data[].attributes.attachment_link.title
4 Industries Artificial Intelligence Is Transforming

# data[].attributes.attachment_link.description
Down to its core, artificial intelligence (AI) describes the advanced process for a machine to make decisions based on logic. AI has already made a global impact with the creation of conversational chatbots, self-driving cars, and recommendation systems. AI is growing in its reputation among business leaders as an emerging asset to the workforce and is presently found in multiple industries already, transforming the the way businesses and societies operate.

# data[].attributes.body
AI is a system’s ability to correctly interpret external data, to learn from such data, and to use those learnings to achieve specific goals and tasks through flexible adaptation. Colloquially, the term "artificial intelligence" is applied when a machine mimics "cognitive" functions that humans associate with other human minds, such as "learning" and "problem solving".

Source - wikipedia https://en.m.wikipedia.org/wiki/Artificial_intelligence

# data[].attributes.body
Computer intelligent is content of human after all human of the most intelligent in the creatures in the world. The goal of Artificial Intelligent is to create system that can function intelligently.

# data[].attributes.attachment_link.title
What is Artificial Intelligence? In 5 minutes.(Part 2 link in Description)

# data[].attributes.body
Learning
http://popplet.com/app/#/5363285
Instructions:
When you have received email from popplet, please create the mindmap fro your chapter. The mindmap will be your notes for this chapter

# data[].attributes.body
Computational intelligence is the study of the design of intelligent agents. An agent is something that acts in an environment—it does something. Agents include worms, dogs, thermostats, airplanes, humans, organizations, and society. An intel- ligent agent is a system that acts intelligently: What it does is appropriate for its circumstances and its goal, it is flexible to changing environments and changing goals, it learns from experience, and it makes appropriate choices given perceptual limitations and finite computation.

# data[].attributes.headline
Artificial intelligence (AI) is an area of computer science that emphasizes the creation of intelligent machines that work and react like humans. 

# data[].attributes.subject
Artificial intelligence (AI) is an area of computer science that emphasizes the creation of intelligent machines that work and react like humans. 

# data[].attributes.attachment_link.title
What is Artificial Intelligence (or Machine Learning)?

# data[].attributes.body
Merriam-Webster defines artificial intelligence this; A branch of computer science dealing with the simulation of intelligent behavior in computer and e capability of a machine to imitate intelligent human behavior.

The Encyclopedia Britannica states, “artificial intelligence (AI), the ability of a digital computer or computer-controlled robot to perform tasks commonly associated with intelligent beings.” Intelligent beings are those that can adapt to changing circumstances.

# data[].attributes.attachment_link.readable_text
Discussions of artificial intelligence (AI) have created a certain amount of unease by those who fear it will quickly evolve from being a benefit to human society to taking over. Even Stephen Hawking and Elon Musk have warned of AI's threats. However, we're not all operating from the same definition of the term and while the foundation is generally the same, the focus of artificial intelligence shifts depending on the entity that provides the definition. Let's look at 6 definitions of artificial intelligence and see how some of the industry's leaders are focusing their AI research efforts.

John McCarthy first coined the term artificial intelligence in 1956 when he invited a group of researchers from a variety of disciplines including language simulation, neuron nets, complexity theory and more to a summer workshop called the Dartmouth Summer Research Project on Artificial Intelligence to discuss what would ultimately become the field of AI. At that time, the researchers came together to clarify and develop the concepts around "thinking machines" which up to this point had been quite divergent. McCarthy is said to have picked the name artificial intelligence for its neutrality; to avoid highlighting one of the tracks being pursued at the time for the field of "thinking machines" that included cybernetics, automata theory and complex information processing. The proposal for the conference said, "The study is to proceed on the basis of the conjecture that every aspect of learning or any other feature of intelligence can in principle be so precisely described that a machine can be made to simulate it."

Today, modern dictionary definitions focus on AI being a sub-field of computer science and how machines can imitate human intelligence (being human-like rather than becoming human). The English Oxford Living Dictionary gives this definition: "The theory and development of computer systems able to perform tasks normally requiring human intelligence, such as visual perception, speech recognition, decision-making, and translation between languages."

Merriam-Webster defines artificial intelligence this way:

1. A branch of computer science dealing with the simulation of intelligent behavior in computers.

2. The capability of a machine to imitate intelligent human behavior.

The Encyclopedia Britannica states, "artificial intelligence (AI), the ability of a digital computer or computer-controlled robot to perform tasks commonly associated with intelligent beings." Intelligent beings are those that can adapt to changing circumstances.

Definitions of artificial intelligence begin to shift based upon the goals that are trying to be achieved with an AI system. Generally, people invest in AI development for one of these three objectives:

1. Build systems that think exactly like humans do ("strong AI")

2. Just get systems to work without figuring out how human reasoning works ("weak AI")

3. Use human reasoning as a model but not necessarily the end goal

Turns out that the bulk of the AI development happening today by industry leaders falls under the third objective and uses human reasoning as a guide to provide better services or create better products rather trying to achieve a perfect replica of the human mind.

Amazon builds a lot of its business on machine-learning systems (as a subset of AI) and defines AI as "the field of computer science dedicated to solving cognitive problems commonly associated with human intelligence, such as learning, problem solving, and pattern recognition." Machine learning is so important to Amazon, they stated, "Without ML, Amazon.com couldn't grow its business, improve its customer experience and selection, and optimize its logistic speed and quality."

While some of the major tech companies haven't published a dictionary-type definition for AI, we can extrapolate how they define the importance of AI by reviewing their research areas.

Machine and deep learning are the priority for Google AI and its tools to "create smarter, more useful technology and help as many people as possible" from translations to healthcare to making our smartphones even smarter. Facebook AI Research is committed to "advancing the file of machine intelligence and are creating new technologies to give people better ways to communicate." IBM 's three areas of focus include AI Engineering, building scalable AI models and tools; AI Tech where the core capabilities of AI such as natural language processing, speech and image recognition and reasoning are explored and AI Science, where expanding the frontiers of AI is the focus.

In 2016, several industry leaders including Amazon, Apple, DeepMind, Google, IBM and Microsoft joined together to create Partnership on AI to Benefit People and Society to develop and share best practices, advance public understanding, provide an open platform for discussion and to identify aspirational effort in AI for socially beneficial purposes.

Those working with AI today make it a priority to define the field for the problems it will solve and the benefits the technology can have for society. It's no longer a primary objective for most to get to AI that operates just like a human brain, but to use its unique capabilities to enhance our world.

# data[].attributes.attachment_link.title
The Key Definitions Of Artificial Intelligence (AI) That Explain Its Importance

# data[].attributes.attachment_link.description
Since the first use of the term artificial intelligence in 1956, the field of AI has grown and has the attention of all industries, splintered into specialized areas and evolved into creating AI tools and services that complement humans. Here are 6 definitions of AI and a look at.

# data[].attributes.headline
Artificial intelligence (AI) is the simulation of human intelligence processes by machines, especially computer systems. These processes include learning (the acquisition of information and rules for using the information), reasoning (using rules to reach approximate or definite conclusions) and self-correction. 

# data[].attributes.subject
Artificial intelligence (AI) is the simulation of human intelligence processes by machines, especially computer systems. These processes include learning (the acquisition of information and rules for using the information), reasoning (using rules to reach approximate or definite conclusions) and self-correction. 

# data[].attributes.body
An intelligent system is a machine with an embedded, Internet-connected computer that has the capacity to gather and analyze data and communicate with other systems. Other criteria for intelligent systems include the capacity to learn from experience, security, connectivity, the ability to adapt according to current data and the capacity for remote monitoring and management.

# data[].attributes.body
Artificial Intelligence (AI) is the branch of computer sciences that emphasizes the development of intelligence machines, thinking and working like humans. For example, speech recognition, problem-solving, learning and planning. Example: Siri

# data[].attributes.attachment_link.title
What is Artificial Intelligence? In 5 minutes.(Part 2 link in Description)

# data[].attributes.body
Intelligent system is a system that uses AI. AI consists of several components which allows a system to 'think' which depends on the algorithm used eg machine learning (consisting  of neural network, decision tree, bayes etc)
.

# data[].attributes.attachment_link.readable_text
If many of your clients don't understand the difference between artificial intelligence (AI) and intelligent systems, you're not alone. There's a deeply rooted misconception about AI that isn't going to clear up anytime soon.

AI has become a marketing buzzword and is being used interchangeably with computer algorithms that analyze data and produce a solution. For the majority of the population, this misunderstanding isn't a problem.

However, when entrepreneurs and corporations start to pursue the development of their own intelligent projects, the lack of understanding can drive data scientists - and programmers - crazy.

Since AI seems to be what everyone wants, it appears that marketing messages are being constructed that tell people everything is AI when in fact, it's not.

Instead of getting frustrated, here's how you can help your clients understand what AI really is when they ask for an AI solution.
1. Explain that AI is marketed just like any other product
The most effective way to help your client understand when the solution they want isn't actually AI is to explain that AI is marketed just like any other product. Everyone wants AI, so marketing messages tell people that everything they do is AI.

To a non-data scientist, it seems logical that if a computer predicts anything, it must be artificial intelligence. This isn't true, and you'll need to use familiar examples to override your clients' beliefs.
2. Explain artificial intelligence to clients using familiar examples
Long before AI existed, machine learning was used to optimize actions based on patterns in data. Only when deep neural networks and reinforcement learning were applied did true AI emerge. It's these two tools that gave rise to real AI like self-driving cars and machines that can read MRIs to determine if cancer is present.

Explain to your client that self-driving cars would never be allowed on the road if it weren't for reinforcement learning and deep neural networks, and that each time a self-driving car encounters a new experience, it learns more, and that learning can be added to every other self-driving car's programming. That's how they were developed.
3. Distinguish intelligent systems from AI
According to Forbes.com, "artificial intelligence is the broader concept of machines being able to carry out tasks in a way that we would consider "smart." Computers that are authentically utilizing AI technology are taught to think and learn for themselves, just like humans. This is in contrast to programming a computer with information and an algorithm to make decisions.

Explain to your client that intelligent systems work with patterns just like AI, except intelligent systems don't have the deep neural networks that support self-learning. In today's tech world, intelligent systems are being used by nearly everyone on a daily basis. Chances are, your client is familiar with at least one you can use as an example.

For instance, context-aware intrusion prevention systems (IPS) are now being used to increase security by scanning WAN and internet traffic. Cato Networks, for example, provides this context-aware protection with no capacity constraints. This is unusual for the industry but made possible by intelligent systems.

Cato's intelligent system can detect suspicious traffic patterns and stop traffic from specific countries. It can use Active Directory to recognize user identity and perform true filetype inspection to prevent attacks.
4. Use the analogy: "a square is a rectangle, but a rectangle isn't a square"
In school, you might remember learning that a square is a rectangle, but a rectangle isn't a square. A rectangle is a quadrilateral with four right angles, and a square is a quadrilateral with four right angles and four sides of the same length. By this definition, a square is most definitely a rectangle.

By this same kind of logic, it can be explained that AI is being applied by using machine learning, but machine learning alone doesn't constitute artificial intelligence. Machine learning is when computers can train themselves and adapt their own programming to the task. This is part of AI, but not AI itself.
Be careful if clients still don't understand
Sometimes you need to let go of trying to educate a client on the technicalities they don't understand. However, if you choose to proceed with a project for a client who insists on calling your intelligent solution AI, you need to be careful.

Avoid using the terms AI or artificial intelligence in your contracts to avoid being sued for not delivering on the project. Consult with your lawyer to create a clause that explains why your solution isn't technically AI, and have the client initial that specific paragraph to indicate full understanding.

# data[].attributes.attachment_link.title
Intelligent Systems Vs. Artificial Intelligence: How To Help Your Clients

# data[].attributes.attachment_link.description
If many of your clients don't understand the difference between artificial intelligence (AI) and intelligent systems, you're not alone. There's a deeply rooted misconception about AI that isn't going to clear up anytime soon. AI has become a marketing buzzword and is being used interchangeably with computer algorithms that analyze data and produce a solution.

# data[].attributes.body
This article for the layman answers basic questions about artificial intelligence. The opinions expressed here are not all consensus opinion among researchers in AI.

# data[].attributes.body
Hi I'm Thasshwinthiran , from serdang, computer science (system computer)

# data[].attributes.headline
Saya Aishah Binti Ramli. Asal Kuala Selangor, Selangor.. 

# data[].attributes.subject
Saya Aishah Binti Ramli. Asal Kuala Selangor, Selangor.. 

# data[].attributes.body
I’m sasha syazana 😆

# data[].attributes.body
Hi.. I'm Siti Nur Shahirah.. From Sepang, Selangor..

# data[].attributes.body
Hai saya Faezah yang tudung hitam yg tudung biru tu dia ada IG shop _syifahijab.

# data[].attributes.body
Nur Arissa binti Zamri
21 tahun (dah genap)
Banting, Selangor

# data[].attributes.body
hi saya syifa(tudung biru) dan faezah(tudung hitam)

# data[].attributes.body
Hi... my name is Wan Mardhiah BT Wan Ayub... age 21. I am from Pasir Puteh, Kelantan. I am from Faculty of Computer Science and Information Technology

# data[].attributes.body
Hi... My name is Kirtana Nair a/p Gopalan. I'm 21 years old. My hometown is Seremban. Currently I'm doing Bachelor in Computer Science(computer system) in UPM.

# data[].attributes.body
Hi! I’m Dr Fadh. My full name is Nurfadhlina Mohd Sharef. I am an associate professor at the Dept of Computer Science, Fac of Computer Science and Information Technology, UPM. I am also currently attached to the Centre for Academic Development, Bangunan Canseleri Putra, as the Deputy Director of Innovation in Teaching and Learning. This is my website https://sites.google.com/site/fadhlinams81/publication?authuser=0

# data[].attributes.body
AIN IZYANI BINTI ZULKIFLI
21 tahun (May nanti)
No.Matrik 193689
Asal Selangor.

# data[].attributes.headline
Hello everyone! Welcome to AI@UPM. Please upload a selfie, introduce yourself and write about your expectation from this course

# data[].attributes.subject
Hello everyone! Welcome to AI@UPM. Please upload a selfie, introduce yourself and write about your expectation from this course