「可解释ML/3D深度学习等」Github六月最受欢迎的机器学习库来啦

https://www.toutiao.com/a6706469836307825163/

 

SHUBHAM SINGH总结了Github上6月份最火的7个项目。这七个项目涵盖可解释性机器学习、3D深度学习、时间序列挖掘以及可视化工具等。各个项目都非常优秀。值得收藏查看。

InterpretML by Microsoft – Machine Learning Interpretability

 

解释性在机器学习中是一件巨大的事情。能够理解模型如何产生它所做的输出 - 这是任何机器学习项目的关键方面。

InterpretML是Microsoft的一个开源软件包,用于训练可解释的模型和解释黑盒系统。微软在解释为什么可解释性至关重要时说得最好:

  • 模型调试:为什么我的模型犯了这个错误?
  • 检测偏差:我的模型是否有区分能力?
  • 人与人工智能合作:我如何理解并信任模型的决策?
  • 法规遵从性:我的模型是否满足法律要求?
  • 高风险应用:医疗保健,金融,司法等

随着复杂性的增加,解释机器学习模型的内部工作变得更加困难。你有没有试过拆开并理解多个模型合奏?这需要花费大量的时间和精力。

我们不能简单地使用复杂的模型去应对我们的客户或领导,而不能解释它如何产生良好的分数/准确性。

Microsoft Research的人员开发了可解释的提升机(EBM)算法来帮助解释。这种EBM技术具有高精度和可解释性。

解释ML不仅限于使用EBM。它还支持LIME,线性模型,决策树等算法。它能比较模型并为我们的项目挑选最好的模型!

https://github.com/microsoft/interpret

Tensor2Robot (T2R) by Google Research

 

Google发布的最新开源名为Tensor2Robot(T2R)的库非常有意思。 T2R是用于大规模深度神经网络的训练,评估和推理的库。 但是它的开发考虑了一个特定的目标,即它适用于与机器人感知和控制相关的神经网络。

此存储库包含分布式机器学习和强化学习基础结构

它在Alphabet内部使用,开源的目的是使Robotics @ Google的研究对于更广泛的机器人和计算机视觉社区提供可重复性的工作。T2R是基于Tensorflow的框架。

机器人研究中的常见任务涉及向神经网络图添加新的传感器模态或新的标签张量。 这涉及1)更改保存的数据,2)在训练时更改数据管道代码以读取新模态3)添加新的tf.placeholder以在测试时处理新的输入模态。 Tensor2Robot的主要功能是为步骤2和3自动生成TensorFlow代码。Tensor2Robot可以自动生成模型的占位符以匹配其输入,或者导出可以与TFExportedSavedModelPolicy一起使用的SavedModel,以便原始图形不是必须重建。

https://github.com/google-research/tensor2robot

Generative Models in TensorFlow 2

 

这是一个在Tensorflow 2中实现大量生成模型的小项目。图层和优化器使用Keras。 这些模型是针对两个数据集实现的:MNIST和NSYNTH。 编写这个框架的目的是尽可能简单和一致,同时仍然可读。 因为每个网络都是自包含在notebook中的,所以它们应该可以在colab会话中轻松运行。

这个库已经实现的模型包含:

  • Autoencoder(AE)
  • Variational Autoencoder(VAE)
  • Generative Adversarial Network(GAN)
  • Wasserstein GAN with Gradient Penalty (WGAN-GP)
  • VAE-GAN
  • Generative adversarial interpolative autoencoder (GAIA)

https://github.com/timsainb/tensorflow2-generative-models

STUMPY – Time Series Data Mining

 

STUMPY是一个功能强大且可扩展的库,可帮助我们执行时间序列数据挖掘任务。 STUMPY旨在计算矩阵轮廓(matrix profile)。矩阵轮廓是一个向量,它存储了时间序列中任何子序列与其最近邻居之间的z标准化欧几里德距离。

详情可参考:https://stumpy.readthedocs.io/en/latest/Tutorial_0.html

它可以用来处理很多时序数据的挖掘任务:

  1. 模式/主题(在较长时间序列内近似重复的子序列)发现
  2. 异常点发现
  3. shapelet 发现
  4. 语义分割
  5. 密度估计
  6. 时间序列链(时序有序的子序列模式)
  7. 等等其他的

https://github.com/TDAmeritrade/stumpy

MeshCNN in PyTorch

MeshCNN是用于3D三角网格的通用深度神经网络。 这些网格可用于3D形状分类或分割等任务。 计算机视觉的精湛应用。

MeshCNN框架包括直接应用于网格边缘的卷积,池化和解除层:

 

3D深度学习吸引了业界的兴趣,包括机器人和自动驾驶等领域。 3D形状的问题在于它们本质上是不规则的。 这使得像卷积这样的操作变得很困难。

https://github.com/ranahanocka/MeshCNN

Awesome Decision Tree Research Papers

决策树算法是我们在机器学习中学到的第一批高级技术。这种方法可以在更大的数据集上使用。

这个存储库是数据科学家的宝库。 存储库包含基于树的算法的论文集合,包括决策,回归和分类树。 存储库还包含每篇论文的实现。

https://github.com/benedekrozemberczki/awesome-decision-tree-papers

TensorWatch by Microsoft Research

TensorWatch是一个调试和可视化工具,专为数据科学,深度学习和强化学习而设计。 它适用于Jupyter Notebook,可显示机器学习训练的实时可视化,并为您的模型和数据执行其他几项关键分析任务。

TensorWatch旨在灵活且可扩展,因此您还可以构建自己的自定义可视化,UI和仪表板。 除了传统的“所见即所见”方法外,它还具有针对您的实时ML训练流程执行任意查询的独特功能,作为查询结果返回流并使用。

 

https://github.com/microsoft/tensorwatch

你可能感兴趣的:(人工智能,可解释ML/3D深度学习)