DAY1
为什么需要机器学习?
解放生产力:智能客服,不知疲倦
解决专业问题:医疗,帮助看病
提供社会便利:城市大脑
让机器学习程序替换手动的步骤,减少企业的成本也提高企业的效率
机器学习的数据一般用CSV文件,mysql的缺点:1、性能瓶颈,2、格式不太符合机器学习要求数据的格式
pandas:一个数据读取非常方便以及基本的处理格式的工具
numpy:释放了GIL,pandas是基于numpy的,numpy的速度非常快。
sklearn:对于特征的处理提供了强大的接口
python为什么慢?
第一是因为是动态语言。另一个原因是它有一个全局解释性锁GIL。比如开4个线程,但是一个时刻只能一个线程工作。
numpy为什么快?
因为numpy把GIL锁释放了。是真正的多线程。
GIL:全局解释器锁
GIL的问题其实是由于近十几年来应用程序和操作系统逐步从多任务单核心演进到多任务多核心导致的 , 在一个古老的单核CPU上调度多个线程任务,大家相互共享一个全局锁,谁在CPU执行,谁就占有这把锁,直到这个线程因为IO操作或者Timer Tick到期让出CPU,没有在执行的线程就安静的等待着这把锁
流程:用户数据清洗、数据预处理、特征工程、机器学习、模型评估、离线/在线服务
数据集的组成
Kaggle数据。
UCI数据:比较专业。每个领域都有。
scikit-learn:数据量小,方便学习。
数据集包括:特征值+目标值。
比如面下的例子:一行是一个样本。共有3个样本。
有4个特征。目标值是房价。
特征工程的定义
解释1:特征工程或特征提取或特征发现是利用领域知识从原始数据中提取特征(特性、属性、属性)的过程。其动机是利用这些额外的特征来提高机器学习过程的结果的质量,而不是只提供原始数据给机器学习过程。
解释2:特征工程是讲原始数据转换为更好地代表预测模型的潜在问题的特征的过程,从而提高对未知数据的预测准确性。
字典特征数据抽取
文本特征抽取以及中文问题
_tf-df分析问题