- 授权协议: Apache
- 开发语言: Google Go
- 操作系统: 跨平台
- 软件首页: https://github.com/huichen/mlf
- 软件文档: https://github.com/huichen/mlf
软件介绍
让天下没有难做的大数据模型!
功能
下面是弥勒佛框架解决的问题类型,括号中的斜体代表尚未实现以及预计实现的时间
监督式学习:最大熵分类模型(max entropy classifier),决策树模型(decision tree based models,2014 Q1)
非监督式学习:聚类问题(k-means,2014 Q1)
在线学习:在线梯度递降模型(online stochastic gradient descent)
神经网络(2014 Q2/3)
项目实现了下面的组件
多种数据集(in-mem,skip)
多种评价器(precision,recall,f-score,accuracy,confusion)和交叉评价(cross-validation)
多种优化器:协程并发L-BFGS,梯度递降(batch, mini-batch, stochastic),带退火的学习率(learning rate),L1/L2正则化(regularization)
稀疏向量(sparse vector)以存储和表达上亿级别的特征
特征辞典(feature dictionary)在特征名和特征ID之间自动翻译
现有的机器学习框架/软件包存在几个问题:
无法处理大数据:多数Python,Matlab和R写的训练框架适合处理规模小的样本,没有为大数据优化。
不容易整合到实际生产系统:standalone的程序无法作为library嵌入到大程序中。
模型单一:一个软件包往往只解决一个类型的问题(比如监督式或者非监督式)。
不容易扩展:设计时没有考虑可扩展性,难以添加新的模型和组件。
代码质量不高:代码缺乏规范,难读懂、难维护。
弥勒佛项目的诞生就是为了解决上面的问题,在框架设计上满足了下面几个需求:
处理大数据:可随业务增长scale up,无论你的数据样本是1K还是1B规模,都可使用弥勒佛项目。
为实际生产:模型的训练和使用都可以作为library或者service整合到在生产系统中。
丰富的模型:容易尝试不同的模型,在监督、非监督和在线学习等模型间方便地切换。
高度可扩展:容易添加新模型,方便地对新模型进行实验并迅速整合到生产系统中。
高度可读性:代码规范,注释和文档尽可能详尽,适合初学者进行大数据模型的学习。
The Art of Computer Programming, Volumes 1-3 Boxed Set
Donald E. Knuth / Addison-Wesley Professional / 1998-10-15 / USD 199.99
This multivolume work is widely recognized as the definitive description of classical computer science. The first three volumes have for decades been an invaluable resource in programming theory and p......一起来看看 《The Art of Computer Programming, Volumes 1-3 Boxed Set》 这本书的介绍吧!
