Question: ECE 5 9 0 Object Oriented Programming & Machine Learning Fall 2 0 2 4 Project 3 : Matrix and Tensor Operations Due: Sunday, October
ECE Object Oriented Programming & Machine Learning Fall Project : Matrix and Tensor Operations Due: Sunday, October th: PM I. Summary In this project, we will implement a few matrix and tensor operations for EasyNN in C Specifically, we will implement the following EasyNN operations: Inputn: if the input n is a scalar, it will be passed via addkwargsdouble Otherwise, n is a tensor and will be passed via addkwargsndarray Constc: if constant c is a scalar, it will be passed via addopparamdouble Otherwise, c is a tensor and will be passed via addopparamndarray ab and ab: if a and b are both scalars, this is a scalar addition or subtraction. Otherwise, a and b are tensors with the same shape. Perform elementwise addition and subtraction to generate the result tensor of the same shape. Note that the matrix is a tensor of dimensions. ab: if a and b are both scalars, this is a scalar multiplication. If one of a and b is a scalar and the other is a tensor, multiply the scalar by each element of the tensor to generate the result tensor of the same shape. Otherwise, a and b are both matrices with correct shapes so that ab is welldefined for matrix multiplication. II Working with Your Projects Please continue to work with your Git repository for Project Here is a brief introduction to the files: easynn.py easynngolden.py easynncpppy Makefile: same as those in Project and You should not modify them. src: this directory contains all your C implementations. Update them as needed. easynntest.cpp: continue to use this file to test and debug your C implementations. Start with a test that is as simple as possible and then move to more complicated cases. gradeppy: this is the grading script to verify whether your C implementations in src are correct or not. There are questions. You should not modify this file. ECE Object Oriented Programming & Machine Learning Fall After creating the shared library using make run the grading script to see if all questions pass: make python gradeppy Please do not modify gradep when testing your code as your grades will be tested with the original gradep file provided to you from the initial git repository. III. Deliverables and Grading We obtain a copy of all your source files in src as you push the changes to the central Git repository so there is no need for you to submit them to us using any other mechanisms. Moreover, please be advised that since learning the use of Git is among the objectives of this course, we will NOT accept project submissions outside the central Git repository, eg via emails. If you have difficulty accessing the central Git repository, it is your responsibility to act promptly to seek help from us well before the project deadline; otherwise, not being able to access the central Git repository is NOT an excuse for late submissions. Project will have a full grade of points. Each function, if passed, will give you points. A failed function will earn points. Please make sure that git push your latest code to the Endeavour Git repository for proper grading considerations. The following submission checklist is provided for your convenience. Detailed instructions are available from Section IV of Guide to System Setup and Work Flow. Run python gradeppy in the VM to make sure all tests pass. Commit and push your changes to the central Endeavour Git repository.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
