Practical Data Science (with Python)

Project Assignment 3, Semester 2, 2022

Marks : This assignment is worth 30% of the overall assessment for this course.

Due Date : Wed, 26 October 2022, 11:59PM (Week 14), via canvas. Late penalties apply. A penalty of 10% of the total project score will be deducted per day. No submissions will be accepted 5 days beyond the due date.

Objective

The key objectives of this assignment are to learn how to compare and contrast several recommendation system algorithms. There are three major components of the assignment – a completed Jupyter notebook used to run your experiments, a written report, and a short video presentation where you describe what you did and your key findings.

The dataset you will use will be a sample of the Netflix Prize data. The problem is movie recommendation, and the data is already split into a training and validation set that you can use to run all of your experiments.

Provided files

The following template files are provided:

  • SXXXXX-A3.ipynb : The primer Jupyter notebook file you should use to stage and run all of your experiments.
  • netflix-5k.movie-titles.feather : The movie title dataframe that can be used to map a movieID to a title, as well as a list of genres.
  • netflix-5k.train.feather : The training tuples for 5,000 users, where each tuple is

⟨userID,movieID,rating⟩.

  • netflix-5k.validation.feather : A predefined set of validation tuples for the same users that can be used by you to benchmark the performance of various algorithms.
  • A3.pdf : This specification file.

Creating Your Workspace

Once again, you should rename the file SXXXXX-A3.ipynb appropriately based on your student ID.

Creating Your Anaconda Environment

In order to create your anaconda environment for this project, you should run the following command in a terminal shell:

conda create -n PDSA3 python=3.8 conda activate PDSA3

pip install jupyterhub notebook numpy pandas pip install matplotlib scikit-learn seaborn

pip install kneed scikit-surprise

Note that both kneed and scikit-surprise can be finicky on some systems. For example on my machine, an error was thrown during the compile of scikit-surprise (Macbook Pro M1) but the install

still worked when it tried a fallback install method. So if you find that it really fails for you using pip, then and only then resort to conda. This would break requirements.txt, but it should work reliably for everyone albeit not very reproducible. The magic commands would be:

conda install -c conda-forge kneed

conda install -c conda-forge scikit-surprise

You can type “pip freeze” to see a list of the packages that are correctly installed in your environment. You can also install scikit-learn-intelex and/or psutil if you want to use the Intel-based optimisations or debug memory management as shown in the sample Jupyter notebook.

If you also wish the timing and other jupyter extensions to be enabled in your notebook (optional but may be useful depending on how you decide to present your results), you need to run the following additional commands:

pip install jupyter_contrib_nbextensions

pip install jupyter_nbextensions_configurator jupyter contrib nbextension install –user jupyter nbextensions_configurator enable –user

Now you just need to type “jupyter notebook” to start up jupyter correctly with access to the libraries you just installed. Also, recall that if you ever stop working in your environment and come back later.

You must open a terminal, run “conda activate PDSA3” and then “jupyter notebook”, otherwise you will not be working in the virtual environment you created above, and most things you try to do will probably start failing. You should not use any other libraries to complete your assignment beyond the ones shown above without written permission from the course coordinator (Shane).

1   The Jupyter Notebook Primer (5 marks)

I have included the jupyter notebook I walked through at the end of the Week 10 Lectorial. This notebook will provide you with everything you need to correctly load the dataframe files from feather, and also includes an example of how to do both a grid search and randomised search for parameter tuning on one of the recommendation system algorithms included in Surprise. You should spend some time reading the API documentation and tutorial for this library provided at https://surpriselib.com. This will be critical information you should use to stage your experiments.

2   The Report (15 marks)

The main component of your assignment will be to carefully write up your key findings. Your report should not be more than 5 pages using 11pt font. You may also have one 2 additional Appendix page containing additional graphs or tables. Your final report must be submitted as a PDF file. You can use Microsoft Word, but I would strongly encourage you to consider writing up your report using LATEX (https:\overleaf. com).

Writing in LATEX may seem daunting at first, but Overleaf provides plenty of tutorials and examples, and it is pretty easy once you get the hang of it. This spec file was written using LATEX. Microsoft Word is not a good tool for writing technical documents, and in fact most Computer Science Conferences all require papers to be written in LATEX. The quality of of the presentation layer is easily discernible by most people in Computer Science. Write a paragraph or two with a graph or diagram in overleaf and then in MSWord and compare the two – I bet you’ll see the difference immediately!

Regardless of which tool you use to generate your final PDF, the format of the report should be:

  1. Your name and student number at the top of page 1.
  2. Introduction (usually no more than 1/2 page).
  3. Methodology (usually about 1 page) – This would contain a clear description of each recommendation system algorithm you are using and a rationale as to why it is being used.
  4. Experiments ( 3 pages) – This is the main component of your report. Here you should document all of the parameters and algorithms used, Tables, Figures, or Graphs that you create in order to compare and contrast all of the algorithms you have benchmarked and a discussion about what you have discovered. There is no reason include images of code snippets as you are submitting your Jupyter notebook already – you should include images of graphs you create – assuming they are important to the story you are telling.
  5. Conclusion (1/2 page) – A clear summary of your key findings.
  6. References (Separate page) – You can include as many references as you see fit and need in your report, and this is not counted against the 5 page limit.
  7. Appendix (Separate page) – Any additional graphs or tables that you think are important but that you could not include into the main document because of space constraints.

Summary – a report that has a 5 page body, 1+ pages of citations, and 1 optional page at the end as an Appendix.

You must compare at least four different algorithms from the surprise library in your report. Note that one algorithm (e.g. SVD) with two different parameter settings does not count as two different algorithms. That is one algorithm with two different parameter settings, i.e. one algorithm. You can certainly include results for multiple parameter settings for each of the four algorithms in your experiments, just make sure you are using 4 different algorithms in total in your shootout.

In week 8, I provided several evaluation classes you can use to compute a wide variety of evaluation measures, and we encourage you to explore as many as you can, as doing so will provide additional evidence that your “winning” algorithm is really a winner. The “official” metric will be RMSE as this is the metric used in the original competition, but you should compare the 4 algorithms using a minimum of three different evaluation metrics. You should aim to have at least one algorithm that can achieve an RMSE score ≤ 0.800. This should be achievable with a little parameter tuning, if you choose good algorithms from surprise, and you may even decide that the algorithm that got the best RMSE score is not necessarily the “best” algorithm overall based on the experiments you have ran.

Hint: Think carefully about what “good” movie recommendations really mean to you. We all know what it is, so what do you think is the best way to prove or disprove recommendations from Algorithm A are clearly better than the ones you get from Algorithm B. We covered a wide variety of evaluation measures in the Week 8 Lectorial, so go look at what was in that notebook and think about it.

Other key hints – (1) If you have a Figure, Table, or Diagram in the report, it must have a caption and you must reference it in your report and discuss it. By that I mean “Table 1 contains a table of RMSE results for Algorithms A-E. We can see that …” (2) If you use ideas or code from somewhere else, you must include it in your references. A typical “bibtex” citation for something taken from the web would look something like:

@misc{StackA,

title = {{Stackoverflow Discussion on X}, howpublished = {\url{http://www.example.com}}, note = {Accessed: 2022-10-05}

The preferred referencing style for Computer Science is usually APA. See https://libguides.murdoch.edu.au/APA/sample for an example. There are lots of tutorials available online on APA referencing, so if you have never seen it, just search for tutorials on APA referencing and you’ll find more than you could ever read/watch. (3) If it isn’t clear, you must include graphs, tables, and/or diagrams in your experimental section, which are to be used as evidence to back any claims about algorithm performance that you make.

Order Now

Get expert help for Practical Data Science and many more. 24X7 help, plag-free solution. Order online now!

Universal Assignment (April 2, 2026) Practical Data Science (with Python). Retrieved from https://universalassignment.com/practical-data-science-with-python/.
"Practical Data Science (with Python)." Universal Assignment - April 2, 2026, https://universalassignment.com/practical-data-science-with-python/
Universal Assignment October 21, 2022 Practical Data Science (with Python)., viewed April 2, 2026,<https://universalassignment.com/practical-data-science-with-python/>
Universal Assignment - Practical Data Science (with Python). [Internet]. [Accessed April 2, 2026]. Available from: https://universalassignment.com/practical-data-science-with-python/
"Practical Data Science (with Python)." Universal Assignment - Accessed April 2, 2026. https://universalassignment.com/practical-data-science-with-python/
"Practical Data Science (with Python)." Universal Assignment [Online]. Available: https://universalassignment.com/practical-data-science-with-python/. [Accessed: April 2, 2026]

Please note along with our service, we will provide you with the following deliverables:

Please do not hesitate to put forward any queries regarding the service provision.

We look forward to having you on board with us.

Categories

Get 90%* Discount on Assignment Help

Most Frequent Questions & Answers

Universal Assignment Services is the best place to get help in your all kind of assignment help. We have 172+ experts available, who can help you to get HD+ grades. We also provide Free Plag report, Free Revisions,Best Price in the industry guaranteed.

We provide all kinds of assignmednt help, Report writing, Essay Writing, Dissertations, Thesis writing, Research Proposal, Research Report, Home work help, Question Answers help, Case studies, mathematical and Statistical tasks, Website development, Android application, Resume/CV writing, SOP(Statement of Purpose) Writing, Blog/Article, Poster making and so on.

We are available round the clock, 24X7, 365 days. You can appach us to our Whatsapp number +1 (613)778 8542 or email to info@universalassignment.com . We provide Free revision policy, if you need and revisions to be done on the task, we will do the same for you as soon as possible.

We provide services mainly to all major institutes and Universities in Australia, Canada, China, Malaysia, India, South Africa, New Zealand, Singapore, the United Arab Emirates, the United Kingdom, and the United States.

We provide lucrative discounts from 28% to 70% as per the wordcount, Technicality, Deadline and the number of your previous assignments done with us.

After your assignment request our team will check and update you the best suitable service for you alongwith the charges for the task. After confirmation and payment team will start the work and provide the task as per the deadline.

Yes, we will provide Plagirism free task and a free turnitin report along with the task without any extra cost.

No, if the main requirement is same, you don’t have to pay any additional amount. But it there is a additional requirement, then you have to pay the balance amount in order to get the revised solution.

The Fees are as minimum as $10 per page(1 page=250 words) and in case of a big task, we provide huge discounts.

We accept all the major Credit and Debit Cards for the payment. We do accept Paypal also.

Popular Assignments

Blockchain Assignment Help: A Complete Guide for Students

Introduction Blockchain technology has emerged as one of the most revolutionary innovations in recent years. From cryptocurrencies to secure data management, blockchain is transforming industries like finance, healthcare, and supply chain. Students studying blockchain often face challenges due to its technical concepts and real-world applications. This is where blockchain assignment

Read More »

Assignment Writing Services: A Complete Guide for Students

Introduction Assignments are a crucial part of academic life, helping students develop knowledge, research skills, and critical thinking. However, managing multiple assignments along with exams and personal responsibilities can be overwhelming. This is where assignment writing services become highly beneficial. These services provide expert assistance, helping students complete their assignments

Read More »

Academic Writing Services: A Complete Guide for Students

Introduction Academic writing is a fundamental part of education, requiring students to produce essays, research papers, case studies, and dissertations. It demands strong writing skills, proper structure, and in-depth research. However, many students struggle with academic writing due to time constraints and lack of expertise. This is where academic writing

Read More »

Online Homework Help Services: A Complete Guide for Students

Introduction Homework is an essential part of a student’s learning process, helping reinforce classroom knowledge and improve understanding. However, with increasing academic pressure and multiple responsibilities, students often struggle to complete their homework on time. This is where online homework help services become highly beneficial. They provide expert guidance, save

Read More »

Thesis Writing Help: A Complete Guide for Students

Introduction A thesis is one of the most important academic documents a student will write during their educational journey. It requires in-depth research, critical analysis, and a clear presentation of ideas. However, many students find thesis writing overwhelming due to its complexity and time-consuming nature. This is where thesis writing

Read More »

Essay Writing Help: A Complete Guide for Students

Introduction Essay writing is a fundamental part of academic life, helping students express their ideas, analyze topics, and develop critical thinking skills. Whether it’s argumentative, descriptive, or analytical, writing a high-quality essay requires proper structure, research, and clarity. However, many students struggle with essay writing due to time constraints and

Read More »

Content Writing Assignment Help: A Complete Guide for Students

Introduction Content writing has become a crucial skill in the digital era, playing a key role in blogging, marketing, and online communication. From academic essays to website content, strong writing skills are essential for students across all fields. However, many students struggle with structuring content, maintaining clarity, and optimizing for

Read More »

Digital Marketing Assignment Help: A Complete Guide for Students

Introduction Digital marketing has become one of the most important skills in today’s online-driven world. From social media marketing to search engine optimization (SEO), businesses rely heavily on digital strategies to reach their audience. Students studying digital marketing often face challenges in understanding strategies, tools, and real-world applications. This is

Read More »

UI/UX Design Assignment Help: A Complete Guide for Students

Introduction UI/UX design is a crucial aspect of modern digital products, focusing on creating visually appealing and user-friendly interfaces. From websites to mobile apps, good design enhances user experience and engagement. Students studying UI/UX design often face challenges in creativity, tools, and usability principles. This is where UI/UX design assignment

Read More »

Web Development Assignment Help: A Complete Guide for Students

Introduction Web development is one of the most in-demand skills in today’s digital world. It involves creating websites and web applications using technologies like HTML, CSS, JavaScript, and backend frameworks. Students pursuing web development courses often face challenges in coding, designing, and deploying websites. This is where web development assignment

Read More »

Software Engineering Assignment Help: A Complete Guide for Students

Introduction Software Engineering is a critical field that focuses on designing, developing, testing, and maintaining software systems. It is widely studied by students in computer science and IT programs and plays a key role in the modern tech industry. However, software engineering assignments can be complex, involving coding, system design,

Read More »

DevOps Assignment Help: A Complete Guide for Students

Introduction DevOps is a modern approach that combines software development (Dev) and IT operations (Ops) to improve collaboration, efficiency, and software delivery. It is widely used in the tech industry to automate processes and ensure faster deployment of applications. However, DevOps assignments can be complex, involving tools, automation, and real-world

Read More »

Cloud Computing Assignment Help: A Complete Guide for Students

Introduction Cloud computing has revolutionized the way businesses and individuals store, manage, and process data. With services like cloud storage, virtualization, and on-demand computing, it has become a core subject for students in IT, computer science, and engineering. However, cloud computing assignments can be complex, involving technical concepts, platforms, and

Read More »

Cybersecurity Assignment Help: A Complete Guide for Students

Introduction Cybersecurity has become one of the most critical fields in today’s digital world. With the rise of cyber threats, data breaches, and online vulnerabilities, organizations are increasingly investing in security systems and professionals. Students pursuing cybersecurity courses often deal with complex topics like network security, ethical hacking, and cryptography.

Read More »

Artificial Intelligence Assignment Help: A Complete Guide for Students

Introduction Artificial Intelligence (AI) is transforming industries across the world, from healthcare and finance to automation and robotics. As a result, AI has become a popular subject among students in computer science and engineering. However, AI assignments can be complex, involving programming, algorithms, and data analysis. This is where artificial

Read More »

Data Science Assignment Help: A Complete Guide for Students

Introduction Data Science is one of the fastest-growing fields in today’s digital world. It combines statistics, programming, and domain knowledge to extract meaningful insights from data. Students pursuing data science courses often deal with complex assignments involving coding, data analysis, and machine learning. Due to the technical nature of the

Read More »

Discrete Mathematics Assignment Help: A Complete Guide for Students

Introduction Discrete Mathematics is a fundamental subject for students in computer science, information technology, and mathematics. It deals with discrete structures such as logic, sets, graphs, and algorithms, forming the backbone of programming and computational thinking. However, many students find discrete mathematics assignments challenging due to abstract concepts and logical

Read More »

Linear Algebra Assignment Help: A Complete Guide for Students

Introduction Linear Algebra is a key branch of mathematics that deals with vectors, matrices, and linear equations. It plays a crucial role in fields such as engineering, computer science, data science, and machine learning. However, many students find linear algebra assignments challenging due to abstract concepts and complex calculations. This

Read More »

Geometry Assignment Help: A Complete Guide for Students

Introduction Geometry is a fundamental branch of mathematics that deals with shapes, sizes, angles, and spatial relationships. It plays a crucial role in fields like engineering, architecture, design, and physics. However, many students find geometry assignments challenging due to the need for visualization, understanding theorems, and solving complex problems. This

Read More »

Trigonometry Assignment Help: A Complete Guide for Students

Introduction Trigonometry is an important branch of mathematics that focuses on the relationships between angles and sides of triangles. It plays a vital role in fields like engineering, physics, astronomy, and architecture. However, many students find trigonometry assignments challenging due to complex formulas, identities, and problem-solving techniques. This is where

Read More »

Algebra Assignment Help: A Complete Guide for Students

Introduction Algebra is one of the fundamental branches of mathematics that deals with symbols, variables, and equations. It forms the foundation for advanced topics like calculus, statistics, and engineering mathematics. However, many students find algebra assignments difficult due to complex equations and problem-solving techniques. This is where algebra assignment help

Read More »

Calculus Assignment Help: A Complete Guide for Students

Introduction Calculus is a fundamental branch of mathematics that deals with change and motion. It plays a crucial role in fields like engineering, physics, economics, and computer science. However, many students find calculus challenging due to its complex concepts, formulas, and problem-solving techniques. This is where calculus assignment help becomes

Read More »

Mathematics Assignment Help: A Complete Guide for Students

Introduction Mathematics is one of the most important subjects in academics, forming the foundation for fields like engineering, finance, data science, and technology. However, many students find math assignments challenging due to complex formulas, calculations, and problem-solving requirements. This is where mathematics assignment help becomes highly useful. In this article,

Read More »

Biology Assignment Help: A Complete Guide for Students

Introduction Biology is the study of living organisms, including their structure, function, growth, and evolution. It is a crucial subject for students pursuing careers in medicine, healthcare, and life sciences. However, biology assignments often require detailed explanations, diagrams, and in-depth research, making them challenging for many students. This is where

Read More »

Chemistry Assignment Help: A Complete Guide for Students

Introduction Chemistry is a core science subject that deals with the composition, structure, and properties of matter. It plays a vital role in fields like medicine, engineering, environmental science, and more. However, many students find chemistry assignments difficult due to complex reactions, formulas, and calculations. This is where chemistry assignment

Read More »

Physics Assignment Help: A Complete Guide for Students

Introduction Physics is a fundamental science that explains how the universe works, from motion and energy to electricity and magnetism. While it is an exciting subject, many students find physics assignments challenging due to complex formulas, numerical problems, and conceptual understanding. This is where physics assignment help becomes essential. In

Read More »

Science Assignment Help: A Complete Guide for Students

Introduction Science is a vast and essential field that includes subjects like physics, chemistry, biology, and environmental science. It plays a crucial role in understanding the natural world and developing innovative solutions. However, science assignments often involve complex concepts, experiments, and detailed explanations, making them challenging for students. This is

Read More »

Education Assignment Help: A Complete Guide for Students

Introduction Education is a vital field that focuses on teaching methods, learning processes, and the development of knowledge and skills. Students pursuing education courses often deal with assignments related to pedagogy, curriculum design, and educational psychology. However, managing multiple assignments along with practical teaching responsibilities can be challenging. This is

Read More »

Statistics Assignment Help: A Complete Guide for Students

Introduction Statistics is a crucial subject in many academic fields, including mathematics, economics, business, and data science. It involves analyzing data, interpreting results, and applying mathematical concepts to real-world problems. However, many students find statistics challenging due to complex formulas, data interpretation, and analytical requirements. This is where statistics assignment

Read More »

Can't Find Your Assignment?