This will cover lab for weeks 8 through 10. You will work in teams to
research, implement, and present an AI algorithm that has not been covered
in class this term. The goals are
- to research an unfamiliar AI algorithm
- get additional experience in presenting technical content
- locating, tuning, and explaining AI code found online
Details
In pairs (or groups of three where required), you will select a topic from
the following list. Each topic may be selected by just one group. You will
then find an implementation demonstrating the topic and make a significant
change to the implementation. You will then use this experience as the
basis for a presentation about your topic. The presentation must include
the following:
- An overview of the topic including key researchers in the area
- A clear description of how this leads to AI solutions to problems,
especially in modern applications
- A discussion of the strengths and weaknesses of the presented
solutions compared to alternative solutions to the same problem
- A demonstration of the system you found that illustrates the solution
being presented, including how you modified the system and your
experience with those modifications
- Alternative applications for this technology, preferably based on
articles you have read (that is, not just how you think it
might be useful, but why experts say or think it might be useful in
other types of projects)
- An evaluation of the understandability of the system's results such
as being able to explain how your system arrived at particular
recommendations and how applicable those results are to all populations
- A slide capturing your citations for both the topic and your
implementation; you will not present this slide,
but it should be available for future readers
Note that a key part of understandability is identifying potential bias in
training sets, especially when the training data is leading to a model of
human behavior. Common mistakes include training on just college males or
completely failing to disclose the makeup of the training population.
Potential Topics
- Bayesian Learning
- Constraint satisfaction systems
- Decision trees
- Dynamic belief networks
- Expert systems
- Hidden Markov models
- Logical agents
- Partial order planning
- Prolog
- Random forests
- Statistical models of natural language processing (NLP)
- Truth maintenance systems
- Word embeddings
Other topics will be considered, but obtain approval from your instructor
before spending significant time on the topic. For example, deep neural
networks are not on the list because they are covered extensively in later
courses.
Demonstration System
As discussed above, you are to find a non-trivial implementation related to
your topic, to make a non-trivial modification to it, and to demonstrate a
working system to the class. Modifications can be to apply the system to a
new domain (one not available online) or to incorporate new
features. Simply tuning weights is not adequate, though tuning may play an
important part in your solution. You will need to cite where you obtained
the implementation. When appropriate, also site key developers.
Further notes:
- It is fine if the project contains a significant amount of code from an
online source. Just be sure to document that source and to clearly
document your changes or additions.
- "Modification" of the technique can include applying it to a fresh
problem. This often includes writing code to prepare data for use,
modifying parameters to make the application effective, even spending
time researching the domain.
- The focus of the project is not on the modification, but on building an
effective presentation that has clear take-aways for the audience. Notice
that the presentation is in place of at least one lab; you should plan to
spend about as long on it (including preparing code and examples) as you
would on a typical lab.
Presentation
It is critical that you review your presentation with your instructor at
least two days in advance of presenting the material to the class. Not all
team members must be present at this review, but you must leave time to
improve the presentation after the review. Presentations will be delivered
during the week 10 lab period. All students will be expected to ask at
least one question of at least one other team, and the presentation topics
will be reflected on the final exam.
Part of your grade will be the effectiveness of your presentation,
mostly based on your slide deck. Important notes about slide decks:
- Do not write sentences in the slides! They are too hard for the
audience to read.
- Use fragments and bullets; generally 5-7 words max per bullet
- No paragraphs!!
- Your basic structure will be to motivate your topic, give a high-level
description of it, illustrate it with a demonstration, discuss more
detail including advantages and disadvantages, then summarize key
points. See above for information that must be mentioned somewhere in
the presentation, but you can fit that information in various places.
- It is important to get to demonstrations or examples early; this gives
students context to understand the topic more concretely. Waiting until
the end for examples means the audience must remember detailed, abstract
information until they reach the concrete examples.
- It is tempting to try to get your audience as excited about a topic as
you are before demonstrations and details. Avoid that temptation; people
will not be convinced of the usefulness of the topic until they see it
working and learn more about it. Motivate, but know that what really
sells the topic is seeing examples and further discussion.
- While having a slide with references is convenient for documenting
your sources on this assignment, do not waste the audience's time going
over this slide since no one will read it. Presentations will be published
on Canvas for others to retrieve, and they can view the information there
if necessary.