ECE 592-602 Topics in Data Science
 

This course will acquaint students with some core basic topics in data science. Specific topics covered will include computational complexity, basic data structures, scientific programming, optimization, wavelets, sparse signal processing, dimensionality reduction, and principle components analysis.

Finally, you will learn to solve data science problems numerically using software, and in particular we will use the Matlab software package. In particular, you will be able to apply a methodology to data science problems that involves looking at the problem, translating it to mathematics, proposing an algorithm, and implementing it in software. 3 credit hours.

 
   

• Prerequisite
 

The main prerequisite is eagerness to learn about data science. True technical prerequisites are somewhat informal, and include comfort in math (especially linear algebra and probability) and comfort with computers (specifically, we will be using Matlab).


• Course Objectives
 

By the end of the semester, the student should be able to:

  • Apply standard machine learning techniques such as classification, regression, and clustering to data.
  • Analyze the computational complexity of an algorithm.
  • Familiarity with key data structures including graphs.
  • Produce efficient scientific code, and make sure that it works well using profiling.
  • Apply standard optimization tools such as linear programming and convex optimization.
  • Use sparsifying transforms such as Fourier and wavelets on data.
  • Acquire and recover sparse signals.
  • Apply principle components analysis to data sets.
  • Develop software (and in particular using Matlab) for solving data science problems.

More detailed objectives that are relevant to specific chapters covered in the final exam will be posted on the course website prior to these tests.


• Course Requirements
 

Homework: Students will submit homework individually or in pairs. Assignments and the schedule for submitting them will be posted on the course web site.

Projects: We expect 2-3 “homework style” projects during the semester, and one individual project.

Matlab: The projects will involve Matlab programming. A free Matlab download is available on the EOS website:

http://www.eos.ncsu.edu/software/downloads/

Tests: There will be a comprehensive final exam. The test will be open-book, open-notes. Computers are absolutely not allowed; calculators are allowed. Students who are unable to take the test at those times should inform the instructor at the beginning of the semester and an alternate arrangement may be formulated.

Extra credit: Up to 2% of extra credit will be allowed. Extra credit will be allocated based on factors such as class participation, message board participation, and feedback about assignments. The bottom line is that you are encouraged to contribute to a pleasant and energetic atmosphere in class!

Grading:

Homework 25%  
Projects 50% (half each for HW-style & individual)
Final 25%  
Extra credit 2%  

• Textbook
 

N/A


• Computer and Internet Requirements
 

NCSU and Engineering Online have recommended minimum specifications for computers. For details, click here.


• Instructor
 

Dr. Dror Zeev Baron, Assistant Professor
Electrical & Computer Engineering
Engineering Building II (EB2) 2097, Box 7911
NCSU Campus
Raleigh, NC 27695

Phone: 919-513-7974
Email: dzbaron@ncsu.edu