文档章节

开源巨献:2017 年 Google 开源了这些超赞的项目

编辑部的故事
 编辑部的故事
发布于 02/21 07:14
字数 1453
阅读 14008
收藏 286

春节小长假,走亲访友之余,还可以利用一些零碎的时间收集学习资料,给自己充充电,好在 2018 年成为更优秀的自己。我们知道在开源和贡献开源方面,Google 一直是行业的典范。2017 年它开源了哪些优秀的软件,有哪些值得我们借鉴学习呢?让我们一起来看下:

1、硬件加速的机器学习 JavaScript 库 DeepLearn.js

DeepLearn.js 是 Google 推出的一个可用于机器智能并加速 WebGL 的开源 JavaScript 库,完全在浏览器中运行,不需要安装,不需要后端处理。

2、大型微服务系统管理工具 Istio

Istio 是一个由谷歌、IBM 与 Lyft 共同开发的开源项目,旨在提供一种统一化的微服务连接、安全保障、管理与监控方式。Istio 项目能够为微服务架构提供流量管理机制,同时亦为其它增值功能(包括安全性、监控、路由、连接管理与策略等)创造了基础。这款软件利用久经考验的 Lyft Envoy 代理进行构建,可在无需对应用程序代码作出任何发动的前提下实现可视性与控制能力。Istio 项目是一款强大的工具,可帮助 CTO/CIO 们立足企业内部实施整体性安全、政策与合规性要求。

3、可自动生成命令行接口 Python Fire

Python Fire 是 Google 开源的一个可从任何 Python 代码自动生成命令行接口(CLI)的库。

简易示例:

import fire

class Calculator(object):
  """A simple calculator class."""

  def double(self, number):
    return 2 * number

if __name__ == '__main__':
  fire.Fire(Calculator)

然后,你可以运行:

python calculator.py double 10  # 20
python calculator.py double --number=15  # 30

4、谷歌深度学习库 TensorFlow Fold

TensorFlow Fold 是用于创建使用结构化数据的 TensorFlow 模型库,其中计算图的结构取决于输入数据的结构。

TensorFlow Fold 使得处理不同数据尺寸和结构的深度学习模型更容易实现。Fold 实现动态批处理,变换任意形状的计算图形的批次以产生静态计算图形。 该图具有相同的结构,而不管其接收到什么输入,并且可以通过 TensorFlow 有效地执行。

5、Go 运行 Python:Grumpy

Grumpy 是一个 Python to Go 源代码翻译编译器和运行时,旨在替代 CPython 2.7。

关键的区别是它将 Python 源代码编译为 Go 源代码,然后将其编译为本机代码,而不是字节码。这意味着 Grumpy 没有 VM。编译的 Go 源代码是对 Grumpy 运行时的一系列调用,Go 库服务与 Python C API 类似的目的(尽管不直接支持 C API)。

6、基于 TensorFlow 的神经网络库  Sonnet

Sonnet 库使用面向对象的方法,允许创建定义一些前向传导计算的模块。模块用一些输入 Tensor 调用,添加操作到图里并返回输出 Tensor。其中一种设计选择是通过在随后调用相同的模块时自动重用变量来确保变量分享被透明化处理。

7、控制 headless Chrome 的 Node.js API :Puppeteer

Puppeteer 是一个控制 headless Chrome 的 Node.js API 。它是一个 Node.js 库,通过 DevTools 协议提供了一个高级的 API 来控制 headless Chrome。它还可以配置为使用完整的(非 headless)Chrome。

8、图像算法工具 Guetzli

Guetzli,在瑞士德语中是“cookie(曲奇)”的意思,是一个针对数码图像和网页图像的 JPEG 编码器,能够通过产生更小的 JPEG 文件来达到更快的在线体验,并且同时保持与当前浏览器,图像处理应用和 JPEG 标准的兼容性。Google 称 Guetzli 创建高质量的 JPEG 图像文件的大小比当前的压缩方法要再小 35%。

9、Google 开源机器学习数据集可视化工具 Facets

Facets 是 Google 开源的一款可视化工具,帮助理解、分析和调试 ML 数据集。

Facets 包含两个部分 —— Facets Overview 和 Facets Dive ,允许用户以不同的粒度查看其数据的整体图像。Facets Overview 可用于可视化数据的每一个特征,Facets Dive 用来探索个别的数据观察集。

10、机器学习工具库 Kubeflow

Kubeflow 是谷歌发布的一个机器学习工具库,Kubeflow 项目旨在使 Kubernetes 上的机器学习变的轻松、便捷、可扩展,其目标不是重建其他服务,而是提供一种简便的方式找到最好的 OSS 解决方案。该库包含包含的清单用于创建:

  • 用于创建和管理交互式 Jupyter notebook 的 JupyterHub

  • 可配置为使用 CPU 或 GPU,并通过单一设置调整至单个集群大小的 TensorFlow 训练控制器(Tensorflow Training Controller)

  • TF 服务容器(TF Serving container)

11、游戏状态自动管理框架 BOARDGAME.IO

BOARDGAME.IO 是 Google 开源的一个游戏框架,旨在允许游戏作者将游戏规则从本质上转化为一系列简单的函数,这些函数用于描述当一个指定动作发生时游戏的状态变化,框架负责处理表述性状态传递。 无需再手动编写任何网络或后端代码。

12、开源量子软件 OpenFermion

OpenFermion 是一个开源的软件,用于编译和分析量子算法来模拟费米子系统,包括量子化学,在其他功能中,当前版本的特征是用数据结构和工具获取和操纵费米子和量子位哈密顿算子的表示。

更多 Google 开源软件查看请点击:

© 著作权归作者所有

共有 人打赏支持
编辑部的故事

编辑部的故事

粉丝 1142
博文 248
码字总数 430631
作品 0
深圳
运营/编辑
加载中

评论(13)

雲霏霏
雲霏霏
一个都打不开~~
挪鸡鸭
百度:我呢我呢
S
Schr0dingerCat
腾讯:我的我的
Rwing
Rwing

引用来自“zhangleshiye”的评论

微软:我呢我呢
https://github.com/Microsoft/
木一杉
木一杉
https://github.com/google/boardgame.io
Disclaimer
This is not an official Google product.
来自山卡拉的你
来自山卡拉的你

引用来自“zhangleshiye”的评论

微软:我呢我呢
开源巨献:2017 年 微软 砍掉了这些超赞的项目:joy:
独爱剑走偏锋
独爱剑走偏锋
现在喊谷人希还有人赞吗? :joy:
独爱剑走偏锋
独爱剑走偏锋
现在喊谷人希还有人赞吗? :joy:
须臾时光
须臾时光
百度:我呢我呢
须臾时光
须臾时光
百度:我呢我呢

暂无文章

初级开发-编程题

` public static void main(String[] args) { System.out.println(changeStrToUpperCase("user_name_abc")); System.out.println(changeStrToLowerCase(changeStrToUpperCase("user_name_abc......

小池仔
24分钟前
0
0
现场看路演了!

HiBlock
昨天
4
0
Rabbit MQ基本概念介绍

RabbitMQ介绍 • RabbitMQ是一个消息中间件,是一个很好用的消息队列框架。 • ConnectionFactory、Connection、Channel都是RabbitMQ对外提供的API中最基本的对象。Connection是RabbitMQ的s...

寰宇01
昨天
4
0
官方精简版Windows10:微软自己都看不过去了

微软宣布,该公司正在寻求解决方案,以减轻企业客户的Windows 10规模。该公司声称,企业客户下载整个Windows 10文件以更新设备既费钱又费时。 微软宣布,该公司正在寻求解决方案,以减轻企业...

linux-tao
昨天
4
0
TypeScript基础入门之JSX(二)

转发 TypeScript基础入门之JSX(二) 属性类型检查 键入检查属性的第一步是确定元素属性类型。 内在元素和基于价值的元素之间略有不同。 对于内部元素,它是JSX.IntrinsicElements上的属性类型...

durban
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部