核心方法和类
kernelmethods的Python项目详细描述
内核方法和类
文件:https://raamana.github.io/kernelmethods/
演示笔记本:
核心方法
kernelmethods是一个纯python库,它定义了模块化类,提供了基本的内核方法,例如在给定的示例(n个维度p点)上计算各种内核函数,并为复合和超内核等高级功能提供了直观的界面。在不断增长的基于Python的机器学习生态系统中,这个库填补了一个重要的空白,用户只能使用预定义的内核,并且不能为它们自己的应用定制或扩展它们,这需要它们的多样性和更好的执行内核的灵活性。这个库定义了KernelMatrix类,它是所有内核方法和机器的核心。由于KernelMatrix类是输入数据和各种内核学习算法之间的关键桥梁,因此它被设计成高度可用并可扩展到不同的应用程序和数据类型。除了能够在给定的样本上应用基本内核(以生成KernelMatrix),该库还提供各种内核操作,例如规范化、定心、乘积、对齐评估、线性组合和内核矩阵的排序(通过各种性能指标)。
此外,我们还提供了几个方便的类,例如KernelSet和KernelBucket,以方便管理大量内核集合。在多核学习(mkl)等应用中,处理不同的核配置是自动选择和优化核的必要条件。
除了常见的数值核,如高斯核和多项式核外,我们还设计了这个库,以便于开发分类核、字符串核和图形核,同时具有直观和高度可测试的api的吸引人的特性。除了提供非数值内核的本机实现外,我们还旨在通过数据结构(如pyradigm)为任意输入数据类型(如序列、树和图等)提供一个深度且易于扩展的框架。
此外,还提供了名为KernelMachine的drop-in Estimator类,为scikit-learn生态系统中的无缝使用提供了SVM的功能。另一个有用的类称为OptimalKernelSVR,它可以找到给定样本的最佳核函数,并使用最佳核训练支持向量机。
注
软件是测试版的。欢迎各类捐款。
历史记录
0.0.1(2018-12-26)
- pypi上的第一个版本。