51作业君 | 最靠谱的留学生CS代写之一 | 自营菁英辅导团队 | 为您专业代写CS作业,我们高度保障客户隐私,提供Java/Python/C/C++代写,金融代写,quiz代写,assignment代写,project代写,代修网课,远程助考,CS课程辅导服务; 自营团队无中介环节,沟通交流零障碍,北美学霸, 非中介良心CS代写, 专注诚信代写Computer Science留学生作业代写; 专业CS程序/CS作业代写, C/C++/JAVA/python/assignment/算法/web/安卓/Operation System/AI/Machine Learning/R代写全覆盖, 业务遍及北美/澳洲/英国/新西兰/加拿大作业代写, PhD实力代写, 轻松A+
This is an individual assignment. This assignment is marked out of 75 points, 65 points come from the parts outlined below, and 10 points come from an in-class activity.
March 20th, 2019, 11:59 PM.
Programming Features (Min: 30 points, Max: 50 points)
For this assignment, you will take the output of your group's A2 and continue development with it by adding extra features. That means, clone your A2 team repository and work on your own repository from here on.
In this assignment, we will use a "buffet" setup for developing your program. Select any feature(s) from the list below to work on. If you have suggestions, bring it up with the instructor and it can be added to the list with an appropriate number of points.
5 points: Make a simple GUI so that the user is typing into a nicer interface and can view a recent history of the conversation.
2 points: Add an extra topic to your agent's repertoire. Ensure this topic has similarities with the original topic. For example, if your original topic is
volleyball, you may want to add basketball as a second topic.
3 points: Add a feature that enables your agent to give at least 5 different reasonable responses when the user enters something outside the two topics.
5 points: Add a feature that enables your agent to handle spelling mistakes of the words that your agent is supposed to recognize. Do not hardcode your
solution. Develop a general feature you can use for all the words your agent has, rather than hardcoding a bunch of possible mistakes people could make. For example, use the Porter Stemmer, or some other pre-established algorithm.
10 points each: Use of language toolkits, incorporate feature to improve your conversation's flow:
Synonym recognition - WordNet (you'll need a Java API to it)
POS tagging - Stanford toolkit, OpenNLP
Named entity recognition - Stanford toolkit, OpenNLP
Phrasal - Stanford toolkit
Coreference Resolution - Stanford toolkit, OpenNLP
Sentiment analysis tools - Stanford toolkit
15 points: Conversation with another agent (built by a student in this class) via sockets
Note: any other feature, please discuss before implementing…
Important Note: The number of points associated with each feature is to indicate the maximum number of points you could get for that feature. The quality of the feature will still need to be assessed upon submission.
Documentation (30 points)
You are to submit the following for your system:
2 points: README file in your repository describing what you've done. If you've cloned your A2, you are likely to just add onto the README in this case. If you've changed a lot since A2, you will have to rewrite the README so it reflects your current submission.
5 points: At the end of your README file, include:
a list of each feature you programmed for this assignment
for each item on that list, explain briefly how you used that feature to improve your agent's conversation or your overall system
for each explanation, give a snippet of a conversation that demonstrates
3 points: Provide a Level 0 DFD for your system with description.
5 points: Provide a Level 1 DFD for your system with description.
5 points: Submission of your GitHub repository. Graph showing different features developed on a separate branch and the commits made in the repository.
5 points: Include sample output in your project report. Have one dialogue (at least 30 turns) that show a good or feasible conversation -- ensure your new
features are demonstrated! Document a list of limitations of your program, and have at least two short dialogues that show when your agent is not able to handle the conversation properly.
5 points: Based on your system, include a list of at least 5 features that you can extract from your code or design that can be shared with others as an API.
Presentation (5 points)
This will be done *after* the due date. A 60 to 90 second video of your assignment showing:
A brief description of your program's conversational topic
Each feature you've programmed and how you used it to improve either the conversation or the overall system (since A2)
A description of your DFDs
You should narrate and/or provide subtitles
30-50 points: For all chosen programming features listed above.
30 points: For all the documentation listed above.
5 points: Video submission.
What to Submit
Put all your documentation into one report and submit it as a PDF (on Canvas). Be sure to include the URL to your repository for this assignment in the report.
Be sure to include your full name in your README file.