关键技术:Python sympy计算梯度、散度和旋度的实例
并行处理与流水线处理是使用sklearn优雅地进行数据挖掘的核心。它们将多个特征处理工作,甚至包括模型训练工作组合成一个工作(从代码角度来说,即将多个对象组合成了—个对象)。在组合的前提下,自动化调参技术帮助我们省去了人工调参的繁琐。训练好的模型是存储在内存中的数据,持久化可以将这些数据保存在文件系统中,之后使用时无需再进行训练,直接从文件中加载即可。
并行处理使得多个特征处理工作能够并行地进行。根据对特征矩阵的读取方式不同,可分为整体并行处理和部分并行处理。整体并行处理即并行处理的每个工作的输入都是特征矩阵的整体;部分并行处理则可定义每个工作需要输入的特征矩阵的列。
2.1 整体并行处理:pipeline包提供了FeatureUnion类来进行整体并行处理:
1 from numpy import log1p
2 from sklearn.preprocessing import FunctionTransformer
3 from sklearn.preprocessing import Binarizer
4 from sklearn.pipeline import FeatureUnion
5
6 #新建将整体特征矩阵进行行列对数函数转换的对象
7 step2_1 = ('ToLog', FunctionTransformer(log1p))
8 #新建将整体特征矩阵进行行二值化类的对象
9 step2_2 = ('ToBinary', Binarizer())
10 #新建整体并行处理对象
11 #该对象也有fit和transform方法,fit和transform方法是并行地调用需要并行处理的对象的fit和transform方法
12 #参数transformer_list为需要并行处理的对象列表,该列表为二元组列表,第一元为对象的名称,第二元为对象
13 step2 = ('FeatureUnion', FeatureUnion(transformer_list=[step2_1, step2_2, step2_3]))
并行处理使得多个特征处理工作能够并行地进行。根据对特征矩阵的读取方式不同,可分为整体并行处理和部分并行处理。整体并行处理即并行处理的每个工作的输入都是特征矩阵的整体;部分并行处理则可定义每个工作需要输入的特征矩阵的列。
2.1 整体并行处理:pipeline包提供了FeatureUnion类来进行整体并行处理:
1 from numpy import log1p
2 from sklearn.preprocessing import FunctionTransformer
3 from sklearn.preprocessing import Binarizer
4 from sklearn.pipeline import FeatureUnion
5
6 #新建将整体特征矩阵进行行列对数函数转换的对象
7 step2_1 = ('ToLog', FunctionTransformer(log1p))
8 #新建将整体特征矩阵进行行二值化类的对象
9 step2_2 = ('ToBinary', Binarizer())
10 #新建整体并行处理对象
11 #该对象也有fit和transform方法,fit和transform方法是并行地调用需要并行处理的对象的fit和transform方法
12 #参数transformer_list为需要并行处理的对象列表,该列表为二元组列表,第一元为对象的名称,第二元为对象
13 step2 = ('FeatureUnion', FeatureUnion(transformer_list=[step2_1, step2_2, step2_3]))
267.1KB
文件大小:
评论区