Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BXMSDOC-6514 AI: Introductory Sections #245

Merged
merged 10 commits into from Oct 13, 2020

Conversation

emmurphy1
Copy link
Owner

Copy link

@tarilabs tarilabs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

as detailed below, thanks!

* Mathematical optimization: The use of conditions and constraints to find the optimal solution to a problem
* Digital decisioning: The use of defined criteria, conditions, and a series of machine and human tasks to make decisions

While science fiction is filled with what is referred to as pure AI, machines that perform better than people and cannot be distinguished from them and learn and evolve without human intervention or control, pure AI is decades away. Meanwhile, we have pragmatic AI which is a lot less frightening and much more useful to us today. Pragmatic AI is a collection of AI technologies that combined provide solutions to problems such as predicting customer behavior, providing automated customer service, and helping customers make purchasing decisions.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I acknowledge the PPT reported "Pure AI", but the correct term we should use here is

Artificial general intelligence

ref: https://en.wikipedia.org/wiki/Artificial_general_intelligence

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(the "Pragmatic AI" term is fine)


While science fiction is filled with what is referred to as pure AI, machines that perform better than people and cannot be distinguished from them and learn and evolve without human intervention or control, pure AI is decades away. Meanwhile, we have pragmatic AI which is a lot less frightening and much more useful to us today. Pragmatic AI is a collection of AI technologies that combined provide solutions to problems such as predicting customer behavior, providing automated customer service, and helping customers make purchasing decisions.

Leading industry analysts report that previously organizations have struggled with AI technologies because they invested in the potential of AI rather than the reality of what AI can deliver today. AI projects were not productive and as a result investment in AI slowed and budgets for AI projects were reduced. Organizations are now seeing the practical reality of what AI can deliver. Being pragmatic means being practical and realistic. A pragmatic approach to AI considers AI technologies that are available today, combines them where useful, and adds human intervention when needed to create solutions to real-world problems.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you might want to make a reference here to the term "AI winter" for the disillusionment phase(s) described

Leading industry analysts report that previously organizations have struggled with AI technologies because they invested in the potential of AI rather than the reality of what AI can deliver today. AI projects were not productive and as a result investment in AI slowed and budgets for AI projects were reduced. Organizations are now seeing the practical reality of what AI can deliver. Being pragmatic means being practical and realistic. A pragmatic approach to AI considers AI technologies that are available today, combines them where useful, and adds human intervention when needed to create solutions to real-world problems.

.Pragmatic AI solution example
A major transportation company has a fleet of trains and a network of train tracks. The company uses machine learning to identify geographic clusters where trains reported some type of problem. If a train reports a problem when it passes a specific position on the track it is recorded as data and if enough problems are recorded in the same location, you can identify a cluster. But that information is not complete enough to be useful so you can add digital decision to filter the data. For example, you can say that a failure must be a specific type of failure and must be reported by at least three trains. If that condition it met, you can use maths optimization to schedule a repair crew to investigate the track. Or if only one train has the same type of problem more than once at the location, you can use maths optimization to schedule the train for repair.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

by at least three trains

by at least three different trains?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This example sounds familiar :) can you kindly check internally it is enough of a general example, however, to be sure it's fine to describe it in this documentation, please?

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I asked Edson to have a look in the jira. I wasn't able to tag him here.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@emmurphy1 the example is technically correct, but it might be a bit hard for users to relate to it as it is very niche. There is no problem publishing the document as is for now, but I would recommend looking for an example that is more relatable to users and update the document in the future. @tarilabs , Daniele Zonca , and Tommaso Teofili can help with that.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, thanks Edson.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that this example is quite specific, we can probably use another more general one related to customer support tickets:

  • Customer files a support ticket (login error or another type of ticket)
  • Machine Learning algorithm to classify ticket content to existing answers (based on keyword, NLP, etc)
  • Apply digital decisioning to use consider multiple potential matches, apply additional logic (i.e. no more than 1 answer with score > threshold, etc) and produce the final output in terms of answer/forward to support

This three step pattern/approach can be used for many similar example: dispute, fraud detention, etc

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @danielezonca. I updated the example. Please review.


* Predictive Model Markup Language (PMML)
+
PMML is the language used to represent predictive models, mathematical models that use statistical techniques to uncover, or learn, patterns in large volumes of data. Predictive models use the patterns that they learn to predict the existence of patterns in new data. With PMML, you can share predictive models between applications. This data is exported as PMML files that can be consumed by DMN models. Therefore, DMN and PMML integrate well.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here it is important to add a note that major Machine Learning framework can persist the trained model AS a pmml file. So that, instead of just saving the trained model in a proprietary format, it could also be saved in an open standard format, such as PMML.

:context: artificial-intelligence

= What is artificial intelligence?
When you think about artificial intelligence (AI), machine learning and big data might come to mind. But machine learning is only part of the picture. Artificial intelligence encompasses the following technologies:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure the bullet points below cover all of the areas in AI, so I suggest you change the wording on this paragraph to make it clear these are some of the technologies, not all.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, Edson. Changed emcompasses to includes.

Comment on lines 30 to 35
* Business Process Model and Notation (BPMN2)
+
The BPMN2 specification is an Object Management Group (OMG) specification that defines standards for graphically representing a business process, defines execution semantics for the elements, and provides process definitions in XML format. BPMN2 can model computer and human tasks.

* Case Management Model and Notation (CMMN)
+
CMMN is used to model work methods that include various activities that might be performed in an unpredictable order depending on circumstances. CMMN models are event centered. CMMN expands overcomes limitations of what can be modeled with BPMN2 by supporting less structured work tasks and tasks driven by humans. By combining BPMN and CMMN you can create much more powerful models.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would start from cases (CMMN) and then processes ( BPMN2)

Copy link

@tarilabs tarilabs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good for me, only 1 remaining doubt on the new example

A major transportation company has a fleet of trains and a network of train tracks. The company uses machine learning to identify geographic clusters where trains reported some type of problem. If a train reports a problem when it passes a specific position on the track it is recorded as data and if enough problems are recorded in the same location, you can identify a cluster. But that information is not complete enough to be useful so you can add digital decision to filter the data. For example, you can say that a failure must be a specific type of failure and must be reported by at least three trains. If that condition it met, you can use maths optimization to schedule a repair crew to investigate the track. Or if only one train has the same type of problem more than once at the location, you can use maths optimization to schedule the train for repair.
////

One application of pragmatic AI is in customer support. A customer files a support ticket that reports a problem, for example a login error. A machine learning algorithm is applied to the ticket to match the ticket content with existing solutions, based on keywords or natural language processing (NLP). The keywords might appear in many solutions, some relevant and some not as relevant. You can use digital decisioning to determine which solutions to present to the customer.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this new example however is missing "Math Optimization" part...

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point, I think we can add a similar sentence to the example

If none of the answers proposed by the algorithm is good enough to be proposed (i.e. low confidence score or multiple answers with high confidence), the outcome of the digital decisioning could be to involve support team. At this point mathematical optimization selects the best assignee for the ticket considering employee rostering constraints

Wdyt?

Copy link

@danielezonca danielezonca left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

@emmurphy1 emmurphy1 merged commit 2c0df14 into BXMSDOC-6514-master-final Oct 13, 2020
emmurphy1 added a commit that referenced this pull request Oct 13, 2020
BXMSDOC-6514 AI: Introductory Sections
emmurphy1 added a commit that referenced this pull request Oct 15, 2020
@emmurphy1 emmurphy1 deleted the BXMSDOC-6514-master branch January 5, 2022 14:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants