美文网首页大数据&云计算大数据spark
三个框架与库,SFrame,Hdp2与skflow

三个框架与库,SFrame,Hdp2与skflow

作者: i败火 | 来源:发表于2016-09-02 23:13 被阅读1368次

    今天给各位亲推荐数据科学的三个框架或者库。

    Screen Shot 2016-09-02 at 22.15.58.png

    01 SFrame

    这家公司最初的名字叫graphlab,后来改名为dato,最近又进行了一次改名,叫turi了,这名字起得,图日吗?

    最近这次改名,是因为和datto的名字太相近了,被datto告了,因此改名为turi,目前的网站也已经变成turi.com了。

    其机器学习框架create貌似非常强大,提供的功能也非常全面,奈何目前没有开源,需要收费才能使用,因此一直也没有深入进行尝试。可以以学术研究的用途申请一年期限的免费Key,之前申请过并且环境都配置好了,只是一想到不能长久,并没有深入使用。

    create虽然要收费,不过却开源了其核心的数据结构SFrame,类似于pandas,支持处理超过单机内存的数据,但目前只支持Python2。实际使用过,效果确实不错。

    前段时间,turi被苹果以2亿美元收购了,苹果正在将其改造成专门的机器学习部门。等待其开源的想法,恐怕是永远也实现不了吧。

    知识星球.jpeg

    02 HDP2.5

    著名的三大Hadoop发行版本之一,由hortonworks出品,说起hortonworks,得说一下hadoop,本来由yahoo!的一帮人搞起来的,后来这帮搞hadoop的人专门成立了一个公司,就是现在的hortonworks。

    据说现在hadoop的70%的代码还是由这家公司的员工在贡献。因此,可以想像其实力的强大了,出品的HDP平台,更是坚持100%的开源方式。而在Hive上在贡献主要是主导开发了Tez引擎,目前也是hdp2中Hive的默认引擎,其执行引擎与Spark类似,也是构建了DAG图,性能也几乎可以和Spark的SQL媲美了。

    最近时间访问其官方网站,部分页面也支持中文了,难道是看好中国这块大市场了?

    在最新的2.5版本中,已经集成了可以被称为交互式分析一统天下的Zeppelin(在下正在写的书《全栈数据》中专门一篇写了zeppelin的使用,欢迎关注!),更加方便了。

    目前的最新2.5版本中,对Hive和Spark的支持,是分别支持两个版本的。

    Hive是1.2.1和2.1两个版本,1.2.1是成熟版本,2.1是技术预览版本。

    Spark也支持两个版本,1.6.2和2.0, 1.6.2是很成熟的版本,2.0是技术预览版本,关于Spark 2.0这个新版本,在下前面已经有一篇文章介绍其新功能了,欢迎参考《Spark2.0,重要更新与改进》。

    03 skflow

    tensorflow的抽象上层API接口,提供了完全类似于sklearn的API接口。使用非常简单,只要有sklearn的使用经验,构建一个模型就是简单几个步骤,模型参数配置,fit,predict等等。

    因为tensorflow的影响力,skflow以前是单独一个项目,地址为:

    https://github.com/tensorflow/skflow

    目前官方已经没有维护这个项目了,因为已经完全把它整合到tensorflow中去了,地址为:

    https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/learn/python/learn

    按官方的说法,现在也改名叫tflearn,TF Learn (aka Scikit Flow)。

    借用一个官方的例子吧:

    import tensorflow.contrib.learn.python.learn as learn
    from sklearn import datasets, metrics
    
    iris = datasets.load_iris()
    classifier = learn.LinearClassifier(n_classes=3)
    classifier.fit(iris.data, iris.target, steps=200, batch_size=32)
    score = metrics.accuracy_score(iris.target, classifier.predict(iris.data))
    print("Accuracy: %f" % score)
    

    从scikit-learn中加载鸢尾花数据,构建一个线性分类器,然后使用fit进行拟合,最后使用predict进行预测,并进行性能评估。

    这完全就是sklearn搞机器学习的套路嘛!

    04 结语

    如果喜欢推荐的这三个框架,请继续关注本公众号!说不定后面会有更多使用方面的介绍。

    qr_code_new.jpg

    相关文章

      网友评论

        本文标题:三个框架与库,SFrame,Hdp2与skflow

        本文链接:https://www.haomeiwen.com/subject/lujkettx.html