The first type of AI that you will explore is knowledge-based AI. You are going to be in charge of “pre-programming” an AI chatbot with knowledge. It will be able to use this knowledge to talk with people about a particular topic. AI agents like this one have to store and organize information in their memory. One of the ways they do this is by using semantic networks. Semantic networks are a way of representing relationships between objects and ideas. For example, a network might tell a computer the relationship between different animals (cat is a mammal, cat has whiskers, cat dislikes dog). These networks can help AI agents understand common sense knowledge that may be obvious to you, but isn’t to a computer.
Step 1: Build your own semantic network
- In your box you will find a playmat and several bags containing tiles and arrows.
- The square tiles represent objects or ideas, and the arrows represent relationships.
- You have three sets of square object/idea tiles: 1) family, 1) animals, and 3) musical instruments.
- You have arrow tiles with four different types of relationships: IS, HAS, LIKES, and DISLIKES.
- You can connect objects to relationships to teach the network facts (like cat-HAS-whiskers). Connecting multiple objects and relationships creates a network of related facts.
- Build a network by placing and connecting tiles on the playmat. Your network will be used to provide an AI chatbot with knowledge it can use to talk about the topic of your choice.
- You do not have to use all of the tiles or fill up all of the blank spaces on the playmat. You can mix and match tiles from the different bags.
- A picture of an example network is shown below:
Step 2: Teach the agent
- When you are finished building your network, make sure that all of the object tiles are facing the same direction and all of the arrows are right-side-up. All tiles should be placed within the lines on the playmat.
- Then, take a picture of your network. Make sure the red corners of the playmat are visible in your picture, nothing is blocking the border of the mat, and that the picture is rotated right-side-up—that helps the computer to recognize the image!
- Navigate to the link below by typing the link in your browser or taking a picture of the QR code (you can do this on a phone, computer, or tablet). Note that the character “l” in the URL is the letter “L” not the number “1”.
https://ailiteracyapps.lmc.gatech.edu/
- Once you have navigated to the website, click “Knowledge Net.”
- Click Browse and select the photo you took of your semantic network.
- You will be prompted to crop your photo to the size of the playmat, making sure that the red corners of the mat are visible in the image.
- To move the image: drag with your finger (smartphone) or click and drag using your mouse or trackpad (computer).
- To resize the image: Use your fingers to pinch the image (smartphone) or use a scrolling motion on your mouse or trackpad (computer).
- Click “Program!” The next page might take a minute to load.
- You will then be able to view your semantic network and correct the computer by selecting a different value from the dropdown menu if the computer made any mistakes in recognizing your tiles.
- Click on the tab labeled Chatbot. You can ask the computer questions about your network (e.g. What is a cat? What do dogs have?) and see how it answers. Type a question in the box that says “Ask a question” and click the button to submit it. You will see the computer’s answers in the black box.
Step 3: Discuss
After you finish the activity, discuss the following questions with your family:
- What types of relationships were you able to express using the semantic network? What was harder to capture?
- Did any of the connections you made surprise you?
- What happens if you put false information in the semantic network?
- Does the computer really understand what a “cat” is (for example)–if the computer doesn’t know any information outside of what you built into the semantic network?
- Do you think the way a computer understands concepts using a semantic network is similar or different to how we as humans understand concepts?