一、课程特色
1. 实用。本课程注重实用性,主要体现在两个方面,一方面,本课程注重的是如何使用各种机器学习算法处理现实的数据,所以在内容安排上,除了按照常规做法安排知识框架,还讲述不少解决实际问题的技巧(包括一些小的但也重要的函数)。另外一方面,实用性体现在:(1)所分析的数据是现实场景数据,包括上市公司数据、贷款违约、保险反欺诈、商品交易、银行产品推销、股票交易数据、信用卡欺诈。(2)初学者易错的问题及处理。(3)每段程序可以独立运行,便于学生可以通过修改参数、文件路径后,就可以将程序应用到论文写作、工作中。
2. 易学。选用复杂的金融市场数据建模,能够提高教材的实用性,增强学生处理现实数据的技能,但是由于要解决复杂的现实问题,所编写的程序必然复杂。这导致初学者难以掌握课程内容,包括数学模型和编程技巧。为了解决这个矛盾,提高课程的易学程度,采取的措施包括:(1)用图形或通俗语言来介绍数学模型的思想。(2)对程序中的每条命令进行详细解释,降低学生阅读代码的难度。(3)编写详细,让学生能独立完成每章的程序编写。
3. 利用经济金融专业知识提升模型精度。从理论上讲,如果可以获取历史和未来所有样本,可以获取与建模对象相关的所有属性,仅仅依靠算法,的确可以建立高精度模型。但是现实情况是无法获取历史和未来所有样本,也无法获取与建模对象相关的所有属性。即使可以获得所有样本和所有属性,现在也没有无穷的算力来处理这样的数据量趋向无穷大的海量样本。在这种情况下,仅仅依靠算法和算力建模,模型精度有限。为此,本课程在建模过程中,注重将金融专业知识融入到建模过程中,例如在对上市公司财务数据、保险反欺诈数据建模过程中,利用经济金融知识对属性进行优化,显著提升了模型精度。例如在利用消费者商品交易数据建模时,通过经济金融知识解读模型结果,可以得出制定商品营销方案的有价值的参考建议。
二、课程目标
随着人工智能、大数据技术在经济金融行业的广泛应用,传统的岗位在急剧減少,而客户数据分析、资产管理、风险控制等岗位的需求在快速增加。经济金融行业的这些变化要求从业者同时掌握经济金融理论、数学建模和编程三方面知识,不仅具备较正确地分析和预测各种市场走势的能力,还要求能借助各种机器学习工具,为客户提供准确率较高的投资建议。虽然新技术、新产业和新业态的发展对复合型人才有迫切的需求,但是在相对较短的时间内,同时掌握三方面知识,并综合应用到现实场景,构建出较高精度的模型,并非易事。
本课程的教学目标是让数理和编程技能相对薄弱的学生能够在相对较短的时间内掌握量化分析的能力,能够通过python处理现实复杂的数据,并构建出精度较高的模型。通过本课程的学习,学生将能够:
1. 知识目标:掌握利用Python处理现实复杂数据所必备的基本语法和编程技巧;掌握Python在数据分析、数据可视化、算法实现等方面的应用。
2. 技能目标:能够结合经济金融学知识,运用Python处理现实场景的数据并构建精度较高的模型,并为投资决策提供支持。
3. 情感态度价值观目标:培养学生对量化投资领域的兴趣,提高学生在建模过程中分析解决问题的能力,培养学生勇于创新、不断探索的精神。
本课程的教学内容主要包括以下几个部分:
1. Python编程基础:包括详细的Python和pycharm的安装与使用、Python语言的基本语法、数据类型、函数、模块等。
2. 数据处理与分析:掌握Pandas、NumPy等库的使用方法,进行数据清洗、数据筛选、数据分组等操作。
3. 数据可视化:学习Matplotlib、Seaborn等库进行数据可视化,掌握基本图表的绘制方法和技巧。
4. 特征工程:学习筛选有效属性的各种算法,包括功能强大的Null Importance等算法。
5. 量化建模:学习如何利用Python实现表格的自动处理、聚类、主成分分析、线性模型、支持向量机、决策树与随机森林、神经网络(包括多特征输入多决策输出的多层感知机、卷积神经网络、长短期记忆循环神经网络)了解策略评估方法和风险管理。