Master
2020/2021
Big Data and Machine Learning with Applications to Economics and Finance
Type:
Elective course (Financial Economics)
Area of studies:
Economics
Delivered by:
International College of Economics and Finance
When:
2 year, 1, 2 module
Mode of studies:
distance learning
Master’s programme:
Financial Economics
Language:
English
ECTS credits:
4
Contact hours:
60
Course Syllabus
Abstract
Big Data and Machine Learning (M.Sc. level) is an advanced elective course designed for masters students at ICEF. The course is open to all second year M.Sc. students. Basic knowledge of the Python programming language is strongly advised but not required. Students without Python knowledge will be expected to exert additional effort during the first few weeks of the course to catch up. The course is taught in English. The course has three broad sections: I. Building skills using Python libraries to solve common problems in the analysis offinancial data. II. Learning how to mine the web, social media, and other big data sources in searchfor data. III. Designing and implementing machine learning models.
Learning Objectives
- The main objective of the course is to endow students with fundamental skills related to data mining and analytics, as well as with designing and implementing machine learning predictive models.
Expected Learning Outcomes
- - Be able to code simple algorithms using Python
- - Use data structures to store and transform data
- - Use web applications API to obtain data
- - Apply clustering and anomaly detection methods
- - Present data graphically
- - Use Python to solve simple analytical tasks
- - Find solutions to optimization problems using Python
- - Analyze multiple data sources
- - Convert text into input for machine learning algorithms
- - Train an ML classifier. Make predictions
- - Train a ML regression. Make predictions
- - Be able to setup a neural network
Course Contents
- Introduction to PythonIntroductory examples. Basic data types and structures. Functions and control flow. Classes and objects. Functional programming and Object-oriented programming.
- Python’s Scientific Stack: NumPy, Pandas, and SciPyNumPy arrays and code vectorization. Indexing and slicing. Series and DataFrame objects. Basic data wrangling: missing data, transformed data, reshaped data, merged data. Data summarization
- Data Visualizationlots in two and three dimensions. The matplotlib and the seaborn libraries.
- Financial and Other ApplicationsThe value of money. A financial calculator. Bond and stock valuation. The CAPM.
- Mathematical tools and numerical calculusFinding roots. Convex optimization. Monte Carlo simulations. Portfolio optimization.
- Big DataAccessing regular data with Python. How is big data different? Apache Hadoop and the HDFS data format. SQL and No-SQL databases.
- Introduction to Data MiningData mining methodologies.
- Mining the Social WebRestful APIs. Mining Twitter, Facebook, Instagram, and GitHub to learn what’s trending.
- Textual AnalysisMining Text Files: Computing Document Similarity, Extracting Collocations.
- Machine Learning Classification MethodsGradient descent. Cross Validation. K-nearest neighbor. Naive Bayesian Classification. Decision Trees.
- Machine Learning Regression MethodsOLS, LASSO, Ridge regression.
- Neural Networks. Forecasting Stock and Commodity PricesComparing traditional time series analysis and Recursive Neural Nets.
Assessment Elements
- project proposal
- intermediate report
- a final report and presentation
- attendance and participation
- home assignments
- examIn order to get a passing grade, students must obtain an final grade of 35/100 or higher.
Interim Assessment
- Interim assessment (2 module)0.3 * a final report and presentation + 0.05 * attendance and participation + 0.3 * exam + 0.2 * home assignments + 0.1 * intermediate report + 0.05 * project proposal
Bibliography
Recommended Core Bibliography
- Géron, A. (2017). Hands-On Machine Learning with Scikit-Learn and TensorFlow : Concepts, Tools, and Techniques to Build Intelligent Systems (Vol. First edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=nlebk&AN=1486117
- Han, J., Kamber, M., Pei, J. Data Mining: Concepts and Techniques, Third Edition. – Morgan Kaufmann Publishers, 2011. – 740 pp.
- Hilpisch, Y. (2014). Python for Finance : Analyze Big Financial Data (Vol. First edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=925360
- Kirk, M. (2015). Thoughtful Machine Learning with Python : A Test-Driven Approach. Sebastopol: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1455642
- McKinney, W. (2018). Python for Data Analysis : Data Wrangling with Pandas, NumPy, and IPython (Vol. Second edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1605925
Recommended Additional Bibliography
- Chatterjee, S., & Krystyanczuk, M. (2017). Python Social Media Analytics. Birmingham: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1565635
- Russell, M. A., & Klassen, M. (2018). Mining the Social Web : Data Mining Facebook, Twitter, LinkedIn, Instagram, GitHub, and More. Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1951213
- Sarkar, D., Bali, R., & Sharma, T. (2018). Practical Machine Learning with Python : A Problem-Solver’s Guide to Building Real-World Intelligent Systems. [United States]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1667293
- Squire, M. (2016). Mastering Data Mining with Python – Find Patterns Hidden in Your Data. Birmingham: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1343887
- Weiming, J. M. (2019). Mastering Python for Finance : Implement Advanced State-of-the-art Financial Statistical Applications Using Python, 2nd Edition (Vol. Second edition). Birmingham, UK: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=2116431
- Yan, Y. (2017). Python for Finance - Second Edition (Vol. Second edition). Birmingham, UK: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1547029