图大">数据处理过去一直是数据科学家的专利,随着数据应用得越来越广泛,图大数据分析成为数据分析领域必不可少的部分,人们越来越需要易于上手、使用简单的图数据分析工具。GraphLab是个很受大家欢迎的开源项目,GraphLab开发者们不断追求图计算的创新和发展,使其能迎合海量数据处理的要求。SFrame的亮相显得低调而神秘,不过其功能不可小觑,它将GraphLab扩展到了表格,使其可以轻松管理TB级数据。
社交媒体的图数据已经引起了许多公司注意,在生命健康科学、安全、金融服务等很多领域也存在类似的数据集。图数据的特征使其需要特殊工具和技术,这些工具对于一般用户来说太复杂了,在过去使用这些工具一直是数据科学家的专利。幸运的是图数据分析这个领域吸引了很多热心的企业家和开发人员。这些工具已经得到很大的改进,而且变得越来越简单。
我们身边有很多机器学习应用于图数据分析的示例,比如:发现有影响力的用户(PageRank)和社区、欺诈检测和推荐系统(GraphLab用户中比较流行的协同过滤)。一个领域的工具开发出来后常常会被应用到其他领域,除了GraphLab,分布式分析还被应用到Giraph、GraphX、Faunus和Grappa,此外像Neo4j和Yarcdata这样的图数据库也带有一些分析功能。
近日一家新公司的成立大大推动了开源项目GraphLab的发展,该公司由GraphLab的开发者组成,筹集资金为图数据集开发分析工具。GraphLab公司也将继续使用开源GraphLab“突破图计算的极限,努力创新”。
GraphLab的SFrame是一种趣味十足而低调神秘的工具,首次在 Strata Santa Clara被揭开面纱。它基于磁盘,并通过二维表形式将GraphLab扩展到了表格数据。通过添加SFrame,用户可以利用GraphLab中许多处理图或表中数据的算法。更重要的是SFrame增加了GraphLab数据科学工作流的覆盖范围:它允许用户直接使用GraphLab对TB大小的数据集进行数据清洁或者创建新的功能,SFrame性能可以通过增加内核实现线性扩展。
据有关人士透露GraphLab正在努力将它们的引擎与YARN集成到一起,不过SFrame测试版已经可以从HDFS中读取数据,还可以从本地磁盘、HDFS、S3或URL中读取数据,并保存成人类可读的.csv或更有效的本机格式。一旦SFrame被创建并保存到磁盘后,就不需要再重复处理数据了。下面用Python代码演示如何读取一个.csv文件到SFrame,以及创建一个新的数据功能并把它保存在S3磁盘上:
GraphLab Create是为那些想要开发推荐系统之类数据产品的软件工程师和数据科学家设计的,即使那些对机器学习比较陌生的人也能很快上手,还可以帮助经验丰富的开发者节省大量时间。
通过GraphLab Create可以开发数据产品或者用机器学习和图分析方法进行数据分析,可以连接到你的数据,通过迭代层次模型实现数据转换,并轻松地分析模型和系统性能,还可以在你的机器上运行应用或在AWS中运行实例。
而SFrame就是GraphLab Create的一部分,三月份将发布Python包,以简化可扩展分析产品的创建(例如推荐系统和图型分析系统)。利用GraphLab Create,用户将能够从Python或Ipython内部生成和维护分析管道,并将它们部署在单个服务器上或整个群集(包括本地和云)。
过去GraphLab被认为可扩展、速度快,但是使用困难而且应用范围有限。但过去的几个月里,GraphLab公司已解决两个首要问题,由此开发的工具应该可以大大增加GraphLab对于数据科学家的吸引力。与IPython的集成为PyData社区开启了一个GraphLab快速、可扩展分析模块时代(通过Python的六个线程生成端到端推荐)。SFrame和GraphLab Create扩展了数据科学工作流,使其包括数据转换(data wrangling)和数据吸收(data ingestion)。
在利用图工具分析之前,需要将数据转化成图。GraphBuilder是英特尔的一个开源项目,它使用Hadoop MapReduce从大型数据集中生成图。另一个选择是GraphX与Spark的结合产物,是由一个叫做Trifacta的新公司开发的多用途数据辨析工具。
由于SFrames类似于Pandas(PyData)和R数据架构,数据科学家可以非常方便快速地使用它们,提高工作效率。要问SFrames为什么能吸引Strata与会者,我觉得是因为它能够扩展到更大的数据集: SFrame允许用户处理大型表格式数据集而不局限于内存大小。