TowardsDataScience 博客中文翻译 2019(五百六十八)

原文:TowardsDataScience Blog

协议:CC BY-NC-SA 4.0

你必须知道约束最小二乘

原文:https://towardsdatascience.com/you-must-know-constrained-least-squares-850aeedf2ef3?source=collection_archive---------8-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Inactive. on Unsplash

增加多目标最小二乘以引入困难的问题约束。

我们之前讨论过最小二乘法,同样在多目标函数的情况下,将问题简化为经典公式是非常简单的。现在,有些问题的解是有约束的,并不是简单地将梯度设为 0 就能直接解决的。在本文中,我们讨论约束最小二乘。

新的优化问题采取以下形式:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

与之前我们看到的这里的这里的相比有什么不同?这条讨厌的 s.t .线。S.t .是 subject to 的简称,我们的优化 subject to 是什么?它受制于一组线性等式约束,因为现在我们知道这个公式是一组线性方程的简称。

现在,我们还必须引入一些术语来更详细地讨论这个问题。这很简单,如果一个解(即向量 w )满足约束集,则称之为可行。由此可见,满足约束集的一组解称为可行集。反之,可行集包含最优点,即问题的解。

如果你看了我之前关于多目标最小二乘的文章。众所周知,多目标最小二乘优化问题是用一个向量λ来表达的,该向量对各个目标进行加权。有趣的是,约束最小二乘优化问题可以看作是多目标最小二乘问题的一个特例。让我明明白白地说:

约束最小二乘是多目标最小二乘的特例。

这又是什么特例呢?在约束最小二乘的情况下,我们有两个目标:约束和主要目标。在某种意义上,我们可以将其公式化为多目标最小二乘问题:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

但是,等等,这看起来与多目标最小二乘法非常相似,只是符号略有不同…

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

看起来很相似,对吧?那么,问题是什么……问题是,在约束最小二乘法的情况下,我们有硬约束,我们将λ 1 设为无穷大。逻辑上,最小化该目标,使得第二λ远大于第一λ:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

产生具有一组硬约束的约束最小二乘问题的解。代码如下:

结果显然并不令人惊讶,与您预期的差不多—估计并不完全符合目标,因为目标函数的最优值并不包含在可行集中。请注意,该图是 3D 的,因为 X 中的每个点都是 2D,我们回归的输出是 1D。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

当然,根据问题的不同,可能会出现包含最优解的情况。有了软约束,问题变得更容易管理,对此更深入的分析将在以后的文章中讨论。

干得好,如果你已经阅读了这篇文章和我以前关于最小二乘法的文章:

  1. 你必须知道最小二乘法
  2. 你一定知道多目标最小二乘法

你对最小二乘法很了解。这并不是说我已经涵盖了关于最小二乘的所有内容,仍然有一些特定的情况需要对目标函数进行调整以适应问题。比如在我们使用核的情况下,或者在我们预测时间序列的情况下。但是,大多数时候我们可以将新问题简化为基本公式,从而允许我们使用简单直接的线性代数来求解一组线性方程以获得解。

在这一点上,继续学习,感谢阅读!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

你一定知道最小二乘法

原文:https://towardsdatascience.com/you-must-know-least-squares-a900f63e0bf0?source=collection_archive---------8-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

让我们远离神经网络炒作,稍微回到基础,回到事情实际上有意义的时候,它们为什么工作。

机器学习是一个非常热门的话题,每个人都想在产品中使用它,或者降低企业运营成本。机器学习似乎是商业世界祈祷的答案。然而,人们跳入机器学习的方式可能非常令人惊讶。是的,我知道,神经网络是“东西”,但在我看来,跳入神经网络是被误导的。

所有的机器学习都不围绕神经网络

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

是的,他们可以做很酷的事情,用很多,真的很多计算。但曾经有一段时间,机器学习解决方案优雅、高效、快捷。在本文中,我们将深入基础知识,讨论最小二乘回归。我们为什么要谈这个?因为,信不信由你,这种简单的方法还用在统计分析中,那里有大量的数据要分析。在 Kaggle 竞赛中,它经常被用来观察数据的趋势或变化等。最小二乘法是一个东西,虽然它非常简单,但没有足够多的人知道它背后的数学。所以,让我们开始吧。

如果你上过简单的线性代数课,你就知道什么是矩阵,你很可能见过这种方程:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果要得到这个方程的解,需要矩阵 A 的逆(我们只是要考虑 A 是可逆的情况,方程不是超定的)。所以解决方案看起来就像这样简单:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

现在,我们知道如何得到这个简单方程的解,或者更好地说是方程组,因为我们可以把矩阵 A 的每一行单独看成一个线性方程。矩阵公式是描述一组线性方程的简单紧凑的形式。

但这并不是我们最终真正想要做的。我们想学东西,我们想做机器学习!所以这里面的学问在哪里……就是一堆线性方程,好无聊。那么,我们在机器学习中具体做什么呢?我们有一个我们想要拟合的函数,我们称之为函数 f ,它给我们一些数据 x 的值 y 。简单写下:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

就这么简单。所以我们要学习 f ,在我们的例子中我们假设 f 是一个线性函数(不去考虑推广之类的问题,只是为了尽量简单)。我承认符号在这一点上有点乏味。之前使用 x 作为必须满足一组方程式的点。在这种情况下,我们希望找到描述数据的线性方程的系数。我们可以把它写成矩阵形式:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

考虑到 X 中的每一行都是一个数据点,然后我们基本上取该数据点与 w. 的点积,这个表达式就很自然了。现在,我们需要定义我们的学习算法,这实际上只需要一步,封闭形式的解决方案。为此,我们需要一点微积分。首先,我们需要看看机器学习中的以下永不老化的目标函数,均方误差:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

||括号在这里是因为当我们谈论向量时,我们谈论的是它们的范数,在这种情况下,它是每个数据点上误差总和的简写。如果你想知道规范和点积在 ML 中有多重要,看看这篇文章。上面的误差项有一些很好的性质,其中之一是它是二次的。在最优化中,我们喜欢二次函数。它们相对容易优化,因为它们是凸的,它们有一个全局最小值。我们如何找到这个问题的解决方案,也就是说,我们如何最小化这个函数?微积分中相当标准的做法是,我们求导并寻找等于 0 的解。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

也就是说梯度等于 0:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

采用链式法则的 MSE 的梯度等于:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

现在,通过一点矩阵乘法并将梯度设置为 0,我们可以写出很好的封闭形式的解:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果你怀疑它是那么简单…是的,它是,你实际上是在用这一小块数学做机器学习,或者换句话说,优化。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

注意,这个解是针对 y 是一维的情况的解,扩展到多维的情况是琐碎的,可以留做练习!这一小块数学可以用几行代码实现,实际上,最小二乘部分只需要 2 行代码!

这导致了下图,注意它如何找到数据的最佳拟合线(最小化平方误差)。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们可以看到,该平面穿过数据簇的中间,在那里它使平方误差最小化。

显然,我们不能用一条直线或一个平面来拟合所有的数据,但是通过强大的特征提取器,我们可以将问题简化为一个更简单的问题。客观地说,这就是神经网络有效地做的事情,唯一的区别是我们在最后一层使用一些非线性作为激活函数。如果我们去除这一点,我们可以将神经网络的最后一层视为最小二乘问题,即在数据上拟合一个平面(来自先前层的激活)。

如果你对其他一些机器学习文章感兴趣的话,这是对最小二乘法的一个简短而轻松的介绍:

  1. 因果与统计推断
  2. 机器学习中的内核秘密
  3. 中心极限定理及其推论

下次见!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

你必须知道多目标最小二乘法

原文:https://towardsdatascience.com/you-must-know-multi-objective-least-squares-ff4a5bba0c8a?source=collection_archive---------18-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

经典的最小二乘法不错,但是在很多方面有局限性。这里我们谈谈如何以优雅的方式使最小二乘法适应多目标优化问题。

在之前的文章中,我谈到了最小二乘法,它的简单令人惊叹,并且有着广泛的应用。然而,同样,应用程序仅限于某种类型的优化问题。然而,你不应该低估线性代数的能力和普遍性。

在很多问题中,我们不希望只优化一个目标函数,我们希望优化多个目标函数。这就是多目标最小二乘法的用武之地。

回想一下在拟合数据的情况下,最小二乘法的等式是什么样的:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

最小化的目标函数是:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

因此,想象一个由多个 J 组成的目标,每个 J 都是它们自己的最小二乘问题,如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

其中,我们将每个 J_k 定义为:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

或者我们可以用简单的线性代数友好的符号来写,作为点积:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

引入向量λ是解决多目标问题的典型方法,它定义了每个目标对优化问题的贡献(逻辑上)。所以,现在我们问一个问题,这如何适应最小二乘框架?嗯,要做的一件事是将λ移入 **J,**得到一个结果:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

通过观察规范中的项,你是否注意到了与经典最小二乘法相似的模式?嗯,你应该这样做,因为通过替换下面这些部分,我们将得到一个经典的最小二乘公式(我们知道如何求解):

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

因为线性代数是一个美丽的东西,现在我们可以将我们的多目标最小二乘写成如下,一切都开箱即用:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

基于之前的文章,我们已经知道如何解决这个问题!尽管如此,让我们把代码写下来,这样我们在完整的表述中就具体了:

您应该从上面的代码中得到的结果应该如下所示(模随机生成器在不同版本的 numpy 中工作方式不同):

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

注意蓝线(预测)是如何最符合红色数据点的?这是因为我们通过λ向量给了红色数据点最高的成本。这很好,我们现在可以在优化问题中平衡多个目标了。但是,最终,现实世界充满了一些硬约束,甚至告诉我们可以考虑哪些解决方案。幸运的是,有一种方法可以解决这个问题,完全基于古老的线性代数!未完待续…

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

您现在需要从云计算转向边缘计算!

原文:https://towardsdatascience.com/you-need-to-move-from-cloud-computing-to-edge-computing-now-e8759eb9690f?source=collection_archive---------14-----------------------

到 2025 年,边缘计算市场规模预计将达到 290 亿美元。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Cloud (Image by rawpixel from Pixabay)

在这十年中,出现了从内部计算到云计算的转型运动,使系统集中化和可访问,并增加了安全性和协作性。今天,在新的十年即将到来之际,我们见证了从云计算到边缘计算的转变。

什么是边缘计算?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

边缘计算是指发生在互联网“外部边缘”的计算,与云计算相反,云计算的计算发生在一个中心位置。边缘计算通常在靠近数据源的地方执行,例如在连接的摄像机上或附近。

自动驾驶汽车是边缘计算的一个完美例子。为了让汽车安全地行驶在任何道路上,它必须实时观察道路,如果有人走在汽车前面,它就必须停下来。在这种情况下,使用边缘计算在边缘处理视觉信息并做出决定。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这个例子强调了边缘计算的一个关键动机——速度。集中式云系统提供了访问和协作的便利,但是服务器的集中化意味着它们远离数据源。数据传输会引入由网络延迟引起的延迟。对于自动驾驶汽车来说,从通过传感器收集数据到做出决定,然后根据决定采取行动,时间尽可能最短至关重要。

到 2025 年,边缘计算市场规模预计将达到 290 亿美元。—大观研究

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

VC Andreesen Horowitz presenting “Return of the Edge and the End of Cloud Computing”

所有这些实时应用都需要边缘计算。根据 Grand View Research,Inc .的市场研究未来(MRFR)研究显示,到 2024 年,边缘计算的市场规模预计将达到 224 亿美元,到 2025 年将达到 290 亿美元。像 Andreessen Horowitz 这样的顶级风投公司正在进行大规模投资。边缘计算已经被用于各种应用,从无人驾驶汽车和无人机到家庭自动化系统和零售,以这种流行速度,我们只能想象它的未来应用。

为什么要从云迁移到边缘?

速度

在云计算中,边缘设备收集数据并将其发送到云端进行进一步的处理和分析。边缘设备的作用有限,它们向云发送原始信息,并从云接收经过处理的信息。所有真正的工作都在云中完成。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这种类型的基础设施可能适合于用户能够承受等待 2 或 3 秒来获得响应的应用。然而,这不适合需要更快响应的应用程序,尤其是那些寻求实时操作的应用程序,如自动驾驶汽车。但是,即使在一个更普通的例子中,比如基本的网站交互,开发人员也会部署 JavaScript 来检测用户的动作,并在用户的浏览器中做出响应。在响应时间对应用程序的成功至关重要的情况下,如果可能的话,在接近数据源的地方解释输入数据是更好的选择。当输入和输出发生在同一位置时,例如在物联网设备中,边缘计算消除了网络延迟,实时成为可能。

带宽

边缘计算意味着更少的数据传输,因为大多数繁重的工作都由边缘设备完成。而不是将原始数据发送到云端,大部分处理都在边缘完成,只有结果发送到云端,因此需要的数据传输带宽更少。

让我们以一个智能停车系统为例,它使用云计算基础设施来找出有多少停车位可用。比如说,每隔几秒钟就有 1080p 的实时视频或静态图像被发送到云端。想象一下这种解决方案每小时所需的网络带宽和数据传输成本,通过网络持续传输大量原始数据:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Could Computing vs Edge Computing in terms of network bandwidth consumption

相比之下,如果智能停车系统使用边缘计算,它只需每隔几秒钟向云发送一个整数,即有多少停车位可用,从而减少带宽,并降低数据传输成本。

规模

物联网意味着更多的系统,更多的系统意味着集中式服务器上更多的带宽和更多的负载。在云计算架构中,增加一个物联网设备会导致带宽需求和云计算能力的增加。

让我们以上面的智能停车系统为例,将实时 1080p 视频传输到云端。客户希望在另外 10 个停车场安装该系统。为了实现这一点,他们需要增加网络带宽,并且需要大约 10 倍的计算能力和云存储空间,因为中央服务器上的负载会随着来自 10 个额外摄像机的传入数据而增加。这增加了网络流量,上行链路带宽成为瓶颈。因此,随着每增加一台设备,网络流量、带宽和云资源的使用都会增加,因此扩展成本很高。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

相比之下,在边缘计算中,增加一个物联网意味着设备的单位成本增加。不需要增加每台设备的带宽和云计算能力,因为大多数处理都是在边缘完成的。借助边缘计算架构,在停车场系统中添加 10 个额外的物联网设备似乎不那么令人生畏,因为不需要增加云计算能力或网络带宽。因此,边缘计算架构的可扩展性更强。

从内部计算到云计算,再到现在的边缘计算,随着我们对计算系统提出更高性能和更多创新的要求,软件架构也在不断发展。随着我们当前基于云的架构的增长,边缘计算市场在实时应用需求和物联网成本压力等因素的推动下不断增长。这是一个将影响 2020 年软件行业的趋势。欢迎来到未来。

您已经在使用边缘计算了吗?边缘计算的其他优势是什么? 在下面留下你的想法作为评论。

原载于**

更多故事:

在计算受限的设备上运行深度学习计算机视觉的挑战

在树莓上挣扎奔跑的物体检测

关于作者

Sabina Pokhrel 在 Xailient 工作,这是一家计算机视觉初创公司,已经建立了世界上最快的边缘优化物体探测器。

参考文献:

https://www . marketresearchfuture . com/reports/Edge-Computing-market-3239

https://www . grandviewresearch . com/press-release/global-Edge-Computing-market

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6539964/

https://www . the verge . com/circuit breaker/2018/5/7/17327584/Edge-Computing-Cloud-Google-Microsoft-apple-Amazon

https://www . sales force . com/products/platform/best-practices/benefits-of-Cloud-Computing/#

https://www . control eng . com/articles/key-drivers-and-benefits-of-edge-computing for-smart-manufacturing/

https://ces.eetimes.com/the-advantages-of-edge-computing/

你说“智能设备”,真的吗?

原文:https://towardsdatascience.com/you-said-smart-devices-really-77ef97049d8d?source=collection_archive---------19-----------------------

我们如何定义“聪明”?以及为什么人们会混淆“智能设备”和“智能设备”

我们在之前的文章中看到,专家们并不总是就定义达成一致,我们试图澄清围绕物联网(IoT) 的困惑。

现在让我们深入探讨一下设备的“智能”。智能手机是什么大家都知道,但是到底有多智能呢?智能设备到底意味着什么?

关于“智能”一词的困惑

剑桥和牛津字典对聪明人的定义是:聪明,或者能够在困难的情况下快速或聪明地思考。

由此可见,*【智能】**【智能】*是同义词。但是说到设备,这两个词指的是不同的概念:

设备的“智能”被定义为“使用计算机以独立的方式行动”的能力,而设备的“智能”在于“以类似于人类的方式适应和应对不同情况”的能力。

换句话说:

  • 一个智能设备 要求独立;它包括一个软件,以便在没有用户输入的情况下自动执行任务。
  • 一个智能设备需要适应和学习;它包括一个软件,从数据和过去的使用中提取知识,以改善其行为(即人工智能)

这意味着智能设备通常也是智能的,但智能设备不一定是智能的。这是大多数人感到困惑的地方。

为什么知道区别很重要?

如果顾客认为两种产品是一样的,正常的反应是买便宜的那一种。然而,智能设备需要更高的计算能力,因此需要更昂贵的硬件。

更令人困惑的是,在法语和阿拉伯语等一些语言中,两个词*–smart&intelligent,都被翻译成:‘intelligent’。因此,当营销人员翻译他们的产品名称时,所有的*【智能】设备都变成了【智能】,这导致了歧义。

例如:当我购买一台智能空调时,我希望该设备能够显示一些人工智能功能,例如预测我何时回家,以便在我到达之前降低温度,或者自动适应我的习惯,在周六因为我回来晚了而切换到经济模式。我也希望所有我想买的智能设备有同样的行为,比如智能咖啡机、智能锁、智能汽车等等。

但由于那些所谓的智能设备并不智能,我将不得不手动设置我的空调,在每天的固定时间开始给房子降温,或者使用移动应用程序远程启动程序。此外,我可能会为我购买的每个设备安装不同的应用程序!

技术人员所说的“聪明”是什么意思?

对于技术人员来说,“智能”指的是连接性或自动执行:

  1. 自动执行:
    欧洲 GASAGRAS 项目报告称智能设备是*‘基于嵌入式计算机的系统,无需人工干预’*。
  2. 连接和识别:
    在分析了各种定义后, IEEE P2413 计划——负责标准化物联网框架——得出结论,设备*‘如果可以识别、命名和寻址’,就可以变得智能。使“智能设备”几乎成为“物联网设备”的同义词(查看* 之前的博客 了解更多详情)

简单来说:“智能设备是一种电子设备,一般通过不同的无线协议(如蓝牙、NFC、Wi-Fi、LiFi、3G 等)与其他设备或网络相连。),可以在一定程度上交互和自主操作”(维基百科定义)

所以智能设备是关于*‘智能’*,对吗?

应该是这样,但是你猜怎么着?如果你用谷歌搜索“智能设备”这个词,你会找到下面的定义:

具有内部计算能力的机器、仪器、设备或任何其他装置。

但是等等……这不就是智能设备的定义吗?看起来这里又有一个混乱!

从我们之前所见,智能设备的正确定义应该是:

“使用人工智能(AI)以使其行为适应不同情况并从过去的经验中学习的电子设备”。

这是有道理的,并且完全符合剑桥和牛津词典的定义。

事实上,计算机科学的大多数研究人员都会同意这个定义。但在电气工程或电信等其他领域,有些人会用*【智能设备】【智能设备】来指代同一个事物。例如,国际电信联盟机构将智能事物描述为包含嵌入式智能的【思考事物】*。

注意细节,找出误导性的词语

有些人利用这些令人困惑的定义为自己谋利;要么是为了制造声势,要么是为了吸引投资者。

最近的一项研究调查了来自 13 个欧洲国家的 2830 家公司,证实了 40%的所谓的*‘人工智能初创公司’*没有证据表明在他们的产品中使用人工智能材料。

从我个人的经验来看,作为阿尔及利亚几个黑客马拉松的教练,大多数声称他们的解决方案使用智能系统的团队根本不包括任何形式的人工智能。他们使用这个词要么是作为销售理由,要么是因为他们认为系统的智能是关于使用智能手机的连接和远程控制。

所以下次你想买一个*【物联网】**【智能】或者【智能】*设备的时候,问问卖家他/她这个词是什么意思。同时,也许亚瑟·阿布德斯拉姆能告诉我们更多关于这一现象的营销部分。

下一篇文章,我们来澄清另一个困惑:什么是机器人?相信我,这个问题比看起来要难。

在那之前,请分享和评论来丰富辩论。

你说你想要一场(数据)革命

原文:https://towardsdatascience.com/you-say-you-want-a-data-revolution-6ceefded38b7?source=collection_archive---------39-----------------------

让数据成为企业中的一等公民

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Paul Skorupskas on Unsplash

当基于订阅的商业模式开始风靡时,公司开始意识到以客户为中心对生存和成功至关重要。在 Gainsight,我曾帮助创建并支持客户成功类别,并担任 CS 运营副总裁,我很幸运能够在这场变革中占据第一排的位置。这些天来,我很高兴参与另一场革命:随着每个企业都成为科技企业,也有义务成为以数据为中心的企业。

我不禁要说:数据第一是新的客户第一吗?我发现反思这两个主要的业务转型很有启发性,希望我们能从中吸取教训。这里有三个有趣的相似之处可以考虑。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

让客户和数据成为全公司的重中之重

首先,考虑一下:公司中谁“拥有”客户体验?这几乎已经成为客户成功领域的老生常谈——当然,组织中的每个人都这么做。组织中的每一个职能都对客户体验和结果有贡献。

但是我认为,在数据领域,这个问题仍然存在争议。公司中谁“拥有”数据?是专注于将洞察力转化为行动的数据业务消费者吗?还是那些负责生成大量数据的基础架构的人?我看到客户、IT、数据、工程或其他部门的答案各不相同。

如果我不得不打赌,我敢打赌,各公司都会同意类似的答案:最终,组织中的每个人都拥有数据。收集、存储、分析和推动数据行动是每个职能部门的共同责任。与客户体验类似,这并不是说没有一个人对它的每个部分负责(甚至可能有一个首席数据官全面领导战略),而是整个组织共同拥有数据和基于数据的行动——即使一开始我们可能不喜欢这个想法。

采用技术加速数据驱动的客户成果

在客户成功中,最关键的步骤之一是找出如何卸载和自动化某些任务,所有这些都是为了专注于最重要的事情:为客户创造价值和成果。我们利用软件和自动化来更快、更高效地收集、跟踪和处理客户数据,并取得了巨大的成效。

最近的一个例子是 TD Ameritrade 如何依靠人工智能来实现他们的“客户之声”。通过将人工智能应用于呼叫中心记录,以提取观点、做出响应和定制建议,TD 还能够释放带宽,以优先考虑更广泛的客户至上的项目。例如,当他们的分析显示客户打电话是为了获得他们投资的基本信息时,TD 推出了一个新的网页,向他们提供在线信息。简单。

自然,这个客户成功的例子有其数据基础。但是数据行业也必须关注这项工作。例如,基于云的数据仓库正变得越来越普遍,用于存储数据,卸载曾经被视为核心的活动——存储。但是如果你仔细想想,依赖基于云的仓库为数据团队开辟了其他机会——比如采用其他技术来加速创新。一旦解决了基础问题——如治理、访问、质量控制、安全性等——团队就可以专注于推动客户和业务成果的真正创新。

从被动转为主动(也就是防御转为进攻)

起初,客户成功是支持功能的同义词。从这个角度来看,客户服务通常是事后的想法,是保护你的基础的一种方式,带有处理查询的风险框架。但大约十年前,当 SaaS 的商业模式获得牵引力时,人们开始意识到卓越的客户管理不仅仅是一种防御机制。现在看起来很明显:当然伟大的客户优先排序可以让客户更成功地使用你的产品——也让生意更成功。

很快就清楚了,在客户成功方面积极主动(例如,建立一个负责向客户展示价值的 CS 功能)是一个真正的增长引擎。如今,具有前瞻性思维的组织将客户成功视为推动公司增长的基于结果的功能。

在这里,我们也可以与数据行业相提并论。数据行业基本上是从防御开始的,受法规遵从性和风险缓解的驱动。它位于 It 组织中,其技能主要用于检测问题,并找出如何在问题变得更加严重之前阻止它们。但防守方面的进步开始暗示,数据也可能有机会进入进攻。它开始成为一个业务驱动的、基于结果的、主动的职能,推动公司的增长,但我们仍处于早期阶段。

所有这些当然都是一种简化——它不是 1:1 的直接比较,我们当然应该从基本原则出发评估每种情况。也就是说,我们成为客户数据优先组织的共同机会和需求从未像现在这样重要。这使得考察一个走在我们前面的行业是如何转型的更有帮助。

你应该害怕超级愚蠢,而不是超级聪明

原文:https://towardsdatascience.com/you-should-fear-super-stupidity-not-super-intelligence-19f93a46fa4d?source=collection_archive---------22-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Artificial Intelligence is not match for Natural Stupidity

我被邀请参加一个相当大的活动,在这个活动中,一些专家和我(请允许我不认为我是一个专家)将讨论人工智能,特别是关于超级智能的概念。

原来我最近发现了这个非常有趣的 TED 演讲,是由 Grady Booch 做的,正好是我准备演讲的最佳时机。

Grady Booch — Don’t fear superintelligent AI TED Talk

不管你同意还是不同意布奇先生的观点,很明显今天的我们仍然生活在 弱或窄的 AI远的一般的 AI ,更远的离一个潜在的超级智能。尽管如此,从今天起机器学习给我们带来了巨大的机遇让算法与人类合作解决我们最大的挑战的机会:气候变化、贫困、健康和福祉等。

事实上,如果我们想作为人类生存足够长的时间,有朝一日有可能解决超级智能问题,我们似乎应该担心许多挑战。我们真的足够担心吗?让我怀疑。这就是为什么我们应该担心超级愚蠢。

人工智能已经多次表明,它能够找到我们人类无法识别的关系/ 模式。如果当前的人工智能帮助我们找到治愈疾病的模式,或者帮助我们应对气候变化,会怎么样?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

AI can find hidden patterns for humans

让我说清楚:我强烈认为,我们必须努力避免人工智能的不良使用可能带来的风险,通过道德准则和监管,但不放弃我们作为一个社会可以从中获得的巨大利益。实际上,我们在这一领域面临的最大挑战之一是避免陷入技术过度监管,因为全球监管和道德考量之间的巨大差异最终可能会改变全球地缘政治秩序**,并产生/加剧国家/地区之间的不平等。但这也许是另一篇文章的精神食粮…**

话虽如此,让我继续从布奇先生的讲话中摘录一段,并谈谈我自己的一些想法:

“我们正处在与机器共同进化的不可思议的旅程中。我们今天的人类不是那时的人类。现在担心超级智能的崛起在许多方面都是一种危险的分心,因为计算本身的崛起给我们带来了许多我们现在必须关注的人类和社会问题。当对人类劳动力的需求减少时,我该如何最好地组织社会?我怎样才能在全球范围内带来理解和教育,同时又尊重我们的差异?我如何通过认知医疗延长和提高人类寿命?我该如何利用计算机来帮助我们到达恒星?”

我完全同意。人工智能在当前状态下的崛起,以及 ML 的使用,特别是深度学习扩展,使我们面临任务自动化方面的巨大挑战。我说任务而不是工作是有原因的:我们越来越需要将工作视为任务的组合,其中一些是可重复的且缺乏创造力(因此受制于自动化),而另一些则不是(因此仍由人类来执行)。正如布奇先生提到的,这种新的人机合作(被称为增强智能)本身带来了巨大的挑战。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传****外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

但不仅如此。最先进的 人工智能还引入了其他挑战,它们都与伦理有关,以及信任应该如何成为创造负责任的人工智能的基本原则,如下图所示。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Challenges around Responsible AI

最后,我非常同意博奇先生演讲的最后一段摘录:

此时此地,利用计算提升人类体验的机会触手可及,而我们才刚刚开始。

所以,让我们不要把精力放在避免一种超级智慧上,这种智慧只能(暂时)是我们自己超级愚蠢的产物。让我们把注意力集中在真正的问题上,以及如何利用我们掌握的难以置信的技术造福人类。

你的算法分不清绿色和蓝色

原文:https://towardsdatascience.com/your-algorithm-doesnt-know-green-and-blue-from-grue-8cfdb71d1c2c?source=collection_archive---------28-----------------------

数据科学之道

古德曼的新归纳之谜与人工智能中的逻辑

数据科学之道 专栏探讨了几个世纪以来哲学家们是如何攻克机器学习和数据科学的关键问题的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Nelson Goodman’s little riddle makes even commons sense inductive reasoning feel futile.

归纳指从例子中学习一个大概的概念。

我们见过许多蜗牛。我们见过的每只蜗牛都吃莴苣。所以,所有的蜗牛都吃生菜。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

哲学的核心问题之一是归纳法的问题——归纳法推理是否能通向知识的问题。

在统计机器学习中,我们试图创造从数据中学习的机器。归纳的问题让人质疑这种学习过程是否能让机器知道一些东西。

我想将一些基本的机器学习理论与哲学中关于归纳的经典讨论联系起来。我想把归纳问题上的基础哲学工作和建造学习机器的人所面临的挑战联系起来。

这篇关于纳尔逊·古德曼的新归纳之谜的文章代表了对这个相当大的杯子的最初投入。

绿色,蓝色,还是灰色?

归纳法的部分问题在于,看似简单的观点,即过去定期观察到的模式将持续到未来,显然缺乏正当理由。

纳尔逊·古德曼根据文字游戏和基本命题逻辑编造了一个有趣的谜语,展示了这种推理方式如何导致相互矛盾的结论。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Is this gemstone green, blue, or grue? Photo by Jens Johnsson

假设你是一名研究宝石的地质学家。在“这个宝石是绿色的”这个表达中,“是绿色的”是所谓的谓词。假设这个断言在 2020 年 1 月 1 日午夜之前对你见过的所有宝石都成立。归纳法让你得出结论,这个谓词在未来将是真的。你可以说“预测”,而不是“断定”——你预测未来所有宝石的颜色都将是绿色。

谜语的工作原理是将“是绿色的”换成一个新的谓词,并显示你得到了一个矛盾。新谓词是“is grue”,其中“grue”表示“是绿色的,在 2020 年 1 月 1 日午夜之前看到,是蓝色的,在 2020 年 1 月 1 日之后看到”。

下面是这个谜语的分解:

  1. 如果我们在 2020 年 1 月 1 日之前看到的所有宝石都是绿色的,那么观察陈述“2020 年 1 月 1 日之前看到的所有宝石都是绿色的”是正确的。
  2. 此外,根据我们对“grue”的定义,观察结果“2020 年 1 月 1 日之前见到的所有宝石都是 grue ”也是正确的。
  3. 通过归纳推理,我们从第一个观察陈述中得出结论:“所有未来的宝石都将是绿色的。”
  4. 同样,我们从第二个陈述中得出结论,“所有未来的宝石将 grue。
  5. 既然我们得出了这两个结论,那么我们得出的综合结论是“所有未来的宝石都将是绿色和绿色的。
  6. 但这是一个矛盾。这一综合结论意味着,一旦我们过了 2020 年 1 月 1 日午夜,所有宝石都将是绿色和蓝色的!

这个谜语是不是坦克基于逻辑的机器学习?

在机器学习中,我们有许多模型使用这种类型的命题逻辑作为原语。例如,Pedro Domingos 在他的书 The Master Algorithm 中提出了基于一阶逻辑的建模方法,称为马尔可夫逻辑网络。命题逻辑是一阶逻辑的基础。这些框架是如何处理“grue”的?

Goodman 的结论是,虽然归纳推理不能对所有谓词都有效,但它确实对一些谓词有效。然而,它是否有效似乎取决于人类使用和曾经使用什么语言来描述和预测我们世界的行为。

不知何故,我们似乎希望我们的算法而不是依赖于人类对世界的偏见感知,以及人类的口语如何塑造我们对这些感知的解释。否则,他们如何揭示真正新奇的世界洞察力?

延伸阅读:

基本分类模型入门指南:逻辑回归和 SVM

原文:https://towardsdatascience.com/your-beginner-guide-to-basic-classification-models-logistic-regression-and-svm-b7eef864ec9a?source=collection_archive---------15-----------------------

机器学习模型权威指南

关于对数据集中的要素进行分类,您只需知道

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Source: Unsplash

介绍

还记得你的小孩或侄子/侄女,他们还在学习如何识别物体和动物吗?我知道。

我有一个 1 岁的小侄女,她非常聪明,每当我指给她一只猫时,她总是说“喵”,甚至没有告诉她那是什么。不管它的毛是什么颜色,也不管它的大小,她都能准确无误地认出它是一只猫。

那么她怎么能认出那只猫呢?有趣的是,通过每次观察,她知道了哪一只是猫,哪一只不是。这是她心智模式的一部分。当然,通过我们和她的互动。每次她看到动物,我们都会说。“看,这是一只猫”。她会说“苗”来确认。然后每当她看到一只小狗(比如吉娃娃)说“苗”的时候,我们就会说,不,是狗。

慢慢地,她学会了通过每次观察更准确地分辨出,哪一只是狗,哪一只是猫。当然它延伸到哪一个是老虎,绵羊,甚至大象。她的心智模式随着她所拥有的每一个观察而进化。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Mental model for each classification of animal

同样,在机器学习中,我们会发现各种分类问题。还记得追求幸福的威尔·史密斯吗?假设你是一名销售经纪人,你需要从众多潜在客户中找出买家。你可以联系他们中的任何一个,但是时间和精力都非常有限。问题是,哪个会买你的产品?

分类是一个有监督的问题,其中有一个带标签的数据集。这意味着您可以使用历史数据和标注来预测任何新观测值的标注。最后,我们可以用一个模型来预测我们配偶的情绪——这会让我们的生活变得多么美好!!!

Source: Giphy

逻辑回归和支持向量机(SVM)

事不宜迟,我在这里的工作是向您介绍分类机器学习模型的两个基础:逻辑回归和 SVM。

我试图让这个指南非常清晰,适合初学者,并为进一步的学习增加参考。如有困惑,请评论。

逻辑回归

逻辑回归是一种分类模型,用于预测特定事件的有利概率。优势比代表我们想要预测的积极事件,例如,在 UCI 数据集中,样本患乳腺癌的可能性有多大。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Odds Ratio for Positive Events (positive probability/negative probability)

比值比通常也被定义为 **logit,它是比值比的对数(log-odds)。**这里注意 log 是指自然对数,取 0 到 1 之间的输入值。这意味着它表示给定某个特征的正事件的条件概率。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Logistic Regression Formula with logit

为了理解这个公式,我们需要慢慢地把它分解成左手边(LHS)和右手边(RHS)。

在右侧(RHS ),它显示了一个带有 b 系数和输入特征的简单线性方程公式。类似于线性回归,这些系数被优化以最小化成本函数。

左手边的网站(LHS),你会看到比值比的自然对数。p(X)是正事件/默认类。在泰坦尼克号数据集中,这可能意味着你存活的可能性,或者在乳腺癌分类中,癌症的可能性。

该方程将转化为逻辑 sigmoid 函数,它是 logit 函数的 S 形逆函数。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Sigmoid function Logistic Regression

逻辑回归中的优化

我们使用最大似然估计来优化训练系数的最佳值,以最小化预测到实际标签的测试距离。

有趣的是,这些系数也会转化为某个特征对影响预测概率的重要程度。例如,在该数据集中,您可能会发现与票价相比,性别具有较大的对数回归系数。这意味着性别决定了预测。向你的经理提出见解的一个非常有用的方法!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Coefficients table from titanic dataset with sex being one of the important feature.

逻辑回归中的调整:正则化参数

为了调整好偏差-方差权衡,逻辑回归引入了正则化参数来处理特征间多重共线性,过滤信号间的噪声,并防止模型过于复杂。它引入了额外的信息来惩罚具有极端权重的参数。

这是关于逻辑回归的 L1 和 L2 正则化的更具描述性的信息。

Source: Giphy

支持向量机

支持向量机(SVM)是一种非常强大的学习算法,可以最大化类别变量之间的间隔。这个余量(别名:支持向量)表示分离超平面的距离(别名:决策边界)。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Support Vector Machine Model: Source

为什么支持向量机

具有大余量的决策边界的基本原理是用可调整的偏差-方差比例来分离正负超平面。目标是分离,使得负样本落在负超平面下,而正样本落在正超平面下。

逻辑回归中的调整:松弛变量

1995 年,Vladimir Vapnik 提出了软间隔分类的概念,增加了松弛变量来松弛非线性可分数据。这个松弛变量将控制边距的宽度和位置,并调整偏差-方差权衡。你可以在这个由里沙布撰写的惊人帖子中找到更多信息

逻辑回归与支持向量机

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Logistic Regression vs SVM

逻辑回归的优点是它引入了一个更简单的模型,可以更容易地实现。它确定每个变量的重要性权重,这些权重可以分配给每个预测的概率函数。这对于发现对信用风险评分等评级问题的见解非常重要。此外,逻辑回归可以很容易地随着新数据的到来而更新,这对于流式数据来说是完美的。

然而,当逻辑回归试图最大化训练数据的条件似然性时,逻辑回归非常容易出现异常值。作为共线检查的标准化也是确保特征的权重不会超过其他特征的基础。

另一方面,SVM 不容易出现异常值,因为它只关心最接近决策边界的点。它可能会根据新的积极或消极事件的位置来改变决策界限。

SVM 非常流行的另一个原因是它可以很容易地做成核来确定非线性分类问题。这个想法是将数据点投射到高维映射中,在那里它是可分离的。这意味着,现在可以用 2D 要素(平面)来分隔 3D 要素(超平面),而不是用 1D 要素(线)来分隔 2D 要素(平面)。内核将数据作为输入,然后将其转换成所需的形式(线性、非线性、放射状、sigmoid 等)

没有一个模型是完美的(免费午餐定理)

特别是,即使算法之一是随机猜测,这种等价也是成立的:任何特定的学习算法被数据混淆并且表现得比随机算法差的目标“一样多”,就像它表现得更好一样。—大卫·h·沃伯特(没有免费的午餐定理)

在“没有免费的午餐”定理中,它指出没有一个模型对所有问题都是最好的。在实践中,总是建议比较每个学习算法的性能,并为特定问题选择最佳模型。

过度拟合是机器学习中的一个问题,在这种情况下,模型可以很好地拟合训练数据,但不能用测试(看不见的)数据进行足够好的概括。这将引入很高的方差,因为它引入了太多的参数,使得模型更加复杂。

另一方面,欠拟合可能会发生,这意味着机器学习模型不能捕捉足够的复杂性来表示训练数据中的模式——这也将引入测试数据的低性能。

这些是你应该避免的每个模型中非常大的问题。因此,要选择是否需要使用 SVM 或逻辑回归。你需要问自己几个问题:

  1. 您是否已经正确理解了正确的功能和训练样本?如果样本中有许多您不想排除的异常值(例如:乳腺癌的分类)。那你可能想用 SVM。
  2. 您是否正确评估了模型的准确性、召回率和精确度,尤其是在不平衡类别集的形式下?根据需要,您需要考虑每个型号在分类矩阵中的权衡。
  3. 你正确地调整算法了吗?每个模型都应该根据其自身的成本函数进行优化(逻辑回归:最大似然,SVM:最大利润距离)

记住,没有完美的模型,每个模型都是一个工具。这意味着它需要根据每种情况进行适当的调整和优化。

更多参考

如果你需要更多的例子和对逻辑回归和 SVM 能提供什么更好的见解。请随意访问以下链接。

  1. 逻辑回归理论
  2. 逻辑回归介绍
  3. SVM 理论
  4. SVM 简介

最后…

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Source: Unsplash. Look at how aligned each truck is

我真的希望这是一本很棒的读物,是你发展和创新的灵感来源。

请在下面评论出来建议和反馈。就像你一样,我也在学习如何成为一名更好的数据科学家和工程师。请帮助我改进,以便我可以在后续的文章发布中更好地帮助您。

谢谢大家,编码快乐:)

关于作者

Vincent Tatan 是一名数据和技术爱好者,拥有在 Google LLC、Visa Inc .和 Lazada 实施微服务架构、商业智能和分析管道项目的相关工作经验。

Vincent 是土生土长的印度尼西亚人,在解决问题方面成绩斐然,擅长全栈开发、数据分析和战略规划。

他一直积极咨询 SMU BI & Analytics Club,指导来自不同背景的有抱负的数据科学家和工程师,并为企业开发他们的产品开放他的专业知识。

文森特还在 best top 上开设了他的一对一导师服务,指导你如何在谷歌、Visa 或其他大型科技公司获得你梦想中的数据分析师/工程师职位。 如果你正在寻找良师益友,请在这里预约他

最后,请通过 LinkedIn Medium Youtube 频道 联系文森特

你的汽车可能不知道什么时候停下来——对自动驾驶汽车的敌对攻击

原文:https://towardsdatascience.com/your-car-may-not-know-when-to-stop-adversarial-attacks-against-autonomous-vehicles-a16df91511f4?source=collection_archive---------20-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Kevin Lee on Unsplash

自动驾驶汽车代表了高速、清洁和高效交通的乌托邦梦想。自动驾驶汽车的时代可能即将到来,优步、马斯克的特斯拉(Tesla)和谷歌(Google)的力量等公司寻求成为第一个将自动驾驶汽车坚定地放在路上供所有人使用的公司。自动驾驶汽车最大的症结是安全——我们如何确保这些机器能够理解驾驶的复杂性,以及它们如何能够应对它们肯定会遇到的各种各样以前没有遇到过的场景?

作为汽车核心的电脑

自动驾驶汽车的即将到来部分是由于机器学习,特别是深度学习最近的成功。随着计算机的体积不断缩小,同时能力不断增强,计算机科学家在计算机视觉等领域取得了突飞猛进的发展。深度学习允许计算机从大量数据中学习模式,然后可以利用这些模式进行决策。

在自动驾驶汽车中,深度学习系统处理来自汽车传感器阵列的输入数据,并有助于车辆的高级控制。深度学习系统的一个元素是对汽车周围的物体进行分类,例如识别行人、骑自行车的人、交通标志等。,使其能够安全导航并遵循道路规则。

深度学习系统中的漏洞

随着深度学习系统被关键地嵌入到任何自动驾驶汽车的中枢神经系统中,人们会希望这种系统能够高度准确和强健,防止被故意误导。不幸的是,实验表明,深度学习图像分类系统非常容易受到精心制作的敌对攻击。通过向图像添加精心选择的噪声层,有可能导致深度学习系统对图像进行彻底的错误分类。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Digital Adversarial Attacks confuse a Deep Learning system with imperceptible changes (from OpenAI)

在数字领域,攻击者获取一张图像和一个目标深度学习系统,窥视深度学习模型的内部工作,并以某种方式转换图像,使计算机确信图像现在显示出不同的东西。显然,攻击者可以彻底改变图像,以改变深度学习分类的结果;相反,挑战是尽可能少地改变图像,或者以人类无法察觉的方式改变图像,但机器会出错。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Digital Adversarial Attacks are also effective at confusing the Deep Learning Systems in cars (source)

身体对抗攻击

在实践中,数字对抗性攻击用于自动驾驶汽车是非常不可行的——攻击者必须能够拦截汽车传感器的传输,并在图像被移交给深度学习系统之前干扰图像。一个更可行的方法是改变物理环境,而不仅仅是车辆对它的感知。通过篡改路标,有可能混淆深度学习系统,对这些标志进行错误分类,即使它们仍然完全可以被人类理解。研究人员已经成功误导了真实车辆中的交通标志分类系统,通过使用旨在模仿标志上涂鸦的黑色贴纸,在 84%的时间里诱导了错误的标签。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Example Physical Adversarial Attacks that are sufficient to drastically confuse a Deep Learning system (source)

物理攻击带来了一些新的挑战。因为有许多不同的方式可以观察到一个物体,任何物理变化在不同的视角和距离下仍然有效。这些改变还必须足够显著,能够被摄像头捕捉到——再见了,数字敌对攻击中使用的细微噪声层。

然而,物理攻击的结果是,我们期望物体是不完美的——我们经常习惯于看到路标上的标记、贴纸和涂鸦,但我们仍然能够正确识别它们并安全驾驶。与数字攻击不同,数字攻击的目的是以最微妙的方式扰乱想象,物理攻击有更大的变化空间。

对自动驾驶未来的希望

那么,如果你想让你的车能够正确地阅读停车标志,该怎么做呢?消除对任何和所有符号的干扰是一个选择,但那是相当大的开销。一个更合理的方法是开发对这种攻击具有鲁棒性的机器学习系统,主要是通过训练它们正确识别对立的例子——一种暴露疗法。不幸的是,我们狡猾的攻击者可能只是创造了另一种系统没有见过的对抗方法,尽管这一次对他们来说可能会更难。

冗余是一个很好的解决方案;深度学习系统虽然非常重要,但仍然只是汽车控制系统的一部分。像 GPS 这样的其他系统可以用来验证深度学习系统的结果——就此打住有意义吗;限速提高与我掌握的道路交通数据相符吗?不幸的是,这并不包括环境中的动态元素,如行人,但它仍然是对篡改交通标志的例子的有力反驳。

制造对抗性攻击的一个缺点是,它们通常需要白盒模型:访问模型的内部工作方式,比如特定的参数和架构。幸运的是,这些功能受到自动驾驶汽车制造商的高度保护(既是出于安全原因,也是因为它们是自动驾驶汽车开发的最高宝石),使得攻击者很难获得这些功能来策划他们的攻击。然而,对针对黑盒模型的对抗性攻击的研究正在进行中,所以我们还没有完全脱离险境。最终,任何有助于提高自动驾驶汽车中使用的机器学习系统的鲁棒性的方法都将是一种受欢迎的祝福。

你的公司可能还没有为人工智能做好准备

原文:https://towardsdatascience.com/your-company-is-probably-not-ready-for-ai-1098d089e889?source=collection_archive---------36-----------------------

先别叫它 AI。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Ian Battaglia on Unsplash

最近有人问我,为什么我们团队中的一名数据科学家不从事数据科学,而是从事数据争论:数据准备、清理和数据质量保证。花哨的统计数据在哪里?模特在哪里?或许是图表?或者至少有一张幻灯片提到了人工智能、机器学习或深度学习。

我意识到数据科学并不总是符合上层管理的宣传。这可能是因为它没有达到预期,因为坦率地说,有人对我们这些凡人设置了太高的标准(咳咳,谷歌)。也可能是因为,或许,公司还没有为数据科学做好准备。

有人问我们,为什么我们的数据科学家不从事数据科学…

尽管世界各地涌现出许多纯粹从事人工智能驱动技术或人工智能工具的公司,但普通公司尚未在该领域找到出路。

这是为什么呢?为什么有些公司能够将 AI 货币化。为什么其他更传统的机构,比如银行,发现很难采用新技术?为什么他们不能得到一些好的人工智能或数据科学?

首先,我们应该停止称它为 AI…

我们应该从房间里的大象开始。我们真的不应该再叫它 AI 了。人工智能是一种类似人类的智能,距离大多数公司需要的一些适当的统计数据或有监督的 ML 模型还有很长的路要走。公司并不真的需要人工智能。最重要的是,这是一个臃肿和过度使用的术语。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

但是如果你坚持 AI。订单很重要…

当你想到流行的例子时:像谷歌照片,Snapchat 过滤器,甚至无人驾驶汽车,你必须认识到这些是围绕人工智能打造的产品(和整个公司)。图像识别是伟大和有用的,但它的应用不是无限的。

**人工智能→产品。**谷歌、Snapchat、脸书和特斯拉等公司之所以有如此成功的记录,是因为它们的使用案例。用例是非常仔细地选择的,因此他们在完全适合目的的模型上构建产品(可以说自动驾驶汽车很难使用机器学习算法来生成真正的自动驾驶汽车)。

ML 模型大放异彩的领域不在少数;关系不明确的模糊数据集就是其中之一。(不要与低质量数据集混淆)。我们看到同样的用例正在我们周围使用:前面提到的图像识别、语音到文本和翻译、疾病和医疗数据之间的关系——结果和输入之间的关系并不立即清晰,但一台强大的计算机可以在两者之间建立一种似乎合理的关系。

**产品→ AI。**对于许多公司来说,问题往往是反过来的。他们有一个问题,想把人工智能应用到。这导致了一路上各种意想不到的曲折。例如,当你的问题不适合人工智能的应用或者甚至不需要人工智能时,会发生什么?它需要的是一些流程优化。或者数据质量,或者用户的一些简单访问?

并非所有问题都适合人工智能。AI →产品≠产品→ AI。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Pietro Jeng on Unsplash

你甚至还没有做好分析…

通常,公司也会因其业务知识和目标而限制机器学习和数据科学的应用。我的意思是,来自业务的问题决定了正在创建或研究什么,以及什么值得数据科学团队花费时间。这意味着你的边界条件就是业务。不是你花大价钱雇来的数据科学家。

数据科学家可以更容易地接受培训,根据业务目标进行思考。他们能够理解投入的时间和获得的商业价值之间的权衡。很难让一个业务经理为一群数据科学家定义有意义的工作。这也是很难找到优秀的 DS 经理的原因之一——他们需要了解业务并与之沟通,同时拥有深厚的技术知识并在技术上领导团队。

当您没有一个可靠的交付平台来进行基本分析时,有效地交付更复杂的产品将会更加困难。

你甚至不是数据驱动的…

大多数公司倾向于认为他们是数据驱动的,但事实并非如此。数据驱动并不意味着:寻找数据,构建任何你喜欢的故事并呈现出来。数据驱动意味着对数据所包含内容的细致理解,它需要对数据如何产生以及它排除了什么有深入的纵向了解。它需要一个可证明的假设,并采取整体的方法。结果不会总是如你所愿,你应该愿意接受这一点。

分享你的轶事真相,但如果数据并不总是与你的经历相呼应,不要感到惊讶。

数据驱动也意味着你不能只选择你喜欢的答案而忽略其他的。或者甚至问一些“引导证人”的问题我知道这听起来很难,但是你不能挑挑拣拣。

你被允许(甚至高度鼓励!)将您的知识和经验带给分析团队。当我们了解工作流程、实验、组织或法律方面的变化时,这很有帮助。但是,如果数据并不总是与你的轶事真相相呼应,也不要感到惊讶。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Martin Adams on Unsplash

你真的不能跳过步骤…

和许多事情一样,数据科学也是如此:你不能走捷径。没有数据争论、上游质量数据、准备好的数据集、数据理解、适当设计的特征,整个努力都处于危险之中。慢板“拉进来,拉出去”是千真万确的。如果你没有强有力的理由去相信基础数据,你就不能相信你的结果。

没有几个小时盯着电脑屏幕,就没有 T2 数据科学;理解数据。没有深刻的见解从页面中涌现出来,没有完整功能的人工智能在不理解其输入的情况下被制造出来,团队不得不投入繁重的工作。数据的行为不像石油,它在价值提取方面耗费大量的时间和精力:

数据科学并不性感——它很难,有时很无聊,而这正是它有趣的地方。奋斗后的回报。你的团队付出努力后的发现。

你可能不需要人工智能…

你也不太可能需要人工智能——这个术语非常臃肿,但在企业中却随处可见。更有可能的是,你需要一些普通的解决方案;一些描述性统计,一些成熟的回归,可能是一个监督的 ML 或者甚至可能是图形数据库来寻找最近的邻居。很可能不是人工智能。

问问你自己,你认为什么能给你和你的团队增加最大的价值?新信息,新见解?还是无人干预的自动化过程?如果是后者,那就尽情享受吧。如果没有,问问你是否需要人工智能或简单的商业分析。

即使你做了,你也没有准备好使用它…

即使你真的想要人工智能,你可能还没有准备好拥有它。与上面类似,当你的系统和流程没有准备好,你也没有准备好。你能放弃对机器的控制吗?大概不会。

当引入新的解决方案来自动化以前的人工选择时,会有大量的阻力。并不总是因为无知,而仅仅是因为无知。

当营销被告知谁应该优先考虑,什么应该优先考虑时,你的营销经理准备好相信结果并执行了吗?营销经理准备好让系统取代他们的工作了吗?作为一家公司,你能找到有意义的方法来使用他们的技能吗?当你真正准备好去人工智能时,要意识到这些问题。

接下来是关于可靠性、监督、所有权和合规性的问题。所以,即使你使用人工智能,也不要完全使用人工智能,要在你的系统周围保持一个稳固的控制和测试网络。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Sander Weeteling on Unsplash

所以你走了,你可能还没有准备好人工智能…

好了,就这样。你的公司可能还没有准备好。这没关系。有大量的信息可以被解析成有意义的见解。从一开始就把基础做好,(字面上)可以赚一百万。

所以,不要再追逐黄金了,看看一叠美钞也价值连城。允许过程就是过程,把它看作更大整体的一部分。从小处着手,然后一步一步来。

因此,当我们的数据科学家不从事数据科学时,他会投入必要的工作,以到达他需要的地方:在分析、建模、可视化都有意义的情况下,因为底层数据是可信的。他正在做的工作是为我们的公司准备一个可靠的分析和模型。他正在努力为人工智能做准备。

参见我之前的文章《走向数据科学》,文章认为数据不是新的石油:

https://towards data science . com/data-is-the-not-the-new-oil-721 f 5109851 b

您的数据消耗了大量能源

原文:https://towardsdatascience.com/your-data-is-using-a-lot-of-energy-cf06df9a7e2c?source=collection_archive---------21-----------------------

所有收集到的用户数据和保存在云中的数据都对环境产生了巨大影响

如果你开始研究每年创建的数据量,你会很快发现一个乍一看似乎被过度使用和过时的统计数据: *90%的数据是在过去两年中创建的。*由于数据创建的指数速率,这几十年来一直如此(如果你想得到更好的解释,请查看这个)。

每一次点击、搜索、分享链接等都是一个新的数据点,公司正在用它来更好地预测你想要什么。仅在 2017 年,据估计每天就有 2.5 万亿字节的数据被创建(大约每天 25 亿 GB)。这些数据包括上传的图片和来自家中联网设备的图片。基于 can 的操作系统 Domo 每年都会制作一张“数据永不休眠”的信息图。他们在列出我们日常互动的热门网站方面做得很好。(更新为 2019 )

数据如何产生碳足迹?

所有这些数据都必须存储在某个地方,而数据中心就是那个地方。2014 年,美国能源部估计,仅在美国就有 300 万个数据中心,也就是说每 100 个人就有一个数据中心。数据中心的规模各不相同,但谷歌、脸书、苹果等科技巨头。选择了大规模的能源密集型设施。脸书最近宣布计划建立一个更加分布式的系统,以更好地满足用户的需求——这可能会对他们的效率产生积极的影响。

一般来说,所有数据中心都有一些基本必需品:计算机房空调(CRAC)、服务器、网络设备、存储、不间断电源(UPS)、空气处理器、冷却器、加湿器、照明、办公区域和其他一些不同的项目。所有这些因素都增加了数据中心的能源密度。2017 年,该行业每年使用200-300 太瓦时(TWh)的电力,目前约占二氧化碳总排放量的 3%。这种用途只会越来越多。

正在做什么?

为了更新这些系统和提高效率,已经做了大量的工作。数据中心正在配备新的服务器和硬件,这些服务器和硬件在不活跃时会保持较低的温度并处于待机状态。随着这些更新,冷却成为一个较小的问题——根据谷歌,他们一年只使用空调 36 小时。另一个选择是利用室外环境降温。空间中的灯可以更新为 led,使用更多的窗户/自然光是另一个很好的选择。

一个很大的关注领域是能源本身。目前,大多数数据中心至少从一种可再生能源来源获得能源— 83%的数据中心知识调查对象表示,他们目前使用或计划使用太阳能。今年,谷歌宣布将建造两个最大的太阳能农场,为其在阿拉巴马州和田纳西州的最新项目供电。下面是他们全球所有数据中心的地图。红色标记代表这两个新设施。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Google’s data center locations world wide created using follium and Giphy Capture.

我能怎么做呢?

根据你的谋生方式,你的影响力会有所不同。然而,第一个重要的步骤是消除数据垃圾数据浪费。那些自 2012 年以来就没有动过的文件就是一个典型的例子——尤其是当它们存放在云存储中的时候。

当软件代码以短而有效的方式编写,从而避免浪费 CPU 能力的冗余计算时,程序被认为是高效的。—斯蒂芬·施密特

作为开发人员,您可以通过编写更干净的代码来提高效率。这对公司使用的代码有更大的影响。据《卫报》的斯蒂芬·施密特(Stephen Schmidt)称,“当软件代码以简短有效的方式编写,从而避免浪费 CPU 能力的冗余计算时,程序被认为是高效的。”

从专业角度来说,另一个需要考虑的领域是存储的数据。数据垃圾的问题无处不在。尽管在企业层面更具挑战性,但我们需要考虑是否所有存储的数据都被使用或被需要。现在看起来几乎所有的东西都在收集数据,但是随着时间的推移,我们有望对存储的数据进行更有选择性的选择。

你的数据集是一个巨大的墨迹测试

原文:https://towardsdatascience.com/your-dataset-is-a-giant-inkblot-test-b9bf4c53eec5?source=collection_archive---------3-----------------------

分析中的阿波芬尼亚的危险以及你能做些什么

数据讲故事和说谎之间只有一线之隔。在我告诉你如何找到一流的数据分析师并提升你的分析能力之前,让我先吓你一跳。

Here’s the audio version of the article, read for you by the author.

数据分析中的心理陷阱

人类的大脑是寻找模式的发电站……但是那些模式并不总是与现实有很大关系。我们是那种在云里发现兔子,在薯片里发现猫王脸的物种。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Do these look like a rabbit and a portrait of Elvis to you? Image: SOURCE.

花一点时间考虑一下罗夏测验,向人们展示墨迹并询问他们看到了什么,你就会明白大脑是多么急切地将虚假的解释注入明显的随机性中。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Bat? Butterfly? Or just an ink blot? This is the first of the ten cards in the Rorschach test, created in 1921. Image: Wikipedia

心理学家给这种无中生有的趋势取了一个好听的名字:apophenia。给人类一个模糊的刺激,我们会发现面孔、蝴蝶和为我们最喜欢的项目分配预算或推出一个人工智能系统的理由。

啊哈。

在大多数数据集中有大量的随机噪声,那么你的分析中没有 apophenia 发生的几率有多大?你真的能相信你对数据的解读吗?

大脑处理墨迹的方式也同样适用于数据。

更糟糕的是,分割这些数据集的方式越多,它们越复杂,它们作为刺激就越模糊。这意味着他们实际上是在恳求你在他们身上看到虚假的废话。

复杂的数据集实际上是在乞求你在其中找到错误的意义。

你确定你最近的数据顿悟不是伪装的 T21?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Another great word is pareidolia, which is a kind of apophenia (finding familiar things in vague sensory stimuli). In Japan, they even have a museum of rocks that look like faces. It’s a beautiful world.

谎言,该死的谎言,和分析

如果这听起来令人沮丧,我还没说完。参加数据分析课程可以给这种心理火上浇油。学生们习惯于期待查看数据会产生真正的意义,因为每个家庭作业的探索性分析练习都埋藏着宝藏。很少有教授忍心让你白费力气(为了你好!)而且开放式作业很难评分,所以作为学生你通常接触不到足够多的开放式作业。

学生们在成长的过程中相信,每一个数据集都准备好了吐出一个确凿的事实。

数据讲故事只是一个跳跃,跳过,和直接用数据撒谎。抛开模式是否真实的问题,让我们来谈谈多种解释。仅仅因为你在墨迹中看到蝙蝠形状,并不意味着它里面没有蝴蝶、骨盆或一对狐狸。如果我没有提到狐狸,你会看到它们吗?大概不会。与动机和注意力相关的心理机制对你不利。这需要一种特殊的技能来释放蝙蝠的解释,并迫使自己看到意义的叠加。

一旦人们抓住了他们最喜欢的“洞察力”,他们就会努力去发现它。

问题是,一旦人们抓住了自己最喜欢的“洞察力”,他们就会努力去忽略它,去支持其他人。人们倾向于最强烈地相信最先抓住他们注意力的解释,每一个额外的意思都会降低他们继续寻找的动力。在不加重你最喜欢的故事的情况下,处理多个潜在的故事是一种需要努力锻炼的精神力量。唉,不是每个分析师都有这方面的训练。事实上,许多人受到激励,通过数据探索来“证明”一个故事的一面。为什么要培养只会妨碍你获得数据科学薪水的技能呢?

你的光剑是什么颜色的?

有很多方法可以用数据证明事情(诚实而严谨)——我的数据分解文章会告诉你更多——但是探索性数据分析(EDA)不在其中。开放式数据探索始终是一次摸底调查。决定你光剑颜色的是你要钓的东西。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果你加入了黑暗面,你就是在寻找证据来支持你已经“知道”是正确的理论(这样你就可以把它卖给一些天真的受害者)。如果你真的相信数据的客观性和你自己的无偏性,你甚至不会意识到你的光剑是红色的。

开放式数据探索始终是一次摸底调查。

有了足够复杂的(模糊的)数据集,你会发现一个模式,你可以用它来支持你最喜欢的故事。毕竟,这就是罗夏测试的美妙之处。不幸的是,数据比墨迹更糟糕,因为你的方法越神奇( p-hacking ),有人知道吗?),对那些不了解的人来说,你听起来就越合理,越有说服力。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Satellite photo of the “Face on Mars” which many people took as evidence of extraterrestrial habitation.

那些拒绝黑暗面的人也去钓鱼,但他们追求的是别的东西:灵感。他们在寻找可能有趣或引人注目的模式,但他们知道不能把它们作为证据。相反,他们实践了一种思想开放的分析禅,遵守尽可能多的解释。

最优秀的分析师会挑战自己,寻找尽可能多的解释。

这需要敏锐的眼光和谦逊、坚定的头脑。他们不是欺骗利益相关者只看到一个故事的一面,而是挑战自己进行创造性思维,将相同的数据消化成尽可能多的故事。他们以一种激励严格跟进的方式展示他们的发现,而不会导致他们的领导团队过于自信而掉下悬崖。

开放的心态给了数据分析一个值得的机会。

一个额外的好处是,寻找多种解释的原则是分析师的秘密武器,让他们不会忽略隐藏在数据中的真正宝藏。如果你被自己相信的谎言分散了注意力,确认偏差会让你很难注意到指向相反方向的证据。如果你的结论是预先确定的,为什么要费心去分析任何事情呢?开放的心态让整个努力有机会变得有价值。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

This grilled cheese sandwich fetched $28,000 in auction because it features the Virgin Mary. Alternative interpretations of what we’re seeing, anyone?

雇佣优秀的分析师

如果你喜欢我关于分析的其他文章,这里是你已经在寻找一个伟大的分析师的特质:

  • 他们不会做出超出他们正在探索的数据的推论。【1】
  • 他们善于使用数据科学工具,并拥有快速筛选大量数据集的技能。【2】
  • 他们有相关的领域知识,所以他们不太可能在琐事上浪费利益相关者的时间。【3】
  • 他们明白他们的工作是寻找灵感。【3】【4】
  • 他们以一种对大脑友好的方式可视化数据,以便尽可能缩短获得灵感的时间。【3】
  • 他们知道如何严格跟进他们发现的任何潜在见解(以及向谁寻求帮助)。【4】【5】【6】【7】

除此之外,这篇文章建议你寻找具备以下三种特质的分析师:

  • 他们意识到大脑在不存在的地方发现了意义,所以他们保持谦逊,避免妄下结论。
  • 他们不会试图向你推销一个通过拷问数据找到的故事,直到它坦白。相反,他们在谈论数据时使用模糊/软化的语言。
  • 他们有能力对每件事做出多种解释。他们产生多种解释的速度越快,产生的替代方案越多,他们的力量就越大。下次你雇佣一个分析绝地时,试着面试这种技能。

最后,如果你是一名领导者,请把批判的目光转向内部,确保你给了你的员工正确的激励。你是在找数据分析师还是数据顾问?这些需要不同的心态(和技能!),所以要明智地选择,奖励正确的行为。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Forget potato chips! The Chinsekikan museum at Chichibua in Japan features an Elvis that really is the King of Rock.

感谢阅读!人工智能课程怎么样?

如果你在这里玩得开心,并且你正在寻找一个为初学者和专家设计的有趣的应用人工智能课程,这里有一个我为你制作的娱乐课程:

Enjoy the entire course playlist here: bit.ly/machinefriend

你的第一个 Kafka 应用

原文:https://towardsdatascience.com/your-first-kafka-application-9b1358ccb870?source=collection_archive---------17-----------------------

使用 Twitter API 生成和消费消息

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

概观

在上一篇 Kafka 帖子中,我们已经在 Linux Ubuntu 上安装了一个 Kafka 集群。在本文中,我将使用这个集群来创建一个生成和消费消息的 Kafka 应用程序。该应用程序将使用 Java (8+)编写。您还需要安装 maven 来运行它。

为了生成消息,我将使用 twitter API,使客户能够近乎实时地接收推文。每个 Twitter 帐户都可以访问流媒体 API,任何开发者都可以使用它来构建应用程序。

生成 Twitter API 密钥

去推特开发者:【https://developer.twitter.com/en/apps

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

创建一个新的应用程序,并填写所有最低要求的信息。转到“密钥和令牌”选项卡,将消费者密钥和机密对复制到一个文件中供以后使用。
点击“创建”生成访问令牌和密码。将它们复制到一个文件中。现在,您已经拥有了开发生成器所需的所有东西。

配置到 Kafka 代理的远程连接

要远程访问您的 Kafka 代理,请确保在 AWS 中打开端口 9092。
登录您的 AWS。转到您的实例描述选项卡,并单击安全组创建。包括端口 9092 的新入站规则。你可以限制你的 IP 地址,或者允许所有人访问。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用上一篇文章中描述的 ssh 连接到你的 Ubuntu 服务器。

sudo nano /etc/kafka/server.properties

取消对以下行的注释,并插入 Kafka 服务器的公共 IPv4 公共 IP

advertised.listeners=PLAINTEXT://<IPv4 Public IP>:9092

重新启动 Kafka 代理:

sudo systemctl stop confluent-kafka 
sudo systemctl start confluent-kafka

创建主题

运行以下命令,为演示创建 Kafka 主题:

kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic bigdata-tweets

克隆存储库

现在,让我们在本地机器上构建我们的应用程序。

完整的代码可以在我的 GitHub 这里找到。请克隆并安装此存储库。

git clone [git@github.com](mailto:git@github.com):mlomboglia/kafka-twitter.git
cd kafka-twitter
mvn clean install

运行 maven 后,您应该会看到:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Producer API 帮助您向 Apache Kafka 生成数据。我将连接到一个远程 Kafka 代理,使用 API 获取 Tweets 并将其发送到 Kafka 主题。

打开您选择的 IDE 并作为 maven 项目导入。

我会把我的命名为卡夫卡-推特

TwitterConfiguration.java文件
中替换你的 Twiter 键,执行App.java,控制台将显示 tweets 被获取并发送给 Kafka 制作人。

mvn exec:java -Dexec.mainClass="com.mlombog.kafka.App"

这将通过一个简单的确认响应来触发回调。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

按照上一篇文章中的解释,进入控制中心,你会在你的 bigdata-tweets 主题中看到消息

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

登录您的 Kafka 服务器并使用您的邮件:

kafka-console-consumer --bootstrap-server localhost:9092 --topic bigdata-tweets --from-beginning

恭喜你!!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

最初发表于【https://marcoslombog.com】

预测谁在泰坦尼克号灾难中幸存

原文:https://towardsdatascience.com/your-first-kaggle-competition-submission-64da366e48cb?source=collection_archive---------5-----------------------

你的第一次 Kaggle 竞赛提交-简单的方法

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Joseph Barrientos on Unsplash

谷歌公司(Google Inc .)旗下的 Kaggle 是一个面向数据科学和机器学习从业者的在线社区。换句话说,这是你的数据科学之家,在这里你可以找到数据集并参加比赛。然而;我努力完成我的第一份参赛作品,因为,我会说,资源不当。我为这个比赛浏览了内核(读作’文章’),但是它们都不是为初学者设计的。我的意思是作为一个初学者,我不想看到我不能执行或解释的可视化,我只需要用简单的话来理解正在发生的事情。

但我终于成功了。如果你在这里是因为你也在努力开始使用 Kaggle,那么我的朋友,这篇文章将会让你的一天变得精彩。没有不必要的代码行或可视化,只是一个直接的路径到你的第一次提交。

砖墙的存在是有原因的。不是为了阻挡我们;而是给我们一个机会来展示我们有多想要某样东西。砖墙的存在是为了阻止那些不够想要的人。他们在那里阻止其他人。

—兰迪·波许

第 0 步——首先要做的事情

为了配合这个【Kaggle 入门教程,你需要做两件事。主要是,朝这个链接前进,给自己弄一个 Kaggle 账户。之后,请访问此链接,参加 Kaggle 泰坦尼克号比赛。搞定了?太好了。我们都准备好了。让我们现在做一些真正的工作。

第 1 步——了解您的数据

一旦报名参赛,就可以在大赛首页找到数据。为了加载和执行非常基本的数据操作,我使用了 Pandas ,这是一个 python 中的数据操作库。如果你还不知道,我建议你去看这个 10 分钟指南来熟悉一下。

在机器学习中,数据主要分为两部分——训练和测试(第三部分是验证,但你现在不必关心这个)。训练数据用于训练我们的算法,测试数据用于检查我们的算法执行得有多好。训练数据和测试数据之间的分割比通常在 70-30 左右。因此,这里我们总共有 891 个训练条目和 417 个测试条目。通过写入加载数据将得到 12 列,如下所示。我们称之为特性。没什么新的,只是一个花哨的名字。我鼓励你在前进之前至少浏览一遍数据。

PassengerId : int     : Id
Survived    : int     : Survival (0=No; 1=Yes)
Pclass      : int     : Passenger Class
Name        : object  : Name
Sex         : object  : Sex
Age         : float   : Age
SibSp       : int     : Number of Siblings/Spouses Aboard
Parch       : int     : Number of Parents/Children Aboard
Ticket      : object  : Ticket Number
Fare        : float   : Passenger Fare
Cabin       : object  : Cabin
Embarked    : object  : Port of Embarkation
                        (C=Cherbourg; Q=Queenstown; S=Southampton)

此外,了解每个要素的数据类型也很重要。既然我们已经加载了数据并理解了它的样子,我们将继续进行特征工程。换句话说,衡量每个特征对我们输出的影响,也就是一个乘客是否幸存。

第二步——特征工程

正如我们所讨论的,特征工程是测量每个特征对输出的影响。但更重要的是,这不仅仅是使用现有的功能,而是创造新的功能,从而显著提高我们的产出。吴恩达说,“想出特色是困难的,耗时的,需要专业知识。应用机器学习基本上是特征工程。“我们将介绍我们正在使用的每个功能,以便您能够理解如何使用现有功能以及如何创建新功能。

2.1-乘客等级

显而易见,乘客的等级与存活率成正比。如果一个人比其他人更重要,他们会先从灾难中走出来。我们的数据告诉我们同样的故事。63%的人从 1 班幸存下来。所以这个功能肯定是有冲击力的。Pclass 列中的数据是完整的,因此不需要操作。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

2.2——性

性别也很重要,并与存活率成正比。在这场悲剧中,妇女和儿童首先获救。我们可以看到 74%的女性得救了,而只有 18%的男性得救了。同样,这将影响我们的结果。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Feature 2 Output

2.3 —家庭规模

接下来的两列是 SibSp 和 Parch,它们与一个人是否幸存没有直接关系。这就是创建新功能的想法的来源。对于每一排/每一位乘客,我们将通过添加 SibSp + Parch + 1(他/她本人)来确定他/她的家庭规模。家庭规模从最小 1 人到最大 11 人不等,其中 4 人家庭的存活率最高,为 72%。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这似乎对我们的预测有很好的影响,但让我们更进一步,对人们进行分类,以检查他们是否独自在这艘船上。看了之后,它似乎对我们的产出有相当大的影响。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

2.4 —已装船

乘客从哪个地方上船与生存有关(不一定)。那么,让我们来看看。在这个专栏里,有很多 NAs。为了解决这个问题,我们将 NAs 替换为“S ”,因为它是出现频率最高的值。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Feature 4 Output

2.5 —票价

该列中也有缺失的数据。我们不能以同样的方式处理每个特性。为了解决这个问题,我们将采用整个列的中间值。当您使用qcut进行切割时,将选择箱,以便您在每个箱中有相同数量的记录(相等的部分)。翻看产量,相当可观。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Feature 5 Output

2.6 —年龄

年龄有一些缺失值。我们将用(平均年龄减去平均标准差)和(平均年龄加上平均标准差)之间的随机数来填充。之后,我们将它归入 5 个一组。这也有很好的影响。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Feature 6 Output

2.7 —名称

这个有点棘手。从姓名中,我们必须检索与该姓名相关联的头衔,即先生或上尉。为此,我们必须使用 Python 的正则表达式库(正则表达式操作指南)。首先,我们从名字中获取标题,并将它们存储在一个名为 title 的新列表中。之后,让我们通过缩小到常见的标题来清理列表。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

就是这样。我们已经清理了我们的功能,现在可以使用了。然而;在我们将数据输入 ML 算法之前,还有一个步骤。ML 算法的特点是它们只接受数值而不接受字符串。因此,我们必须将数据映射为数值,并将列转换为整数数据类型。

步骤 3 —映射数据

映射数据很容易。通过浏览代码,你会知道它是如何工作的。一旦完成,现在我们必须选择使用哪些功能。特征选择与特征创建同样重要。我们将删除不必要的栏目,这样就不会影响我们的最终结果。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Final data that we will feed to ML algorithm

就是这样。你已经完成了最难的部分。看看你的数据,看起来真漂亮。现在,我们只需要预测我们的结果,这很容易。或者至少我会让你容易理解。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Jack, come on buddy, we’re almost there

步骤 4 —预测

正如我们所讨论的,我们需要训练和测试数据。是的,德鲁米尔,我们拿到了,现在怎么办?好极了。现在我们需要训练我们的模型。为此,我们需要提供两部分的数据——X 和 y。

X : X_train : Contains all the features
Y : Y_train : Contains the actual output (Survived)

为了进一步阐述,我们需要告诉我们的模型我们正在寻找这个输出。所以,它会这样训练。例如,你的朋友外出购物,你想要一副护目镜,你给你的朋友发了一张护目镜的照片,说你也想要一副。那是训练。你正在训练他/她,所以他可以通过解释特征(飞行员、旅行者)和提供准确的输出(护目镜的图片)来带来类似的护目镜。

我们已经分离了数据,现在我们调用我们的分类器,借助 scikit-learn 库的.fit方法拟合数据(训练),并使用.predict方法预测测试数据的输出。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

注意——由于本教程是为初学者编写的,所以我不包括其他分类器,但过程是一样的。调用分类器,拟合数据,预测。以防你想进一步探索。还有其他几个分类器,但我使用决策树,因为根据我的知识,它最适合这个数据集。要了解更多关于决策树的知识,请参考这篇文章

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Yes, Tony, that’s great for the first time

第 5 步——你的第一次提交

最后,提交我们的输出。我们的输出.csv文件应该只有两列——乘客 Id 和幸存者——正如竞争页面上提到的。创建并提交到竞赛页面,我的提交得分为 0.79425,在我写这篇文章的时候排名前 25%。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

The position I got on the leaderboard, where do you sit?

我鼓励你探索不同的功能,以提高你的模型准确性和你在这场比赛中的排名。我很乐意听到你说你已经进入了前 5%或者更好,前 1%。你会在我的 GitHub 库上找到完整的代码。

尾注

希望这篇文章已经回答了你的首要问题“如何从 Kaggle 开始?”充足的知识、良好的资源和学习新事物的意愿是你前进所需的一切。你不必一开始就是主人。这一切都来自于坚持。如果你正在读这篇文章,你有足够的精力去实现你的目标,无论如何都不要停下来。如果你对这篇文章有疑问,请通过电子邮件推特甚至 Linkedin 联系我。即使你没有任何疑问,我仍然希望在我的收件箱里看到你有价值的反馈或建议,如果有的话。

快乐学习。

你友好的邻居的超级智慧

原文:https://towardsdatascience.com/your-friendly-neighborhood-superintelligence-f905ff21dfa4?source=collection_archive---------16-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Martin, The Plains of Heaven

“如果类人猿问他们是否应该进化成智人(并说)‘哦,如果我们变成人类,我们会有很多香蕉’会怎么样?”—尼克·博斯特罗姆

我们的一个老故事是恶魔召唤变坏了。他们总是这样。我们的祖先想警告我们:小心那些提供无限力量的生物。这些天来,我们依赖于预示未来恶魔到来的计算实体——强大的人类水平的人工智能。幸运的是,我们的圣贤们,比如尼克·博斯特罗姆,现在正在思考比恶魔故事中的安抚、猴子的聪明和更强的魔法束缚更好的控制方法。在回顾了当前的想法后,我将提出一个更安全地获得人工智能超能力的协议。

智力爆炸的困境。

我们看到指针在 AI 上移动。许多,但不是所有的专家,部分受博斯特罗姆出版的书《T2 超级智慧》的激励,相信下面的场景。

在我们实现一种“强大的人工智能”之后,这种脱节将会发生,这种人工智能是如此全面,就像一个真正聪明的人。人工智能将变得越来越聪明,因为它吸收了越来越多的世界知识,并从中筛选,发现更好的思维模式和创意组合。

在某个时候,人工智能会重新设计自己,然后新的自我会重新设计自己——冲洗,重复——期待已久的智能爆炸就会发生。在这一点上,我们还不如吹口哨走过墓地,因为我们将无法控制接下来会发生什么。

博斯特罗姆说,我们可能会创造一个超级人工智能,类似于反复无常、可能怀有恶意的上帝。有害的组合是自主和无限的权力,正如他们在魔法时代所说的那样,没有咒语将他们与对我们无害且有益的价值观或目标捆绑在一起。

人工智能动物园。

博斯特罗姆按照不断增强的能力、精神自主性和对我们造成伤害的风险来想象人工智能的类型:

{工具→甲骨文→精灵→主权}

一个工具是可控的,就像今天的人工智能应用一样,但没有独创性,只能解决我们可以描述的问题,甚至可能解决我们自己更慢。一个神谕只会为我们解答难题,它自己没有任何目标。一个精灵会接受请求,想出答案或解决方案,然后实施它们,但之后会停下来等待下一个请求。一个主权国家就像一个永不停息的精灵,能够创造自己的目标。

博斯特罗姆展示了任何较弱的类型是如何演变成较强的类型的。人类总是想要更有效的帮助,因此给予他们的机器仆人更多的自由和权力。与此同时,这些仆人变得更有能力规划、操纵他人,并让自己变得更聪明:发展所谓的超能力,将他们推向主权范围的一端。

目标的问题。

博斯特罗姆的一个主要担忧是超级智能拥有错误的“最终目标”。在为最终目标服务时,不知疲倦而强大的人工智能可能会伤害它的人类创造者,无论是否有意伤害或关心所述伤害。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Degas, Autumn Landscape

博斯特罗姆的例子包括将地球上所有的原子(当然也包括我们自己的原子)变成回形针,或者将所有可用的物质都用到了 computronium 中来确定一些目标计算,比如数沙粒。

选择这些例子是为了显示超级人工智能的行为可能是多么任意。从人类的角度来看,这种疯狂的、强迫性的行为是愚蠢的,而不是聪明的。但是,如果人工智能缺乏我们认为理所当然的保护生命和环境的价值观,这种情况就可能发生。如果我们能够将这样的价值观传递给人工智能,我们能指望它会随着时间的推移保留这些价值观吗?博斯特罗姆和其他人认为会的。

作为身份的目标完整性。

想想我们生命中有多少时间是用来为最终目标服务的,比如爱情、权力、财富、家庭、友谊、推迟我们自己的死亡和消灭我们的敌人。这是我们时间的很大一部分,但不是全部。我们也渴望休闲、新奇的刺激和快乐。我们所有人都在做白日梦和幻想。极少数人甚至为了学习和创造而学习和创造。如果我们的动机是复杂的,为什么超级人工智能不会如此呢?

可以说,人类水平的人工智能将被激励在精神上探索它的世界,我们的世界,寻找项目,改变的事物,联系和提炼的想法。为了在动态环境中良好运行,它还应该做出最大化未来行动自由的选择。这反过来需要更广泛的探索性知识。

尽管如此,我们应该像博斯特罗姆那样假设,人工智能的特定目标可能会被狂热地追求。那么,很大程度上取决于我们对人工智能目标的某种控制。给定一个可以重写自己的编程代码的实体,如何做到这一点呢?

博斯特罗姆的答案是,人工智能的本质,因为它是由可变的软件组成的,事实上,是它的最终目标集。人类改变他们的价值观和目标,但是一个人被锁在一个身体/头脑中,这个身体/头脑以各种方式构成了它的身份和自我。我们首要目标是自我的生存。

另一方面,一个计算机化的代理由可以交换、借用、复制、重新开始和自我修改的可变部分组成。因此,系统并不是真正由这些部分构成的;它的本质是它的最终目标,博斯特罗姆称之为目的论(目标导向)线程。它的动机是不改变这些目标,因为这是确保他们在未来得到满足的唯一方法。

学习价值观:人类连贯的外推意志。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Raphael, The School of Athens

在最终目标稳定性的概念中有明显的循环,我读过的人中没有人认为超级人工智能的价值观真的不会改变。此外,人类的价值观是复杂的、动态的,而且常常是不相容的,所以我们不能相信任何一组开发人员会选择价值观并安全地将它们编程到我们的 AI 中。到目前为止,提出的解决方案依赖于让系统在一个过程中学习价值观,希望使它们:(1)对人类广泛可取和有帮助,(2)不太可能造成大破坏,例如人工智能“用笑脸贴上地球未来的光锥”或在每个人的大脑中安装愉悦电极,以及(3)构成一个起点和方向,在价值观和目标演变时保留这些品质。

反复出现的一个技巧是对初始人工智能(通常称为“种子人工智能”)进行编程,其主要目标是找出与人类兼容的值应该是什么。这为一个非常困难的问题应用了新的智能,这意味着对所述值的持续改进是系统本质的一部分。

一篇早期的论文(“连贯的外推意志”),它机智、独到、精彩;机器智能研究所的 Eliezer Yudkowsky 称这种学习过程的目标为“连贯的外推意志”或 CEV。意志因为这是我们真正想要的,而不是我们通常所说的我们想要的,这被自我和社会欺骗所掩盖。Yudkowsky 说:“如果你找到一个能给你三个愿望的精灵瓶子…把精灵瓶子密封在一个上锁的保险箱里…除非精灵关注你的意志,而不仅仅是你的决定。”外推因为要搞清楚。因为它需要在我们无数的意识形态、政治、社会、宗教和道德体系背后找到共同点。

CEV 是否可能。

也许你会被一个 CEV 可能认可的人类行为规范吓到,你会发现这些规范是完全排斥的,然而这些规范却被相当一部分人类所接受。同样,对于其他人来说,你的想法是令人厌恶的。对于我们在这些问题上的分歧,假定的解决办法是 CEV 的“连贯”方面。也就是说,通过更好的思考和更广泛的知识,人工智能可以找到我们的道德共同点,并以我们足够多的人可以同意的方式表达它。我想到了“猪食”这个词,我想知道是否有哲学家已经在写一本关于为什么 CEV 永远行不通的书了。但是让我们更深入地看看。

Yudkowsky 把目标放在他(作为一个 AI 硬汉)所谓的诗意术语中:“(一个 CEV 是)我们的愿望是,如果我们知道得更多,思考得更快,更像我们希望的那样,在一起成长得更远;外推收敛而不是发散,我们的愿望一致而不是干涉;按照我们希望的那样推断,按照我们希望的那样解释。”

因此,请想一想,我们实际上从未尝试过这样的事情:一位受人尊敬的杰出思想家考虑了我们所有不同的道德关切,并找到了所有国家和信仰中最受尊敬的人都能认同的文明原则。如果你在写剧本,这种尝试将会失败,直到人工智能给人类一些有巨大价值的礼物,一个古老问题的解决方案。这使得公众对人工智能的态度发生了翻天覆地的变化,它现在被视为恩人,而不是魔鬼。这个比喻暗示了高级人工智能项目开放和国际化的必要性。

自从 Yudkowsky 的第一篇论文以来,CEV 的想法已经获得了关注,无论是在博斯特罗姆的重要著作中还是在其他地方(Steve Petersen,super intelligence as super ethical)。思想家们试图确定 CEV 过程的初始机制,如指定目标内容的方法、决策理论、知识理论及其现实世界基础,以及人工智能 CEV 发现的人类认可程序。对于 CEV 来说,如果没有一个好的伦理一致性理论,这些哲学技巧仍然是无用的。即,如何在各种“关于世界如何的信念和关于世界应该如何的愿望”之间找到一致性(Petersen,见上文)显然,一个强大的人工智能项目的成功和后果现在不仅取决于深奥的计算机科学,还取决于实用且非常重要的哲学。

思维主义、科学和超能力。

人们常说,智能爆炸会发生得如此之快,以至于我们没有时间以任何方式做出反应或引导它。这种信念被凯文·凯利嘲笑为依赖于“思维主义”,即智力本身可以导致进步的爆发。根据凯利的说法,思维主义忽略了一个已经证明的事实:新的力量需要关于自然的新知识,而你必须做科学——包括观察和实验——来获得新知识。科学需要时间和物质资源。一个新的人工智能,目标是让自己变得更好,或者解决任何困难的问题,它将如何进行科学研究?

博斯特罗姆认为人工智能有很多“超能力”可以被激发去发展。这些将是有用的,因为它们将服务于许多其他目标和项目。一个超级大国是技术研究,这也是科学研究的推动者和范例。

避免什么:作为邦德反派的人工智能恶魔。

假设我们决定通过严格限制人工智能对物理世界的访问来限制它,实际上让它依赖我们来执行(但可能不是设计)技术研究。这使得它只剩下另外四个(博斯特罗姆确定的)超级大国来开始进行新的研究:制定战略、社会操纵、系统黑客和经济生产率。一个物理上孤立的人工智能可以通过学习人类历史、心理学和政治方面的记录知识来自学如何操纵人。然后,它将使用先进的战略来间接获得对资源的控制,然后使用这些资源作为一个楔子来提高其他超级大国。

就像詹姆斯·邦德故事中的反派一样,人工智能可能会首先培养自己的真正信徒、理想主义者、愤世嫉俗者和反社会者。这些将有助于它获得和操作可能的秘密实验室和其他企业。它可以绕过一些繁琐的科学研究:不需要发表论文和同行评议,没有拨款申请和进展报告。但是仅仅这样还不足以让超级人工智能加快速度。它将需要开发自己的机器人,并可能找到一种方法来创造僵尸人类,以应对正常人的反对。

一个安全的甲骨文人工智能的愿景。

假设一个人工智能可以与物理资源的直接访问充分隔离,并且它的通信只能发生在公共信道上。后一种情况将防止秘密操纵人,也将减少人类对人工智能偏袒特定派别的恐惧。此外,假设一个工具级的半人工智能(也锁定到公共专用频道)可用于分析公开通信,以寻找隐藏消息的证据,这些隐藏消息可能被种子人工智能用来操纵盟友或骗子释放它。这种人工智能的人类治理将保留能力和权力,以在出现问题时物理地关闭它。

它能为我们做什么。

这样的人工智能可能被认为是一个安全的先知和整个世界的顾问。它可以被允许以只读方式访问人类知识和艺术的很大一部分。它将开始了解我们的最佳技术:从现有知识中产生想法、外推推理、战略规划和决策理论,以帮助它回答对人类福祉至关重要的问题。

也许对于一个先知来说,首要的任务应该是对有助于 CEV 的步骤提出建议,包括更好的理论,比如价值澄清和决策,以及一系列哲学问题。这些任务的结果,以及随之而来的 CEV 的第一稿,就像是人类/人工智能文明的结合体。它可以让我们以更安全、更缓慢、非爆炸性的方式起飞,达到博斯特罗姆和其他深层思想家所希望的超级智能。

在其开发过程中的某个时刻,甲骨文人工智能会给我们提供关于如何处理环境、政治、社会和经济问题的深思熟虑、解释清楚的意见。关于设定 R&D 优先事项的建议将有助于我们避免其他各种生存风险,如气候、纳米技术、核战争和小行星。甲骨文将继续完善它或它的继任者人工智能可以保持的价值和动机框架,如果我们决定让它走出封闭的盒子,到野外去。

减缓爆炸。

公共 oracle 方法允许我们获得“人类级别”人工智能的更好思维和更广泛信息覆盖的早期优势。它试图将人类的派系斗争和利益争夺最小化。一个公开的甲骨文项目有很多障碍。首先,它必须是第一个成功的强人工智能。如果一个不太安全的项目首先发生,公共预言可能永远不会发生。博斯特罗姆提出了一个强有力的案例,即第一个人工通用智能如果没有足够的控制或良性的最终目标,将会爆炸成一个“单体”,一个几乎控制一切的非道德实体。不只是一个恶魔,而是一个不受约束的神。

任何爆炸性的起飞对人类来说都是不祥之兆。获得较慢起飞的最佳方式是一个包括许多人的项目,他们必须在采取每一个重要步骤之前达成一致。可能只有当我们已经从其他一些生存挑战中幸存下来,比如濒临环境崩溃的时候,我们才会有这种合作的动机。

一个缓慢的项目有一个缺点:它可能会抢先到达终点。博斯特罗姆已经确定了(“人工智能开发中开放的战略含义”)这里的另一个转折。一个缓慢的、包容的项目需要公开它的开发过程。开放可以增加竞争项目的可能性和竞争力。安全需要时间,所以最不关注安全的项目赢得了强人工智能的比赛,然后“啊哈!”。同样,一个单一的缓慢而包容的项目预示着最好的结果。

一个安全友好的强人工智能的挑战可以是富有成效的,即使我们距离制造一个人工智能还有几十年的时间。它迫使我们寻找更好的关于如何成为一个成熟物种的想法;如何不总是搬起石头砸自己的脚?

你的 2020 年自动驾驶汽车人工智能指南

原文:https://towardsdatascience.com/your-guide-to-ai-for-self-driving-cars-in-2020-218289719619?source=collection_archive---------3-----------------------

深度学习是基础

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Source

想获得灵感?快来加入我的 超级行情快讯 。😎

自动驾驶汽车,也被称为自主汽车,是能够在很少或没有人类输入的情况下驾驶的汽车。一辆完全自动驾驶的汽车将能够独自把你从洛杉矶开到纽约,而你可以坐下来,放松,享受平稳的旅程。

自动驾驶汽车最近受到了极大的关注,这在很大程度上是由于人工智能的技术繁荣。就在过去几年里,人工智能已经从几乎被遗忘变成了全世界许多组织最大的研发投资。

简而言之,人工智能赋予了我们自动化大量手工工作的能力,这些工作以前需要某种形式的人类知识或技能。在自动驾驶汽车的情况下,人工智能可以帮助成为汽车的大脑,做一些事情,如自动检测车辆周围的人和其他汽车,停留在车道上,转换车道,并跟随 GPS 到达最终目的地。

那么所有这些是如何工作的呢?科学家、工程师和软件开发人员是如何给计算机编程让它们驾驶汽车的?

自动驾驶技术概述

自治程度

谈到自动驾驶汽车,大多数技术专家都会提到 自主级别 *。*自动驾驶汽车的自主水平指的是相对于人类,有多少驾驶是由计算机完成的。级别越高,计算机完成的驾驶就越多。请查看下面的插图。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 0 级:汽车的所有功能和系统都由人控制
  • 级别 1: 像巡航控制、自动刹车或检测盲点中的东西这样的小事情可能由计算机控制,一次一个
  • 第二级:电脑可以同时执行至少两项自动化功能,比如加速和转向。安全操作和紧急程序仍然需要人
  • Level 3 :电脑可以同时控制汽车的所有关键操作,包括大多数情况下的加速、转向、停车、导航和驻车。仍然希望有人类驾驶员在场,以防他们被警告有紧急情况
  • Level 4 :这款车是全自动驾驶的,在的一些驾驶场景中,完全不需要人类驾驶员。例如,汽车可以在晴天或阴天完全自动驾驶,但在下雪和车道被覆盖时就不行
  • 第五关:这辆车完全能够在任何情况下自动驾驶

我们今天在新闻中听到的大多数自动驾驶汽车,如特斯拉和 Waymo 制造的汽车,都处于第 2 级。他们已经达到了可以自己驾驶的水平,但是仍然需要人类驾驶员来确保车辆的安全操作。

自驾的各个阶段

今天的自动驾驶汽车使用各种尖端硬件和软件技术的组合来执行驾驶。典型的自动驾驶系统将经历 3 个阶段来执行其驾驶。出于本文的目的,我们将这些称为传感理解控制

感测阶段,摄像机和各种传感器用于观察汽车周围的任何物体,如其他汽车、人、自行车和动物。真的是车的眼睛,不断看到周围的一切,360 度。

理解阶段,各种人工智能算法,主要是计算机视觉,被用来处理来自传感器的信息。例如,我们可能有一个计算机视觉系统,它处理来自汽车周围摄像头的视频,以检测汽车周围道路上的所有其他汽车。理想情况下,这种系统能够检测出汽车的位置、大小、速度和行驶方向。实际上,这些系统被设计用来绘制汽车周围的整个环境。所有这些信息都将被输入自动驾驶的控制阶段。

控制阶段,自动驾驶系统将处理计算机视觉系统能够提取的所有信息。基于这些信息,它将控制汽车。通过了解所有的周围环境,汽车周围有什么以及它是如何变化的,控制系统的工作就是安全地移动汽车并驶向目的地。如果前车减速,它会启动刹车,如果需要退出,它会切换车道,如果下雨,它会打开雨刷。

我们将更详细地了解每个阶段。

(1)传感器

当我们人类开车时,我们用眼睛看周围的东西。自动驾驶汽车也需要眼睛来看。自动驾驶汽车的眼睛是它的各种传感器。大多数自动驾驶汽车使用 3 种不同传感器中的一种或某种组合:摄像头、雷达和激光雷达

摄像机

相机和我们自己的视力最相似。他们捕捉连续的照片,也就是像我们一样通过镜头拍摄视频。就像我们自己的视力一样,如果汽车的摄像头可以捕捉高质量的视频——高分辨率和高 FPS,这对驾驶有很大的帮助。

无人驾驶汽车将在每一面都放置摄像头:前、后、左、右等等,以便能够全方位地看到周围的一切。有时,会混合使用不同类型的相机——一些广角相机有更宽的视野,一些窄但高分辨率的相机看得更远。

使用相机的好处是它们是世界最自然的视觉呈现。汽车看到的和人类司机看到的完全一样——而且更多,因为它的内部计算机可以同时通过所有的摄像头进行观察。相机也很便宜。

缺点是相机捕捉的数据,即图像和视频,无法让我们了解其他物体离汽车有多远,或者它们的移动速度有多快。摄像机在晚上也很难使用,因为我们根本看不到太多东西。

雷达

雷达传统上被用于探测移动物体,如飞机和天气状况。它的工作原理是以脉冲形式发射无线电波。一旦这些波击中一个物体,它们就会反弹回传感器,给出物体的速度和位置数据。

在自动驾驶汽车中,雷达用于检测汽车周围各种物体的速度和距离。这是对相机的完美补充,相机可以看到物体是什么,但不能精确地知道它们在哪里(有多远)。就像摄像头一样,雷达将在汽车周围 360 度使用。

在光线较暗的情况下,如夜间驾驶,雷达也是摄像头的补充。因为雷达发射信号,所以不管是凌晨 3 点还是中午,信号都以完全相同的方式移动和反射。这与相机形成了鲜明的对比,因为光线的原因,相机在晚上真的不能很好地工作。

雷达的缺点是这种技术目前的精确度有限。当前的雷达传感器提供非常有限的分辨率。因此,雷达确实给了我们其他物体的距离、位置和速度的概念,但这种概念有些模糊——不像我们希望的那样准确。

激光雷达

激光雷达代表光探测和测距。它的工作原理是发出光束,然后计算光线击中物体并反射回激光雷达扫描仪所需的时间。然后可以使用光速计算到物体的距离——这些被称为 飞行时间 测量。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

A Waymo car with LiDAR sensor on top. Source

激光雷达传感器通常放置在汽车顶部,每秒发射数千束光束。基于收集的数据,可以创建称为 点云 的 3D 表示来表示汽车周围的环境。

激光雷达传感器的最大优势是其准确性。一个好的激光雷达传感器可以识别距离 100 米远的物体仅几厘米的细节。例如,据说 Waymo 的激光雷达系统甚至可以检测到一个人正在哪个方向行走,基于他们来自激光雷达的精确 3D 点云。

激光雷达的缺点是成本,目前比相机和雷达贵 10 倍。

(2)计算机视觉

自动驾驶系统的理解阶段是大脑——它是大多数主要处理发生的地方。在理解阶段,目标是获取来自传感器的所有信息并对其进行解释。这种解释的目的是收集有用的信息,可以帮助安全地控制汽车。这些信息可以是:

  • 我周围的物体是什么,它们在哪里,它们是如何运动的?所以我们的系统可能会检测到像人、汽车和动物这样的东西
  • 我在哪里?该系统将确定所有车道的位置,以及汽车是否完全在正确的车道上,或者汽车相对于道路上其他汽车的位置(太近、盲点等)

在 2019 年,这些信息主要是通过人工智能获得的,更具体地说,是使用计算机视觉的深度学习。大型神经网络被训练用于诸如图像分类物体检测场景分割车道检测的任务。然后,网络会针对汽车的计算单元进行优化,以便能够处理自动驾驶所需的实时速度。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Semantic Segmentation for Self-Driving. Source

请记住,自动驾驶汽车可能有来自多个不同来源的数据:摄像头、雷达和激光雷达。因此,所有这些常规的计算机视觉任务都可以应用于各种传感器数据,从而以非常全面的方式收集关于汽车周围环境的信息。这也产生了一种冗余——如果一个系统出现故障,另一个系统仍有机会进行检测。

使用深度学习来完成这些任务的好处在于,网络是可训练的。我们给他们的数据越多,他们得到的就越多。公司正在大力利用这一点——自动驾驶汽车被放在路上,车上有人类司机,他们可以不断收集新的训练数据来提高自己。

计算机视觉真的是自动驾驶汽车系统的核心。一个理想的系统将能够准确地检测和量化汽车周围环境的每一个方面——移动物体、静止物体、路标、路灯——绝对是一切。所有这些信息都被用来决定汽车下一步应该如何行驶。

(3)控制

一旦计算机视觉系统处理了来自传感器的数据,自动驾驶汽车现在就拥有了驾驶所需的所有信息。控制阶段的作用是根据理解阶段提取的信息,找出如何最好地驾驶汽车。

描述自动驾驶汽车如何导航道路的技术术语是路径规划。路径规划的目标是使用计算机视觉系统捕获的信息安全地引导汽车到达目的地,同时避开障碍物并遵循道路规则。

汽车将基于 GPS 了解其目标目的地——来自 GPS 的数据包含长距离路径的信息。为了向其目标目的地移动,自动驾驶系统将首先“规划路径”,即计算到达其目标的最佳(读取:最短时间)路径。这意味着决定走哪条路,开多快。

一旦确定了最佳路径,系统的下一步就是确定最佳可能的“下一步行动”。该下一步移动将再次总是基于沿着最优路径到达其目标目的地。下一步可能是加速、刹车、变换车道或任何其他常规驾驶动作。

同时,它的任何举动都必须遵守道路规则,维护汽车乘客的安全。如果计算机视觉检测到前方有红灯,那么汽车应该减速或停下来(取决于它有多远)。

所有这些控制都直接发送到汽车的机械控制。如果汽车需要变换车道,那么一个将方向盘转动一个非常具体的量的命令被发送到汽车的适当部分。如果汽车需要刹车,就会发出命令,以所需的精确压力踩下刹车,减速到足以遵循最佳路径,同时保持安全并遵守道路规则。

这个感知、理解和控制的过程尽可能频繁和精确地重复,直到汽车到达目的地。

自动驾驶领域的大玩家

自动驾驶汽车和更普遍的自动驾驶汽车有可能成为一个数万亿美元的产业。伴随着巨大的机遇而来的是激烈的竞争,而这一领域并不缺乏这种竞争。有几个大玩家。

特斯拉

特斯拉,尤其是埃隆·马斯克(Elon Musk)在电视上时,对他们的汽车没有使用激光雷达摄像头感到自豪。相反,他们主要依靠位于汽车周围的 8 个标准摄像头。然后,他们训练一个多头卷积神经网络(CNN)来检测汽车周围的一切,并相应地执行导航。

特斯拉自动驾驶技术的真正威力在于它的软件。通过软件更新,可以快速轻松地将汽车上运行的模型更新部署到全球所有特斯拉汽车上。快速简单的软件更新意味着特斯拉汽车在不断改进,用户无需支付任何额外费用或注意力。

特斯拉还利用其自动驾驶车队进行数据收集。所有配有适当摄像头的特斯拉汽车都用于收集新的训练数据。所有这些数据都用于重新训练模型,并再次部署到整个车队。这是一个自动化的迭代管道,用于持续改进自治系统。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

A rear camera on a Tesla car, used for self-driving. Source

Waymo

Waymo 是谷歌旗下的自动驾驶汽车公司。Waymo 的一大优势是,他们为自己的汽车制造自己的专有硬件。这包括传感器(相机、雷达和激光雷达)以及用于运行计算机视觉推理的定制芯片。这使得 Waymo 汽车能够实现最佳的硬件和软件优化。

通常,激光雷达的一个大缺点是成本。然而,Waymo 声称已经开发了自己的激光雷达传感器,比竞争对手便宜 90%。这种传感器据称还能探测到 300 米外的物体。如果在这个范围内保持任何像样的精度水平,那么它为 Waymo 汽车提供了超越 Telsa 的巨大优势。普通相机根本看不到那么远。

Waymo 还在寻求与包括克莱斯勒、丰田、雷克萨斯和捷豹在内的大型汽车公司建立合作伙伴关系。

优步和 Lyft

优步和 Lyft 都是非常受欢迎的打车公司,处于从无人驾驶汽车中获利的绝佳位置。他们正在建立自己的自动驾驶汽车车队,配备摄像头、雷达和激光雷达——在 Lyft 的情况下是多个激光雷达。

与传统汽车公司不得不出售配备自动驾驶功能的整车(价格昂贵)不同,优步和 Lyft 的目标是建立一支自动驾驶汽车车队,供他们的拼车服务使用。这将有效地消除对人类驾驶员的需求,从而降低成本。任何地方的任何人都可以订购无人驾驶汽车,价格与呼叫优步或 Lyft 差不多。它变成了自动驾驶服务。

我们离 5 级自驾还有多远?

在看到所有这些未来技术和正在取得的重大进步后,人们不禁要问:我们离全面的 5 级自动驾驶汽车还有多远?

看情况。

一些人认为这项技术不到几年就能实现。埃隆·马斯克声称“一年后,我们将拥有超过一百万辆完全自动驾驶的汽车”。这当然是可能的。

随着数十亿美元的资金被投入到尖端研究中,人工智能正在以令人难以置信的速度发展。用于传感和计算的硬件正在改善,特别是因为公司现在正在投资用于自动驾驶的定制硬件。因此,这项技术看起来肯定是朝着正确的方向发展。

如果我们从技术领域的另一个角度来看,事情会变得更加复杂。

为了让自动驾驶汽车被人们接受并在日常生活中使用,他们真的需要尽善尽美。当另一个人犯了一个小错误时,我们人类会宽容得多,但当计算机或机器犯了错误时,我们会严厉批评。

电脑应该只是工作,没有任何错误。他们毕竟是机器,所以期望值要高得多。我们常常期望机器比我们自己精确一个数量级或者更精确。门槛只是高了很多。

除此之外,我们还有法律方面的考虑。你可以打赌,一旦自动驾驶完全上路,新的法律法规将不得不出台。

万一发生事故,谁应负责任?既然是自动驾驶,汽车现在应该能开得更快吗?人类必须一直呆在车里吗?这些都是自动驾驶汽车在某个时候必须回答的问题,才能真正在第 5 级全面上路。

总的来说,自动驾驶汽车对社会来说是一大利好。当汽车成为自动驾驶时,更少的污染、更少的交通、更高的效率和更安全的驾驶都是可以预期的。这项技术正朝着正确的方向发展,并有望带来一个光明、自主的未来。

自然语言处理(NLP)指南

原文:https://towardsdatascience.com/your-guide-to-natural-language-processing-nlp-48ea2511f6e1?source=collection_archive---------0-----------------------

机器如何处理和理解人类语言

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们表达的一切(无论是口头还是书面)都携带着大量的信息。我们选择的主题,我们的语气,我们选择的词语,每一件事都增加了某种类型的信息,可以被解读并从中提取价值。理论上,我们可以利用这些信息理解甚至预测人类行为。

但有一个问题:一个人可能会在一份声明中产生数百或数千个单词,每个句子都有其相应的复杂性。如果你想在一个给定的地理范围内扩展和分析数百、数千或数百万的人或声明,那么情况就不可收拾了。

从对话、声明甚至推文中生成的数据是非结构化数据的例子。非结构化数据并不完全符合关系数据库的传统行列结构,而是代表了现实世界中可用的绝大多数数据。这是混乱和难以操纵的。然而,由于机器学习等学科的进步,关于这个话题正在发生一场大革命。如今,人们不再试图根据关键词来解释文本或演讲(老式的机械方法),而是理解这些词背后的含义(认知方法)。这样就有可能检测出像反语这样的修辞,甚至进行情感分析。

自然语言处理或 NLP 是人工智能的一个领域,它赋予机器阅读、理解人类语言并从中获取意义的能力。

它是一个专注于数据科学和人类语言之间的交互的学科,并且正在扩展到许多行业。如今,由于数据访问的巨大改进和计算能力的增强,NLP 正在蓬勃发展,这使得从业者能够在医疗保健、媒体、金融和人力资源等领域取得有意义的成果。

自然语言处理的使用案例

简单地说,NLP 代表了像语音或文本这样的自然人类语言的自动处理,尽管这个概念本身很吸引人,但这项技术背后的真正价值来自用例。

NLP 可以帮助你完成很多任务,应用领域似乎每天都在增加。让我们举一些例子:

  • NLP 能够根据电子健康记录和患者自己的语音识别和预测疾病。这种能力正在从心血管疾病到抑郁症甚至精神分裂症的健康状况中进行探索。例如,亚马逊理解医疗是一项使用自然语言处理从患者笔记、临床试验报告和其他电子健康记录中提取疾病状况、药物和治疗结果的服务。
  • 组织可以通过识别和提取社交媒体等来源中的信息来确定客户对服务或产品的看法。这种 情绪分析 可以提供大量关于客户选择及其决策驱动因素的信息。
  • IBM 的一位发明家开发了一种认知助手,它像一个个性化的搜索引擎一样工作,通过学习你的一切,然后在你需要的时候提醒你一个名字、一首歌或任何你不记得的事情。
  • 像雅虎和谷歌这样的公司用 NLP 过滤和分类你的电子邮件,通过分析流经他们服务器的电子邮件中的文本,在垃圾邮件进入你的收件箱之前阻止它们。
  • 为了帮助识别假新闻,麻省理工学院的 NLP 小组开发了一个新系统来确定消息来源是否准确或带有政治偏见,检测新闻来源是否可信。
  • 亚马逊的 Alexa 和苹果的 Siri 是智能语音驱动界面的例子,它们使用 NLP 来响应语音提示,并做任何事情,如找到特定的商店,告诉我们天气预报,建议去办公室的最佳路线或打开家里的灯。
  • 洞察正在发生的事情和人们正在谈论的话题对 金融交易员 来说是非常有价值的。NLP 被用来跟踪新闻,报道,关于公司间可能合并的评论,一切都可以被整合到一个交易算法中以产生巨大的利润。记住:买谣言,卖新闻。
  • NLP 还被用于 人才招聘 的搜索和选择阶段,识别潜在雇员的技能,并在他们活跃在就业市场之前发现前景。
  • 在 IBM Watson NLP 技术的支持下, LegalMation 开发了一个平台来自动化日常诉讼任务并帮助法律团队节省时间、降低成本和转移战略重点。

自然语言处理在医疗保健行业发展尤为迅速。在医疗保健组织越来越多地采用电子健康记录的同时,这项技术正在改善护理服务、疾病诊断并降低成本。事实上,临床记录可以得到改善,这意味着患者可以通过更好的医疗保健得到更好的理解和受益。目标应该是优化他们的体验,一些组织已经在这方面努力了。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Number of publications containing the sentence “natural language processing” in PubMed in the period 1978–2018. As of 2018, PubMed comprised more than 29 million citations for biomedical literature

Winterlight Labs 这样的公司通过语音监测认知障碍,在阿尔茨海默病的治疗方面取得了巨大进展,他们还可以支持各种中枢神经系统疾病的临床试验和研究。遵循类似的方法,斯坦福大学开发了一个聊天机器人治疗师,目的是帮助患有焦虑和其他疾病的人。

但是围绕这个主题有严重的争议。几年前,微软展示了通过分析搜索引擎查询的大量样本,他们可以识别出患有胰腺癌的互联网用户甚至在他们收到该疾病的诊断之前。用户对这样的诊断会有什么反应?如果你被检测为假阳性会怎么样?(意思是即使你没有患病,也可以被诊断出患有这种疾病)。这让人想起了谷歌流感趋势的案例,该趋势在 2009 年被宣布能够预测流感,但后来由于准确性低和无法满足其预测率而消失。

NLP 可能是未来有效临床支持的关键,但短期内仍有许多挑战要面对。

基本的自然语言处理给你的非自然语言处理的朋友留下深刻印象

我们现在面对的 NLP 的主要缺点是语言非常复杂。理解和操作语言的过程极其复杂,因此在将所有东西结合在一起之前,通常会使用不同的技术来应对不同的挑战。像 Python 或 R 这样的编程语言经常被用来执行这些技术,但是在深入研究代码行之前(这将是另一篇文章的主题),理解它们下面的概念是很重要的。让我们总结并解释一下 NLP 中定义术语词汇表时最常用的一些算法:

袋字

是一个常用的模型,允许您计算一段文本中的所有单词。基本上,它为句子或文档创建一个出现矩阵,不考虑语法和词序。这些词频或出现次数然后被用作训练分类器的特征。

举个简短的例子,我引用了甲壳虫乐队的歌曲《穿越宇宙》的第一句话:

文字像无尽的雨水一样流入纸杯,

它们滑过,滑过宇宙

现在让我们数数单词:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这种方法可能反映了几个缺点,如缺乏语义和上下文,以及阻止单词(如“the”或“a”)的事实给分析增加了噪声,并且一些单词没有相应地加权(“universe”的权重小于单词“them”)。

为了解决这个问题,一种方法是根据单词在所有文本(不仅仅是我们正在分析的文本)中出现的频率来重新调整单词的频率,以便像“the”这样在其他文本中也经常出现的频繁单词的分数会受到惩罚。这种评分方式被称为**“词频—逆文档频率”(TFIDF)** ,通过权重来提高单词包。通过 TFIDF,文本中频繁出现的术语会得到“奖励”(如我们示例中的单词“他们”),但如果这些术语在我们包含在算法中的其他文本中频繁出现,它们也会受到“惩罚”。相反,这种方法突出显示并“奖励”考虑所有文本的独特或罕见的术语。然而,这种方法仍然没有上下文和语义。

标记化

是将连续文本分割成句子和单词的过程。本质上,它的任务是将文本切割成称为记号的片段,同时丢弃某些字符,如标点符号。按照我们的例子,标记化的结果将是:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

很简单,对吧?虽然在这种情况下,以及在像英语这样的用空格分隔单词的语言(称为分段语言)中,这看起来很基本,但并不是所有语言的行为都是一样的,如果你仔细想想,空格本身并不足以让英语执行正确的标记化。在空格处进行拆分可能会将应该被视为一个标记的内容分开,例如某些名称(例如旧金山或纽约)或借用的外国短语(例如自由放任)。

标记化也可以去除标点符号,简化了正确分词的过程,但也引发了可能的复杂性。对于缩写后面的句点(例如 dr .),该缩写后面的句点应被视为同一令牌的一部分,不能删除。

在处理包含大量连字符、括号和其他标点符号的生物医学文本领域时,标记化过程可能会特别成问题。

关于标记化的更深入的细节,你可以在这篇文章中找到很好的解释。

停止文字删除

包括去掉英语中常见的冠词、代词和介词,如“and”、“the”或“to”。在这个过程中,一些看起来对 NLP 目标提供很少或没有价值的非常常见的单词被过滤并从要处理的文本中排除,因此移除了对相应文本没有信息性的广泛和频繁的术语。

通过在预定义的关键字列表中执行查找,可以安全地忽略停用词,从而释放数据库空间并缩短处理时间。

没有通用的停用词列表。这些可以预先选择或从头开始构建。一种可能的方法是从采用预定义的停用词开始,然后将词添加到列表中。然而,似乎过去的总趋势是从使用大的标准停用词表到根本不使用词表。

问题是停用词删除可以删除相关信息并修改给定句子中的上下文。例如,如果我们正在执行情感分析,如果我们删除了像“不”这样的停用词,我们可能会使我们的算法偏离轨道。在这些情况下,您可以选择一个最小的停用词列表,并根据您的特定目标添加额外的术语。

词干

指的是为了去除词缀(词根的词汇附加物)而对单词的结尾或开头进行切片的过程。

附在单词开头的词缀称为前缀(如单词“astrobiology”中的“astro”),附在单词末尾的词缀称为后缀(如单词“helpful”中的“ful”)。

问题是词缀可以创造或扩展同一个词的新形式(称为屈折词缀),甚至可以自己创造新词(称为派生词缀)。在英语中,前缀总是派生的(词缀创造了一个新词,如单词“生态系统”中的前缀“生态”),但后缀可以是派生的(词缀创造了一个新词,如单词“吉他手”中的后缀“ist”)或屈折的(词缀创造了一个新的单词形式,如单词“faster”中的后缀“er”)。

好的,那么我们如何区分这两者的不同并切掉正确的部分呢?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一种可能的方法是考虑常见词缀和规则的列表(Python 和 R 语言有不同的包含词缀和方法的库)并基于它们执行词干提取,但当然这种方法存在局限性。由于词干分析器使用算法方法,词干分析过程的结果可能不是一个实际的单词,甚至不会改变单词(和句子)的意思。为了抵消这种影响,您可以通过添加或删除词缀和规则来编辑那些预定义的方法,但是您必须考虑到,您可能在一个方面提高了性能,而在另一个方面却降低了性能。总要纵观全局,测试你的模型的性能。

那么,如果词干有严重的局限性,我们为什么要使用它呢?首先,它可以用来纠正单词的拼写错误。词干分析器使用简单,运行速度非常快(它们在字符串上执行简单的操作),如果速度和性能在 NLP 模型中很重要,那么词干分析器无疑是一个不错的选择。请记住,我们使用它的目的是提高我们的表现,而不是作为一个语法练习。

词汇化

目标是将一个单词简化为其基本形式,并将同一个单词的不同形式组合在一起。例如,将过去时态的动词改为现在时态(如“got”改为“go”),统一同义词(如“best”改为“good”),从而规范与词根意义相近的词。虽然它似乎与词干化过程密切相关,但词汇化使用不同的方法来获得单词的词根形式。

词汇化将单词解析为它们的字典形式(称为词条),为此它需要详细的字典,算法可以在其中查看单词并将单词链接到它们相应的词条。

比如“跑”、“跑”、*“跑”*这些词都是“*跑”*这个词的形式,所以“*跑”*就是前面所有词的引理。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

词汇化还考虑了单词的上下文,以便解决其他问题,如消歧,这意味着它可以根据特定的上下文区分具有不同含义的相同单词。想想像“蝙蝠”(可以对应于动物或棒球中使用的金属/木制球杆)或“银行”(对应于金融机构或水体旁边的土地)这样的词。通过为一个单词(无论是名词、动词等等)提供一个词性参数,就有可能为该单词在句子中定义一个角色并消除歧义。

正如您可能已经想到的,与执行词干处理相比,词汇化是一项更加耗费资源的任务。同时,由于它比词干法需要更多的语言结构知识,它比建立或修改词干算法需要更多的计算能力

话题建模

是一种揭示文本或文档集合中隐藏结构的方法。本质上,它对文本进行聚类,根据内容发现潜在主题,处理单个单词,并根据它们的分布为它们赋值。这种技术是基于这样的假设,即每个文档都是由主题混合而成的,每个主题都是由一组单词组成的,这意味着如果我们能发现这些隐藏的主题,我们就能解开文本的含义。

从话题建模技术的论域来看,潜在狄利克雷分配(LDA) 可能是最常用的。这种相对较新的算法(发明于不到 20 年前)作为一种无监督的学习方法,可以发现一组文档背后的不同主题。在像这样的无监督学习方法中,没有输出变量来指导学习过程,数据由算法探索以发现模式。更具体地说,LDA 通过以下方式查找相关单词组:

  1. 将每个单词分配给一个随机的主题,用户可以定义希望发现的主题数量。您不需要定义主题本身(您只需要定义主题的数量),算法会将所有文档映射到这些主题,使得每个文档中的单词大部分都被这些虚构的主题捕获。
  2. 该算法迭代地遍历每个单词,并且考虑单词属于主题的概率以及文档将由主题生成的概率,将单词重新分配给主题。这些概率被计算多次,直到算法收敛。

与其他执行硬聚类(其中主题是不连续的)的聚类算法不同,LDA 将每个文档分配给主题的混合,这意味着每个文档可以由一个或多个主题描述(例如,文档 1 由 70%的主题 A、20%的主题 B 和 10%的主题 C 描述),并反映更真实的结果。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

主题建模对于文本分类、构建推荐系统(例如,根据你过去的阅读向你推荐书籍)甚至检测在线出版物的趋势都非常有用。

未来是什么样子的?

目前,NLP 正在努力检测语言意义的细微差别,无论是由于缺乏上下文,拼写错误还是方言差异。

2016 年 3 月,微软推出了人工智能聊天机器人 Tay ,作为 NLP 实验在 Twitter 上发布。这个想法是,随着越来越多的用户与 Tay 对话,它会变得越来越聪明。结果是,16 个小时后,Tay 因其种族主义和辱骂性的评论而被删除:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

微软从自己的经历中吸取了教训,几个月后发布了第二代英语聊天机器人 Zo ,它不会犯与上一代相同的错误。Zo 使用一系列创新方法来识别和产生对话,其他公司正在探索能够记住特定个人对话细节的机器人。

尽管 NLP 的未来看起来极具挑战性并且充满威胁,但该学科正在以非常快的速度发展(可能是前所未有的),并且我们很可能在未来几年内达到一定的发展水平,这将使复杂的应用成为可能。

感谢Jesus del ValleJannis BuschSabrina Steinert 的宝贵意见

对这些话题感兴趣?在 LinkedinTwitter 上关注我

你的手机银行应用有问题(我不确定是否有人知道)

原文:https://towardsdatascience.com/your-mobile-banking-app-has-a-problem-c2fe006e76c7?source=collection_archive---------3-----------------------

机器学习算法中的错误正在造成严重的(几乎看不见的)后果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Image by pixel2013 via Pixabay

几乎可以肯定的是,我们已经为实际上没有问题的退回支票支付了数千美元,如果不是数百万美元的话。

我不确定是否有人知道这件事。

我不可能是唯一一个遇到这种事的人。

但是很容易看出我们可能都忽略了它。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Ryoji Iwata on Unsplash

手机银行背后的技术非常不可思议,但是如果出现错误会怎么样呢?

如果我们看不到错误会发生什么?

我们生活在一个技术进步如此之多的世界,以至于它们几乎融入了背景之中。我们已经习惯了让手机和电脑为我们做一些小事的想法。人们很容易忘记所有这些技术到底有多新。

但它是新的。每天都在变化。从社交媒体和娱乐到银行和金融,大多数你认为理所当然的基本事物背后都有算法。它们在不断进化。

他们并不完美。

注意了!

如果图像捕捉系统在您的银行应用程序中出错,导致您的存款被拒绝,您会付出什么代价?

如果没人看到呢?那会让我们付出什么代价?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这不是空头支票!

最近,我在一个手机银行应用程序上存入了一张被接受的支票,几天后却被作为空头支票退回。我为此被收费。

问题来了:那张支票还不错

这里有一个更大的问题:这花了将近两周的时间来解决,并且浪费了大量的时间。我甚至抓住了真正的问题,这几乎是偶然的。移动银行应用程序中的图像捕获系统出错。一个很容易被忽略的错误,可能已经发生在你身上,而你甚至没有意识到。

做自由职业者有很多额外津贴,但是财务方面会变得复杂。你不是从单一来源获得源源不断的支票,而是依靠各种各样的客户从不同的账户向你支付款项,这可能是一个相当随机的时间表。

我很幸运有我完全信任的了不起的客户。不是说错误不能发生!他们绝对可以。人们会忘记自己的账户余额,从错误的账户或关闭的账户中提取支票,等等。但是我非常幸运,从来没有客户开出空头支票。

你可以想象我有多惊讶,在通过一家大银行的应用程序批准了一笔移动存款几天后,那张支票被退回来了,我的账户被扣了一大笔费用。这是一个我认识并信任了多年的客户,它没有任何意义。我联系了客户,他和我一样对此感到困惑。

我联系了银行,花了很长时间和某人通电话,她向我保证她无能为力。这是一张空头支票。当有人给你开空头支票时,你必须支付手续费。你应该让你的客户给你报销这笔费用。故事结束。你的银行不可能去其他银行要求他们支付费用,所以这取决于你。去找你的客户拿一张新支票。

听起来很合法,对吧?

GIF via GIPHY

坏消息,银行家

对她来说不幸的是,我不会就此罢休。这就是我比其他很多人更有优势的地方,他们可能会把她说的话当真。人们会简单地回到客户那里要求一张新的支票。一种是附加费用,包括费用和可能的利息:

  • 我了解并信任我的委托人。
  • 我手里拿着这张支票,可以看出它是从同一家银行的一个账户上支取的。(这表明她掌握的一些信息是不正确的。)
  • 我熟悉一些驱动图像捕获和分类的算法,以及它们潜在的弱点。实际上,我在 Medium 上写的是技术和人工智能。)
  • 我知道这家银行最近进行了一次重大的技术升级。
  • 我曾经是这家银行的私人银行家。那是很久以前的事了,但我知道一个银行家能接触到什么信息,她能采取什么步骤,不能采取什么步骤。

你不太可能处于这个位置,这也是我写这个故事的原因。

有多少人认为只是简单地回去,得到一张新的支票,并支付费用,而没有确定实际的问题?

你会相信你的银行家。你会认为你收到了一张空头支票,并从那里开始。你的客户需要提供另一张额外收费的支票。这会影响你和他们的关系。退回的支票可能会导致你透支,招致更多的费用和更大的问题。短时间内多次退回支票可能会导致您失去帐户。很多事情可能会变得非常糟糕,这都是因为机器学习算法中的错误。

我希望你有这个信息。我想让你知道你在找什么。你可以也应该提问。银行家无法告诉你很多事情,但你可以获得大量信息。支票被退回是因为资金不足吗?这是一个不存在的账户吗?你还能采取什么措施?

这到底是怎么回事?

问问题!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Photo by Artem Maltsev on Unsplash

发生了什么事?

令人惊讶的是,这很难理解。我肯定电话里的银行家希望她再也听不到我的消息了。最终,结果证明支票被提取的账户并不是系统中输入的账号。这意味着银行找不到有问题的银行账户。

我不得不等待银行寄给我一份存款证明,这样我就可以带着存款证明和支票原件去银行让银行职员亲自检查。在这一点上,银行家可以试图找出问题,并决定是否要扭转费用。(为了增加乐趣,您的费用一般只能由您开户的银行来撤销。这意味着,我必须在美国的另一边,等待一位从未谋面的银行家决定是否撤销我的费用。)

所以,我在等邮件。

花了将近一周的时间。不难想象,对于一个完全因为银行方面的错误而透支了账户的人来说,这将是什么样的情况。

把它带到银行去

一旦支票到了,我那蹒跚学步的孩子可以从世界上最无聊的冒险中解脱出来,我就去了银行,亲自经历了这一切。

这位银行家再次表示,这是一笔坏账。客户确实存在,但该账户不是一个未结账户。这一定是一个已经关闭,我的客户拿错了一些旧支票。我只是需要一张新的支票。

容易出错。它可能发生在任何人身上。

这听起来很合理,但我了解我的委托人。我也知道路由号码。这家伙不是那种会拿着一箱支票的人,这些支票来自他七年前在他居住的州开设的一个已关闭的账户。不可能。

不知何故,尽管银行家非常肯定地知道她是对的,她还是再看了一眼。

她看到了问题。太简单了。

图像捕捉系统已经截掉了支票上账号的最后两位数字。

就是这样。

这个或大或小的错误导致了一张退回的支票,一笔费用,以及近两周的头痛和浪费的时间,而这些时间本可以是富有成效的。

情况可能会更糟。

银行的错误实际上是看不见的。

进入人工智能

那么这个图像捕捉系统从何而来呢?是这家银行独有的吗?

事实证明,大多数主要银行都使用同一家公司的图像捕获、识别和分析系统。这家公司做了令人难以置信的工作,我绝不怀疑这一点。我没有证据证明他们是这个问题的直接原因。

该公司利用人工智能开发图像识别算法。他们正在使用机器学习算法来完成令人难以置信的文档和身份验证工作。他们已经创建了一个基于计算机视觉和机器学习算法的图像捕捉软件开发系统。它可以检测角落和眩光,可以检测和分析各种背景下的图像,包含内置的分析功能,提供实时图像评估,并具有许多其他很酷的功能。

但它显然不是完美无缺的。

也就是说,我不认为这家公司是问题的直接原因。我知道我从事自由职业工作的银行最近经历了一次重大的技术重新设计,他们对其在线和移动银行系统进行了更改。银行端的重新设计可能导致图像捕获系统出现问题。

也有可能是图像捕获系统本身有问题。我很难找到科技公司方面的任何错误记录,但这并不一定意味着没有任何错误记录。他们可能有一个了不起的公共关系部门或一流的法律团队。或者可能没有很多人能够注意到这里到底发生了什么。

我不知道问题出在哪里,也不知道这种情况发生的频率。但是这不可能只发生过一次。

这是一个潜在的大问题。即使 0.1%的移动银行客户有(或将有)这个问题,这也是我们经济中的一个巨大问题。大量的人在使用手机银行应用,而且这个数字还在增长。制造这项技术的公司也开发了用于身份和文件扫描的技术。它能直接丢数字吗?这些数字代表了我们的银行账户和身份。这种错误是不可接受的,会产生极其严重的后果。

有什么解决办法?

我还不知道,但我知道我们需要一个。我们肯定需要开始培训银行家来关注这个问题。现在,请记住所有这些技术仍然是新的。记住你有提问的权利。你有权了解事情的真相,即使人们告诉你你已经在那里了。几乎可以肯定,这种情况到处都在发生,我们需要找到一种方法来解决这个问题。

这取决于我们所有人的关注。如果不知道这个问题,没有人会去解决它。

不要让它溜走。太重要了。

如果其他人也有同样的问题,请在下面的评论中自由讨论。一如既往,随时在 LinkedIn @annebonnerdata 上联系。

你的下一个超模

原文:https://towardsdatascience.com/your-next-top-model-65052c6a8d3b?source=collection_archive---------35-----------------------

机器学习模型的高级概述

注:在这篇简短文章的最后,点击链接与由 帕特·富勒康纳·安德森 ,以及 米亚·伊泽曼 创建的文档进行互动。

什么是随机森林?如果一棵决策树倒在那里,我的参数会影响它是否发出声音吗?

贝叶斯是什么,为什么过了这么多年还这么幼稚?它现在不应该更清楚吗?

说真的,SVM 到底代表什么?

现在有很多机器学习模型,而且你不可能一下子就找到所有问题的答案,这是有道理的。也许你是数据科学的新手,也许你已经在朝九晚五的工作中使用相同的模型很多年了,或者你需要一些快速的面试准备。无论哪种方式,有一个资源来提醒你存在哪些机器学习模型的选项是很好的。

我和我的同事已经创建了许多不同模型的高层次概述以及分类法。我们最近研究了列出的大多数,我们发现当我们从我们的课程中毕业时,更难记住我们首先研究的那些或那些没有成为我们项目之一的那些。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

preview of the taxonomy we developed

虽然我们知道资源本身是有帮助的,但听说创建资源的行为对我们个人更有益,这可能并不令人惊讶。所以,我们希望你能帮助我们保持这份活的文件,因为它会让其他人受益,也是对你理解的一种检验。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们知道这不是什么开创性的东西,它只是一个有用的资源。让我们保持更新-毕竟,在数据科学发展和变化的速度下,我们需要一些东西来帮助我们保持所有这些模型及其目的的直线。请在这里的卡牌上留言评论,希望有用!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

example slide from the deck

链接到 deck:https://docs . Google . com/presentation/d/1 HIF rhhr 7k 2 oczso 0 rwet d 8 xxbdubpcpq-djqs 93 eryy/edit?usp =共享

你的个人数据科学项目很无聊。让我们改变这一点。

原文:https://towardsdatascience.com/your-personal-data-science-projects-are-boring-lets-change-that-e356c5949e2f?source=collection_archive---------12-----------------------

如果你没有数据科学家的工作,你应该努力扩大你的投资组合。如今,招聘人员考虑你简历的唯一方式是你是否有经验。因此,如果没有工作经验,作品集是显示你有经验的唯一方法。

如果您正在从事个人数据科学项目,让您的数据科学项目变得有趣实际上是成功的关键。招聘人员无法判断你关于机器学习模型的超参数调整的论文是否真的很棒,所以你需要不同的策略来打动他们。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

你可能有两个问题中的一个,无聊的数据或者你的工作有一个无聊的前端。我已经列出了最好的方法,不仅仅是避免这些问题,而是提升我认为的阴谋的水平。

有趣数据的四个层次

第一级:我将第一级描述为陈腐的数据,这些项目利用了招聘经理(有时甚至是招聘人员)见过的最常见的数据集。这包括像虹膜,泰坦尼克号生存,葡萄酒质量,和 mtcars。如果你的数据集在加州大学欧文分校的机器学习库上,那么我不推荐使用它。使用这些数据集来学习如何做一些事情是很好的,但是如果你正在炫耀你从这些数据集制作的 ML 模型,那么要知道它已经被做了很多次了。

第二层:你选择了一个不太常见的数据集。有很多数据集很容易找到,但不太常见,Kaggle、reddit 和 google 都是找到它们的好地方。如今,NLP 和计算机视觉是数据科学中的“热门”技能(例如,它们被列在许多工作申请中)。选择基于图像或文本(或两者兼有)的数据集是一种很好的升级方式。

第三层:仅仅因为你挑选了不平庸的数据,并不意味着你挑选了一定有趣的东西。能让你更上一层楼的是选择一些大多数人都知道的主题。这可能是运动、电影或书籍。如果这里的数据是“实时的”就更好了,这意味着它是通过 API 实时更新的。

第四级:在这一级,你工作的复杂程度通过用户输入显示出来。例如,你可以对招聘人员自己的推文进行 NLP 分析,或者连接到 Spotify 的 API,展示推荐算法,并为用户创建一个新的播放列表。在数据科学领域,人们通常不是根据你工作的复杂程度来评判你,而是根据你向介绍的人对的理解程度来评判你。当你使用关于你要展示的人的数据时,你会获得更高水平的兴趣和参与度。这并不意味着最好的、最复杂的或最成熟的数据科学项目都有这种数据,但是其他人最感兴趣的项目通常有。

你的项目的前端

既然您已经决定使用更有趣的数据集,那么是时候考虑如何展示它了。如果你不能出示,就没有多少证据证明你做了。在这里,我会把你的个人项目分成两大类。

第一级:你的工作是在一个纸或笔记本或其他一些静态的内容。虽然有很多开创性的 ML 工作以这种形式出现,但它看起来并不有趣,而且经常被忽视。请记住,如果招聘人员看了它,但他们不理解它背后的数学原理,这并不意味着他们会相信你知道你在做什么。让你的准确性指标易于理解(比如平均绝对百分比误差)并建立比较基准是提高你在笔记本/纸上所做工作的好方法。最后,我建议尽可能使用看起来最漂亮的地块。使用 matplotlib 时选择一个样式,考虑使用类似散景的东西。

第二级:我印象深刻的许多项目(以及在黑客马拉松中获胜的项目)都是具有工作前端的项目。我知道数据科学教育经常忽略教你获得项目工作演示的技能,但这些技能是值得花时间学习的。拿起 Django/Flask 是开始制作“成品”项目的最佳方式。

在这两个领域达到更高的“水平”是齐头并进的。为了使用实时用户数据,您需要有一个工作的前端。做更高层次的项目是引起招聘人员和招聘经理兴趣的最好方法。祝你工作顺利!

你在数据科学中的位置

原文:https://towardsdatascience.com/your-place-in-data-science-de4fb405be7?source=collection_archive---------22-----------------------

我最近目睹了一个真实的第三类错误——不是假阳性也不是假阴性——是通过错误的问题和答案得出的真实结果。

我当时正在墨尔本参加一个数据科学活动,演讲者转向观众,问我们当中有多少人是 STEM 毕业生。

几乎每个人都举起了手。没什么好惊讶的。

真正困扰我的是后续…

“有没有 STEAM 的毕业生?”

唯一在空中的手是我自己的。

按照纯粹的逻辑,将类别扩大到包括艺术应该会增加或者至少保持反应不变。然而,自我排斥的普遍错误很有启发性。

作为一个喜欢数学胜于计算、喜欢讲故事胜于编程、喜欢人胜于技术的人,我真的属于数据科学吗?如果是,在哪里?

为了回答这个问题,我转向了我能找到的最好的数据——ka ggle 的 2018 年机器学习和数据科学调查——并开始进行细分。

我根据相似的职责将角色分组,然后,根据我自己的知识和经验,我勾画出一个框架,说明它们是如何组合在一起的。

抛开专业知识的极端——那些与学科无关的人和各种资深参与者——我的分析集中在四个主要群体上;产生数据的支持者、确保数据安全通过的促进者、提炼数据的管理者以及追求数据的探索者

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Method: For each job title (Q6) get share who have each responsibility (Q11), then reduce these proportions down to two principle components, and use K-means to derive six main clusters.

支持者

让我们从支持者开始,你在现场的人和任何数据项目中最基本的利益相关者。这一类别包括业务和营销分析师,但也可以扩展到簿记员、实验室助理或任何在第一线处理数据的人。

从某种意义上来说,这可能意味着每个人,所以从高层次的角度来看,很容易忽略这些人,并将我们的数据视为creation ex nihilo——在开始时,什么都没有,直到有人说‘让数据存在’,数据就存在了,而且很好。

但是,当然,没有什么比这更偏离事实了。所有人类数据都来自经济学的基本力量,然后进化以适应其环境。成功的数据项目从理解上下文开始。

例如,当营销人员开展数字活动时,只有以一种易于在系统中找到的方式来命名和标记它们才有意义。但是在一个团队的环境中,不一致的元数据使得很难聚集许多个体的度量。

在这种情况下,管理集策略可能坚持它们总是通过严格的命名约定包含关键元数据;导致愤怒的工作人员面对同质的竞选名称和频繁的关于偶尔的打字或拼写错误的谈话。

或者,协商的策略可能涉及将元数据保存在一个匹配表中,并建立一个 ID 来连接它,让软件来完成剩下的工作,并允许一些自由来有效地命名事物。

我们如此依赖我们的支持者,让他们参与进来是关键。

主持人

随着数据对我们的运营变得越来越重要——通过集成的报告和分析——一个组织将需要主持人来照看其管道。数据分析师、项目和产品经理,甚至顾问都在这个节点上。

从粗略的估计转向完全由数据驱动是一个巨大的变化。员工需要确定术语,连接不同孤岛上的数据,微调技术并管理您的各种数据实践。所有这些都需要一套独特的技能。

这些专业人士充当你的数据的管理层,这听起来可能很奇怪,直到我们考虑为什么这些人是至关重要的。正如雷·菲斯曼和蒂姆·沙利文的巨著《组织 T4》所指出的,在关于的一章中,什么样的管理对有益…

有效的管理不仅需要有效的信息收集,还需要将事实和数据分发给那些需要它们的人……至少在组织的经济逻辑中,管理者的基本角色在很大程度上是收集和处理要在组织结构图中上下传递的信息,以扩大所有者的控制,并对员工的智力进行筛选和分类。

本质上,你的辅导员的角色是让数据为你服务。

如果没有它们,你首先要做的就是获取数据。

策展人

一旦我们有了数据,特别是当我们有很多数据时,我们需要让它有用。鉴于人类和机器的处理能力有限,我们需要策展人仔细选择重要的东西,并善加利用。

想想数据记者、统计学家甚至软件工程师。无论他们是在估计一个行业的规模,推导一个客户终身价值的模型,还是琢磨一种算法来检测社交媒体情绪的变化,他们的目标本质上都是一样的——驯服复杂性和规模。一个真正专业人士的标志不是他们的正确性或准确性,而是他们的工作如何解决问题。

例如,考虑一个书店老板的挑战,他需要估计他们的货架空间需求。最精确的方法——测量每本书的宽度以得到总数——会耗费大量的时间和资源。

统计学的价值在于能够让事情变得更简单。通过测量一个小的随机书籍样本,并通过简单的平均得出一个’模型书,所有者不再需要关注细节——简单的乘法就足以满足这个和未来的答案。

通过将数据简化为本质,策展人给了我们所需要的东西。

不多也不少。

探险者

最后,从数据分析到数据科学需要能够测试其他一切所基于的假设和理论的人****。为此,我们需要探索者——科学家和研究人员,他们可以质疑我们运作的根本基础。****

正如杰森·福克斯在他那本关于如何领导一项任务的精彩著作的结尾所总结的那样…

对任何企业来说,两个最大的威胁是不确定的未来的无限复杂性,以及每个人都很忙的事实。如此高效…

为了保持相关性,我们必须接受一种开创性的领导形式。这意味着要敢于超越我们默认的、高效的和既定的工作方式,并寻求新的增长途径。

在历史上的不同时期,我们人类相信房价永远不会下跌,奴隶制和贫困是不可避免的,地球是宇宙的中心。在每一个案例中,我们都有现成的数据。

当数据丰富且干净时,最大的挑战是我们的确定性。

一个真正的探险家是破坏性的,这正是我们需要他们的原因。

成为高级玩家

数据科学从根本上讲是关于人的。要做好它,组织需要实地的支持者、管理交付的促进者、展示其价值的策展人以及释放新潜力的探索者。

这有点像一场演唱会需要一个后台工作人员,一个声音和灯光团队,音乐家和导演。让一个人扮演多个角色是可行的,甚至有必要保持在预算之内,但这通常会使后勤工作更加困难。

随着我们每个人在职业生涯中的发展,我们在哪里能够最好地为数据科学服务将始终取决于我们培养的人才、我们掌握的工具以及我们能够为周围团队贡献的价值。

就我自己而言,我不得不接受我永远无法掌握定义我周围团队的技术。但没关系,因为我知道自己的优势。

作为一名数据科学翻译,我仍然在乐队中,但我的角色有点不同。

我把我的声音借给数据,所以它会唱歌。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Method: For each Senior Player, use their nearest (non-senior) neighbor to reclassify.

你的 Python 之旅解码了

原文:https://towardsdatascience.com/your-python-journey-decoded-acc806106947?source=collection_archive---------23-----------------------

成为 Python 编程专家

介绍

Python 是当今发展最快的编程语言。这有点令人惊讶:Python 是一种非常通用的、容易学习的语言。如果你想以编程为职业,掌握这门语言是有意义的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

根据 StackOverflow 开发者调查报告,Python 已经连续三年位居最受欢迎的编程语言的榜首。它是继 Javascript 之后最受欢迎的编程语言,也是继 Rust 之后最受喜爱的编程语言。无论你是初学者还是专业人士,这种语言对所有人来说都是很棒的。

一定要看一看!!
关于 Python 的 16 个最引人入胜的事实

旅程开始了…

一切从基础开始

编程语言的基础是每个人建立坚实基础的必要条件。熟悉这些基本的核心编程概念。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 数字、字符串、字典、列表和元组:
    深入研究这些数据类型。理解这些数据结构的行为以及可以对它们执行的操作,问这样的问题:这种数据类型是可变的还是不可变的?
  • 控制结构(if-else,while loops,for loops):
    使用控制结构,做类似计算单利的小程序,检查一个字符串是回文还是打印素数的程序。
  • 功能:
    功能有助于将程序分解成用于特定任务的小模块。学习关于函数的一切,因为它们几乎无处不在!即使在 python 的第一个程序中,也要使用 print()函数。
  • 面向对象编程: 面向对象编程概念包括抽象、封装、继承、多态。它们是基于真实世界的实体,其中所有的东西都被认为是类和对象。

您旅途中需要的理想 Python 指南

确定你感兴趣的领域

Python 是一种通用编程语言。它被用于各种工作。

  • 数据分析
  • Web 开发
  • 移动应用
  • 数据科学/机器学习
  • 自动化
  • 物联网应用、机器人

这些领域中的每一个都涉及不同的职业机会,所以最好决定你的兴趣所在,并努力掌握那个领域。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

自动化你的日常任务

使用 python 可以自动化许多重复性的任务。开始构建小型应用程序,在其中实现如何自动化任务的想法。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

例如,您可以在 web 上自动搜索特定对象并下载其内容(也称为数据抓取),更新和格式化大型 Excel 文件,发送提醒电子邮件和通知,创建聊天机器人,以及通过 python 脚本自动填写在线表格。

为这些自动化任务构建小脚本将增强您的基本编程逻辑,通过将各部分集成在一起,您将能够构建项目。

数据结构和算法

要成为编程专家,就不能忽视数据结构和算法。这些课题需要研究透彻,深入实施。这些数据结构将伴随你的整个旅程。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

数据结构包括堆栈、队列、列表、树、图等。您需要能够决定哪种数据结构最适合某个问题,只有当您深入研究它时,您才能产生这种能力。

排序算法、搜索算法、动态规划算法、贪婪算法、递归算法、回溯算法等等,这些概念可以增强你解决问题的技能,提高你成为更好的程序员的技能,并使你成为有能力构建最佳解决方案的人。

项目

语法和编程结构只告诉你允许做什么,不允许做什么。制作小程序会告诉你如何处理和解决问题。构建项目并在现实世界中实现你的想法会让你成为编程专家。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

实施项目是成为专家的最佳途径。除此之外别无选择。

有许多框架可以简化项目的构建。对于 web 开发,Django 和 Flask 主要用于创建大型复杂的 web 应用。

用这些 惊人的 Python 项目 成为顶尖的 Python 竞争者

对于一个数据科学家来说,你需要做很多项目。Numpy 和 Pandas 对于对数据执行操作并分析它们以建立机器学习模型非常有用。制作与不同类型学习(监督、非监督和强化学习)相关的项目

尝试建立独特的项目,你可以在现实世界中实施,并在你的投资组合和简历中展示。

用这些 惊人的数据科学项目 离你的梦想更近一步

Python 高级主题

你可能不太了解其中的一些概念。为了精通 python,我列出了一些需要深入研究的高级主题。这些措施如下:

  • 列出理解
  • 词典释义
  • 生成器(基于类和方法)
  • python 中的一切都是对象
  • λ函数
  • 多线程编程
  • pep 8—python 编程风格指南

尾注

现在您已经知道了如何精通 python 的细节,是时候投入一些时间并致力于学习了。学习 python 很有趣,如果你真的很投入,你真的可以走很长的路。

我希望这个导游足智多谋。祝你旅途好运!

向 Python 许下你的承诺

你不可预知的日程可能会破坏你的估计

原文:https://towardsdatascience.com/your-unpredictable-daily-schedule-might-be-wrecking-your-estimates-efa6e37d9d0f?source=collection_archive---------23-----------------------

通过使用真实数据的模拟,我们可以发现不可预测的进度在多大程度上导致了不可预测的项目长度。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

How unpredictable my schedule is from day to day, approximately.

并非所有工作日都是平等的

假设给你一个软件项目,要求你估计一下完成这个项目需要多长时间。

…在你笑完或哭完之后,继续读这篇文章。

假设你做了一些思考,然后决定大约需要 10 个工作日来完成,误差在几天之内。

接下来,您处理该项目,并完成它,但它并没有花费 10 个工作日来完成。花了 8 个!或者,也许花了 13 分钟。或者 20。不是 10 的东西。

为什么?

我是说,你是软件开发之神。你总是知道任何项目所需的确切工作量。而且,很明显,你永远不会有意想不到的困难,不明确的要求,或者精力或士气的变化。所有的随机变量都不在方程中!

(是啊没错。但是,在这里跟我一起滚,让我们假设以上是真的。)

发生了什么事?!让我们原路返回。

大概,你首先在脑子里对工作量做了一个估计。然后你可能把它转换成一个不可约的时间单位,比如说,X 总工作时间。

但是,企业在商业时期需要它。所以你想,“嗯,平均来说,我每天在一个项目上完成 Y 个小时的工作,相差不了几个小时。”所以你用 X 除以 Y,得到 Z 个工作日。

问题就在这里!并非所有工作日都是平等的。它们是随机的。你忘了考虑你每天在一个项目上工作多少小时的方差 。“给或拿几个”。是每天持续接近到 Y 小时的工作时间,还是变化很大,经常是 1 小时,经常是 8 小时,只有在大观中平均达到 4 小时?

但是,这种差异究竟会对整个项目长度的差异产生多大的影响呢?它真的能改变项目的长度吗?

让我们继续忽略影响项目长度的其他随机变量,并特别关注这个“不可预测的计划”变量,因为,我一直在收集关于我的计划的不可预测性的数据…

…我们可以使用这些数据来了解 它对我的估计的不准确性有多大的影响

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

It started off as a promising week…

记录我的数据

在过去的 14 个月里,我记录并分类了我工作中的每一分钟。

下面是一个实际的例子:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

How each minute of my day was spent, on July 16, 2018.

一天被分成几个部分,每个部分的分钟被分成六类。大多数类别对本文并不重要,但我会为感兴趣的人快速解释一下。

如果我在做一些我认为重要的事情,但不是我的“主要项目”,那么我会把这些时间放在“重要的事情”栏里。如果我在为公司做一些事情,比如调查或全体会议,这些会议记录会被添加到“公司”栏。如果时间花在了某人想让我做的事情上,但我认为这是浪费,就像大多数会议一样,这属于“无聊”一类。“午餐”就是午餐。其他任何事情,比如四处走走,暖暖我冰冷的手,或者社交,都属于“其他”范畴。

所以,看起来我在 7 月 16 日有点内向,我的手没有那么冷。很不寻常。

在本文中,我们主要关心的是花费在“主项目”类别中的时间。7 月 16 日,看起来我在我的主要项目上花了大约 225 分钟。

碰巧的是,对我来说,225 分钟非常接近正常。纵观迄今为止我记录的所有日子,我每天花在主要项目上的平均时间是 200 分钟(也就是 3 小时 20 分钟)。

顺便问一下,我说的“主要项目”是什么意思?在我的团队中,每个开发人员通常都有一个指定的“主项目”,他们正在进行这个项目,并且给出了很多评估,但是开发人员通常还有其他的职责,比如生产支持、维护/保养任务、会议等等。

我的时间表的变化

所以,我每天花在主要项目上的平均时间是 200 分钟。

但这是我工作的性质,它实际上从 200 分钟变化很大。它通常不会接近 200 分钟。

可视化这种差异的一个很好的方法是直方图。这是一个条形图,我们把每天放入一个桶中:我们计算我完成 0-50 分钟工作的所有日子,这将是条形图上的 0-50 条。然后我们计算我完成 50-100 分钟工作的天数,这将是条形图的下一个柱。诸如此类。

这是直方图:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

The distribution of how much I work on my main project each day. There are 222 recorded days included in this chart. Each day is placed in a bin (bar) based on the number of minutes I worked on my main project that day. Example: There were 39 recorded days where I worked 0–50 minutes on my main project.

它看起来非常随机,离均匀分布不远。差异很大。但是,你可以在 275 分钟左右看到一个中心趋势,左右两边都有厚尾。我的实际平均值是 200 分钟,而不是 275 分钟,因为左边的尾巴更粗更长,也因为 0-50 棒线中有很多天。

在本文的附录中有更多关于数据是如何收集的细节。

我当然只有自己的数据,但我对其他开发者非常好奇。有没有差异很小的开发人员,他们每天都在他们的主要项目上持续地接近一些平均值?

在我开始收集数据之前,我认为我是那些开发者中的一员。但事实证明,我不是。如果你认为你是,也许你也不是。事实上,也许你的有更多的变化!很难知道。我看了看我周围的开发人员,我怀疑他们中大约一半的人可能有更多不可预知的时间表!

毕竟,我们不都有问题要回答、代码要审查、人要交谈、生产火灾要扑灭吗?

模拟项目长度

好了,精彩的部分来了。

假设给我一个项目,我想了想,决定花 2000 分钟完成。平均来说,我知道我每天在一个主要项目上花 200 分钟,所以这个项目的预期时间是 10 天,可能会有几天的误差,这取决于运气。

我可以用我的数据来模拟这个项目实际上会花多长时间。我可以一遍又一遍地模拟它,看看它与预期长度的差异有多频繁,有多大。

(记住,我们还在“假设”我是上帝开发者,其他所有的随机变量都不存在。)

这里有一个 sim 运行的例子:在项目的第一天,我们从我的数据集中随机选择一天,并取它的“我的主项目的分钟数”。好吧,我们有 150 分钟。我们已经达到 2000 分钟了吗?没有吗?然后继续第二天。同样,我们从我的数据集中随机选择一天。好吧,我们有 300 分钟。我们已经到达 2000 分钟了吗?没有,目前只有 450 个。…等等。最终,在第八天的中途,我们达到了 2000 分钟。因此,在这次模拟运行中,完成项目需要 7.5 天(我们只需要第 8 天的一半时间)。

这只是一次运行,但我们真正想做的是,在柱状图中记录我们在“第 8 天”完成的工作,然后再进行一百万次模拟运行,并在柱状图中记录每个结果。

希望你能看到为什么这个模拟有效的直觉:我一天做多少“主要项目”工作是一个随机变量,但我收集的数据捕捉到了那个随机变量的分布。如果我有很多“0 分钟”的日子,那么我的数据集将反映这一点,因此模拟将经常随机选择 0 分钟的日子。如果我收集的日期非常一致,那么模拟将随机选择一致的日期。

模拟结果

无论如何,这是使用我的不可预测的时间表模拟这个 10 天项目的结果直方图,并找出实际上需要多长时间:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

The distribution of 1 million simulated runs of a 10-day project. The runs simulate the effect of the variance of my daily schedule, and so they vary significantly from 10 days. How to read the graph: the bar labelled “13” has height “8.4%”, which means that 8.4% of the runs finished during day 13 of the project.

太棒了。对吗?这里有一些有趣的观察例子。

  • 60.1%的运行与预期的 10 天相差 1 天或更多天。
  • 95%的运行需要 7.0 到 14.5 天才能完成。

最后一个观察也被称为我的项目长度的“双尾 95%置信区间”。

初始反应

所以,你惊讶吗?或者你觉得它看起来合适吗?

对我来说,我很惊讶。我确实认为项目长度的差异很大。甚至比这还宽。然而,我主要考虑的是诸如“意想不到的困难”、“不明确的需求”之类的差异来源。我从来没有想过“不可预测的时间表”有什么关系。

然而,项目差异已经如此巨大*,还不包括那些明显的其他差异来源!*如果我们能够将这些也包括在内,这个图表将会更宽!

许多需要报告估计值的软件开发人员宁愿不报告预期的平均长度(10 天),而宁愿给出 95%的置信区间(7.0 到 14.5 天)。上面的图表和观察可能证明了为什么:10 天的估计真的不能告诉我们太多,如果在 60.1%的情况下误差超过 1.0 天!也许这些开发人员对软件开发的巨大随机性有很好的直觉。

但是只要看看那个 95%置信区间的大小,就是 7.0 到 14.5 天的工作!如果你给出这样一个估计范围,有人会给你脸色看。我想很多人会对第二个数字是第一个数字的两倍感到震惊,这看起来像是 100%的错误,或者类似的事情。他们没有想象钟形曲线的形状和尾部。

也许这就是为什么许多软件开发人员更喜欢报告时间间隔的最右端(14.5 天)。真相可能很可怕。

然而,实际上,考虑到所有其他的随机变量,这个图表可能会更宽。也许宽得离谱…这让我觉得根本没有估计这回事,真的…

这让我想到,没有“相当确定一个项目会在 X 日期前完成”这样的事情。只有设定一个合理的限度,并在此之前不断努力。如果你在那之前完成了,很好,你很幸运。如果你没有,那很正常,当你达到协商的极限时,试着让某些事情合理地工作……因为否则,你可能会比你想要的工作更长的时间。

这只是我的反应,也许你的不同!想想吧!

一个重要的外卖

我认为这个实验很好地展示了一件重要的事情。

当一个项目远离它的估计时,它经常被归咎于开发人员的估计技能——如果他们在估计方面做得更好,他们就会更接近于预测真正的完成日期。

但是在这个实验中,我们完全不考虑评估技巧。我们把所有的技能都去掉了!我们保证以分钟为单位的实际项目长度是已知的和恒定的。 2000 分钟。然而,我们可以看到,无论如何,误差会很大!因为软件开发存在固有的随机性

当你掷出一个六面骰子,你给出的估计是 3.5,最后你掷出的是 6,这并不意味着你的估计很差。你估计得很完美,3.5 真的是平均期望值。在滚动六面骰子的过程中存在固有的随机性。你应该责怪固有的随机性。

你可以在“你应该知道骰子会那样反弹,我没有看到随机性,只是无知”之后声称“你应该知道这个项目会那样,我没有看到随机性,只是无知”。这两种说法都同样不明智。

即使是软件开发之神也不能保证实际的项目长度与预期的项目长度相匹配。软件开发存在固有的随机性。对于许多随机变量来说,很难证明随机性是与生俱来且不可消除的,尽管几乎所有软件开发人员都知道强烈的随机性存在。但是“不可预测的进度”这个随机变量是一个非常有用的研究对象,因为它是如此清晰可见,如此容易显示它对项目长度的影响。

估计技能可能确实存在,但它只是许多随机变量中的一个,当项目的实际长度与估计的不同时,没有理由比其他随机变量更多地指责估计技能。

…另一方面,有时人们说“估计技能”,他们实际上是在谈论估计项目长度的方差——估计 95%置信区间的右端。我认为谈论这个更合理。我们应该都在学习并努力真正擅长理解软件开发中有多少随机性。毕竟,这正是这个实验想要做的!对一个特定的随机变量会给项目长度增加多少变化有一个相当好的感觉。

(顺便说一句,我怀疑总的来说,大多数关于“估计”的分歧实际上是由估计“平均预期长度”和“95%置信区间的右端”之间的混淆引起的。每次你和别人讨论评估的时候,我建议你弄清楚你们是否在谈论同样的事情!)

好吧,本文的其余部分只是这些模拟更有趣,最终,慢慢远离科学领域。

不同项目长度的相同模拟

好了,我们用我的进度数据模拟了一个 10 天预期长度的项目。…让我们也在其他项目长度上试试吧!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

咻!那是没有理由的!

再一次,这些都忽略了所有的随机变量,除了我收集的不可预测的日程数据。

我喜欢 20 天的项目结果:对于 4 周预期长度的项目,3-5 周是一个容易记住的范围。

为更一致的时间表伪造数据

只是为了好玩,让我们试着为一个开发人员构建一些假数据,这个开发人员的进度变化比我少。

为此,我从我的 222 个数据点中去掉了 70 个更极端的数据点。我没有使用数学策略,我只是试图大大减少直方图上的粗左尾,并使它看起来更像一个钟形曲线形状。这是假数据的直方图。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

The distribution of all of the days in my fake dataset. The 152 days were categorized into bins (bars) based on the number of minutes “worked on main project” that day.

希望这看起来足够合理。它更像一个钟形曲线,而不是我的真实数据,它看起来几乎像一个均匀分布(骰子滚动)。

现在,让我们再次对一个为期 10 天的项目进行 100 万次模拟,使用更加一致的假数据。结果如下:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

The distribution of 1 million simulated runs of a 10-day project. Uses fake schedule data instead of my real schedule data. The runs simulate the effect of a fairly consistent schedule. The project length is still has fairly high variance, but less than my real data.

以下是这次的一些观察结果:

  • 41.7%的运行与预期相差 1 天或更多天(而不是我的 60.1%)。
  • 95%置信区间:8.0 到 12.9 天(我的是 7.0 到 14.5 天)。

所以,不出所料,差异变小了,但是比我在开始这个实验之前预期的要大。

请记住,在看图表时,少于 2 根棒线几乎是不可能的。这是因为,按照我的定义,一个“10 天项目”平均需要 10 天的时间。那正好在第 10 天和第 11 天的边界上。因此,即使只有一点点差异,一半的跑步会在第 10 天完成,另一半可能会在第 11 天完成。

所以真的,如果你考虑图表的时间足够长,你可能会开始更喜欢考虑 95%的置信区间。

加入其他随机变量

请记住,项目长度受到许多随机变量的影响,这些变量会导致方差,但是整篇文章中的所有上述模拟都只考虑了“不可预测的进度”随机变量。

但只是为了好玩,我们可以猜测一下其他随机变量对项目长度的影响程度,然后再运行一次模拟,并加入随机性!

让我们确定一些其他随机变量,并发明它们对项目长度增加/减少多少:

  • 意想不到的困难:有时项目会因为意想不到的技术困难或意想不到的简单部分而延长或缩短。比方说,33%的项目需要 20%的时间,33%的项目需要 20%的时间。这当然是保守的,我们都有过这样的项目,我们意识到它们比我们想象的要难两倍……但是不管怎样。
  • 不明确或变化的需求:有时项目需要更长或更短的时间,因为这些需求是需要的,但直到项目进行期间才显示出来。比方说,33%的项目需要 20%的时间,33%的项目需要 20%的时间。也大概保守?
  • 精力和士气:有时一个项目特别乏味,或者你的生活中还有其他事情要做。或者有时候你超级投入。比方说,33%的项目需要 10%的时间,33%的项目需要 10%的时间。也可能是保守的——就我个人而言,当开放的办公室很安静,我处于最佳状态,在一天结束前我没有十件事情要记住,我工作得非常快…
  • 估算技巧:每当我们猜测我们正在进行一个 2000 分钟的项目时,我们并不知道。我们猜测,我们没有完美的估计技巧。我们实际上可能正在进行一个平均需要 1700 分钟、2300 分钟或其他时间的项目。所以对于 33%的项目,让我们多加 20%的工作量,对于 33%的项目,让我们减去 20%的工作量。不知道这是否保守。

所以现在,对于每次运行,我们仍然从 2000 分钟(整整 10 天)开始,但是我们将计算上面的随机变量增加和减少,并修改这 2000 分钟。然后我们将通过抽样我的进度数据来模拟项目的 1/2/3…日,就像之前一样。

这是:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

The distribution of 1 million simulated runs of a 10-day project. Uses my real schedule data, but also randomly modifies the project length using make-believe formulas to represent unexpected difficulties, changing requirements, energy/morale, and estimation error.

  • 78.0%的运行与预期相差 1 天或更多(而不是最初的 60.1%)。
  • 95%置信区间:3.9 到 17.5 天(原来是 7.0 到 14.5 天)。

许多软件开发人员建议,如果你被要求在一个项目中选择一个日期并承诺它,那么:你应该估计预期的平均长度,并将其翻倍,这就是你的承诺日期。看上面的图表,这似乎是一个相当不错的选择。虽然,我认为大多数开发者倾向于低估预期的平均值…所以那些开发者可能应该把它翻三倍。

附录:数据收集规则

以下是我用来记录数据并选择将其纳入本实验的一些重要规则:

  • 如果我有一天意外休假,那么这仍然被记录为“这一天我的主要项目工作了 0 分钟”,并且仍然包含在这个数据集中。比如说,病假。在我的数据集中的 25 个“零分钟”的日子里,大概只有 10 天是这样的(其他的大概是我被打扰太多的日子)。
  • 如果我休了一天计划的假,就像如果我知道我在最后一次给出项目的估计/提交日期时休了那一天,那一天根本不会被记录,也不会包含在这个数据集中。
  • 有一小段时间,我没有被分配一个“主要项目”,我只是在项目之间,做任何事情。这些天不包括在这个数据集中(我确实把它们记录在某个地方,以防我将来需要它们)。这种情况不常发生。
  • 有一个大型项目明显是我参与的其他主要项目的异常值,所以这个时间段没有包含在这个数据集中。这是一个我充满热情的项目,并且有严格的商业驱动的最后期限。如果我把它包括在内,我的时间表的变化会更加极端,会进一步证明我的观点,但这感觉像是作弊。

严格地说,要做这样的统计研究,每个数据点都应该独立于其他数据点。我的数据实际上可能不是完全独立的——肯定有连续几天重复出现的中断。但是,我认为它足够接近,你可以看一看散点图,给它一个独立的眼球测试:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Every day included in my dataset, in the actual order they occurred. This is supposed to show that each data point doesn’t affect the adjacent data points to the left and right, much, or similar patterns.

相当随机。我怀疑,无论如何,对于大多数关于现实生活的统计研究来说,独立性很少能完美实现。

尤瓦尔·诺亚·哈拉里和费·李非谈人工智能:影响我们所有人的四个问题

原文:https://towardsdatascience.com/yuval-noah-harari-and-fei-fei-li-on-ai-90d9a8686cc5?source=collection_archive---------5-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

最近在斯坦福大学举行的一场对话中,两个人工智能巨头——尤瓦尔·诺亚·哈拉里费·李非之间产生的问题多于答案。《连线》杂志主编尼古拉斯·汤普森主持了这场 90 分钟的谈话,纪念礼堂坐满了 1705 个座位。

目的是讨论人工智能将如何影响我们的未来。

哈拉里是耶路撒冷希伯来大学的历史学教授,曾两次获得波隆斯基创造力和独创性奖,是国际畅销书《智人:人类简史》和《德乌斯人:明日简史》的作者

李是著名的人工智能研究员、工程师和计算机科学教授。作为当今人工智能领域最多产的学者之一,她在深度学习和计算机视觉方面的工作被世界各地的公司和研究小组所采用。她最为人所知的角色是创建了 ImageNet,这是一个拥有 1400 万张图像的手绘数据集,广泛用于计算机视觉应用。

他们触及了一些关于人工智能和技术的最重要的话题,包括我们是否还能相信人类的能动性;AI 时代的民主是什么样子;以及 AI 最终会黑掉还是增强人类。

李和哈拉里没有让我们陷入停滞不前的话题,而是让我们思考许多重要问题,这些问题体现了人工智能技术对个人的影响,包括自由和选择,以及人工智能对我们世界的法律、经济和政治体系的影响。

这四个相关的问题试图帮助理清人工智能对个人的影响:

  • 重新思考自由意志: 如果你不能信任顾客,如果你不能信任投票人,如果你不能信任自己的感情,你信任谁?—尤瓦尔·诺亚·哈拉里
  • 爱情与 AI 的极限: 爱情是可黑客攻击的吗?—费-李非
  • 将自我意识外包给 AI: 生活在一个从算法中学习关于自己如此重要的东西的世界里,意味着什么?尤瓦尔·诺亚·哈拉里
  • 人工智能以人为中心: 我们能否以一种以人为中心的方式来重新构建人工智能和技术的教育、研究和对话?—费-李非

像许多看到它的人一样,我带着一种紧迫感离开了演讲。这些是人工智能从业者、决策者和公众应该思考的尖锐问题。所有这些都是人工智能辩论的重要组成部分。

但是我们需要迅速行动。“工程师不会等的。而且就算工程师愿意等,工程师背后的投资人也不会等。所以,这意味着我们没有很多时间,”哈拉里警告说。

同意。

反思自由意志

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

“如果你不能相信顾客,如果你不能相信投票者,如果你不能相信你的感觉,你相信谁?”—尤瓦尔·诺亚·哈拉里

讨论跳到了自由意志和代理这一深刻而困难的话题,完全跳过了表面问题。

质疑自由意志有效性的争论初看起来像是一种无关的理论努力——完全超出了工程学科的范围。事实上,许多被讨论的挑战又回到了哲学家们争论了几千年的话题。

只是这一次,有了一个全新的角度:技术已经发展到了我们许多根深蒂固的信念受到挑战的地步,正如哈拉里指出的,“不是被哲学思想,而是被实用技术。”

十年来,哈拉里一直在批评自由意志和个人代理的核心概念。

他不是一个人。由于测量神经活动技术的进步,许多神经心理学实验已经对自由意志发起了新的攻击。

这导致许多顶级神经科学家怀疑我们决策的自由。

“我们只是在大脑地图中处理信息,这些信息机械地引发了我们的行为。因此,我们认为我们有意识地决定和做出的决定,实际上只是一种幻觉,可以简化为我们大脑告诉我们要做的事情。”——汉娜·克里奇洛,普林斯顿杰出的神经科学家,《命运科学》的作者

但是,虽然科学仍在不断成熟,但我们的自由意志被操纵的后果——哈拉里称之为“黑客人类”——给我们的社会带来了巨大的风险。

一个组织可能会努力“创造一种算法,它比我更了解我自己,因此可以操纵我、增强我或取代我。”

这将是我们的挑战,不仅要决定这些操作、增强或替换应该是什么,而且首先要决定由谁来做。

我们可能想知道我们想如何选择人类增强的可能性。

“谁来决定什么是好的增强,什么是坏的增强?那么,如果这是一个非常深刻的伦理和哲学问题,哲学家们已经争论了几千年,你该如何决定增强什么呢?我们需要提升的优秀品质有哪些?”哈拉里问道。

对我们许多人来说,“回归传统的人文主义思想”是很自然的,这种思想优先考虑个人选择和自由。然而,他警告说:“当有了大规模黑人类的技术时,这些都不起作用。”

如果人类的能动性和自由意志的想法正在被争论,那就很难决定如何决定技术应该被允许做什么。这也影响到我们生活的各个方面——我们选择做什么,我们可能购买什么,我们可能去哪里,以及我们可能如何投票。现在还不清楚到底应该由谁来决定技术的范围。

由于生物技术(B)、计算能力©和数据分析(D)技术的共同发展,这种模糊性让我们直面一个重大问题。根据哈拉里的说法,这三样东西已经可以用来黑人类了(HH)。

对于我们当中有数学头脑的人来说,他将其总结为 B * C * D = HH。

借助现代技术,黑客攻击人类可能会成为一种非常现实的可能性。

“这是开启对话的时刻,开启对这些问题的研究,”李补充道。

如果操纵存在,政府、商业和个人自由的系统如何仍然合法?

爱与人工智能的极限

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

“爱情可以被黑客攻击吗?”—费-李非

如果人类可以被“入侵”,我们的行为和信仰可以被操纵,那么这种微妙控制的极限是什么?

我们可能会接受我们可能会在小事情中被操纵——当走进面包店时,谁不会突然渴望一个肉桂面包呢?—但我们控制行为的方式肯定是有限度的。

在这一点上,似乎没有人确切知道这些操纵的极限可能是什么。

然而,操纵的策略当然众所周知的。罪犯和使用它们的骗子同样因其大胆而受到尊敬,也因其贪婪而受到媒体的唾骂,他们的故事在电影、文学和电视中被讲述。

总的来说,我们不相信自己容易被操纵。相反,我们认为那些被操纵的人是少数愚蠢的人。哈拉里总结道:“最容易被操纵的人是那些相信自由意志的人,因为他们认为自己不能被操纵。”

将爱情武器化作为一种潜在的操控手段不仅是可能的,而且是有据可查的。这个主题与浪漫骗局的悠久历史是一致的;我们很多人都听说过“异地恋者需要一大笔钱来应付一些小的紧急情况。”爱情骗局是所有类型中最“成功”的,去年美国人为此花费了 1 . 43 亿美元。

哥伦比亚心理学家 Maria Konnikova 也是《信心游戏》的作者,她提醒我们操纵“首先是通过情感来完成的”这让我们处于一种脆弱的状态,因为“感觉,至少在那一刻,取代了思考。”

毕竟,操纵系统——不管是不是人工智能——不一定要经历爱才能操纵人类与他人联系和亲密的能力。哈拉里解释说:“操纵爱情和真正感受爱情是两码事。”。

在不降低人类爱的重要性的情况下,生物和神经化学成分已经被很好地研究过了。

考虑到我们每个人提供的信息量越来越大,我们对自身生物学的了解越来越深入,再加上分析大量数据的成本更低,这种类型的更昂贵的骗局的可能性不容忽视。这些骗局利用了孤独、孤立和渴望与他人联系等非常真实、非常人性化的情感。

我们都容易受到这种操纵。“我们想要相信他们告诉我们的,”Konnikova 提醒我们。

很少有人对数据科学和技术进步的极限有明确的看法。李是乐观的。“我确实想确保我们认识到,我们离那个目标非常、非常、非常远。这项技术还很不成熟。”然而,赌注越来越高,如果目前是这种情况,这种情况会持续多久?

正如李所评论的:“我认为你真的揭示了这场潜在危机的紧迫性、重要性和规模。但我认为,面对这种情况,我们需要采取行动。”

将自我意识外包给 AI

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

“生活在这样一个世界里,你从一个算法中了解到关于你自己如此重要的事情,这意味着什么?”—尤瓦尔·诺亚·哈拉里

几千年来,人类一直在外包我们大脑做的一些事情。写作让我们能够保持精确的记录,而不是依赖我们的记忆。导航从神话和星图发展到地图和 GPS。

但是有了人工智能,我们有了一个彻底的机会:如果自我意识是人类将外包给技术的事情之一,会怎么样?

哈拉里讲述了一个关于他自我发现之旅的个人故事,承认他直到二十多岁才意识到自己是同性恋。这一发现引发了一个发人深省的时刻,表明我们都在努力看清自己的盲点。“我 21 岁才知道自己是同性恋。我回头看那个时候,我不知道是 15 岁还是 17 岁,这应该是很明显的。”

哈拉里继续说道:“现在在 AI 中,即使是今天非常愚蠢的 AI,也不会错过它。”

这开启了一个非常有趣的新可能性:算法可能知道我们还不知道的事情吗?

在人工智能的历史上,这几十年来一直是一个诱人的想法。

“我把我的钱押在一个赌注上,它说我们制造机器人的原因与我们制造其他种类的科学和艺术的原因相同,是为了获得巨大的满足感,了解一些我们以前不知道的关于我们自己的重要事情,让我们对自己的怀疑和猜测得到证实或被抛弃——简单地说,就是以一种新的方式看待我们自己。”著名人工智能历史学家、《会思考的机器》一书的作者帕米拉·麦科达克

甚至在今天,使用我们提供的数据,可能有可能诊断出无数不同的病症,从抑郁症到癌症,更早、更有意义地影响我们的生活。

除了我们的身体和精神健康之外,我们现在提供的数据还能让大规模分析揭示出什么,这是一种挑衅。毕竟,不管文化、世代和地位如何,人类经历的某些方面是不变的。

随着分析方法变得越来越先进,可用数据越来越多,我们可以学习哪些经验,与我们的朋友、邻居、生活在世界各地的人们分享,他们的生活与我们的生活几乎不同?

然而,仍然存在两个挑战。

给一个算法,即使是一个非常聪明的算法,一个给我们关于我们自己的信息的权限是有危险的。尤其是当它使质疑和验证变得困难的时候。

“一旦你把某样东西装扮成一种算法或一点人工智能,它就会呈现出一种权威的姿态,让人很难反驳。”— 汉娜·弗莱,受人尊敬的 UCL 数学家,《你好,世界》的作者。

如果一种算法预测我们患有癌症,我们可以进行测试,但如果它告诉我们一些更模糊的东西,比如说我们是否受欢迎,我们可能会倾向于认为这是真的,因为我们没有办法验证它。这反过来可能会导致我们做出不同的决定,因为我们错误地相信了一个潜在的错误算法。

Fry 指出,我们可能会相信算法所说的话,以至于它推翻了我们的个人判断。

她讲述了一车游客的故事,“他们试图开车涉水到达他们真正感兴趣的目的地。他们没有否决航行,必须获救。”

如果我们的自我认知被扭曲了,谁来拯救我们呢?

此外,使用数据与他人和我们自己的经历联系起来,与让算法深入了解我们的个人信息是另一回事,这些信息可能会与其他参与者而不是我们分享。

“如果算法不把信息分享给你,却把信息分享给广告主,会怎么样?还是与政府合作?”哈拉里疑惑道。

即使是现在,我们在社交媒体上的信息也被用来为我们提供“相关”广告,我们才刚刚开始发现是谁付钱让我们看这些广告。

“这是一个很好的例子,因为这已经发生了,”哈拉里说。

人工智能已经被用来预测我们是否会辞职或者与我们的另一半分手。两者都是非常个人化的决定,我们很多人都不愿意让私人朋友知道,更不用说非个人的组织了。

李怀疑一个算法是否能够通过这种方式超越我们自己的自省。“我不太确定!”她说,这给了我们希望,趁还有时间,我们也许能够深思熟虑地应对其中一些挑战。

“人类从火开始创造的任何技术都是一把双刃剑。因此,它可以给生活、工作和社会带来改善,但它也可能带来危险,人工智能就有这些危险,”她提醒我们。

人类处于人工智能的中心

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

“我们能否以一种以人为本的方式,重新构建人工智能和技术的教育、研究和对话?”—费-李非

随着讨论贯穿于如此多的相关学科,李为我们提供了一个灵巧的,尽管是开放式的建议,以开始解决我们面临的许多问题:以人为中心的方式重新构建人工智能。

李在斯坦福大学带着一个伟大的目标开始了变革,这个目标是为所有组织提供一个功能模板,无论其规模和来源如何。

她建立了斯坦福以人为中心的人工智能研究所,该研究所将汇集来自许多不同领域的个人进行新的合作对话。

该协会有三个宗旨:

  1. 深思熟虑我们希望人工智能是什么样的;
  2. 鼓励多学科研究;和
  3. 专注于人性的提升和发展。

“我们今天不一定会找到解决方案,但在下一章,我们可以让人文学家,哲学家,历史学家,政治学家,经济学家,伦理学家,法律学者,神经科学家,心理学家和更多其他学科参与人工智能的研究和发展,”李说。

这一建议源于研究人员和实践者在获得和保持公众信任、提供积极的用户体验以及用深思熟虑的政策建议取代人工智能中的恐惧传播方面面临的挑战。

在人工智能社区内定义明确的目标是朝着我们可以团结起来的中心迈出的重要一步,各个学科之间的交叉正在获得越来越多的牵引力。

“这正是为什么这是一个时刻,我们认为人工智能的新篇章需要由人文学家,社会科学家,商业领袖,民间社会,政府的交叉努力来书写,坐在同一张桌子上进行多边和合作的对话,”李强调。

但是我们来到了一个十字路口。

事实上,我们今天面临的许多伦理问题都是工程师决策的结果:“快速移动并打破东西”的风气最终导致了东西的真正打破。

在技术领域工作会让创造者看不到他们所创造的技术的效果。有无数无意的结果:大型在线零售商排挤小企业,改变我们城市的构成,仅举一例。

我们如何平衡创新的欲望和随之而来的风险?当公司在没有减速的情况下取得成功时,我们应该采取措施抑制它们的增长吗?

李对将伦理纳入软件学科持乐观态度。

“以人为中心的人工智能需要由下一代技术专家编写,他们上过像[斯坦福政治学教授]罗布[赖克]的[计算机、伦理和公共政策]这样的课程,思考伦理含义和人类福祉。"

不管这个目标有多简单,人工智能社区的许多人可能会想,这是否也是最具挑战性的。

“作为技术人员,我们不可能独自完成这项工作,”李警告说。

我们如何说服在人工智能领域工作的高度技术化的人们,那些可能不想关心他们工作的社会影响等模糊主题的人,他们应该关心这些事情?此外,这应该是期望吗?我们是否需要对整个行业的每个角色都进行道德规范?

李就不那么肯定了。

“我们中的一些人甚至不应该这样做。伦理学家和哲学家应该参与进来,在这些问题上与我们合作。”

尽管在该行业工作的极少数有远见的人会忽视它的重要性,但它所要求的范式转变不应被低估。历史上,技术社区对任何非技术或与技术相关的主题都有很大的不屑。人工智能社区会尊重这些新观点的重要性吗?或者我们会对任何不懂反向传播的人睁一只眼闭一只眼吗?

当被问及哈拉里的作品是否在她的教学大纲中时,李甚至打趣道:“对不起,我的没有。我教的是硬核深度学习。他的书没有方程式。”

这场对话提出了一些重要的新问题,这些问题涉及人工智能在未来几十年可能会以何种方式影响我们个人,这是非常及时的。为了减少在没有很好地理解操纵可能性的限制的情况下“黑客攻击人类”的可能性,哈拉里敦促我们专注于自我意识:

“了解你自己是所有哲学书籍中最古老的建议。我们从苏格拉底、孔子和佛陀那里听说过:了解你自己。但是有一点不同,那就是现在你有了竞争…你在和这些大公司和政府竞争。如果他们比你更了解你自己,游戏就结束了。”

但正如李所建议的,合作是必要的。这项工作正在世界各地的许多组织中开始成形。

哈拉里和李之间的对话标志着人工智能中一种新型工作的开始。

“我们开启了人文主义者和技术专家之间的对话,我希望看到更多这样的对话,”她说。

我也是。

关于作者:

Briana Brownell 是一名数据科学家,后来成为科技企业家、未来学家和创新者。目前,Briana 是 PureStrategy.ai 的创始人兼首席执行官,pure strategy . AI 是一家技术公司,旨在创建人工智能同事并将其部署到企业中,以便员工可以更快地做出数据驱动的决策。作为一名频繁的主题演讲人、专家和作家,她以让非专家也能接触到高度技术性的话题而闻名,同时也领导了一场关于人工智能背后的科学的深思熟虑的技术讨论。

更多请看 这里*这里 这里 *

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值