Team Project#

1. Project Overview#

This project is a team-based, hands-on learning experience focused on Natural Language Processing (NLP) and advanced language model technologies. Teams of 3-4 students will cover a wide range of topics, from basic text processing to advanced language model API utilization and NLP application development.

2. Project Objectives#

  • Understand the fundamental concepts and key technologies of NLP and language models

  • Practice core NLP techniques such as text preprocessing, word embeddings, and transformer architecture

  • Learn methods to perform various NLP tasks using Large Language Model (LLM) APIs

  • Master prompt engineering techniques and apply them to solve real-world problems

  • Develop skills to design and implement NLP-based web applications

  • Enhance team collaboration and project management abilities

3. Team Composition and Roles#

Each team consists of 3-4 students, with the following roles:

  1. Project Manager: Overall project schedule management and team coordination

  2. Backend Developer: NLP model implementation and API development

  3. Frontend Developer: User interface design and implementation

  4. Data Scientist: Data preprocessing and analysis, model evaluation

Team members collaborate across different areas in addition to their primary roles, and can swap roles during the project to gain diverse experiences.

4. Project Progression#

4.1 Weekly Learning and Team Meetings#

  • Individual learning through weekly provided lecture materials and practical assignments

  • Regular team meetings at least once a week

  • Participation in real-time Q&A sessions (once a week)

4.2 Project Phases#

  1. Planning Phase (Weeks 1-3): Project topic selection and planning

  2. Development Phase (Weeks 4-12): NLP model development and application implementation

  3. Testing and Improvement Phase (Weeks 13-14): Usability testing and performance enhancement

  4. Final Presentation Preparation (Week 15)

5. Final Outputs#

The project’s final output consists of three components:

  1. Source Code:

    • Published in a GitHub repository

    • Clear documentation and comments required

    • Includes an executable demo version

  2. App Service:

    • Web-based NLP application

    • User-friendly interface

    • Actual implementation of key features

  3. Final Report (Research Paper Format):

    • Includes abstract, introduction, related work, methodology, experimental results, and conclusion

    • 10-15 pages in length

    • Adheres to IEEE or ACL paper format

6. Evaluation Method#

  • Team assignments and presentations: 30%

  • Midterm project presentation (Week 8): 20%

  • Final project deliverables:

    • Source code and app service: 25%

    • Final report: 15%

  • Peer evaluation: 10%

7. Key Dates#

  • Week 1: Orientation and team formation

  • Week 3: Project proposal submission

  • Week 8: Midterm project presentation

  • Week 15: Final project presentation and deliverable submission

8. Required Tools and Environment#

  • Personal laptop (mandatory)

  • Python 3.7 or higher installed

  • Key libraries: NLTK, scikit-learn, TensorFlow or PyTorch, Transformers

  • Development environment: Jupyter Notebook or Google Colab

  • Version control: Git/GitHub

  • Collaboration tools: Slack, Trello, etc.

9. Important Notes#

  • All team activities should be distributed fairly and evenly.

  • If there are conflicts or issues within the team, please report quickly to the teaching assistant or professor.

  • If referencing ideas or code from other teams, always cite the source.

  • Maintain regular team meeting records and periodically share project progress.

We hope you have an enjoyable and productive team project experience!