TowardsDataScience 博客中文翻译 2020(八百七十三)

原文:TowardsDataScience Blog

协议:CC BY-NC-SA 4.0

机器学习算法对缺失值或异常值的鲁棒性

原文:https://towardsdatascience.com/the-robustness-of-machine-learning-algorithms-against-missing-or-abnormal-values-ec3222379905?source=collection_archive---------53-----------------------

让我们来探索经典机器学习算法在面对异常数据时的表现,以及标准插补方法提供的好处。

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

Gabriel Crismariu 在 Unsplash 上拍摄的照片

缺少值,这是每个数据科学家第一次探索数据集时的诅咒!

是的,现实生活通常与教程相去甚远,在教程中,每一列都是干净的,充满了格式正确的值,有良好的文档记录,离群值很明显,相互关系触手可及。

缺失值:NaN,null,empty," ",凡是你能想到的!从两个角度来看,它们确实是建模过程中的一个关键问题:

  • 从纯数学的角度来看,大多数算法依赖于线性代数,向量或矩阵中的一个缺失值会使整个计算过程崩溃。
    让我们用一个简单的向量乘法来想象这种效果:

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

线性代数…有或没有缺失值

  • 从建模的角度来看,缺失的值代表现实的一部分,它是不可访问的、隐藏的。想象一下,作为一名调查人员,得到经过消毒的文件:你知道你不是什么都知道!

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

来源:维基百科(模糊缩小)

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

至少,你什么都不知道…

在工业上看起来怎么样?

从我的经验来看,诀窍是坏了的传感器不会把 NaNs 送回给你;那太容易被发现了!更有可能的是,您将获得零、有偏差的或随机的值。很棒不是吗!?

有一段时间,我担心在我处理的数据中加入异常值。当你探索 5000 万行 x 300 个特征时,这比在下面的图片中找到长颈鹿或豹子要困难得多:

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

艺术狼提供——消失行动:自然中的伪装

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

艺术狼提供——消失行动:自然中的伪装

在某个时候,我决定进行自己的测试,并评估我得到的异常值的比率(总是小于 1%,大多数低于 0.5%),最重要的是,这种现象如何影响我正在使用的算法的性能。

该测试背后的原理非常简单,与通常的过程相反:

正常情况下,一个理智的数据科学家会试图估算缺失或异常值,以提高其模型的准确性;我选择了反过来做!

首先,我会根据一个完美的数据集来评估经典机器学习算法*的性能。而且,我会逐步增加引入训练集的异常值的比率,以测量准确性的变化。

(* Lasso、KNeighbors、随机森林和梯度增强树回归变量)

并且,当我处于“基准模式”时,我决定反转(再次!)的过程,并比较标准插补技术带来的好处:

  • 简单估算器:缺失值将由一个常量值填充,该常量值是预先确定的或从特征的统计数据(平均值、中值、众数)中得出。
    注意:如果你对数据集的正态性没有信心,并且可能存在一些重要的异常值,我建议使用中位数而不是平均值,因为平均值对异常值不太敏感(见下面的例子)。

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

  • 迭代估算器:每个要素都将被视为数据集中所有其他要素的函数。然后回归器将根据所有其他特征来确定缺失值。这依赖于变量之间全局一致性的假设。

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

  • KNNImputer :该插补算法基于 k 近邻法来识别数据集中的不同聚类,并在需要时使用聚类的特征来插补缺失值。

[## 6.4.缺失值的插补-sci kit-学习 0.23.1 文件

由于各种原因,许多真实世界的数据集包含缺失值,通常编码为空白、NaNs 或其他…

scikit-learn.org](https://scikit-learn.org/stable/modules/impute.html) 外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

渴望了解更多信息?让我们开始吧!

像往常一样,我们将从创建一个虚拟的“工业”数据集开始。传感器、探头、实验室测量值通常不以 0 为中心,因此我们将增加它们的值以符合现实情况:在下面的示例中,范围在 10 和 100 之间:

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

数据帧样本

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

数据框架的基本统计

我们随机定义训练集和测试集,并记录算法在测试集中的初始性能。

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

我们可以清楚地看到算法之间的初始性能差异

一旦定义了计算方法,我们将并行运行插补方法,以获得最佳的比较结果。每个循环如下:

  • 我们将原始的 X_train 数据帧复制到 X_train_NaN 中,为其估算一个定义的 NaN 比率
  • 我们首先将所有 NaN 替换为 0,并创建最坏的情况
  • 我们用这个 X_train_NaN 数据集训练每个模型,并根据原始的 X_test 测量其性能。这将提供异常值对算法的影响
  • 最后,我们用标准插补技术(平均值、迭代或 KNN 方法)替换所有的 nan,并再次检查回归变量的性能。

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

一张 GIF 抵得上千言万语:-)

当整个过程结束后,我们可以比较每个模型的性能:

  • 使用初始和清洁的 X_train 套件进行训练
  • 用越来越多的0进行训练
  • 接受过标准插补技术的培训

下图显示了初始性能和以 0 的递增比率训练的模型之间的差异:

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

我们可以立即看到,一旦引入第一个异常值,Lasso 的性能就完全崩溃了:0,5%导致性能下降 75%。这是由于其模型的线性结构(=方程)。

如果我们排除 Lasso 回归器,我们可以注意到系综树方法(随机森林和梯度推进)非常稳健,并且优于 KN 回归器:

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

我们现在可以关注三种插补方法的性能。

当引入 10%的异常值时,随机预测的性能下降了 8.8%。简单的、迭代的和 KNN 估算法使其在相同的 NaNs 比率下回到 1%以下:

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

当涉及到梯度推进回归变量时,KNN 估算器获得“最低”性能,在性能下降中回到 1%。

引入 10%的 NaNs 后,均值和迭代估算值带来了接近 0.3%的性能,这确实非常好!

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

像往常一样,这只是评估异常值对机器学习算法的影响的一种方式,不同的用例和假设可能会有很大的不同。

[## 皮埃尔-路易·贝斯康德关于媒介的文章

数据科学、机器学习和创新

pl-bescond.medium.com](https://pl-bescond.medium.com/pierre-louis-besconds-articles-on-medium-f6632a6895ad)

人工智能在基于网络的 ADA 和 WCAG 合规中的作用

原文:https://towardsdatascience.com/the-role-of-ai-in-web-based-ada-and-wcag-compliance-4fc09e69f416?source=collection_archive---------42-----------------------

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

由于 1999 年发布的 W3C 网页可访问性倡议及其 WCAG 1.0(网页内容可访问性指南)( 2008 年被 WCAG 2.0 取代), 20 多年来,残疾人网站可访问性指南已经有了雏形。

然而,与 2018 年 H1 奥运会相比,2019 年上半年的网站无障碍诉讼增加了 51.7% ,预计 2019 年 pace 将创下历史新高,达到 3200 多起,远远超过 2018 年的 2285 起。

虽然我们在等待 2019 年的完整数字,但事实仍然是,在《美国残疾人法案》(ADA)第三章以及延伸到在线财产的类似州和地方法律的支持下,网站可访问性诉讼出现了前所未有的增长。更重要的是,形势不会很快缓和下来。

事情到底有多糟?

如果上面提到的数字没有打动(或吓到)你,我们只能说有人积极寻找网站并起诉他们。诉讼趋势催生了术语“系列原告”,掠夺性的律师提起诉讼,只是为了解决问题。他们获得了巨额的法律费用,而原告只能得到和解的一小部分。

这在道德上是否正确无关紧要。当涉及到定义什么是无障碍网站时,当前的法律留下了足够多的灰色区域,以至于 WWW 的很大一部分是这种诉讼的温床。

事实上,accessiBe 最近对 1000 万个网页进行分析后得出的数据显示,全球 ADA 和 WCAG 2.1 合规性水平非常低。一些关键要点包括:

● 98%的网站未能满足与菜单相关的要求;

● 52%的网站未能为图片实现适当的 alt 属性(实际上被认为是一个不错的比例);

● 89%的网站未能达到弹出窗口的最低合规级别(考虑到弹出窗口打破了网站的整体合规级别,这是相当糟糕的);

● 71%的网站未能确保表格的可访问性;

● 83%的网站没有 WCAG 兼容按钮,主要是因为缺少标签;

● 22%的网站不符合链接要求——迄今为止最符合要求的网站元素组,主要是由于默认的浏览器设置。

这些只是网站为了合规而必须包含的一些更突出的(或者更明显的,如果你喜欢的话)可访问性要求。该研究描绘了一幅关于 ADA 和 WCAG 合规性现状的严峻画面,其原因要么是缺乏关注,要么是没有意识到问题的严重性。

使用人工智能实现全面的可访问性和合规性

可以说,防止网站易访问性诉讼的最好方法是提前计划:在设计和构建时考虑网站易访问性。然而,在大多数情况下,这是无效的,因为基础已经建立,并且由于需求的绝对范围,手动实现可访问性几乎是不可能的。

这就是人工智能介入的地方。有一些专门从事这一领域的服务,由扫描和分析网站设计每个方面的机器学习技术提供支持。

为了理解人工智能如何提供帮助,我们首先需要了解一下 WCAG 2.0 和 WCAG 2.1 技术标准。它们被组织在四个原则下:可感知的、可操作的、可理解的和健壮的。简而言之,网站需要具备:

●除了简单的鼠标导航之外,易于使用仅键盘命令进行导航;

●提供的信息易于查找和处理;

●可根据用户不断变化的需求进行调整;

●易于理解。

这是一个很大的范围。正如预期的那样,自动化测试允许更快地发现和解决潜在的干扰和问题。然而,人工智能解决方案不同于更基本的自动化测试,因为它能够模拟浏览器。它可以彻底理解一个网站的结构和它的各种元素的作用,特别是那些隐藏的,只有在行动时才显示出来的元素。

翻译成这四个 WCAG 2.1 原则,人工智能可以做的一些可操作的项目是:

●针对有运动障碍的人,通过“Tab”按钮优化键盘导航;

●方便盲人对内容进行音频描述;

●为有视觉障碍的人稍微调整图形元素,如字体、颜色,甚至间距;

●为那些有认知障碍的人提供一个内置的习语、俚语和以不寻常的方式使用的短语库;

还有很多。

另一个主要因素是更新。一旦第一个元素开始生效,遵从性级别就会下降,因为有新的元素需要审查。更多的更新意味着更多的维护,这意味着更多的潜在差距。

定期检查网站以确保其符合特定要求对于避免法律问题至关重要。作为在不明确需要编程的情况下不断从数据中学习的底层技术,机器学习算法可以发现这些变化,并在没有人类干预的情况下做出决策。此外,当需求发生变化时,集成它们会更容易。

需要立即修复的疏忽

几乎每个行业的所有类型的网站都是 ADA 诉讼的被告,不管是个人、小企业还是企业。这很大程度上是因为许多网站和企业主对什么是可访问性以及为什么它如此重要知之甚少,尽管他们负有法律和道德责任。

残疾有不同的形式,如视觉、听觉和色盲(仅举几例),这意味着需要结合不同的辅助技术来实现合规性。如上所述,这种情况很少发生。

因此,使网站符合《美国残疾人法案》和《WCAG 法案》已成为一个需要尽快纠正的疏忽。一个主要原因是为了避免陷入昂贵的法律纠纷,这可能会关闭一个网站或企业,但这个故事还有另一面。这也是为了吸引对限制性导航和功能性能力感到厌恶的整个潜在客户群体。

好消息是,人工智能提出了一种负担得起且可扩展的方法,让每个人都能访问每个网站。数学很简单:一个功能齐全的网站表现更好,创造更多的投资回报率。换句话说,投资建立一个所有人都能访问的网站是一个聪明的营销和商业决策。

最后的想法

随着诉讼洞察的不断发展,任何拥有在线业务的人都必须遵守 ADA 和 WCAG 标准,以避免昂贵的诉讼和负面报道。人工智能的进步为残疾人创造了更多无障碍互联网的新机会。曾经艰巨而昂贵的过程现在可以以更快的周转速度和可承受的速度完成,更重要的是,可以持续获得良好的结果。

人工智能的使用是为大量未开发的人口创造包容性环境的重要一步。就其本身而言,这是一个需要时间来赢得用户信任的过程,但如果你真的想一想,你对人的投资将与对技术的投资一样多。就投资而言,这总是一个不错的选择。

贝叶斯统计在后 COVID 世界中的作用

原文:https://towardsdatascience.com/the-role-of-bayesian-statistics-in-a-post-covid-world-5904352d8f9a?source=collection_archive---------24-----------------------

新冠肺炎告诉我们,基于过去数据的预测会很快过时。

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

来源:照片由来自 UnsplashKatie Moum 拍摄

贝叶斯统计的一个核心概念是后验分布。简单来说,这种分布结合了一个人在直接观察到一组数据之前对该组数据的先验信念(先验分布)和未来观察到一组特定数据的概率(似然函数)。

这是后验分布的样子:

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

来源:图片由作者创建

传统的正态分布(均值=中位数=众数)完全依赖于过去的数据。

因此,数据分布的突然变化意味着先前的预测不再适用。

我们举个例子。

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

来源:RStudio —基于 Antonio、Almeida 和 Nunes (2016 年)研究的数据集

这是一家葡萄牙酒店的周取消预订数量的分布图(COVID 之前)。我们可以看到取消事件的数量每周都在变化,并且大致接近正态分布。

然而,由于新冠肺炎疫情酒店,该酒店每周取消预订的数量要高得多,上述分布现在与该酒店的任何预测无关。

不确定性在预测中的作用

作为贝叶斯统计应用的一个例子,下面是一个基于后验分布的酒店取消预测。使用张量流概率库实现预测。

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

来源:张量流概率

在这里,我们可以看到预测(橙色线)仍然或多或少地符合实际每周取消的范围。

然而,考虑到在新冠肺炎之前运行该模型将会表明,基于预测的整体范围——酒店可能会看到超过 500 个取消——远高于之前的取消范围。

在这方面,这样的预测可以提醒酒店经理潜在的极端情况,并引发以下问题:

“在什么情况下,我的酒店每周会有超过 500 次的取消预订,我该如何防范?”

“一刀切”的预测信息不多

贝叶斯方法在金融领域也越来越受欢迎,甚至在新冠肺炎之前。

通过预测来预测资产价格的一个大问题是,这种价格天生就受制于一个反馈循环。

它不像预测天气或其他人们不能直接影响时间序列的量。

例如,让我们假设您希望建立一个 LSTM 模型来预测特定股票的价格。你生成一个预测价格误差小于 5%的模型。

现在,假设每个人都开始使用 LSTM 来预测股票价格。在这种情况下,该模型现在没有预测能力,因为价格会立即调整,因此使用该模型没有任何优势。

因此,风险分析在金融中发挥着重要作用,即使用统计方法来预测特定价格的预测范围,而不是对价格的预期走向做出“一刀切”的断言。

贝叶斯推理可以允许基于先验信念更新数据的更加混合的预测。

例如,如果一位分析师假设未来三个月市场将出现低迷的概率为20%——基于过去的数据和概率假设,这将如何影响价格?

如果根据新的信息,例如新冠肺炎导致经济产出下滑,这个概率被更新为 70% 会怎么样?这对预测有什么影响?

在这方面,贝叶斯推断可用于在新数据可用时更新概率假设,从而产生更明智的预测,而不是完全基于过去的数据,并且不考虑基于未来条件变化的不确定性的作用。

限制

尽管如此,贝叶斯统计并不一定是万无一失的。

与传统的统计方法不同,贝叶斯推断主要依赖主观意见来生成预测。

例如,一个人可能认为未来三个月股市下跌的概率为 30%。然而,另一个人可以查看相同的可用证据,并得出 50%的可能性。

此外,贝叶斯推理不一定告诉我们如何选择先验分布。

回到股票市场的例子——先验分布是基于过去一年的数据吗?过去五年?

在这方面,如果选择了不正确的时间周期,研究人员可能会无意中对预测结果产生负面影响。也就是说,减轻这种风险的一种可能的方法是通过回测,即给定一段时间的过去数据和一个指定的概率,该模型在这种情况下如何预测未来数据?

结论

从商业的角度来看,新冠肺炎的意思是,企业基于先前数据做出的许多预测已经变得多余。

另一方面,包含不确定性的预测可能会更好地为企业未来的正确行动提供信息。

贝叶斯统计有其自身的局限性,而且绝非万无一失。然而,我预计,随着我们开始意识到仅仅基于过去数据的预测可能非常“偶然”,这一统计分支将变得更加流行。

免责声明:本文是在“原样”的基础上编写的,没有任何担保。本文旨在提供数据科学概念的概述,不应以任何方式解释为专业建议。

参考

人员分析在组织内管理新冠肺炎危机中的作用

原文:https://towardsdatascience.com/the-role-of-people-analytics-in-managing-the-covid-19-crisis-in-the-organisation-8d25070569b?source=collection_archive---------44-----------------------

人员分析如何帮助公司努力减轻新冠肺炎在组织中的影响。

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

照片由 爱德蒙·邓蒂斯 发自 像素

我们在新冠肺炎时代的新生活和工作方式凸显了重塑我们的工作方式、流程、沟通和人才管理方法、绩效和参与度衡量、奖励计划等的重要性。

在这个充满不确定性和混乱的时代,人力资源部门在管理新冠肺炎危机和打造经济复苏的工作程序方面获得了核心和决定性的发言权。在这方面,人力资源和人员分析是 CHROs 和人力资源分析负责人手中的一个强大工具,他们的任务是在这些压力巨大的时期保护人们的安全,同时保持生产力和工作士气。

事实上,如果在危机之前,CHROs 的角色可能会受到其他 C 级角色的挑战,那么现在可以肯定的是,疫情危机已经提升了首席人力资源官在 C-suite 中的角色。为了成功管理远程人才,人力资源部门有很短的时间让直觉休息,并为大胆的数据驱动型决策和创新思维腾出空间。因此,我们将深入探讨人力资源和人员分析如何帮助人力资源专业人员、人力资源总监和企业人力资源主管管理组织中的新冠肺炎危机。

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

照片由 Amy Hirschi 在 Unsplash 上拍摄

管理远程工作

由于全国范围内的停工,员工需要在家工作,因此人力资源部门面临着这样的挑战:既要确保实现目标,又要在远程工作环境中保持高昂的士气。随着许多大公司,如 Twitter、Google、微软、Zillow、Slack、亚马逊、PayPal,决定扩大在家工作的选择,其他公司预计也会效仿,为管理远程工作做出调整的需求变得更加明显。

因此,如果 people analytics 是 CHRO 最需要的战略差异化因素,那么今天管理危机是绝对必要的,正如 David Green 引用 Thomas Rasmussen 关于 people analytics 如何支持澳大利亚国家银行应对危机的演讲

在远程工作领域,人员分析团队致力于支持员工、分配资源和关注点、衡量影响以及在人力资源数据的帮助下提前规划。但与此同时,人力资源职能部门通过捕捉整个企业的数据,使用人员分析来衡量生产力、协作和倦怠,以便监控员工的健康状况和远程工作的影响。

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

照片由奥古斯特·黎塞留派克斯拍摄

发现和雇佣人才

不幸的是,新冠肺炎危机导致了许多行业的大规模裁员,并使我们陷入了可能是自大萧条以来最严重的经济危机。此外,麦肯锡报告称,在接受调查的 190 名各行各业的首席执行官和职能领导中,有 67%的人表示,他们预计未来 12 个月将减少在长期招聘上的支出。

尽管劳动力需求有所减少,但找到并雇佣具备所需技能的合适人才仍然是人力资源部门的关键领域之一。根据麦肯锡的报告,急需的 IT 和数字技能仍然短缺,CHROs 应该开始重新思考他们的招聘流程,并考虑那些更容易将人们与工作联系起来的工具和平台,并更深入地了解他们的技能以及这些技能如何与可用的工作相匹配。

做出明智和战略性的招聘还需要有清晰的招聘洞察力,并跟踪重要的人力资源分析指标,以做出正确的决策。人力资源分析可以在招聘过程中提供帮助,并获得有意义的见解,以节省有限的时间和资源,并雇用合适的技能。

人力资源主管应考虑跟踪可用数据的方法和工具,如申请人跟踪系统或其他用于报告招聘的人力资源系统。人力资源从业者应该跟踪的一些指标有:招聘时间、每次招聘的成本、减少招聘时间、早期流动、采购渠道的有效性、访问者到申请人的转换率、招聘质量、每个员工的收入等。

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

活动发起人Unsplash 上的照片

监控和奖励绩效

受当前新冠肺炎危机影响的另一个工作方面是奖励和绩效计划。此外,麦肯锡强调,远程工作的人甚至更依赖绩效管理来告诉他们做得如何。

实施战略性人员和劳动力分析不仅可以优化工资和奖励,还可以帮助人力资源部门在提供公平工资的同时积极影响公司的底线。此外, CEB 分析研究指出,成功与人力资源分析合作的公司可以将人才成果提高 9 个百分点,导致毛利率提高 4%,每 10 亿美元的收入可以节省 1280 万美元。

依靠人员分析来制定奖励和薪酬计划,解决员工薪酬问题并管理求职者的薪酬预期,使企业领导者和人力资源经理能够为组织和员工做出基于事实的正确决策,尤其是在这样的不确定时期。

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

约根德拉·辛格在 Unsplash 上的照片

区分优先级并获取情报

风险和危机管理中最关键也是最具挑战性的部分之一是优先级。在这样一个动荡时期,人力资源部门有无数的火要扑灭,因此很难确定在哪里部署资源的明确目标。人员数据有助于获得决策所需的重要信息。

获取情报和洞察力以进行优先排序的一个例子是拥有识别高风险员工所需的人口统计和位置数据。为了在短时间内做出明智的决策,企业领导人需要了解疫情的最新发展,并将公共卫生仪表板集成到人员分析系统中。

组织的另一个优先事项,以及获取情报的手段,是拥有数据集,让人们深入了解新冠肺炎如何影响日常工作,如跟踪缺勤或分发员工疾病如何影响团队工作的脉冲调查。

组织的一个重要优先事项是识别对企业至关重要的员工,没有他们企业就无法有效运营。拥有准确且可访问的人员数据,以及关于员工的位置和人口统计数据,可以帮助 HR 识别和定位这些人,评估他们的风险情况,并制定应急计划,确定在他们缺席的情况下团队中谁可以代理。

为后危机新常态提前规划

努力在组织中实现人员分析并获取绩效、生产力和福利数据的人力资源主管和领导者将具备丰富的知识、技能和最佳实践的洞察力,以便在危机情况下组织和分配工作,并为恢复期和经济重启提前做好规划。

原载于 2020 年 8 月 31 日 Hyperight.com**

流程挖掘在数字化转型中的作用

原文:https://towardsdatascience.com/the-role-of-process-mining-in-digital-transformations-d83a52b0968f?source=collection_archive---------27-----------------------

你能转换你不理解的东西吗?

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

图片由Monster Ztudio通过 Adobe Stocks 授权

Genchi gembutsu 是一个日语术语,翻译过来就是“去看看”这是转型领导者永远不能忘记的两个词。

在数字化转型的背景下, genchi gembutsu 的意思是,如果不分析工作进行的地点和员工使用的流程,就很难理解一个组织是如何运作的。

因为现实和理想从来都不一样,这也适用于业务流程。

流程挖掘为组织的工作方式带来了急需的透明度,因此使转型领导者能够了解在创建组织的下一个版本时应该关注哪里、优先考虑什么以及要转型什么。

什么是流程挖掘?

组织是非常复杂的适应性系统,具有多个利益相关者、信息流、决策机构、流程和支持基础设施。

在典型的一天中,组织执行数百万个任务来向他们的客户交付产品、服务或供应品。一些生产时尚产品;其他人出售咨询服务或软件产品。为了做到这一点,他们遵循他们需要完成的过程、任务块,以便能够实现输出、结果或决策。

案例示例:批准新的原材料供应商

让我们假设一家制药公司被一家新的供应商接洽,该供应商有兴趣向该公司销售原材料。在受监管行业中运营的制药公司有明确定义的流程,用于分析和接受任何新的生产原料。

这可能包括检测原材料的质量,如化学成分、杂质、生物适应性和物理标准。还可能包括调查供应商是否通过了制药公司强加给其供应商的特定业务标准和政策(例如,信誉、GMP 和 ISO 认证、付款条件)。

这些过程中的一些可以在*并行进行。例如,质量保证实验室中的几项测试不需要相互等待。但其他流程需要按顺序进行;*例如,如果原材料不符合实验室的质量标准,就不应该在小规模试生产中进行测试,因为后者是一个非常昂贵的过程。

如果质量保证部门没有首先批准该材料,制造部门没有提供其批准印章,则供应商不应被审核其 GMP(良好制造工艺)实践,这可能需要访问供应商的工厂。

如您所见,流程会变得复杂。

作为动态地形的流程

流程也不会过时。它们随着组织面对他们需要响应的场景而发展,从这些经验中学习并改变。

例如,对于任何投资决策总是遵循阶段门流程的制造商,可能会决定开发一个快速周期的产品推出流程,以将增量创新引入市场。这对于对抗新的竞争对手可能是绝对必要的,因为新的竞争对手在将新产品推向市场方面要敏捷得多。突然之间,员工会选择是否使用 fas-cycle 方法。如果他们 80%的时间都跟着它走呢。我们同意吗?如果这个竞争对手破产了,但是流程还在。我们同意吗?

如果没有流程挖掘,我们永远也不会知道这些情况是否会发生。

组织中存在的流程是组织面临的真实世界事件和场景以及组织选择如何应对它们的最终结果。

因此,一个大的组织会有成千上万的过程和这些过程的许多例外。仅仅看“原样”的流程流是不可能知道真正发生了什么的。当然,一个组织的生产力将与它的运营能力,团队运作的效率和效果紧密相关。

应用过程挖掘技术,如过程发现,揭示了一个组织如何真正地一步一步地工作。流程挖掘算法努力分析 IT 系统,调查和分析真实事件日志,并将它们与相关流程配对;一路揭示对理想工艺流程的所有修改和偏差。

通过过程挖掘的发现帮助转换团队决定过程是否有优化的潜力。如果有与过程相关联的活动和任务可以并且应该被避免、加速或者改进,那么该过程就是评审和优化的理想候选。

如果流程中存在弱点,比如瓶颈、循环或者效率低下,那么该流程通常是优化或者自动化的绝佳候选。

员工可能没有遵循理想的流程有很多原因,导致我们所说的流程偏差。有时,偏差和变化是有保证的。其他时候,它们是完全没有必要的。

你不会知道这一点,除非你有办法让工作透明。这就是流程挖掘如此重要的原因。

近年来,随着公司进行数字化转型,以及新的数据挖掘算法被开发出来并可用于分析这些海量事件数据,流程挖掘变得更加重要。

一些软件初创公司已经开发了智能流程挖掘工具,这些工具可以自动分析和可视化流程,并有助于揭示组织如何工作,以及存在哪些偏差。来自德国的 Celonis 和 Lana Labs 就是其中的两个组织。

这是他们如何定义流程挖掘的。

根据 Celonis 的网站:

“流程挖掘是一门 分析学科 ,用于通过从当今信息系统中容易获得的事件日志中提取知识来发现、监控和改进真实流程(即,非假设流程)。

Process mining 从实际事件日志中获得客观、基于事实的见解,通过回答与合规性和绩效相关的问题,帮助您审计、分析和改进现有业务流程。”

资料来源:Celonis.com

根据 Lana Labs 发表的一篇文章,流程挖掘是对事件日志的可视化和分析。

“流程挖掘首先是借助算法和数学程序对事件日志进行可视化和分析。

事件日志是基于 IT 的流程的协议。它们列出了事件(IT 系统中的单个活动)及其属性。

典型的属性是案例 ID、开始和结束时间的时间戳,以及依赖于系统的事件的其他属性,例如处理事件的人员或位置。

因此,一个事件日志从头到尾完整地映射了一个或多个业务流程。过程挖掘方法是“过程发现”、“一致性检查”和“模型增强””

来源:Lana 实验室关于培养基的文章

所有以上都是使用机器学习算法来执行的,这些算法是 Celonis 和 Lana Labs 等公司开发的,旨在让流程发现团队快速确定流程偏差的根本原因。

为什么流程挖掘对数字化转型至关重要?

再问一次:你能转化你不理解的东西吗?

我相信你已经知道我的答案是什么了。

如果你是企业家或颠覆者,你有从一张白纸开始的自由。大多数公司做不到这一点。因此,在他们尝试开始转型之旅之前,应该努力理解工作是如何完成的。

缺乏对工作如何完成的详细理解,领导一个大规模战略变革项目的主管几乎总是在黑暗中操作。此外,她的期望不会建立在事实的基础上,更糟糕的是,她可能无法成为她的团队迫切需要的领导者。

如果一个组织的领导者不清楚他们的公司是如何运作的,他们就不太可能重新发明它。

杰夫·贝索斯是标准化、自动化和敏捷性的信奉者,据引用他说过如下的话:

“在今天这个动荡的时代,除了重新发明,没有别的办法。相对于其他人,你唯一可持续的优势就是敏捷,仅此而已。因为没有什么是可持续的,你创造的任何东西,别人都会复制。”

【www.inspiringalley.co】来源:m

如果敏捷是你转型的一个关键支柱,我希望如此,那么你应该尽一切努力去理解和改进你现在的工作方式。

这就是为什么我建议在转型之旅的一开始就参与流程挖掘。此外,我还建议公司在任何机器人流程自动化(RPA)之前采用流程挖掘。

虽然流程挖掘有助于识别和改进流程,并对适合自动化的流程进行优先排序,但在优先排序的流程上应用机器人流程自动化,公司可以专注于真正的机会,并真正重塑他们的业务。

这样做不仅会增强您对组织运作方式的理解,还会提高您转型成功的可能性。

深刻的理解加上创造力和创新通常会导致再发明。过程挖掘是一种重要的分析方法,可以帮助你深入理解。

艮赤玄宗!

我帮助我的客户在行动前诊断、理解、优先考虑和集中注意力,这样他们就可以真正地重塑自我,而不是浪费宝贵的资源。 和我们谈谈 如果您正处于转型过程中,并且您的团队没有使用像流程挖掘工具这样的技术进步。

原载于 2020 年 1 月 30 日http://www . rapid digital . ventures**

统计在工业中的作用

原文:https://towardsdatascience.com/the-role-of-statistics-in-the-industry-d360f3056e4b?source=collection_archive---------37-----------------------

数据科学和机器学习

有一些统计学的术语和一些关于统计学学科的观点,以及一些与相关领域的联系

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

照片由来自 PexelsMarkus Spiske 拍摄

统计无处不在,大多数行业都是依靠统计和统计思维来支撑业务的。对掌握统计学的兴趣也要求成为一名成功的数据科学家。你需要证明你对这个学科领域的热衷。

什么是统计?

它是一门包含从数据中学习的所有特征的学科。作为一种方法论,我们谈论的是允许我们处理数据和理解数据的手段和方法。统计学家采用并开发数据分析方法,并不断探索以了解它们的特性。

这些工具何时能提供洞察力?
他们什么时候可能会误导人?

所有不同学术领域的研究人员,许多行业的工作者,正在实施和实现统计方法,他们正在为进行数据分析提供新的方法和技术。首先需要一个简明的术语,这是统计学和统计学领域的区别。

我们每天都会遇到来自数据收集的数字或图形报告。例如,所有学生期末考试的平均分数,一些国家就业和失业工人的比例,或者一天中股票价格的波动。这些是统计数据。

然而,统计领域是一个侧重于研究方法的学术学科。作为统计学家,最重要的方面是开发新的统计工具,从数据中计算统计数据,并与专家合作,以适当的方式解释这些结果。

毫无疑问,统计学是一个不断发展和壮大的领域。此外,它提供了挑战和机遇。

在数据科学中,大量的统计方法正处于不断的研究中,以了解如何正确地使用它。许多新的应用领域是可用的,这些领域导致开发创新的分析方法的必要性。例如,如何测量数据的想法,以及可用的新类型的方法导致需要分析的新类型的数据。因此,我们经常依赖这些计算方面的进步,不仅使我们能够进行数据分析,而且能够对收集的大量数据进行更复杂的分析。

统计学是一门重要的学科,尤其是对于数据科学家来说,统计学领域有许多流派。它包含了来自理论、实践和相关领域的全新理念。

**Numerous viewpoints on the field of statistics are:*** The ability of summarizing data
* The idea of uncertainty
* The idea of decisions
* The idea of variation
* The art of forecasting
* The approach of measurement
* The principle of data collection

汇总数据的能力

数据可能是可怕的,因为理解这些数据是有条件的,这通常包括减少和总结。数据简化的主要目标是使数据集对人类观察者来说是可理解的。统计学家有不同的技术来汇总数据,这是实现数据有意义的目标所必需的。因此,统计学家在使用适当的、精确的和有效的方法来总结数据方面训练有素。

不确定性的概念

数据可能会误导人。开发统计字段的主要目的是获得评估数据的结构和框架。一般来说,来自数据的见解不是 100%准确的,但荒谬的是,我们有一种方法来量化报道的发现与事实有多远。一些评估报告返回时会有误差。这一误差幅度让我们了解到在公开发表的和真实的民意之间可能存在的差异。

决策的概念

理解数据是至关重要的,这导致需要能够对我们发现的东西进行处理。在统计的某些领域,决策的想法是任何统计分析的最终目标。在个人和职业的旅程中,我们面对困难做出决定。我们必须比较不同方法的成本和收益。

例如,如果一个人发现自己患某种特定类型癌症的风险可能高于平均水平,他们是否应该接受预防性治疗?统计数据有助于决策过程。

变异的概念

当我们总结数据时,通常,我们的主要焦点是典型的或中心的价值。这意味着我们必须高度重视从统计学的角度理解数据的变化。例如,如果你知道平均每个月美国人有大约 8000 美元的信用卡账单,你就很清楚信用卡债务分布的中心价值。如果你被提供了大约 10%以上,这个百分点给你更多关于信用卡债务可变性的信息。

预测的艺术

统计学的基本职责是预测。你不能绝对肯定地知道未来。不过,如果你有效地使用了可用的数据,它有时会做出相当准确的预测,如天气预测、股票市场价格预测和洪水风险预测。此外,试图计算新产品在市场上销售的未来需求或预测选举的结果。

测量方法

假设您正在收集大量数据。有些变量是可以测量的,有些可以以相当高的精度测量。一个人的年龄或身高,以及一些更具挑战性的变量。例如,血压每分钟都在变化,所以要确定下来有点困难。此外,还有情绪、个性和政治意识形态等更难定义和量化的概念。在确定概念和评估各种方法的质量时,统计在构建和评估衡量这些困难的有用方法方面发挥着重要作用。

数据收集的原则

最后,统计是原则性数据收集的基础。有时候,收集数据既费钱又痛苦。资源限制了可以获得多少数据,这意味着如果我们的数据太少,发现就不会最大化。然而,统计为管理这种权衡提供了一个极好的方法。您可以在了解并允许这些资源限制的情况下获得更多数据。

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

杰瑞米·泽罗在 Unsplash 上的照片

追溯到古代,文明一直在收集收成和人口数量的数据。现在,随机性和变化可以更精确地定义。现代统计学发展于 19 世纪,源于遗传学、计量经济学和统计理论在 20 世纪的发展,在科学和工业中有许多新的应用领域。例如,有能力用计算机做数据分析的出现。接下来,大数据、海量数据、数据科学、机器学习的兴起。

统计学确实与其相关领域有许多交集。

计算机科学为我们提供了处理数据的算法、结构和操作数据的编程语言。在数学中,我们得到了更简洁地展示这些统计概念的语言和图形,以及评估和解释这些分析方法的性质的工具。

数学的一个分支是概率论,它是统计学基础的一个重要部分,允许我们揭示随机性和不确定性的概念。

然后是数据科学,它为我们提供了数据库管理和机器学习,这些基础设施能够进行数据分析。

结论

统计学已经从一个小的领域发展成为研究和工业中的一个重要的联盟。众多不同的应用包括计算机视觉、自动驾驶汽车、面部识别、在线搜索推荐系统和在线购物。

在卫生领域,我们有预测和分析、精准医疗、欺诈检测、环境和基础设施风险评估、职业培训方面的社会和政府服务,以及行为治疗。统计和统计思维帮助我们理解我们周围的数据和信息。

关于作者

Wie Kiang 是一名研究员,负责收集、组织和分析意见和数据,以解决问题、探索问题和预测趋势。

他几乎在机器学习和深度学习的每个领域工作。他正在一系列领域进行实验和研究,包括卷积神经网络、自然语言处理和递归神经网络。

数据科学的根源

原文:https://towardsdatascience.com/the-roots-of-data-science-77c71115229?source=collection_archive---------21-----------------------

这一切是如何开始的。

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

Héizel Vázquez 插图

我们给对数据进行科学探索以发现有价值的信息和解决商业问题的行为起了一个名字:数据科学(DS)。这个说法不是定义,只是基本描述。

DS 在那里已经有一段时间了。我在过去已经广泛地介绍了我对这个领域的想法(查看底部的参考资料),但是我想在这篇文章中谈论一些不同的东西。

DS 不会从任何地方冒出来。它来自统计学的迭代,特别是统计学和数据分析的算法传统。三篇伟大的文章是我们领域的奠基者(正如我们现在所知):

  • 数据分析的未来。
  • 统计建模:两种文化。
  • 数据科学:扩展统计学领域技术领域的行动计划。

但是这些论文也依赖于一个更大的图景。我试图用我和姐姐海泽尔·巴斯克斯创造的时间线来展示 DS 领域的整个发展:

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

插图作者:伊泽尔·巴斯克斯

请确保也检查来源。

正如我们所看到的,我提到的三篇论文中最老的一篇是 Tukey 的。我将告诉你为什么我提议这是我们领域的开始(即使在时间线中在它之前有论文)。不过,在此之前,我想讨论一下这篇文章中的一些观点:Luhn 的商业智能系统。

在开始之前

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

作者声明:Héizel Vázquez

在论文《商业智能系统》中,卢恩提出了一个自动系统,向任何工业、科学或政府组织的各个部门传播信息。

但我想从这篇文章中带来两个定义。一、企业的定义:

“商业是为了任何目的而进行的活动的集合,无论是科学、技术、商业、工业、法律、政府、国防等等。”

智力的定义是:

“智力的概念是[……]理解所呈现的事实的相互关系的能力,这种能力能够引导行动朝着预期的目标前进”

我喜欢这些定义。正如我们将看到的,“商业智能系统”的概念将指导后来的作者解释数据科学。

鲁恩也说道:

“有效的沟通是人类努力的所有领域取得进步的关键。[……]由于人类活动的速度加快,范围扩大,平均教育水平稳步提高,信息的产生和利用速度越来越快。[……]也越来越需要在远低于过去惯常水平的责任级别上作出更迅速的决定。[……]鉴于目前的增长趋势,自动化似乎为检索和传播这种信息提供了最有效的方法。”

我们来谈谈这个。作者说的是沟通和信息。此外,公司正在利用这些信息做出比我们过去所能做的更先进的决策。请记住这篇文章是 1958 年的。

Luhn 还谈到了自动化对于传播这些信息的重要性,这是数据挖掘的基础之一(数据科学之父之一)。

到目前为止,我们有四个重要的组件,它们将很快变得重要:

  • 信息
  • 智力
  • 商业
  • 自动化

从统计到数据分析

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

插图作者:伊泽尔·巴斯克斯

约翰·图基是历史上最重要的统计学家之一。在精彩的文章《数据分析的未来》中,他这样说道:

很长一段时间以来,我一直认为自己是一名统计学家,对从特殊到一般的推论感兴趣。但是当我看到数理统计学的发展时,我有理由感到惊奇和怀疑。[……]总而言之,我觉得我最感兴趣的是数据分析……

一个统计学家发表的重要声明。在这个时代,“数据科学”这个词并没有像今天这样存在,但图基描述数据分析的方式非常接近我们现在所说的数据科学。他甚至称数据分析是一门科学,因为它通过了这三项测试:

  • 知识性内容。
  • 组织成一种可以理解的形式。
  • 依赖经验测试作为有效性的最终标准。

他在文章中还提到了一件重要的事情:

如果数据分析是有帮助的和有用的,它必须被实践

这似乎是显而易见的,但它指导了人们如何描述 DS。从这篇文章中我们理解了什么?统计学的发展将创造图基所谓的新数据分析,定义为:

“分析数据的程序,解释此类程序结果的技术,规划数据收集以使其分析更容易、更精确或更准确的方法,以及适用于分析数据的所有(数学)统计学机制和结果”

在这个定义中,一个至关重要的想法是,数据分析还包括计划收集数据进行分析,以及分析解释数据的统计机制。

除了说应该练习数据分析,Tukey 还说:

我们需要正视更现实的问题

当然,他说的是数据分析。尽管这篇文章的想法是解释如何在正式和学术领域教授和使用数据分析,但 Tukey 明白我们需要超越教科书和理想化的场景。理解鲁恩的文章和这篇文章之间的联系很重要。

从数据分析到数据科学

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

作者声明:Héizel Vázquez

在 Tukey 出版 35 年后,Jeff Wu 说:

统计学=数据科学?

他在会上提议将统计学重新命名为“数据科学”,将统计学家命名为“数据科学家”。在今天的标准下,我们知道统计学本身不属于数据科学,但是为什么呢?因为我们还需要编程、业务理解、机器学习等等(但很快会有更多)。

在与吴杰夫的一次谈话中,他提到:

“我的演讲题目是统计学=数据科学?。在那里,我把统计学描述为数据收集、数据分析和决策的三部曲。我说的显然是分析统计学,而不是描述统计学。我建议将我们的名字从“统计学”改为“数据科学”,将“统计学家”改为“数据科学家”。“我记得我甚至在讲座中开玩笑说,只要把名字改成数据科学家,工资就会更高。如今确实如此。很有意思”

关于吴对统计学的定义,有趣的是数据分析是其中的一部分。我不能完全肯定 Tukey 是否会同意吴的观点,但想法是明确的:

数据科学依赖于数据收集、数据分析和决策制定。

最后,我们开始说点别的:决策。这是图基关于数据分析和统计的观点与卢恩关于商业智能的观点之间的联系之一。

请查看时间表,记住我正在谈论的文章和演示的日期。

吴的报告(2001)发表四年后,有两篇论文把所有的东西都放在了一起。2001 年 4 月,克利夫兰提出了一个扩大统计领域技术范围的行动计划,他称之为数据科学。然后,同年 8 月,Breiman 提出,使用算法建模(作为一种不同的统计文化)将更好地解决数据问题,而不是经典的统计建模。

这两篇文章以不同的方式相关联,克利夫兰的文章旨在创建一个教授数据科学的学术计划(类似于图基为数据分析所做的),而布雷曼的文章则试图谈论数据科学的实际意义及其与商业的关系(接近卢恩想要用应用程序解释的内容)。

尽管克利夫兰的文章是针对大学和教育机构的,但他提到:

大学被选为实施的场所,因为它们是我们传统的创新机构[……]。但是类似的计划将适用于政府研究实验室和企业研究机构

因此,他认识到政府和组织在将数据科学作为一个严肃领域制度化的过程中的重要性。

在文章中,克利夫兰指出数据科学依赖于四件大事(他谈到了六件事,但去掉了与教授 ds 相关的部分):

  • 多学科项目。他在这里提到:

数据科学的新工具和理论的最大刺激是对数据的分析,以解决在调查的主题方面提出的问题。面对数据带来的问题,有创造力的研究人员会提出大量的新想法,这些想法通常比产生这些想法的特定数据集应用得更广泛。

这里需要强调的重要事项:

1.-数据分析和数据科学的主要目标是解决问题(当我们谈论 Breiman 的文章时,这一点很重要)

2.-数据科学从业者需要研究不同的问题和领域,以便能够有一个更大的视野,发挥创造力,并理解不同类型的数据和数据带来的问题。

  • **模型和方法。**他在这里提到:

数据分析师面临着两个使用统计模型和方法的关键任务:(1)规范——为数据建立模型;(2)估计和分布——正式的数学概率推理,以模型为条件,其中模型的数量被估计,不确定性以概率分布为特征。

需要注意的是,他将数据科学的从业者称为数据分析师,但我们将称他们为数据科学家(需要思考)。

在这里,我们必须强调:

1.-建模是数据科学的核心。这是理解“现实”,我们周围的世界,但创造一个更高层次的原型来描述我们所看到的,听到的和感觉到的事物的过程。尽管如此,这是一个代表性的东西,而不是“实际”或“真实”的东西。图基在他的文章中也谈到了这一点。

2.-数据科学需要方法(和方法论)。

3.-数据科学家为数据创建模型,并使用统计技术和方法来开发这些方法。正如我们将在 Breiman 的文章中看到的,他强调算法而不是形式数学方法。

  • **用数据计算。**他在这里提到:

今天的数据分析项目依赖于数据库、计算机和网络硬件以及计算机和网络软件。[……]除了计算方法,数据计算还包括用于数据分析的数据库管理系统、用于数据分析的软件系统和用于数据分析的硬件系统。

他还谈到了统计学家和计算机科学家之间的差距:

[……]数据挖掘是当前的一个工作趋势。但是对数据分析师的好处是有限的,因为计算机科学家关于如何思考和处理数据分析的知识是有限的,就像统计学家关于计算环境的知识是有限的一样。

他的想法之一是“知识(统计和计算机科学)基础的融合将产生强大的创新力量”。

需要强调的其他一些事情:

1.-数据科学家需要了解数据库和计算软件。编程也是如此。他还谈到统计软件包和相关软件。但现在我们知道,如今数据科学的道路取决于对一些编程语言(目前主要是 Python 和 R)的理解。

2.-数据科学也依赖于技术进步。2001 年是这样,今天也是这样。数据科学家使用的方法受到理论发展的影响(查看时间轴),但也基于这样一个事实,即今天我们拥有强大的计算机、更便宜更快的内存、高速互联网,以及 GPU 和 TPU。

3.-我们需要统计学家学习计算机科学,需要计算机科学家学习统计学。这个缺口现在由数据科学家填补,但我们不能忘记,在这些领域之间流动正变得越来越常见,我们需要统计学专家来学习计算机科学,也需要计算机科学专家来学习统计学,而不仅仅是精通这两方面的人。

  • 理论:在这里,他提到:

理论,无论是数学理论还是非数学理论,对数据科学都至关重要。理论工作需要为数据分析师提供清晰的结果,尽管在许多情况下是间接的。数据科学工具-模型和方法以及计算方法和计算系统-链接数据和理论。新数据产生了对新工具的需求。新的工具需要新的理论来指导其发展。

数据科学是一个实践领域,但需要理论来理解和解释他们的方法和模型。今天我们知道,如果你想理解机器学习,你将需要了解线性代数、微分学、统计学和概率(提到一些最重要的)。

需要强调的重要事项:

1.-数据科学的工具及其模型将数据和理论联系起来。我们需要理解理论来创建更好的模型,当我们建立模型时,我们使用所有的理论工具。

2.-不同的数据集需要不同的理论背景。这在 Tukey 的论文中很清楚,他提到了一些最重要的数学和统计学知识来处理不同的数据集。当大数据爆炸时,我们看到了这一点,我们必须分析不同的数据源。

3.理论上的进步指导了新工具和模型的创建。这让我们想起了科学的历史,在那里,不仅数据和实验导致了新理论的产生,而且新理论还发展了指导实验、模型和工具。

数据科学中的算法建模文化

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

Héizel Vázquez 插图

正如我提到的,在 2001 年 8 月,Leo Breiman 发表了一篇关于统计学的两种文化的论文:数据建模和算法建模。他在文章中的一句话是:

统计学的根源,就像在科学中一样,在于处理数据和用数据检验理论。我希望在本世纪我们的领域将回到它的根源。

在这里,他提到,在统计文化中,有些人受数据建模驱动,有些人受算法建模驱动。其中第一个假设我们有一个随机数据模型,将输入变量 x 映射到响应变量 y 。第二种认为映射过程既复杂又未知,他们的方法是找到一个函数 f(x) ,它作用于 x 来预测响应 y

然后,他继续讨论为什么数据建模文化长期以来对统计学不利,导致不相关的理论和可疑的科学结论,阻止统计学家使用更合适的算法模型和研究令人兴奋的新问题。此外,他还谈到了光谱的另一部分的奇迹,从他的作品中给出了算法建模文化的例子,以及其他关于它如何解决困难和复杂问题的例子。

他说算法文化:

[…]将焦点从数据模型转移到算法的属性。它描述了它们作为预测器的“强度”,如果它们是迭代的,则描述了它们的收敛性,以及是什么赋予了它们良好的预测准确性。理论中的一个假设是数据是从一个未知的多元分布中提取的。

他并不是说“旧的”统计文化是无用的。相反,他的意思是算法文化更适合于当前(当然是回到 2001 年)由数据引起的问题。

Breiman 认为,这种新文化中的一个指导原则更接近于我们在数据科学中所做的事情,即:

目标不是可解释性,而是准确的信息

如果我们看到他的论文发表后发生了什么,那就是事实。算法、方法和模型的进步是为了提高准确性,牺牲了可解释性。幸运的是,在过去的几年里,“黑盒”的可解释性和可解释性有了巨大的进步;我们现在有工具来解释随机森林、支持向量机或深度神经网络是如何工作的。

我喜欢他在一些咨询工作中解释算法文化的使用方式,我们可以看到如何改变数据和数学使用的一些基本方面,我们可以提高准确性并解决更复杂的问题。

结论

结合本文中提到的作者的工作,以及时间轴中提出的理论、计算和科学进展,我们可以了解数据科学的历史发展。

数据科学的根源是统计学,但也是利用数据解决业务问题的思想。数据科学应该是实用的,但是它依赖于数学和计算机科学理论的使用。数据科学的实践和研究应该是每所大学、政府和组织的一部分,它们希望使用数据来解决复杂的问题。

数据科学已经成为学术界和业界解决问题的标准框架,而且在一段时间内还会如此。但是我们需要明白我们从哪里来,我们是谁,我们要去哪里。

如果我们将现有的资源集中起来,让这一领域的知识为更大的利益而共同努力,我们就能对世界和我们的生活产生巨大的积极影响。这是我们的时代。

规则三:计算尚未发生的事件的概率

原文:https://towardsdatascience.com/the-rule-of-three-calculating-the-probability-of-events-that-have-not-yet-occurred-106144dc2c39?source=collection_archive---------21-----------------------

实践教程

我们有多大把握让加州、纽约等蓝色州。下次选举不要变红?

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

前总统巴拉克·奥巴马的第二次就职演说(2013 年)。由 Dyana Wing SoUnsplash 上拍摄

作者注:我正在尝试一种更短的文章形式,旨在介绍有趣的统计事实和经验法则。让我知道你如何喜欢他们。如需更深入的分析:

又是一个选举周期,又是一次我们对总体结果感到困惑的时候。任何一方都没有井喷。选举是一场扣人心弦的比赛。民主党人和共和党人在几次竞选中都取得了意想不到的进展。

面对每个选举周期不断上升的不确定性,我的一个朋友欢呼道:

我们可以确定的一件事是,加州从来没有,也永远不会变红。

首先,这在历史上是不正确的——加州在 1992 年大选前一直支持红色。我的朋友必须将他的观察限定为“他观察的[自 1992 年以来的]选举”,或者如果他将地点改为哥伦比亚特区。然而,如果他知道即使在这次选举中,加利福尼亚州 1000 万张选票中有三分之一投给了特朗普总统,他对自己的预测仍会不太有信心。仅仅因为我们[表面上]观察到一个地方是一个民主堡垒,并不意味着它在未来不会变红,反之亦然。

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

粘土堤Unsplash 上拍照

我朋友所做的预测是一种非常常见的心理归纳,我们每天都在练习。就像飞机不应该坠毁一样,智齿拔除不应该造成神经损伤,卫冕英超冠军也不应该因为一支在英国足球第五梯队打滚的球队而沮丧。然而,在现实中,这些事情确实发生了。仅仅因为我在过去的 10 年里没有骑摩托车遇到任何事故,并不意味着事故的风险为零。

问题是: 我们能否量化尚未发生的事情的概率? 理想情况下,我们会想给罕见事件分配一个概率,但是这些事件的分子是 0,我们无能为力。在这些情况下,量化风险大小的一个简便方法叫做三个的法则:

如果某一事件在有 n 名受试者的样本中没有发生,则从 0 到 3 的区间***/n***为总体中发生率的 95%置信区间。

这里需要注意的一点是,观察的样本越小,置信区间越宽,这意味着小样本的置信区间上限大于大样本的置信区间上限。但是,如果说在一个小的系列中,不良事件发生的真实概率更大,那就错了。

它是如何工作的?

这个规则的证明很简单,用 X 表示事件的数量,用 p 表示我们观察到一个不良事件的概率( p 接近于 0),我们要找到给出 Pr( X = 0) ≤ 0.05 的 n 观察的二项分布的参数 p 的值。

因此,我们需要求解 p ,这样:

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

然后我们可以通过使用 Maclaurin 级数来近似实体 ln(1- p ,它是函数 f(x)a = 0 处的泰勒展开式的求值

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

将此应用于 ln(1- p ,我们得到:

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

这样,我们就有了 -np ≤ -2.996 或者 p ≤ 3/ n

快速模拟:

虽然数学很简单明了,但为了证明它确实有效,我们可以尝试运行一个简单的模拟:

  • 想象一下我们在生产线上测试缺陷。假设我们知道缺陷概率是 p = 0.001
  • 我们一个接一个地测试每一个下线的产品,直到我们遇到一个缺陷(测试号 n+1 )。
  • 然后,我们制作一个由 0 和 3/n 限定的置信区间**,并记下它。我们检查置信区间是否包含缺陷 p = 0.001 的真实概率。**
  • 我们重复这个过程很多次,例如 100,000 次迭代

这是一段 R 代码:

正如你所看到的,从长远来看,大约 95%的区间**【0,3/n**这样的区间应该包含真正的潜在缺陷概率。

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

模拟的直方图。红线显示了故障的真实概率(p=0.001)。我们看到红线右侧的面积总计为 95%,这意味着在 95%的情况下,我们在这个过程中获得的置信度包含了真正的潜在缺陷概率。

回到原问题:

所以让我们回到最初的问题:让我们忘记 1992 年之前的所有选举。由于我们没有观察到加州在过去 8 次选举中投票支持红色,使用三的规则,我们可以推断出加州走向红色的 95%置信区间在 0 和 3/8 = 37.5%之间。对于哥伦比亚特区,它将是[0,3/15= 20%]。

需要说明的是,这是一个有趣的例子,为了让它起作用,我必须在这里做一些全面的假设,可能没有一个是正确的。

  • (1)我们假设每个选举结果都是相互独立的。这在很大程度上是不真实的,因为我们知道一个选举结果至少可以影响地区地图或者激发下一次选举的投票率,等等。
  • (2)有一个潜在的、固定的州投票给红色的概率,这可能是不真实的*,因为我们知道,该州的人口统计、经济前景和人民情绪在很大程度上影响着政党归属和结果如何产生,并一直在变化。*
  • (3)对于加州,我们忽略 1992 年之前的所有选举。如果我们包括以前的数据,在这种罕见的事件确实发生过的地方[但它并不罕见,因为加利福尼亚在 1990 年以前被认为是一个红色的州],三的规则就不应该被使用[然而华盛顿没有这个问题]

一个实际的用例:

那么三法则实际上是用来做什么的呢?非常受欢迎的使用案例是在许可前临床试验中,不良事件发生率非常低,例如疫苗开发项目。通常,10,000 名受试者范围内的样本量可被认为足以确定新疫苗的保护效力,但不足以检测更罕见的事件或并发症。

如果在涉及 10,000 人的许可前临床项目中没有观察到任何特定类型的事件,则可以估计该事件发生率的上限为 3/10,000。实际的并发症发生率,即发生频率低于疫苗靶向疾病的发生率,只能通过一些可靠的上市后监测系统来检测。

因此,下次你的牙医说他从未失败过一个手术时,你知道该怎么做:问他服务过多少病人,用三法则找到他失败率的置信区间,看看你对上限有多满意。

你可以在我的 Github 页面找到这篇文章的代码。

参考资料:

【1】为什么加州是一个蓝色的州?

[2] 今年的投票措施如何显示加州日益扩大的政治分歧

将 AI 推向边缘的热潮

原文:https://towardsdatascience.com/the-rush-to-push-ai-to-edge-2ac477be0e6b?source=collection_archive---------44-----------------------

为什么苹果、英特尔、谷歌等公司试图将人工智能从云端转移到边缘

今年早些时候,苹果宣布以 2 亿美元收购西雅图的边缘人工智能初创公司 Xnor.ai。这是它将人工智能推理从云带到本地硬件的许多其他举措之一。

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

Canva.com

今天,算法坐在云上,为你的请求服务。正如您所猜测的,当数据必须在云服务器和远程客户端之间传输时,可能会有延迟。还可能附带许多隐私问题。智能设备能力的稳步增长正慢慢带来在本地边缘而非云端运行算法的机会。所有主要的科技巨头现在都在竞相将人工智能推向边缘。

“机器学习将以一种大规模的方式在边缘发生,最大的问题是你如何高效地完成它?”斯坦福大学教授 Subhasish Mitra 说。

什么是 Edge AI?

惠普表示,在边缘计算中,数据由设备本身或本地计算机或服务器处理,而不是传输到数据中心。现在当我们谈论人工智能时,这些计算变得非常复杂,普通的边缘设备变得无法执行它们。这就是为什么目前这些复杂的计算都留给了数据中心的大型服务器。

如果你曾经使用过 FaceApp(尝试不同外观的应用程序),你可能会注意到它需要相当长的时间才能给你结果。后端发生的事情是,您的图像(加密)被发送到远程服务器,服务器应用您请求的算法,并将其发送回您的设备。现在,如果这个完整的过程以某种方式发生在你的本地,它会更快,更不用说安全了。这就是 Edge-AI 的用武之地,Xnor.ai 等公司正在开发能够实现本地推理的技术。

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

获取最佳商业见解的热潮

为什么 Edge AI 很重要?

Edge AI 为更快、更可靠、更安全地做出任务关键型和时间敏感型决策提供了可能性。对于苹果和其他许多声称将用户隐私置于一切之上的公司来说,edge AI 肯定会是一项必不可少的技术。

Xnor.ai 的技术在手机、物联网设备、相机、无人机、嵌入式 CPU 等边缘设备上高效运行深度学习模型。诀窍是建立高效的硬件,能够运行高能耗的算法,而不损失这些算法的准确性。苹果收购 Xnor.ai 将有可能帮助它挑战云技术、亚马逊网络服务、微软 Azure 和谷歌云领域的巨头。另一方面,所有这些也在不断增加他们对利用人工智能和边缘计算优势的关注。

您如何针对边缘进行优化

有两种方法可以提高 edge 上算法的性能:优化模型架构,优化设备硬件,或者两者都用。

优化模型架构

传统的人工智能算法使用传统的数字表示法。例如,您的 32 位 PC 可能对模型使用 32 位权重和偏差。多年来,人们观察到,权重和偏差不需要精确到 32 或 64 位就能提供良好的精度。研究表明,当 32 位精度权重和偏差被 8 位或 16 位精度替代时,模型的精度没有显著下降。

Xnor.ai 在 2016 年发表的一篇题为使用二进制卷积神经网络的 ImageNet 分类的出版物提出了标准卷积神经网络的两种有效近似:二进制权重网络和 Xnor 网络。他们将精度降低到 1 位(二进制),以便节省 32 倍的内存。XNOR 网络主要使用二元运算来近似卷积,从而使计算速度提高了 58 倍。期末成绩优秀;该论文称,“二进制权重网络版本的 AlexNet 的分类精度与全精度 AlexNet 相同,”这纯粹是令人惊讶的。需要注意的一点是,这篇论文发表于 2016 年,现在有更好的架构。

优化硬件

下一个方法可能是构建更好的硬件来支持计算和耗电的人工智能算法。Myriad 就是这样一家致力于开发硬件单元的公司,尤其是为人工智能推理开发硬件单元。2016 年,AI 收购了 Movidius,今天的硬件被称为英特尔的神经计算棒。神经计算棒或 NCS 允许您在需要实时推理的低功耗应用程序上开发、微调和部署传统的卷积神经网络(CNN)。

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

英特尔 NCS 2 ~ intel.com

NCS Stick 与英特尔的 OpenVINO toolkit 配合使用,可以帮助您采用传统的机器学习模型,生成中间表示,然后使用推理引擎来推断给定输入数据的结果。中间表示由工具包的模型优化器模块生成,该模块将您的模型转换为推理速度更快的形式。

然而,最好的方法是整个管道的软硬件协同设计。这将确保您的性能在硬件和软件层面都得到优化。在你下面的视频中,你可以看到 Xnor.ai 如何出色地构建了一个太阳能物体检测芯片。这种芯片的使用可以跨越数千种现实生活中的应用。

什么在等待着我们

随着 Edge AI 变得更加强大并开始成形,我们将在我们的设备上见证真正的人工智能。我们的智能设备将不再需要连接到互联网来访问基于人工智能的应用程序;等待时间将大大减少,最重要的是,真正的隐私将得到保证。

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

Canva.com

这是一个激动人心的时代,全球各地都在发生着许多激动人心的事情。我绝对期待的一件事是,一旦边缘人工智能成熟,它将如何影响医疗保健。感谢阅读这篇文章,我希望你喜欢它。后会有期:)

😭Twitter 上最悲伤的一天:公司推文中的情绪分析和参与趋势

原文:https://towardsdatascience.com/the-saddest-day-on-twitter-sentiment-analysis-engagement-trends-in-companys-tweets-1b2f4f2789e1?source=collection_archive---------48-----------------------

6 个月内 tweets 中参与度指标和情绪值的每周趋势的数据分析和可视化。

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

马科斯·保罗·普拉多在 Unsplash 上拍摄的照片

如果发了一条推文,但没有人在旁边检查分析,它会产生影响吗?好吧,这是一个相当松散的关于一棵树在树林中倒下的问题的释义。🌳但是,你知道我在说什么。

我用果酱(推特制作果酱)发微博已经一年多了。现在是时候详细了解一下在文案写作和交流中可以从这种练习中获得什么样的见解了。除了提及、标签表情符号文本之外,我有兴趣看看我们的推文如何根据一周中的某一天表现

因为如果每个人都在吃没有电话的早午餐,为什么还要在周日发微博呢?🤷‍♀️

日期时间的时间

这是我们开始之前数据框的前几行。

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

40 个不同有用程度的专栏…

我们有 529 行和 40 列,但是在分析的初始阶段,我们删除了其中的一些(你可以在这个笔记本中看到完整的数据分析)。

第一步是处理我们最喜欢的变量日期时间!还有人把 strftimestrptime 弄混了吗?🙋‍♀️,这就像混淆了左边和右边,也许我们永远无法治愈自己。

我们将把该列拆分成日期小时并提取一周中某一天的名称。

这使我们能够按天对数据进行分组,并提取一周中每一天的平均值。

请注意我是如何巧妙的按照日名(人类友好的名字)分组,但是按照排序,这是一个数字表示。如果你按 day_name 排序,你会得到按字母顺序排序的日子,这没有帮助。☝️

输出:

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

这已经足够让我们绘制值了。我们可以创建一个很好的函数,让我们画出选择的变量。💁‍♀️

当然,我们必须有点小心我们在同一个图表上绘制的那些。不同的值有不同的比例,例如,比较印象与参与度,如果 y 轴拉长,图表最终可能不会提供太多信息。

让我们策划一下*的东西,*比如说约会、转发和喜欢。

plot_means_by_weekday(‘engagements’, ‘retweets’, variable_3=’likes’)

输出:

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

这是什么?周末大跳水!🤔

为了更好地了解趋势,我们可以将这些值归一化。

现在,让我们再画一次。

plot_means_by_weekday(week_mean_norm_df, 'engagements', 'retweets', variable_3='likes')

输出:

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

仍在下降。但是,现在很清楚,所有的价值都遵循相同的趋势。

大幅下跌可能部分是由于周末的数据非常少,因为我们周末根本不发推特,假设人们不怎么发推特。

🎺令人印象深刻的星期一?

让我们来了解一下平均每日印象。通过使用聚合函数,我们可以很容易地获得印象的平均值和特定工作日发送的所有 tweets 的计数。

“week_impressions”数据框如下所示:

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

我们可以画出来。

输出:

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

如果我们只看平均印象,似乎周一、周二和周三是发推特的最佳时间。但是,让这个图表不清楚的是,每天发送的推文数量不同,印象的平均值也不同。让更清晰的是计算并绘制每条推文的发送数量接收数量比率

输出:

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

现在我们清楚地看到,在一周的中间,推文与印象的比率确实是最高的。

😠变得多愁善感&看看消极是什么样子

我们可以对这些推文做的一件事就是计算文本情感。要做到这一点,我们可以使用 VADER (Valence Aware 词典和情感推理机),这是一个专门设计来分析社交媒体上表达的情感的词典和情感分析工具。

下载 vader 词典后,我们将情感强度分析器应用于文本栏。它将返回一个包含四个值的字典。

注意:你会注意到情感栏已经出现在上面的一个 gists 中。说到这个数据分析项目的年表,这一步👆(计算情绪,)完成的比较早。

输出:

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

不用说,转向柱需要清理一下。🧹:首先让我们看看我们总共有多少正面、负面和中性的推文。

输出:

{‘positive’: 380, ‘negative’: 69, ‘neutral’: 80}

69 条负面推特?!我以为我是一个嬉皮士式的推特精灵。我们一会儿会检查它们。

首先让我们创建四个单独的列,每种情感值用一个数字表示。这对后面的计算会有帮助。

现在,我们可以过滤负面推文。让我们选出消极得分最高的人来看看根据 VADER 所说的“消极”是什么样子。

输出是负面得分最高的两条推文的文本:

#1

👌 Be your product's worst critic, said @susanavlopes from @onfido at #JAMLondon 2019.

What's the latest criticism you've given to your #product? [https://t.co/SxJbmrtQQu](https://t.co/SxJbmrtQQu)

#2

Connect with #product designers from Barcelona! 🇪🇸🎨

How?

Follow this list (Come on, who doesn't like a good list! ) 👉 [https://t.co/gy2bZjyXmy](https://t.co/gy2bZjyXmy)

Anyone missing? Tweet at us so we can add them! #pmot #design #prodmgmt

我的假设是,否定、负面最高级以及“批评”或“失踪”等词的存在导致情绪分析器将推文归类为负面。

哪几天是正面和负面推文的来源?

The top value of positive sentiment was observed on Saturday (2.108), and top value of negative sentiment on Tuesday (1.04).The lowest value of positive sentiment was observed on Tuesday (-1.217), and the lowest value of negative sentiment on Sunday (-1.976).

为了更清楚起见,让我们使用我们之前编写的函数来绘制它:

输出:

*#plot sentiment for week day*
plot_means_by_weekday(week_mean_norm_df,'sentiment_positive', 'sentiment_negative', 'sentiment_compound')

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

显然,周二需要一些欢呼!😐

它有最低的积极情绪值和最高的消极情绪值。可能是来自我们常青图书馆的相同的“负面”推文在同一天被持续发送。

那个周末是愉快的,这可能是以下几个因素的组合:整个周末很少发推文,如果有的话,也往往比较轻松——不那么“聪明”,也不那么事务性。

🤔相关性:我们能违反数学定律吗?

任何敬业度指标和变量是否相互关联?检查的方法只有一个。计算相关性。

对这些值的标准解释是:0.7 表示强正相关,0.5 表示中等相关,0.3 表示弱正相关(加上一个负号,表示负相关)。

我们可以绘制相关值,尽管如此多的值可能会使更少而不是更清晰。不过,它会成为一个漂亮的浴室瓷砖图案。🤷‍♀️

*#plot correlations*
fig, ax = plt.subplots(figsize=(15,15)) 
_ = sns.heatmap(corr, annot = True, ax=ax)plt.title("Correlation matrix of engagement metrics", fontsize=16)
plt.show()

输出:

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

前面要点的打印结果更容易理解:

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

您可以将这些结果解读为:

  • 展示越多,参与越多,参与越多,个人资料点击越多。
  • 喜欢越多印象越多,印象越多喜欢越多,等等。

这些结果并不令人惊讶。让我感到惊讶的是,如果字数与字符数呈负相关,这将违反数学定律。

🤠下一步!

我将从 Twitter Analytics 收集更多的数据,也许最终样本量会大到足以获得有统计学意义的结果。

如果我有更多的耐心,我会尝试创建更大的自举样本。只是因为(我觉得?)我可以,因为它增加了样本量,有助于获得更有意义结果,而不需要等待更多的数据。

Twitter 数据分析的更多帖子:

数据科学中最悲伤的等式

原文:https://towardsdatascience.com/the-saddest-equation-in-data-science-e60e7819b63f?source=collection_archive---------7-----------------------

为什么统计永远不会给你真相

下面是文章的音频版本,由作者为你朗读。

准备一盒纸巾!我将要投下一个关于统计学数据科学的真相炸弹,它会让你热泪盈眶。

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

模因模板:来源

推断=数据+假设。换句话说,统计数字不会给你真相。

常见的神话

以下是一些标准的误解:

  • “如果我找到正确的方程式,我就能知道未知的东西。”
  • “如果我足够努力地计算数据,我就能减少不确定性。”
  • “统计可以把数据转化为真理!”

它们听起来像童话,不是吗?那是因为他们是!

痛苦的事实

世界上没有让你无中生有的魔法,所以现在就放弃那个希望吧。统计学不是这样的。从统计学家那里得知。(作为奖励,这篇文章可能会让你避免浪费十年的时间去研究统计的黑魔法来追逐那个难以实现的梦想。)

不幸的是,有很多骗子可能会试图说服你。他们会对你施一个典型的欺负动作,“你不明白我用什么等式来打你,所以在我的优势面前低头,照我说的做!”

抵制那些装腔作势的人。

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

图片:来源

别摔着地,伊卡洛斯!

把统计推断(统计)想象成从我们知道的(我们的样本数据)到我们不知道的(我们的人口参数)的类似伊卡洛斯的跳跃。

在统计学中,你知道的并不是你希望知道的。

也许你想要明天的事实,但你只有过去能通知你。(记不住未来的时候好烦是吧?)也许你想知道你所有的潜在用户对你的产品有什么看法,但是你只能问一百个用户。然后你要处理的不确定性

这不是魔法,这是假设

你怎么可能从你知道的跳到你不知道的?你需要一座桥来跨越这个鸿沟…而这座桥就是 假设 。这让我想起了所有数据科学中最痛苦的等式:数据+假设=预测。

数据+假设=预测

(如果你喜欢,可以随意用“推断”或“预测”来替换单词“预测”——它们在这里都是同一个东西:对你无法确定的事情的陈述。)

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

假设在你知道什么和不知道什么之间架起了一座桥梁。图片:来源

什么是假设?

如果我们知道 所有事实(并且我们知道我们的事实实际上是真实的事实),我们就不需要假设(或统计学家)。假设是你用来弥合你所知道的和你希望你知道的之间差距的丑陋补丁。当你忽略事实时,你必须使用这些技巧来进行数学运算。

假设是丑陋的创可贴,你贴在信息缺失的地方。

我应该说得更直截了当吗?假设不是事实,它是你编造的一派胡言,因为你的知识中有很多漏洞。如果你习惯于用你的过度自信区间来欺负别人,花点时间提醒自己,把任何基于假设的事情称为真理是牵强的。最好开始把整件事当成个人决策工具不完美但聊胜于无(具体情况)。

统计是你在一个不确定的世界中尽力而为的尝试。

总是有假设的。

假设是决策的一部分

给我看一个“无假设”的现实世界决策,我会快速说出一大堆你自己都没有意识到的隐含假设。

**举例:当你读报纸时,你是否假设所有的事实都被核实了?当你制定 2020 年的计划时,你是否认为不会有全球性的疫情?如果您分析了数据,您是否认为信息是准确无误地捕获的?你认为你的随机数发生器是随机的吗?(他们通常不是。)当您选择网上购物时,您是否假设会从您的银行账户中提取正确的金额?你上次吃的零食呢,你认为它不会毒死你吗?当你服药的时候,你是否知道任何关于它的长期安全性和有效性的事情…或者你是假设的?

不管你喜不喜欢,假设是决策的一部分。

不管你喜不喜欢,假设总是决策的一部分。对真实世界数据的适当探索应该包含大量写下的假设,其中数据科学家坦白他们不得不走的弯路。

即使你选择避开统计数据,你也可能在用假设来指导你的行动。为了安全起见,跟踪你的决策所基于的假设是至关重要的。

统计“魔法”是如何发生的

统计学领域为你提供了一整套工具,使你的假设形式化,并结合证据做出合理的决策。(点击这里观看我的 8 分钟统计简介。)

期待一个包含不确定性和概率的分析成为真理的来源是荒谬的。

是的,这就是统计“魔法”是如何发生的。选择你愿意接受的假设,然后你将它们与数据结合起来,在这个邪恶组合的基础上采取合理的行动。这就是所有的统计数据。

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

伊卡洛斯插图:来源

这就是为什么包含不确定性和概率的分析永远不会成为真理的来源。没有秘密的黑暗艺术可以为你做到这一点。

两个人可以从相同的数据中得出完全不同的有效结论!只需要使用不同的假设。

这也是为什么两个人可以从相同的数据中得出完全不同的有效结论!只需要使用不同的假设。统计学给了你一个更深思熟虑地做决定的工具,但是没有唯一正确的方法来使用它。这是一个个人决策工具。

一项研究的好坏取决于你对它做出的假设(T2)。

科学呢?

当一个科学家用统计学得出结论的时候意味着什么?简单地说,他们已经形成了一个观点,并决定与世界分享。这不是一件坏事——科学家的工作就是不情愿地形成观点,这让我对假设这些观点值得一听感觉更好。

勉强形成观点是科学家的工作。

我非常喜欢听取那些比我更有专业知识和信息的人的建议,但是我从来不会让自己把他们的观点和事实混淆。但是,尽管许多科学家精通概率工作,我也见过其他科学家制造足够多的统计混乱,足以持续好几辈子。观点不能(也不应该)说服那些不愿意做出假设的人,那些观点是从证据和相互的混合中得出的——合意的未经检验的假设。

如果你想听更多我对科学和科学家的思考,请阅读 这篇

概括起来

最好把统计学看作是在不确定的情况下改变你想法的科学。这是一个帮助你在缺乏信息时做出深思熟虑的决定的框架…并且没有唯一正确的方法来使用它。

不,它没有给你你需要的事实;它给了你所需要的去应对没有这些事实摆在第一位。整个目的是帮助你在一个不确定的世界中做到最好。

要做到这一点,你必须开始做假设。

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

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

在这里欣赏整个课程播放列表:bit.ly/machinefriend

喜欢作者?与凯西·科兹尔科夫联系

让我们做朋友吧!你可以在 TwitterYouTubeSubstackLinkedIn 上找到我。有兴趣让我在你的活动上发言吗?使用表格联系。

接下来

在后续的文章中,我会写假设从何而来,如何挑选“好的”假设,以及测试一个假设意味着什么。如果这些话题让你感兴趣,你的转发是我最喜欢的写作动机。

与此同时,本文中的大部分链接会带你去我的其他思考。不能选择?尝试以下方法之一:

[## 永远不要从假设开始

谎言,该死的谎言,还有 STAT101

towardsdatascience.com](/hypothesis-testing-decoded-for-movers-and-shakers-bfc2bc34da41) [## 分析和统计有什么区别?

理解两种完全不同职业的价值

towardsdatascience.com](/whats-the-difference-between-analytics-and-statistics-cd35d457e17) [## 可解释的人工智能不会交付。原因如下。

可解释性并不是信任的最佳基础

medium.com](https://medium.com/hackernoon/explainable-ai-wont-deliver-here-s-why-6738f54216be)

简单 Python 中的 Sardinas-Patterson 算法

原文:https://towardsdatascience.com/the-sardinas-patterson-algorithm-in-simple-python-9718242752c3?source=collection_archive---------30-----------------------

检查可变长度代码的唯一可解码性

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

图片来自皮克斯拜

在关于数据科学的对话中,两个经常被冷落的领域是 信息论 **,**研究信息的量化、存储和交流, 编码理论 ,研究代码的属性及其各自对特定应用的适用性。加雷思·a·琼斯和 j·玛丽·琼斯的《信息和编码理论》是对这两个领域的精彩介绍。几年来,我一直把这本书列在我的待办事项清单上(我是在遇到作者的另一本书初等数论后添加的,在宾夕法尼亚州立大学数学 465 中),最近决定打开它,看看它到底是关于什么的。

如题,这篇帖子讲的是撒丁纳斯-帕特森算法 (书中定义为撒丁纳斯-帕特森定理),可以用来判定一个变长码是否唯一可解码。

在我们深入研究算法之前,我们需要给出一些定义。出于可读性的考虑,我将在这里做一些演示,但更严格的定义和所有代码可以在我的 Github 上的笔记本中找到。

定义

出于我们的目的,我们可以把一个代码 C 想象成一组独特的码字,这些码字由一些源字母表中的符号构成。在这篇文章中,我将把我的源字母表限制为{0,1,2},只是为了保持简单,但是我们将看到的代码可以处理更多。本例中的码字将是由至少一个数字组成的字符串,如 012、1201021,甚至只是 0。

码字的长度是该码字中使用的符号序列的长度。例如,码字 0012 的长度是 4,因为它由序列(0,0,1,2)组成。

在许多频道上,没有指示一个码字在哪里结束,下一个码字在哪里开始——这是我们问题的核心。我们得到一串字母,只有代码本身的属性允许我们确定是否可以恢复编码的信息。例如,我们可能需要解释以下符号串:

1202120

如果从代码字构造的每个符号串(例如上面的串)可以被唯一地分解成恰好一个代码字序列,则代码是唯一可解码的。可以很容易地证明,所有字都具有固定长度的代码是唯一可解码的,但是我们对更困难的问题感兴趣——确定码字具有可变长度的代码是否是唯一可解码的。

让我们看几个可能在字符串 1202120 中产生的不同代码,来说明我们所说的“唯一可解码性”是什么意思

唯一可解码的代码

首先,假设 C = {120,21,20}。

我们可以通过找到共享第一个字母的码字来开始解码消息 1202120,在这种情况下,120 也以 1 开始,因此我们可以将该消息“因式分解”为 120.2120。

接下来,我们移动到下一个符号 120。 2 120,并检查是否有任何码字以 2 开头——我们有两个码字,21 和 20,所以我们看看是否找到下一个符号的匹配:120。 21 20。

答对了。

21 是一个有效的代码字,幸运的是,接下来的两个符号 20 也是。我们可以将此消息因式分解为 120.21.20。

不可唯一解码的代码

现在,假设 C = {02,12,120,21,20}。

使用与上面相同的过程,我们可以得到 1202120 的两种不同的因式分解:

12.02.120

120.21.20

因为我们的频道没有告诉我们一个单词在哪里结束,下一个单词在哪里开始,所以我们不知道该用哪个。在特定情况下,这可能是毁灭性的。例如,假设我们像这样编码重要的英语单词:

02 →不是

12 →还没有

120 →清除

21 →至

20 →引爆

我们的信息可以被解读为:

还不清楚

或者

准备引爆

我会让你的想象力来填补这个不幸的场景,既导致这种混乱,又在误译后展开。

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

图片来自 Pixabay

为了避免这样的歧义,我们需要确保我们使用的代码字集是唯一可解码的。为此,我们有萨丁纳斯-帕特森算法

定义 C(n)

我将试图说明这个算法是最简单的,最不数学的英语,但是我们需要建立我们的方法来达到它。

首先,提醒一下:

C 是我们感兴趣测试的一组代码字。当我们对我们的信息进行编码时,这就是我们映射到的单词集。在我们上面的非唯一可解码的例子中,C 是{02,12,120,21,20}。我们让 C(0) 等于 C ,我们将归纳定义一个新集合的序列 C(1),C(2),…。请记住,C(n)并不代表 C 作为 *n,*的函数,而是下标 C_n 的索引。括号是为了以后的可读性。

C(1) 是一组后缀,可以加到 C 中的单词上,以便得到 C 中的另一个单词

例如,0 可以加到 12 上得到 120,所以 0 在 C(1)中。事实上,这是唯一的后缀,它可以添加到 C 中的一个单词,以创建 C 中的另一个单词,因此 C(1) = {0}。下面的代码演示了这一点,它找到了所有可以附加到“a”以在集合{a,an,apple}中创建另一个单词的后缀。

c = set(['a', 'an', 'apple'])
c1 = set()for u in c:
    for v in c:
        if len(u) > len(v) and u.find(v) == 0:
            c1.add(u[len(v):])
c1
# {'n', 'pple'}

我们在外循环中遍历c中的单词,然后(在这种情况下)在内循环中再次遍历单词(当你到达那里时,与下面的例子进行比较)。在每一步,我们检查内部循环的单词是否是代码中的一个单词的开头,如果是,我们就给c1加上后缀。

现在我们已经定义了 C、C(0)和 C(1),我们可以归纳定义 C(n)的更一般的定义:

C(n)是所有后缀的集合,这些后缀可以被添加到 C 中的原始码字之一以创建 C(n-1)中的后缀,或者可以被添加到 C(n-1)中的后缀以创建原始码字之一。

继续我们的 C = {02,12,120,21,20}和 C(1) = {0}的例子,C(2)是可以添加到 C 中的单词以创建“0”的所有后缀的集合(没有后缀),或者是可以添加到 C(1)中的后缀以从 C 创建单词的后缀的集合——唯一的元素是“2”,它可以添加到“0”以创建 02。这意味着 C(2) = {2}。

诸如此类。我们可以将它包装在一个函数中,该函数接受 C 和 n,生成 C(n-1),并执行与上面的函数相同的比较。因此,我们有generate_cn(c, n),我们可以用它来计算 C(3)、C(4)、C(5)和 C(6):

def generate_cn(c, n):
    if n == 0:
        return set(c)
    else:
        # create a set to hold our new elements
        cn = set()

        # generate c_(n-1)
        cn_minus_1 = generate_cn(c, n-1)

        for u in c:
            for v in cn_minus_1:
                if (len(u) > len(v)) and u.find(v) == 0:
                    cn.add(u[len(v):])
        for u in cn_minus_1:
            for v in c:
                if len(u) > len(v) and u.find(v) == 0:
                    cn.add(u[len(v):])
        return cnfor i in [3, 4, 5, 6]:
    print(generate_cn(set(['02', '12', '120', '20', '21']), i))# {'0', '1'}
# {'20', '2'}
# {'0', '1'}
# {'20', '2'}

一般逻辑与我们检查的第一段代码相同,但是现在我们必须检查 c 和 c(n-1)中的前缀。

注意在输出中,对于我们的非唯一代码,我们最终会遇到一个输出循环;这是我们在构建撒丁岛-帕特森算法语句所需的最终集合时需要小心处理的事情。

在继续之前,还值得注意的是,如果 C(n)为空,那么 C(n+1)也将为空。考虑下面的代码,它构造了 C(0)、C(1)和 C(2),对于代码{‘0 ‘、’ 1 ‘、’ 21’}:

c = set(['0’, '1', '21'])for n in range(2):
    print(‘C({})’.format(n), ‘\t’, generate_cn(c, n))#C(0) {‘0’, ‘1’, ‘21’}
#C(1) set()
#C(2) set()

在构造 C(1)时,没有后缀可以附加到 C(0)中的任何单词上,以从 C(1)创建另一个单词。因此,在 C(2)中我们没有什么可追加的。可以想象,这意味着 C(3),C(4),等等也将是空的。

定义(C∞)

理解撒丁纳斯-帕特森算法的最后一块拼图如下:

C(∞) :所有 C(n)的并集,其中 n ≥1。

C(∞)可以被认为是所有可能的后缀的集合,这些后缀从在解码中产生歧义的原始码字中导出。

我们将通过构造 C(1)、C(2)、C(3)等等来计算它,直到发生以下两种情况之一:

  1. C(n)为空,在这种情况下 C(n+1)将为空,在这种情况下 C(n+2)将为空…以此类推。
  2. 我们遇到一个 C(n ),它等于先前计算的某个 C(m ),这表明一个类似上面看到的循环。

可以证明,其中一个最终会发生;直观来看,一个有限的源字母表,一个有限的 C,拆原字的方式也一定是有限的。

考虑到这些因素,我们有以下函数:

def generate_c_infinity(c):
    cs = []
    c_infinity = set()
    n = 1
    cn = generate_cn(c, n)
    print('c_{}'.format(n), cn)while len(cn) > 0:
        if cn in cs:
            print('Cycle detected. Halting algorithm.')
            break
        else:
            cs.append(cn)
            c_infinity = c_infinity.union(cn)
            n += 1
            cn = generate_cn(c, n)
            print('c_{}'.format(n), c_infinity)
    return c_infinity

c = set(['02', '12', '120', '20', '21'])
generate_c_infinity(c)

为了检测循环,我们将每个 C(n)存储在一个 Cs 列表中。如果我们遇到一个以前见过的 C(n ),我们就中断循环,如果我们遇到任何空的 C(n ),循环前提条件就失败。

考虑到这一点,加上我们工具包中的这些函数,我们有足够的拼图块来最终组合成唯一可解码性的必要和充分条件,这就是所谓的萨丁纳斯-帕特森算法

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

马库斯·温克勒在 Unsplash 上的照片

撒丁纳斯-帕特森算法

一个码 C 是唯一可解码的当且仅当集合 C 和 C(∞)不相交。

稍微解释一下,记住每个 C(n)给我们一个可能产生歧义的后缀,就像我们在 not . yet . clear/clear . to . explode 例子中看到的那样。这个定理的另一种表述方式是

“在原始代码字集中没有产生歧义的后缀.”

使用我最喜欢的 set 的属性,将它实现为一个函数非常简单:

def sardinas_patterson_theorem(c):
    """
    Returns True if c is uniquely decodable
    """
    c_infinity = generate_c_infinity(c)
    return len(c.intersection(c_infinity)) == 0def check_decodability(c):
    if sardinas_patterson_theorem(c):
        print(c, 'is uniquely decodable')
    else:
        print(c, 'is not uniquely decodable')c = set(['02', '12', '120', '20', '21'])
check_decodability(c)

我们做到了!判定一组码字是否唯一可解码的一个充要条件。

我已经尽了最大努力让普通读者远离大部分数学符号,但是如果你有兴趣阅读更正式的(并从书中整理和稍微改写)定义,或者如果你有兴趣深入笔记本本身,你可以在 my github 上找到它们。

投资组合优化的科学

原文:https://towardsdatascience.com/the-science-of-portfolio-optimization-186607d30416?source=collection_archive---------21-----------------------

如何使用数据科学来{重新}分配投资

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

尼古拉斯·卡佩罗在 Unsplash 上拍摄的照片

来自《走向数据科学》编辑的提示: 虽然我们允许独立作者根据我们的 规则和指导方针 发表文章,但我们并不认可每个作者的贡献。你不应该在没有寻求专业建议的情况下依赖一个作者的作品。详见我们的 读者术语

不久前,我在为我的博士论文寻找灵感时观看了两门优秀的课程,即金融理论 I数学中的金融应用主题,这两门课程都可以在麻省理工学院的开放课件上免费获得。这些课程帮助我思考时间序列数据中的*【变化】*(我博士的课题)意味着什么。我想确定我已经学完了那两门课程的内容。因此,我决定实现一些产品,包括定价估算器、算法交易器和我将在这篇文章中提出的想法:投资组合优化器。

序文

这一切都始于优化交易机器人的想法。更具体地说,我在寻找能够检测时间序列变化并对不同类型的加密货币市场做出反应的机器人。我想到了创建一个 bot 投资组合的想法,它将研究市场的变化,并分配一个合适的 bot。

在研究交易机器人和实现我自己的想法时,我发现有人在为股票市场实现类似的软件。在后来的交谈中,我发现这个人碰巧和我学了完全一样的课程。当然,这两个课程都提出了这个想法来定量评估更好的资产组合。注意,类似的软件确实存在,比如 PyPortfolioOpt 。我的想法建立在最初发布的 Eiten 之上,这是一个早期的开源项目。以下是我对投资组合优化的看法。

注意,本帖不构成理财建议。如果你想投资,请咨询专业人士。最重要的是,做你自己的研究。

投资组合选择与投资组合优化

首先,选择一组资产进行投资并不等同于对其进行优化。当选择一组资产时,人们在选择他们信任的公司的同时寻求分散投资。在优化方面,人们分析其选择的投资组合,管理投资于每项资产的金额。例如,一个人可以将 5%、30%和 0%投资于三种不同的资产。这是一个试图将风险最小化和/或回报最大化的资源分配问题。

我根据其他人之前选择的股票和我自己的判断选择了一些资产,我将用它们来举例说明我的管道。这些股票是:微软(Microsoft)、亚马逊(Amazon)、北欧美洲油轮(Nordic American Tanker)、美国银行(Bank of America Corp)、达美乐比萨(Domino’s Pizza)、迪士尼(Disney)、可口可乐(Coca-Cola)、可口可乐(KO)、好市多(COST)和星巴克(Starbucks)。让我们从我选择的价格图表开始看。

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

一段时间内选定资产的价格。

随着时间的推移,这些股票似乎表现不错。然而,看价格并不能让我清楚地知道我能赚多少钱。我真正想知道的是,在研究期间,这些资产的回报率是多少。为了找到答案,我计算了每只股票在一段时间内的回报率。我在下图中展示了这个计算。

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

每项资产的累积百分比回报。

如果我只看价格,我会说亚马逊似乎比其他投资做得更好。当我分析回报时,我能更好地理解 MSFT 和 DPZ 紧随其后。

预测未来价格

我们希望我们的资产在未来表现良好。挑战是:我们不知道未来是什么样子,所以我们需要估计。我们首先将数据分成两组:历史数据和未来数据。请注意,因为我们没有应用机器学习算法,所以我们没有分成训练、验证和测试。

为了估计未来的回报,我们可以使用几种方法,如样本回报CAPM 等等。不同的方法会给我们每种资产不同的价格估值。使用估值器,我们可以分析每项资产的估计回报。例如,在下图中,我们可以探究四种不同的方法是如何估算所选资产的过去收益的。

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

给定我们的评估者,每个选定资产的估计回报

请注意,当我们使用基于百分比收益(又名 get_price_deltas)的估算器时,我们对所有资产的估值都是正值。使用更复杂的方法,如对数标度估计量(又名 get_log_returns),我们可以捕捉到 NAT 在此期间显示的负回报。然后,我们可以将历史数据中的估值与未来数据中的估值进行比较,并计算回报,这样我们就可以评估每种方法,并选择一种方法来计算投资组合权重。我们计算了过去和未来之间的误差,并显示在下图中。

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

估计方法的平均绝对误差

在上面的分析中,最佳估计量是指数加权估计量(又名 get_predicted_returns)。其过去和未来数据之间的平均绝对误差(MAE)小于 0.1%。因此,我们将选择这个估计量来预测我们的投资组合权重。

协方差

有了回报,我们现在可以估计所选资产的相关性。我们将使用协方差计算来检查哪些资产具有相似的回报。这将使我们能够分散投资,确保我们投资的资产在其他资产表现不佳时能够增长。

再说一遍,市场是动态的,事情一直在变。过去相关的资产将来可能不相关!我们需要找到一个能很好地概括未来数据的协方差矩阵,所以我们比较了几种协方差计算方法。我们在下面展示了一个例子,但是我们支持 OAS [1],Ledoit-Wolf [2]这样的方法。我们还支持基于随机矩阵理论的协方差矩阵清理方法。我不会在这方面赘述,你可以阅读斯科特·罗马的博客文章或者埃德尔曼和饶的精彩课堂笔记。

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

使用 NumPy 协方差函数计算的协方差矩阵

有了协方差矩阵和权重,我们现在可以应用策略来生成投资组合。策略向目标函数优化。例如,我们可以针对夏普比率进行优化,我们希望在风险和回报之间找到平衡。使用回报和协方差矩阵,该策略将输出每项资产的权重。这些权重可以是正的也可以是负的。正权重意味着策略建议多头,而负权重意味着策略建议空头。多头头寸意味着资产被买入,我们预计回报将是正的(价格将随着时间的推移而上涨)。同样,空头头寸意味着资产被出售,我们预计回报将是负的(价格将随着时间的推移而下降)。你可以在这里阅读更多关于多头和空头头寸

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

投资组合中每项资产的每种应用策略的权重

在上图中,我们可以看到每个策略赋予每个资产的权重。然后,我们可以通过计算投入资金与权重的比率,使用这些权重来输出投资组合。

测试我们的投资组合

现在最大的问题是,如果我们使用给定策略的输出进行投资,我们的投资组合表现会有多好?我们可以通过将我们学到的策略运用到数据中来做到这一点。做机器学习的人(像我一样),可能会对此感到畏缩,但没什么好害怕的,我们有部分数据集。请将此视为验证测试。

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

随着时间的推移,建议投资组合的回报

在上图中,我们可以看到所有提议的投资组合都击败了 S&P500(间谍)基准。众所周知,遗传算法的回报是基准的两倍多。

但我们的投资组合未来会有好的表现吗?

我们将通过两种不同的评估来回答这个问题。首先,我们将对未来价格进行蒙特卡洛模拟。简而言之,这是一种随机方法,我们使用过去的价格来寻找分布,并随机生成未来的价格。

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

蒙特卡洛试验中生成的投资组合的性能

我们看到,如果价格遵循蒙特卡洛价格,计算出的投资组合继续表现良好。特别是,最大的夏普投资组合(MSR)预测三个月后将超过 0.8%。

我们还留出了 90 天的数据来测试投资组合是否真的可以推广。给定投资组合权重,我们得到以下表现。

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

生成的投资组合在未来数据中的表现

我们可以看到,生成的投资组合表现接近基准,短期内表现稍差。MSR 的投资组合有时表现优于基准,但也存在差异。我们可以从最后的分析中学到一些东西:多元化很重要。该基准只有来自不同行业的大约 500 家不同公司,而拟议的投资组合只有 10 家。这使得投资组合更容易受到某个行业或某项资产特定变化的影响。选择好的股票甚至比优化更重要!

结论

投资组合优化是一项艰巨的任务,应该谨慎从事。一方面,一些渠道报告称,T2 的大多数基金经理无法跑赢基准,比如标准普尔 500 指数。另一方面,像 Renaissance 这样的基金多年来一直跑赢基准。

最后,投资组合构建甚至比投资组合优化更重要!优化很难,但如果我们试图优化表现不佳的股票,那就更难了。记得做你自己的研究,明智地选择资产,并在下面留下你的掌声。如果你喜欢你所读的内容,不要忘记关注我以获取更多未来的内容。

外部链接

这篇文章中使用的软件是开源的,可以在我的 GitHub 中公开获得。欢迎随时在 LinkedIn 上联系我!对我好奇?这里是我的网站。看看我关于股票价格预测的最新文章

参考

[1]陈 Y,威塞尔 A,灵族,英雄敖。MMSE 协方差估计的收缩算法。 IEEE 信号处理汇刊。2010 年 6 月 14 日;58(10):5016–29.

[2] Ledoit O,Wolf M .高维协方差矩阵的条件良好的估计量。多变量分析杂志。2004 年 2 月 1 日;88(2):365–411.

[3]埃德尔曼 A,饶 NR。随机矩阵理论。数字行动。2005 年 5 月 1 日;14:233.

[4]穆尼 CZ。蒙特卡洛模拟。Sage 出版物;1997 年 4 月 7 日。

超级成功的科学

原文:https://towardsdatascience.com/the-science-to-super-smash-success-272cad62b03d?source=collection_archive---------48-----------------------

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

图片来自 Unsplash.com(免费)

每次都使用 Python 准确预测如何赢得超级粉碎兄弟终极版。

使用 Ryland Leupold 完成分析。在 GitHub 上找到代码 这里

介绍

如果你正在读这篇文章,你可能听说过,玩过,或者看过别人玩超级粉碎兄弟。你也可能在游戏中表现很好,还可以,或者很差(像我一样)。**下面的 Python 建模和分析使用了《超级粉碎兄弟终极版》中 73 个可玩角色的角色战斗统计数据,以精确地最大化任何人的获胜机会。**觉得不可能打败游戏?继续读。所有的结论和最大化胜利的建议都列在底部。

背景

超级粉碎兄弟终极版是一款由任天堂创建的交叉格斗视频游戏,有超过 70 名来自不同任天堂特许经营的可玩战士。这款游戏非常受欢迎,人们在网上花费数小时创建自己的等级和排名,亲自决定“最佳”超级粉碎角色。

为了进行更定量的分析,关于每个可玩角色的战斗统计数据是从ultimateframedata.com中抓取的,它提供了每个角色的地面、空中、特殊和其他攻击的信息,以及每次攻击的 fps 启动速度(点击攻击启动的控制器后多长时间,以每秒帧数为单位)。

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

分析

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

一个关键的主要发现是较轻的角色使用与他们较重的对手相同的击打动作在所有的战斗速度下造成较少的伤害。不管速度如何,只有重的角色才有稳定的击打伤害,这表明他们总是更强大。

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

另一个关键发现是,任何自降速度的减缓都会导致受到的伤害大大降低。增加移动速度只会对对手造成少量的伤害增加,这意味着移动更慢,协同攻击比跑更好。

也有几个权衡的时间,每一步采取完全执行对手。需要更长时间完成的移动往往有更高的伤害,但会迫使角色在原地停留更长时间;当执行更长的移动时,风险与回报类型的思考。下面举例说明了这种权衡。

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

建模

为了测试更重的角色总体上更慢但更强大的普遍发现,我们可以分析角色属性如何最好地分类粉碎-移动能力;换句话说,什么样的角色整体扣球能力更高/更强?

使用重量、力量和速度属性将每个角色分类为强或弱类别,我们使用决策树分类器(简单条件预测器)、梯度推进分类器(最小化总体误差)和逻辑回归(关系/预测器的强度)。这三个测试可以全面确认或拒绝我们的发现。

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

三个模型中的每一个都证实了 73%的准确率在预测角色的粉碎力。每个模型都表明重的体重、中等的倾斜力量和慢的速度是性格力量的最强预测因素。这个证实了一个理论,即更重、更慢的角色是最强大的。

结果和建议

我们可以明确地得出结论,当选择一个粉碎的终极角色时会有权衡,如果这个角色发挥了它的长处,胜利是有保证的。让我们重温一下我们关于较重的角色最强大的结论。单纯选择较重的角色并不能保证胜利。还必须考虑以下因素:

  1. 重的角色施加更多的伤害,但是速度更慢,更容易被击中。
  2. 专注预测对手动作用高伤害招式惩罚。
  3. 持续时间长的招式会造成很大的伤害,但是只有在你确信它们会击中的情况下才使用**,否则你就会成为活靶子。**
  4. 最重的人物是布瑟和大金刚。

但这并不意味着只有更重的角色才能确保胜利!我们的速度分析告诉我们,较轻的角色应该按照以下相邻的规则来玩:

  1. 较轻的角色造成的伤害较少,但是更快也更难击中。
  2. 重点利用速度躲避对手并利用难以惩罚的快速移动。
  3. 仅在必要时运行,并尝试缓慢下降以获得更少的损伤/更多的整体给定。
  4. 最轻的角色是桃公主和吹牛老爹孔。

相信了吗?自己试试这些建议,或者在你自己的超级粉碎兄弟技巧下面发表评论——看看数据是否支持你所说的。

人工智能系统中分析可变性的灾难

原文:https://towardsdatascience.com/the-scourge-of-analytical-variability-in-ai-systems-fc6e1ec8daae?source=collection_archive---------65-----------------------

走向艾的生产力高原

为什么工作流和管道的标准化对于构建高效可靠的人工智能系统至关重要?

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

Unsplash 上由 Franck V. 拍摄的照片

概率论的经典解释中有一个著名的悖论叫做 贝特朗悖论 。伯特兰把一个非常简单的问题表述如下。

在一个圆内接一个等边三角形,然后确定随机选择一条弦使其尺寸大于三角形边长的概率。

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

感谢:罗伯特·皮什(维基百科 ) CC BY-SA 3.0

他给了三个 有效的论据来解决这个问题,但每一个都产生了不同的结果。如果感兴趣,可以查看维基百科上关于这三个论点的文章。这个悖论的解决源于这样一个事实,即每一个有效的论点似乎都在解决同一个问题,但本质上它们是在解决不同的数学问题。

我将在这篇文章的背景下重新审视这个悖论,但在此之前,需要强调我们目前构建人工智能系统的方式中的一些问题。

在 ICT 行业,工程师越来越多地转向构建人工智能系统,通过解决现有问题和提高流程效率来为客户增加价值。随着深度学习看似成功的应用,专家们确信人工智能的冬天终于结束了。

但是,在建立人工智能系统时,我们至少要处理三个主要问题(各种专家也报道过)。

构建黑盒模型

ML 工程师在不同的抽象层工作。对于打算将其与整个系统集成的工程师来说,底层机器学习算法往往是一个黑匣子。一般来说,一个特定模型的使用伴随着许多很少被验证的假设。

ML 工程师倾向于使用大量开源包。一般来说,在 python 环境的情况下,一个特定的包带有一系列的依赖性。如果达到了预期的结果,那就好,否则就要尝试另一个具有大量依赖项的包。不需要投资去理解为什么某件事行得通,或者为什么行不通。这些软件包没有标准,而且通常没有对这些模型进行严格的测试和评估。这种黑箱方法不利于确保人工智能系统的可靠性。此外,当正确性本身受到质疑时,效率被迫退居二线。

但问题不仅仅是工程师应该遵循的最佳实践。深度学习模型目前在工作中并不透明,它们的底层特征对研究人员来说仍然是一个谜。事实上,实证结果与现有的统计学和最优化理论相矛盾。事实上,据称深度学习研究人员的行为就像中世纪炼金术士试图创造类似于他们试图制造黄金的魔法。

这种缺乏理解也是造成另一个问题的部分原因,这就是缺乏再现性。

缺乏再现性

人们期望一个知名研究者发表的算法在被其他人独立正确地重新实现时会产生相同的结果(无论是人还是机器)。

由于糟糕的学术实践,部分原因是围绕人工智能的炒作,许多研究人员在开发算法时走捷径。例如,最近有研究表明,许多有望超过现有最先进水平的深度学习模型要么未能令人信服地做到这一点,要么通过应用简单的启发式算法,传统的 ML 算法可以在指定的数据集上做同样的事情。另一个渎职的例子是只报告算法多次运行的最佳结果,而不披露差结果的细节。

除了缺乏对深度学习模型的理解,如上所述,研究人员未能解释他们的算法中可以归因于结果改善的部分。这使得另一个研究者很难分析为什么在重新执行时结果会不同。

隐藏的技术债务

当构建人工智能系统时,机器学习组件是微不足道的,而围绕它的“管道”消耗了大部分精力。来自 Google 的 Scully 等人在 2015 年展示了他们的工作,强调了构建 ML 系统的风险因素,由于未声明的数据依赖、纠缠、软件反模式等因素,这可能导致未来的高维护成本。

例如,考虑这样一个场景,其中为了特定目的以日志的形式提取数据。另一组在此基础上构建一个 ML 系统(或多个相互依赖的系统),假设数据将保持其一致性。在某个时间点,如果数据捕获方法或数据本身的性质被更改为适合原始目的,这将导致相关系统层级中的级联故障。

人工智能系统中的分析可变性是什么?

在此背景下,让我们以 ML 系统中的分析可变性的形式来讨论这些问题的主要表现。作为一个动机,首先让我们讨论一下最近在神经成像领域的工作,其中70 个独立团队的任务是使用相同的数据集测试相同的假设集。团队可以灵活使用自己的分析工作流程和管道。最后,由于方法不同,各小组得出的结论有很大差异。这就想起了前面解释过的著名的伯特兰悖论

这个悖论类似于一个典型的机器学习工程师试图建立一个系统来解决特定的现实世界问题的场景。类似于 Bertrand 给出的三个完全有效的论点,一个用英语给出的问题,但给出的解决方案结果是对应于三个完全不同的数学问题;ML 工程师有责任开发完全不同版本的系统,试图解决相同的问题,但本质上产生不同的结果。

当数据科学家或工程师分析、设计和实施 ML 系统时,上述三个问题以各种方式出现时,这种情况经常发生。

随着人工智能走向生产力的高原,我们预计它将超越脸书、谷歌、推特等互联网公司。并在医疗保健、医药、教育、交通等领域发挥更积极的作用。

考虑卫生部门中的任意场景,其中新疫苗已经成功开发,并且需要推荐系统来识别在第一阶段必须开始接种疫苗的人群。这项活动是最重要的,其风险远远高于推荐系统,推荐系统推荐电影供消遣。如果给三个数据科学家这个任务,他们会提出三个不同的系统,产生非常不同的输出。这样的 AI 系统可靠吗决策者为什么要相信这一点?

此外,如果同一个数据科学家再次应用相同的流程,是否能保证他会得到相同的解决方案?不出意料,答案是不!— 如上所述,ML 系统面临着大量的再现性问题。

人工智能系统中的这种分析可变性极其危险,因为它直接控制着人们的生活。

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

照片由 NeONBRANDUnsplash 上拍摄

潜在步骤

毫无疑问的事实是,最终,人工智能将达到其生产力的高原。但为了在最短的时间内达到这一目标,同时建立决策者的信心,人工智能从业者应对人工智能系统中分析可变性的灾难至关重要。

以下是实现这一目标的三种可能方法。

  1. 为开发 AI 系统的管道和工作流制定标准。确保作为构建模块的机器学习 API 配备有严格的使用指南。
  2. 在使用复杂的算法之前,数据科学家或 ML 工程师必须使用传统的 ML 算法或简单的试探法来开发基线。随着时间的推移,这些基线必须在行业中标准化。
  3. 软件测试人员和他们现有的范例对于‘测试’人工智能系统不是特别有用。应该开发更复杂的对抗性人工智能系统来做到这一点。本质上,它相当于由一组其他人工智能系统测试人工智能系统。这种方法值得单独写一篇文章。

随着我们转向人工智能在警察、医学、农业、安全等领域更负责任的应用。我们必须确保我们构建的人工智能系统是可靠和高效的。

领域知识—作为数据科学家,第二重要的技能。

原文:https://towardsdatascience.com/the-second-most-important-skill-to-have-as-a-data-scientist-2311f9efa143?source=collection_archive---------18-----------------------

你可能没有意识到这一点,但是如果你在一个非常具体的专业领域有丰富的经验,你可能有资格成为数据科学团队的一员。

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

照片由 马修·费尼

数据科学,直接去构建模型,谁关心领域知识,对吗?

数据科学目前正处于风口浪尖!在谷歌上快速搜索关键词,得到的不是该领域的维基百科页面,而是搜索结果第一页上的数百个教程。

虽然本质上并不是一件坏事,但容易获得的在线学习资源帮助了很多自学者,包括我自己,让我们涉足海洋。没有它,我们就很难理解如何自学。然而令人惊讶的是,我注意到在那些资源中很少提到“D o 主要知识】,即使是简短的。

或许,他们更多的是针对一个月内“学数据的误导,登顶 Kaggle 排行榜!这是社会迫切需要解决的一个主要问题。大规模在线学习平台没有让人们有能力胜任数据科学的工作,而是制造出无能的“程序员”,他们认为 Scikit-learn 库中的一个简单的 RandomForests 分类器可以解决所有问题!

诚然,基本的统计、数学和编码技能是一些较难掌握的技能,但数据科学家往往忽略了最基本的可行主题专业知识。但相比之下,题材专长才算王道!特别是在特定领域有丰富的工作经验,这可能是他/她最有价值的技能。

领域知识——它如何帮助企业?

与前面提到的相反,请注意大多数 Kaggle 竞赛的参与者并没有任何实质性的专业知识。然而,尽管缺席,他们还是一个接一个地赢得比赛,在排行榜上获得高分。

这是因为,幸运的是,在某个地方,有人足够聪明地思考&简化了做出预测的过程。因此,像 Scikit-Learn 这样的高级预测分析库在后端完成了大部分繁重的工作,然而,这些库足够健壮,即使使用默认参数也能产生令人惊讶的好结果。实际上,只需几行代码,任何一个汤姆、迪克和哈利都能够在数据集上训练一个模型&将其提交给 Kaggle,以最小的努力在排行榜上获得至少前 50%的分数。

另一方面,企业在主要的财务和时间限制下工作,同时试图维持他们在市场中的地位。别忘了,他们进入市场也是为了可持续地为自己创造利润。此外,一般来说,对于大多数企业来说,在内部投资开发特定于他们领域的算法是不可行的。因此,他们雇佣急需的数据科学人员,希望新员工能够帮助解决他们面临的问题。同样,如果机会出现了,就向前迈进,或者可能的话,利用它。

为什么领域知识对数据科学家至关重要?

数据科学家应该记住,领域知识的三个方面相互关联,但又清晰可辨,它们可以在上下文中定义为

  1. 源头问题,企业正在努力解决和/或利用
  2. 企业拥有的一套专门的信息或专业知识
  3. 特定领域数据收集机制的确切诀窍

另一方面,公众对数据科学& ML 有一个相当不幸的误解,即 ML & AI 是神话中的诺亚方舟,致力于解决曾经面临的每一个微不足道的问题。

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

“机器学习”

作者幽默地将其总结为 xkcd 漫画,其中数据科学家被视为来自霍格沃茨的巫师,拥有名为机器学习的魔杖,能够解决他们面临的任何问题或想要从中获利。【1】

但与普遍看法相反的是,数据科学家需要优先规划可持续的逻辑业务战略,然后实施。打个比方,建造一架穿梭于纽约和东京之间的航天飞机听起来像是一件愚蠢的差事。同样,猫狗分类器也没有任何可持续盈利的商业前景。相反,适应业务部门&获得必要的领域知识将对整个业务更有益,而不是立即构建预测算法的技术诀窍。

第二,也许是数据科学社区中讨论最多的话题是业务所拥有的信息的上下文。这些信息就像罗塞塔石碑,帮助分析师找到更好的方法和/或手段来完成他/她的工作。关于行业和领域的先验信息增强了基于数据集中的可用特征来制作更精确和准确的预测模型的过程。另一个好处是,该模型可以更好地推广到现实世界的情况。

此外,强调特征工程的重要性&这样做如何提高模型的整体准确性是很常见的&是社区各个角落讨论的话题。但是执行适当的和有洞察力的特征工程是一项技能,只有少数有经验的人能够做得很好。

因此,提醒我,我偶然看到了一篇由 Xavier Martinez 发表在—Catalonia GDP:Insights&Regression Analysis的相当有趣的文章,这是一个非常详细的&数据集特征工程组件的主要示例,用于创建更新的列/特征以供进一步分析。他根据数据集的特征工程 GDP 成分预测了加泰罗尼亚的 GDP 增长率&,这表明广泛精通一个领域可以帮助做出非常有洞察力的&精确观察。Xavier 正是这样做的,基于我们经济学家所谓的“需求驱动的增长”。

最后,请注意,当您阅读本文时,全球每秒钟产生 1.7 兆字节的数据,相当于每天 2.5 兆字节的数据。这需要利用和处理大量的数据。理解哪一部分、如何&何时处理那一大块数据是至关重要的。这不仅会降低企业运营中的低效率,而且如前所述,时间&资金是企业最大的制约因素。能够将所需分析缩减到最低限度也有助于降低成本&处理时间。

社区应该更多地谈论领域知识。

因此,我假设可以安全地得出结论,在数据科学角色中关注领域知识的重要性。此外,社区应该宣扬同样的观点,只有这样,企业才能找到胜任其公司数据科学职位的员工。但是请记住,即使有这么多的说教,领域知识也可以在工作中获得,而且也不是什么难事,但是忽视它将是完全不负责任的。

参考资料:

[1] xkcd,机器学习(2017)
【2】Domo,数据从不睡觉 6.0( 2020)

我是一名自由职业的数据分析师,帮助企业了解如何利用他们的数据需求。如果您有任何相关的问题,请随时通过 Twitter 联系我。

此外,如果你喜欢读我的这些文章,你可能会喜欢读这些:

或者,您甚至可以 订阅 我的邮件列表,以便在有新的更新时立即得到通知!

RPA 项目成功的秘诀

原文:https://towardsdatascience.com/the-secret-for-success-in-rpa-projects-4a84fd917362?source=collection_archive---------63-----------------------

在开始 RPA 项目之前,您需要知道一件事,这是项目成功的关键。

RPA 无处不在,感觉任何有数字化转型计划的人都必须有 RPA 战略。RPA 的前景是巨大的,但现实却远没有这么美好。事实证明 RPA 很混乱。很难实施和履行承诺,因此许多 RPA 项目失败,数百万美元付诸东流。为什么?你能做得更好吗?在这篇文章的结尾,你将会知道和理解一个简单的规则,它将会引导你走向成功。

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

自动化是未来。经济和心理上的收益是显而易见的。“让机器做重复枯燥的工作,让人类专注于智能创造性任务”。这很有意义,因为当任务是重复性的,而机器恰恰相反时,人类表现如此糟糕。从卡车司机到医生,每个人都讨厌重复无聊的任务。不管受教育程度如何,所有人都有创造力和洞察力,我们都喜欢使用它。自动化不是对劳动力的威胁,相反,它是让我们更快乐和更有生产力的希望。

RPA 被定位为可以自动化一切的技术。是吗?让我们深入研究一下,看看 RPA 在故事中的位置。
自动化有几大支柱:集成和流程编排。(还是把成本留到最后吧)。在现代商业中,几乎每个用例都涉及到许多不同的子系统,这些子系统需要和谐地协同工作。为了实现自动化,机器必须能够与这些子系统进行通信并控制它们。这当然不是新的。集成技术在计算的早期就已经存在。企业服务总线、消息队列、RPC 服务、RESTful APIs 只是一个简短的例子列表。但是当感兴趣的子系统在其前端只有一个 UI 时会发生什么呢?UI 只为人类设计。不是给机器看的!只有 UI 的系统破坏了自动化!出于商业或历史原因,许多系统选择不公开 API。如果是你遗留的会计系统或多年前集成的人力资源产品,有许多子系统只有人类才能与之交互。当然,这远非最佳,但这是现实,所以我们该怎么办?

RPA 技术拯救世界。现代 RPA 解决方案具有强大的“录制”引擎,可以学习人类如何与 UI 交互,然后自动执行相同的行为。乍一看,它看起来很完美,因为现在我们可以自动化只有人类才能完成的程序,但稍微深入一点的调查显示了一个根本的区别。机器不“理解”自动化过程的本质。人类有。在应对变化时,这个简单的事实至关重要。即使一个系统完全改变了它的外观和感觉,人类最终也能知道该做什么,因为他们理解环境。这可能需要一些时间和实验,但最终人们会“明白”。现代网站每天都在改变他们的用户界面,没有什么会中断。相反,AB 测试与应用程序表现的设计和功能特别相关,公司收集有价值的反馈来帮助他们改进。对于机器来说,情况就不同了。幸运的是,并不是每个简单的改变都会破坏 RPA 记录。因此,典型的现代 RPA 解决方案使用复杂的方法来识别组成 UI 的组件。因此,如果典型 UI web 表单中的顺序或字段布局发生变化,记录应该不会中断,因为它通过标签或名称甚至输入类型来标识字段,而不仅仅是通过顺序或位置。尽管如此,令人印象深刻的是,打破 RPA 解决方案所需的改变是如此之少。正如我们稍后将讨论的那样,无论您在 RPA 解决方案中投入多少机器学习,它都永远不会有接近人类理解的东西,因此它永远无法模仿人类在需要应对变化时使用的逻辑。

[## 为什么实时数据处理如此具有挑战性?数据驱动的投资者

实时数据分析就是要缩小数据收集、分析和行动之间的差距。与……

www.datadriveninvestor.com](https://www.datadriveninvestor.com/2020/07/30/why-is-real-time-data-processing-so-challenging/)

RPA 系统弥补了自动化流程和仅为人类设计的系统之间的差距,但它的方式远非完美。因此,卢旺达爱国军应被视为一种临时的权宜之计,而不是永久的解决办法。只有引入 API 或其他机器友好界面才能被认为是真正的补救措施。这可能是昂贵和复杂的,甚至可能被认为是不可能的,但即使是遗留系统最终也会改变(或被取代)。那时你需要确保下一个版本将包含 API。在此之前,您可以接受 RPA 自动化解决方案,但同时,您需要考虑所有的限制和您引入的脆弱性。

自动化的下一个(也是更重要的)支柱是流程编排。这里我们描述自动化过程的逻辑和流程。日光之下并无新事。每个计算机程序都有一个控制流程。从经典编程语言到图形流程表示和低代码,有许多方法可以对编排进行编程。你决定如何编码你的编排流并不重要,只要它被很好地定义,机器就可以执行它。人类理解上下文,这就是为什么我们可以适应设计时没有考虑到的情况。我们识别实体,将它们映射到现有的知识,然后我们使用深思熟虑,最后,我们应用大量的认知过程来找到要采取的最佳操作集。

到今天为止,机器还做不到这些。机器不像人类那样真正“理解”概念,也不能够基于这种理解开发一系列步骤来解决复杂的问题。显然,这种情况将来会改变,但还有很长的路要走。分类、回归和许多其他机器学习方法是重要和有用的,但我们应该小心不要将它们与人类风格的理解混淆。说到计算解决复杂问题的最佳行动流程,强化学习的目的是教机器做到这一点,简而言之,就是如何找到解决复杂问题(即获得最大回报)的最佳策略(即一系列行动),然而数学表明,这种算法(如马尔可夫决策过程)的复杂性随着构成问题“世界”的状态数量呈指数增长。机器人技术中有令人印象深刻的强化学习实现,例如一个机器人学习如何行走或驾驶直升机,但如果我们想要解决我们在“真实”世界中每天工作时都面临的日常问题,我们将需要我们今天没有的计算机。对认知和符号人工智能的研究可能会在未来给我们一些方法,教计算机人类如此自然地使用的世界知识,但这项研究甚至没有触及需要做的事情的表面。可能要过很多年我们才能到达那里。

为了证明我的观点,我想提一下 OpenAI 于 2020 年 6 月 11 日发布的 GPT-3。这是迄今为止最大的神经网络。其核心是一个语言模型,通过找到最有可能的下一个单词来生成文本。它是在大部分互联网和一个包含了历史上绝大多数文字的书籍语料库上被训练出来的。很难想象一个更大的训练集。结果令人兴奋,但是在那个网络中有真正的智能吗?乍看之下,它可能看起来像是有的。你可以问 GPT-3 几乎任何事情,并得到相当不错的结果。它可以计算算术,编写代码片段,并告诉你历史事实。它甚至可以创作看起来完全由人类创作的原创短篇小说。为了弄清楚 OpenAI 是否创造了第一个真正的类人智能,让我们做以下简单的测试。算术很简单,我们就在那里玩吧。首先,让我们让 GPT-3 解决简单的算术问题与数百的规模的数字。GPT 3 号将以惊人的精确度给出正确的答案。很好,现在让我们重复同样的问题,但是现在用更大规模的数字。随着人数的增长,GPT-3 将会举步维艰。这不是我们对一台真正理解数字和算术运算符含义的机器的期望。一元店最简单的 1 美元计算器以完全相同的计算质量解决数百和数百万数字的算术问题。规模并不重要(只要合理)。计算器不是智能的,我们给它们编了程序来精确地做什么,但是 GPT-3 不是为解决算术而设计的。它只是阅读了世界上所有的书籍,所以我们现在试图弄清楚它是否通过阅读所有这些文本来学习算术?不幸的是,我相信它没有。原来,小数字的算术问题在普通文本中是很常见的。它可能是显式的算术表达式或带有“sum”列的数据表,隐式地告诉 GPT-3 A+b 是多少。含有大数的算术实在是太罕见了,所以 GPT-3 没有学会它。更重要的是,它证明了 GPT 没有应用真正的算术来解决我们提交的练习。它只是计算文本概率。它不像我们一样“理解”世界,因此它不能得出结论或应用认知过程。

今天,能够设计出良好的编排,定义与其他子系统有效集成的流程以处理模糊情况的机器是科幻小说,但请记住:悬浮滑板在“回到未来”中也是科幻小说。人类智能和人工智能有着深刻的不同。不要混淆它们。

我想讨论的最后一点是成本。正如我们所了解的,RPA 解决方案非常脆弱。他们需要你的密切关注和维护。能够执行这种操作的人是昂贵的。您需要在开始 RPA 之旅之前计算成本。另一个隐藏的成本因素是关于责任和可解释性。在一个完全自动化的过程中,你可能会被要求解释为什么你的系统会有这样的行为,特别是当一个利益相关者受到负面影响的时候。这也是有代价的。遗憾的是,这些类型的成本没有出现在 RPA 解决方案产品手册中。

这让我想到了一个简单的规则,它将提高您使用 RPA 的成功几率。在使用技术之前,了解它的局限性和真正目的。RPA 旨在弥合定义良好的流程编排流程与仅公开用户界面的传统系统之间的差距。把它作为一个临时的解决方案,尽可能地通过 API 集成你的系统。不要听信市场营销——让你的架构建立在事实的基础上,尤其是涉及到成本的时候。

秘密神经网络公式

原文:https://towardsdatascience.com/the-secret-neural-network-formula-70b41f0da767?source=collection_archive---------42-----------------------

如何在不过度拟合的情况下制作复杂的神经网络!

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

照片来自创业股票照片

介绍

为深度学习模型选择正确的架构可以极大地改变所取得的结果。使用太少的神经元会导致模型无法发现数据中的复杂关系,而使用太多的神经元会导致过度拟合效应。

对于表格数据,通常认为不需要很多层,一两层就足够了。为了帮助理解为什么这就足够了,看看通用逼近定理,它(用简单的术语)证明了一个只有一层和有限数量神经元的神经网络可以逼近任何连续函数。

然而,你如何为神经网络挑选神经元的数量呢?

确定神经元的数量

目标是找到正确数量的神经元,以防止过度拟合和欠拟合,当然,这不是防止过度拟合和欠拟合的全部解决方案,但它有助于减少这种情况的发生。

在机器和深度学习中,模型的自由度是可以学习的参数数量。增加模型的自由度可以让模型更灵活地适应更复杂的函数,但是过多的自由度会让模型过度适应数据。

这可以从下图中看出:

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

拟合前 25 个数据点并用于预测最后 5 个数据点的两条线性回归线。

这意味着减少过度拟合的一种方法是限制模型中的自由度。

我在研究这个问题时发现的一个公式是:

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

N_h 为神经元数量, N_s 为训练样本数量, N_i 为输入神经元数量, N_o 为输出神经元数量,α为待选超参数。

数据集中的自由度是 N_s(N_i + N_o) ,目的是将模型中自由参数的数量限制在数据自由度的一小部分。如果你的数据是一个很好的代表,这应该允许模型很好地概括,太多的参数,这意味着模型可以过度适应训练集。

Alpha 表示与您的模型相比,您的数据多了多少自由度。有了 alpha = 2 ,你的数据中的自由度将是你的模型中的两倍。建议使用2–10alpha 值,您可以循环查找最佳的 alpha 值。

帮助我直观理解公式的一个方法是让 beta = 1/alpha (保持 alpha 在 2 到 10 之间),然后增加 beta 表示复杂度增加。一个更加非线性的问题将需要一个更大的贝塔。

主要规则是保持 alpha ≥ 1 ,因为这意味着模型自由度永远不会大于数据集中的自由度。

例子

这个例子是一个 Jupyter 笔记本,比较了杰夫·希顿在选择一层中的神经元数量时给出的建议。我选择这个建议是因为新手很可能会听从杰夫·希顿的建议,因为他在这个领域很重要。

这丝毫没有偏离杰夫·希顿的建议,而是试图展示如何使用这篇博客文章中提供的公式选择神经元的数量,数据科学家可以在不过度拟合的情况下创建更复杂的神经网络。创建更复杂的神经网络可以带来更好的结果。

杰夫·希顿的建议是:

1.隐藏神经元的数量应该在输入层的大小和输出层的大小之间。

2.隐藏神经元的数量应该是输入层大小的 2/3,加上输出层的大小。

3.隐藏神经元的数量应该小于输入层大小的两倍。

参考

[1]stack exchangehttps://stats . stack exchange . com/questions/181/how-to-choose-the-number-of-hidden-layers-and-nodes-in-a-前馈神经网络中的公式参考

[2]杰夫·希顿的。隐藏层数。 希顿研究。https://www . Heaton research . com/2017/06/01/hidden-layers . html

[3]杰瑞米·霍华德和西尔万·古格。 fastai:深度学习的分层 APIarXiv 。arXiv:2002.04688https://arxiv.org/abs/2002.04688。2020.

现代神谕的秘方

原文:https://towardsdatascience.com/the-secret-recipe-for-modern-oracles-2ab69b09465c?source=collection_archive---------66-----------------------

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

来源:约翰·科利尔/公共领域

在古希腊,人们相信任何重要的决定都是由神来指导的,因此,人们认为神是通过神谕来说话的——来自拉丁语动词‘orare’(说话)。先知被咨询关于农作物的产量,健康问题,财政财富,等等。现代的甲骨文离开了希腊,改变了服装,并缩小了一个人的重点,以预测公司的收入,客户流失,和公司的销售。有许多预测技术和方法,现代的甲骨文可以用来做到这一点,从德尔菲技术到脚本编写,时间序列预测,但在这篇文章中,我想谈谈时间序列预测与先知。

Prophet 是脸书发布的开源 R 和 Python 库,基于可分解的(趋势+季节性+假期)模型——在这里阅读更多我在库中最喜欢的是,您可以对周期性事件(如季节性事件)和不规则事件(如节假日)进行建模。想知道如何以互动的形式自动获得你的预测吗?力量 BI 来拯救你。

什么?

Python 库、Power BI Desktop & Power BI Pro(云)、csv/a 数据库连接和个人网关。

怎么会?

*第一步。*起初,我以为我会带着我的 Python 库离开,但是经过几个小时与’unable-to-import-required-dependencies:numpy’、‘unable-to-import-required-dependencies:matplotlib’、'please-install-mkl-service-package’等的斗争之后。我认输了,安装了康达(此处阅读安装指南)。我第二次举起白旗是在安装 Anaconda 之后,我既没有在“默认路径”上安装 Anaconda,也没有将 Anaconda 的 python 设置为默认的 python 命令…嗯,起泡沫,冲洗,重复。

*第二步。*如果你选择了“只有我”——我就是这么做的,默认情况下,Anaconda 会被安装在C:\Users\{YourUserName}\Anaconda3文件夹中。如果你不确定,在任务栏的搜索框中输入 cmd 然后点击“Enter”打开常规的命令提示符(适用于 Windows 用户),然后输入where python获得 Python 路径。就我而言,我得到了C:\Users\Eka\Anaconda3\python.exe。太好了。

*第三步。*打开你的 Power BI 桌面> > 文件> >选项和设置 > > 选项,添加你的 Anaconda 路径和 Python 可执行文件的路径。如果你已经创建了一个虚拟环境,请看这里的文章。

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

更改目录

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

更改目录 _2

第四步通过添加您的数据源获取数据。在我的。 pbix ,我已经连接到了一个 csv 文件——当前的解决方案也在数据库连接上进行了测试——它具有“日期”、“值”和“类型”列(参见此处的文件)。

第五步。转到主页> >编辑查询进入超级查询编辑器。

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

运行 Python 脚本

第六步。将日期列改为“文本”是很重要的,否则,您将得到“microsoft.ole.db.date”错误—是的,在我的例子中,这是一个很大的改动。

在查询编辑器中,点击转换>运行 Python 脚本

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

运行 Python 脚本 _2

*步骤 7。*在脚本编辑器窗口中添加你的代码。我最初的错误是我没有改变‘value’列的类型,所以当我得到新的 float 实际记录时,脚本失败了。下面的脚本很基本,只是为了演示这一点,对于更高级的选项,请参考库文档这里

# 'dataset' holds the input data for this script
#import libraries
import pandas as pd
from fbprophet import Prophet#convert to pandas dataframe
df = pd.DataFrame(dataset)
df["date"] = pd.to_datetime(df["date"]) #change format of the date column to date
df["value"] = df.value.astype('float') #change format of the column you want to create predictions for to float
df = df.rename(columns={'date': 'ds',
                        'value': 'y'}) #change the names of the columns otherwise prophet will complain
daily = df.copy()
my_model = Prophet(interval_width=0.95) #create an instance of the prophet class
my_model.fit(daily) #fit the model
future_dates = my_model.make_future_dataframe(periods=12, freq='d') #create empty future dataframe 
forecast = my_model.predict(future_dates) #create predictions
forecast_set = forecast[['ds', 'yhat', 'yhat_lower', 'yhat_upper']] #select only certain fields
df_merged = pd.merge(forecast_set, df, how='left') #merge original dataframe with the predictions
df_merged.columns = ['date','forecast','yhat_lower','yhat_upper','actual', 'type'] #re-name the columns

第 8 步。如果你成功地完成了“起泡、冲洗、重复”的循环,你应该能看到几个表格被创建。点击表格中与“df_merged”相对的超链接,加载与您的实际数据框合并的预测数据框。然后,关闭&应用加载到您的 Power BI 桌面。

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

加载结果

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

加载结果 _2

*步骤九。*根据您的要求创建视觉效果,将工作簿发布到Power BI cloud。

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

创造视觉效果

第十步。例如,从这里下载并安装个人网关。请记住,您需要个人网关,因为互联网上评论说,您只能通过个人网关运行 Python 脚本。登录到您的 Power BI cloud,确保网关启动并运行。

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

验证网关

*第十一步。*为该网关添加数据源,并安排仪表板刷新。说完,我结束了我的循环。

作为一个预言未来的先知,感觉如何?

附言:我没有测试过的:声明“运行超过 30 分钟的 Python 脚本会自动超时。”;如何将每日数据汇总到每周/每月。

非常感谢为这篇文章提供灵感的 Sanjo。

成为数据科学家、人工智能或人工智能工程师的自学之路

原文:https://towardsdatascience.com/the-self-learning-path-to-becoming-a-data-scientist-ai-or-ml-engineer-9ab3a97ca635?source=collection_archive---------9-----------------------

不是每个人都有时间在教室里学习数据科学、人工智能或人工智能,也不是每个人都负担得起正式学习数据科学、人工智能或人工智能的费用。

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

尼克·莫里森在 Unsplash 上拍摄的照片

正如前面副标题中所述,时间和成本是人们在尝试学习数据科学、人工智能或机器学习时面临的巨大障碍。自学是一门艺术,需要自律、奉献和纪律来掌握。如果掌握得当,它能让你灵活地将学习与工作或学校结合起来。然而,当开始学习数据科学、人工智能或人工智能时,开始阶段非常艰难,但相信我,我说这是值得担心的。自学时取得良好进步的关键是按照自己的节奏学习。在这个故事中,我将分享一条道路,希望学习数据科学、人工智能和人工智能的人可以遵循这条道路,并在学习新事物方面取得良好进展。我也将分享我个人使用过的资源的链接,并且毫无疑问可以推荐。

学点数学

虽然这听起来很烦人,但在这个领域它是非常必要的。我认为可以肯定的是,任何阅读这篇文章的人都从高中开始就有一些基础到中级的数学知识。这是一个好的开始,但在数据科学、人工智能和人工智能领域还远远不够。你需要更深入一点,学习一些统计、代数和其他主题的概念。我会编制一个主题和资源列表来帮助你学习数据科学的数学,但这已经在Ibrahim Sharaf ElDen的这篇文章中完美地完成了。

学习编码

作为初学者,不要直接学习为机器学习编写代码,而是要学习编程的核心概念。了解什么是编程,了解现有的代码类型以及如何正确地编写代码。这是非常重要的,因为你将会学到很多基本的概念,这些概念将会伴随你在这个领域的余生。这一步慢慢来,不要急着学习高深的东西,理解这一步的大部分东西会决定你在这个行业会有多优秀。你可以在这里找到一个非常好的视频资源,向你介绍编程和计算机科学。这个视频带你了解编程和计算机科学的所有重要概念。慢慢来,确保你理解它的每一点。

让自己对编程语言感到舒服

如今,数据科学家、人工智能和机器学习工程师使用许多语言来完成他们的工作,最常用的语言是 Python、R、Java、Julia 和 SQL。许多其他语言也可以使用,但我列出的是最常用的语言,原因有很多。

  • 如果一个人投入足够的时间去学习并保持一致,他们很容易学习,发展也很快。
  • 他们让你用更少的代码做更多的事情。
  • 他们有一个围绕他们建立的良好而稳固的社区,可以在你遇到任何问题的时候帮助和支持你。
  • 他们几乎拥有你作为数据科学家、人工智能或人工智能工程师在工作中需要的所有库和包。
  • 它们是开源的,可以免费使用。

学习多种语言绝对没有错,事实上,知道多种语言是一件好事。然而,在学习编程语言时,你必须慢慢来,尽可能不要同时学习一种以上的语言,因为这可能会让你感到困惑,并让你迷失方向一段时间。慢慢来,一次学一门语言,确保只学你职业需要的那部分语言。我建议你在学习任何其他语言之前先学习 python,因为它是一种相对容易理解的语言。我还建议你在学习数据科学和 AI/ML 的 python 之前,先学习通用 python

了解如何获取数据

数据通常不会直接交给你,有时根本没有数据给你,但不管是哪种情况,你必须找到一种方法来获得你可以使用的数据。你工作的单位可能有一个很好的数据收集系统,如果他们有,那对你来说是一个优势。如果没有,你必须想办法获取数据,不是随便什么数据,而是你可以用来实现目标的好数据。获取数据并不直接意味着挖掘数据,它是数据挖掘下的一个过程。你可以在互联网上的许多地方获得免费的开源数据,有时你可能不得不从网站上搜集数据。网络抓取非常重要,我恳求每个人都学习它,因为在你作为数据科学家、人工智能或 ML 工程师的职业生涯中,可能会出现对它的需求。这里有一个很好的网页抓取教程。数据也可能保存在数据库中,因此作为一名数据科学家、人工智能或 ML 工程师,你必须了解一些数据库管理知识,以便能够连接到数据库并直接从数据库中工作。SQL 方面的知识在这个阶段非常重要。你可以在这里学习数据科学的 SQL。

学习如何处理数据

这通常被称为**数据争论。**这一过程包括清理您拥有的数据,这可以通过对您拥有的数据执行一些探索性的数据分析并剔除数据中不需要的部分来完成。该过程还包括将您拥有的数据组织成您可以使用的形式。这个阶段是数据科学、人工智能或机器学习项目中最令人疲惫的部分。在学习过程中,您将要使用的大多数样本数据都已经过预处理,但是真实世界中的数据可能没有经过任何处理阶段。作为一个有志于在这个领域做得更好的人,你应该找到一些真实世界的数据并解决它。真实世界的数据几乎可以在任何地方找到,但 Kaggle 是一个从全球各地的公司获得真实世界数据的神奇地方。数据争论或处理是一个非常累人的任务,但随着不断的奉献和一致性,它可以是一件非常有趣的事情。你可以在这里找到剑桥大学教授关于数据争论的精彩演讲。

了解如何可视化数据

作为一名数据科学家、人工智能或人工智能工程师,并不一定意味着你的工作场所或团队中的每个人都能够理解你所在领域的技术细节,或者能够从原始数据中做出推断。这就是为什么需要学习可视化数据。数据可视化基本上是指以图形形式呈现数据的过程,以便让任何人(无论他们在数据科学、人工智能或人工智能方面的知识如何)了解数据是关于什么的。有许多可视化数据的方法。作为程序员,编写可视化数据的代码应该是我们的首选方法,因为这种方法既快速又没有成本。编写代码来可视化数据可以通过我们使用的编程语言附带的许多免费开源库来完成。Matplotlib、Seaborn 和 Bokeh 都是我们可以用来可视化数据的 python 库。你可以在这里找到 matplotlib 的数据可视化视频教程。另一种可视化数据的方式是使用闭源工具,如 Tableau 。有许多用于数据可视化的闭源工具,它们用于制作更优雅和复杂的可视化,但它们是有成本的。Tableau 是最常见的一种,也是我个人经常使用的工具。学习使用 Tableau 是我会推荐给大家的。你可以在这里找到一个很好的使用 Tableau 的教程。

人工智能和机器学习

人工智能和机器学习更像是数据科学的子集,因为它们是由数据驱动的。他们指的是通过向机器或其他无生命物体提供经过良好处理的数据,来训练它们像人一样行为的过程。通过逐步教导和引导,机器可以被教会做人类可以做的许多事情。把这种情况下的机器想象成完全没有知识但被逐渐教会识别物体、说话、从错误中学习并变得更好的婴儿。机器也可以用同样的方式被教会去做大部分的事情。人工智能和人工智能基本上是通过使用许多数学算法给机器带来生命。人工智能和机器学习的全部潜力仍然未知,因为它是不断改进的领域之一。但目前,人工智能和人工智能广泛用于认知功能,如对象检测和识别、面部识别、语音识别和自然语言处理、欺诈和垃圾邮件检测等。我将把人工智能和人工智能的深入介绍留给另一个故事,但现在,我想让你在这里了解人工智能和人工智能的一般应用,并从这个视频资源中深入研究机器学习。在这些视频结束时,您应该已经掌握了关于机器学习的初级到中级知识,了解了许多可用的机器学习算法,它们的作用以及如何使用它们。现在你应该已经准备好建立你的第一个简单的机器学习模型,你可以在的帮助下完成。

了解如何在互联网上使用您的机器学习模型

通过部署,您使用机器学习构建的模型可以供互联网上的每个人使用。要做到这一点,需要对 web 开发有很好的理解,因为你必须创建一个或一组网页来存放你的模型。网站的前端也需要与包含模型的后端进行通信。为此,你还需要知道如何构建和集成 API 来处理网站前端和容纳机器学习模型的后端之间的通信。如果你打算通过管道或 docker 容器在云服务器上部署你的机器学习模型,你可能需要对云计算和 DevOPs 有很好的理解。有许多部署机器学习模型的方法,但首先,我建议您学习如何使用 python web 框架 Flask 部署机器学习模型。一个很好的教程可以在这里找到。

给自己找个导师

自学是令人惊奇的,但是没有什么比直接向业内专业人士学习更好的了。这是因为你可以学到真实的生活概念和其他只有亲身经历才能传授的东西。有一个导师有很多好处,但并不是每个导师都能对你的职业生涯或整个生活产生影响。这就是为什么有一个好的导师很重要。 Notitia AI 是一个很好的平台,可以在数据科学、人工智能和机器学习方面从初学者到专家水平进行培训,在这里你将被指派一名私人导师,他将在个人和专业方面为你在所选领域的成长做出贡献。这也是你能找到的最实惠的虚拟培训和指导平台。

注意,仅仅参加课程和从在线资源中学习不会让你成为数据科学家、人工智能或 ML 工程师。你必须获得提供这些领域认证的机构的认证,一些工作岗位也需要你有一些学位。花点时间去学习,获得证书或学位,你将为行业做好准备。

希望你喜欢这个故事,对你有所帮助。感谢您抽出时间阅读本文。请分享你对这个故事的想法和意见,并在你认为我做错的地方随时纠正我。我是人,因此,我容易犯错误。你可以直接在推特LinkedIn 上联系我。你也可以联系我,建议你希望我在后续报道中写的话题。祝你有美好的一天。

非常感谢安娜·阿伊库校对并纠正了我写这篇文章时犯的许多错误。

自助神话

原文:https://towardsdatascience.com/the-self-service-myth-b3d8fad3b3ae?source=collection_archive---------32-----------------------

以及数据民主的需求层次

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

克里斯·利维拉尼Unsplash 上拍摄

TL;速度三角形定位法(dead reckoning)

建立数据民主很困难,但并非不可能。没有工具可以修复文化之类的东西或为您创建流程,但是任何工具与您业务的这些部分的集成程度都可以决定您的数据民主是成为新的现实,还是只是一个失败的实验。

数据有区分观点和偏好的诀窍,但有一样东西我们似乎都想要:数据民主。无论你是分析师、首席执行官还是企业用户,将“数据的力量”带给人们的想法都非常吸引人。

然而很少有公司能达到这个目标。就像他们的政治表亲一样,数据民主几乎不可能正确。

那么,为什么数据民主会失败呢?你如何避免同样的错误?

在过去的 10 年里,我一直在大型和小型公司的数据团队中工作,并参与了许多数据民主化计划。在过去的几年里,我有幸与数百家公司讨论过这个话题。

在梳理这些经历时,我震惊地发现,这些公司中有多少曾经充满热情并决心让他们的团队能够使用数据,但最终却满足于更少的东西。事实上,他们中的许多人都有如此痛苦的经历,以至于他们最终转向了完全相反的方向:一个高度控制的数据环境,用户只能从少数报告中获得数据,甚至很少有人被允许进行自己的分析。

对于这些公司中的大多数来说,许多失误导致他们放弃了数据民主愿景,但第一个失误却惊人地一致。他们采用了市场上众多自助分析选项中的一个,并假设仅一项就能实现他们的愿景。

剧透:没有。

我为你做了笔交易!

自助服务分析是商业智能(BI)的一种形式,支持并鼓励业务线专业人员在名义上的 IT 支持下自行执行查询并生成报告—高德纳[1]

过去十年见证了自助式分析工具的爆炸式增长。这些工具承诺了一种非常简单的数据分析体验,以至于你公司的任何人都可以像专家一样分析数据。没有编程语言。没有包裹。没问题。听起来相当完美…

难怪公司会将这些工具作为数据民主之旅的第一步。但在我的研究中,我发现投资自助服务解决方案的公司很难真正实现用数据赋予员工权力的目标。那么,这到底是哪里出了问题?

陡峭的学习曲线

在大多数自助工具中,简单的事情很容易,但中等难度的事情却非常痛苦。

这意味着一旦所有的基本分析都完成了,就很难再继续深入挖掘寻找答案了。用户可能会看到销售额呈下降趋势,但他们可能无法找出为什么

你的数据一团糟。

这当然让我们看到了你的数据!通常,获得自助服务工具的公司还没有投资让他们的数据对典型的商业用户可用。所以最初的几个月(几年?)仍然需要分析师创建大量定制视图,并回答关于他们应该使用哪个版本的“user_id”的相同问题。

你跳过了最基本的。

人们很容易认为,当被问到时,我们都会记得我们在高中学到的东西,但事实并非如此。如果你已经 10 多年没有考虑过均值和中值之间的区别,你可能不习惯在给老板的报告中选择哪一个。对于大多数商业用户来说,知道做什么比如何做更具挑战性。

你的文化和流程不支持。

在这一点上,您的业务用户感到非常害怕,完全没有权力,即使他们知道他们应该像过时一样分析数据。最糟糕的情况是没有人提到他们的挫折,但他们经常这样做,但这不是人们想听到的。毕竟,他们刚刚在一个本应使分析变得简单的工具上投入了大量资金,而且很可能被一份合同锁定,所以这并不是什么好消息。

有了后知之明,我们可以考虑事情可能会有什么不同…

在你毁掉自己之前,先检查一下自己

自助服务工具专注于简化用户查询和可视化数据的方式,很大程度上忽略了其他一切。需要说明的是,他们中的大多数在这一部分做得相当好。这并不能解决你的大部分问题。

在投资任何工具之前,考虑实现数据民主所涉及的其他因素是很重要的。通过我们的研究,我们已经确定了一个数据民主需求层次结构,它对这些要素进行了优先排序,并为您提供了一种更现实的方法来评估您的选项。

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

在我们的研究中,我们排除了数据科学和人工智能领域,因为它们产生了自己的挑战,并专注于如何使业务用户能够使用数据做出他们需要的决策。虽然这些层中的每一层都有自己的一篇文章(敬请关注),但下面有对每一层的简要介绍:

文化👐

原型和透明 FTW

为了使这种转变成功,文化需要能够容忍一些失败。特别是你的团队和领导,应该准备好重复这个过程,在报告中看到“坏”的数字,尝试不起作用的过程,等等。成长从来都不容易,但如果每个人都认同最终目标,那就值得了。

建议:改变文化是出了名的困难,与其说是一门科学,不如说是一门艺术,但是这篇文章【HBR】有一些实用的技巧。

处理🗺️

早点开始;翻新很难

过程是任何文化的支架。在这里,你要弄清楚如何让用户觉得他们的声音被听到了,让他们觉得把数字弄对没有学习过程重要。其中的关键部分是找到将数据团队与业务整合的方法,而不是使用自助服务工具来进一步分离它们。

建议:定期 KPI 评审 与业务&数据团队

数据基础🔤

教概念,不教工具。

这个阶段开始将短暂的文化与具体的数据联系起来。它包括回顾 KPI 的含义,对数据更基本的理解。您不需要教每个人 SQL,甚至什么是关系数据库,但只要让他们能够舒服地询问他们负责的指标,并得到他们需要的答案就足够了。

建议:我在下面写了一些想法。尝试根据您公司的数据和指标对其进行定制。

[## 为什么您的数据素养培训不起作用

以及如何修复它

medium.com](https://medium.com/count/why-your-data-literacy-training-isnt-working-158122b43181)

数据模型🥇

以业务为中心构建

是的,您需要为您的业务用户构建简化的视图。是的,你需要广泛地记录它们。但更重要的是,他们需要了解这些领域如何与他们现有的世界联系起来。这意味着你需要和他们坐下来,帮助他们弄清楚如何建造他们想看的东西。在几次这样的会议之后,你会开始找到一些可以为他们服务的静态视图…直到他们的问题变得更加复杂,他们需要更多。顺便说一下,那是一个好的标志。

建议:利用数据字典,向任何需要的人公开你的数据模型

数据分析📊

让用户能够使用数据做出决策

最后,你如何从这些数据中提取一些你现在理解并有信心使用的意义?一旦解决了以上所有问题,你会惊讶地发现这一步是多么简单。这里的例子很多,所以要确保有足够多的好例子,用户可以复制并开始试验。关键是用户必须能够理解他们得到的报告,识别问题,能够使用数据找到解决方案。专注于帮助用户利用数据做决策,而不仅仅是拿出数字。

建议:从他们已经熟悉的关键绩效指标开始,与他们一起理解数据是如何呈现的,以及他们如何挖掘这些数据以了解更多。

展望未来

希望现在已经很清楚了,没有什么灵丹妙药可以让你的公司瞬间变成一个高效的数据民主国家。然而,工具确实发挥了巨大的作用。选择正确的方法与让你的文化和流程正确同样重要。

堆叠在堆叠在堆叠上

对于公司来说,为流程的每个部分选择由不同工具组成的数据堆栈是很常见的:收集数据、转换数据、存储数据、分析数据和元数据。这种方法成本高、耗时,并且需要大量开销来管理单独的工具。如果你能管理它,你越能利用单一的工具,你的数据民主就越好。更少的工具意味着端到端的流程更容易遵循——黑箱更少,事情更透明。随着您的成长,您可能需要扩展到更专业的工具,但是如果可以的话,简单的堆栈也有好处。

如果你想建立一个数据民主,上面解释的层次结构提供了一个很好的基准来评估你的选择。

快速环顾四周

随着新工具的不断涌现,这个领域正在快速变化。也就是说,有几组玩家是一致的:

  • 仅 SQL 查询构建器:市场上最常见的工具,这些工具仅触及金字塔的最顶层。我不鼓励您从这里开始,但是如果您觉得您已经完成了金字塔的其余部分,并且您的团队已经很擅长 SQL,那么它们可能会起作用。
  • **基于模型的方法:**这些工具在层次结构上更进一步,它们允许数据定义和一些数据建模功能,因此您可以使更多的 ETL 过程对业务透明。
  • **一体机:**提供端到端功能的工具甚至更少,这意味着您可以在一个地方存储、建模、记录和可视化。特别是小团队,可以从快速采用一体化工具而不是长时间使用几个独立的工具中获益。

在过去的几年里,我一直是开发这种工具的团队的一员。您可以在此了解我们的更多信息:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 [## Count -一体化数据平台。

组合、组织和可视化数据的最快方式。Count 是您和您的……

count.co](https://count.co/how-is-count-different?utm_medium=blog&utm_source=Medium&utm_campaign=cm&utm_content=selfservice)

包装它

总之,建立一个数据民主很困难,但并非不可能。没有任何工具可以修复文化之类的东西或为您创建流程,但任何工具与您业务的这些部分的集成程度都可以决定是将[数据]的力量带给人们,还是我们都希望避免的数据锁定噩梦。

从头开始建立数据团队?我们有这方面的时事通讯。报名 这里

参考

[1] Gartner 词汇表:自助服务分析(2020) ,Gartner.com

机器学习的七宗罪

原文:https://towardsdatascience.com/the-seven-sins-of-machine-learning-54dbf63fd71d?source=collection_archive---------26-----------------------

打破你的机器学习实验可信度的七个常见错误

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

不要屈服于机器学习的七宗罪!Maruxa Lomoljo Koren 从 Pexels 拍摄的照片。

机器学习是一个伟大的工具,它正在彻底改变我们的世界。在许多伟大的应用中,机器,特别是深度学习,已经显示出比传统方法优越的多。从用于图像分类的Alex-Net到用于图像分割的U-Net,我们看到了计算机视觉和医学图像处理的巨大成功。尽管如此,我每天都看到机器学习方法失败。在许多这样的情况下,人们会陷入机器学习的七宗罪之一。

虽然所有这些问题都很严重,并会导致错误的结论,但有些问题比其他问题更严重,甚至机器学习专家也可能在对自己的工作感到兴奋时犯下这样的错误。这些错误中的许多很难发现,即使对于其他专家来说也是如此,因为你需要详细查看代码和实验设置,以便能够找出它们。特别是,如果你的结果好得令人难以置信,你可以用这篇博客文章作为检查清单,以避免对你的工作得出错误的结论。只有当你绝对确定你没有陷入这些谬论的时候,你才应该向同事或公众报告你的结果。

原罪 1:滥用数据和模型

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

过度拟合会产生完美解释训练数据的模型,但通常不会推广到新的观察结果。下图 CC BY 4.0 来自

这个罪是深度学习初学者经常犯的。在最常见的情况下,实验设计是有缺陷的,例如,训练数据被用作测试数据。使用简单的分类器,如最近邻,这立即导致对大多数问题的 100%识别率。在更复杂和更深入的模型中,它可能不是 100%,而是 98–99%的准确性。因此,如果你在第一次拍摄中获得如此高的识别率,你应该始终 仔细检查你的实验装置**。但是,如果您使用新数据,您的模型将完全失效,您甚至可能产生比随机猜测更差的结果,即比 1/K 更低的准确性,其中 K 是类的数量,例如在两类问题中低于 50%。同样,您也可以通过增加参数的数量来轻松地使您的模型过拟合,以便它完全记住训练数据集。另一种变体是使用不能代表您的应用程序的太小的训练集。所有这些模型都可能会在新数据上出现问题,即在实际应用场景中使用时。**

罪恶之二:不公平的比较

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

不要在比较中有失公允。您可能会得到想要的结果,但是这些结果可能无法在其他数据上重现。图片由 Elias Sch 提供。来自 Pixabay

即使是机器学习方面的专家,也可能陷入这种罪恶。如果你想证明你的新方法比最先进的方法更好,这是典型的承诺。特别是研究论文经常屈服于这一点,以说服评论者他们的方法的优越性。在最简单的情况下,您从某个公共存储库中下载一个模型,并在没有微调或适当的超参数搜索的情况下使用该模型,该模型是针对手头的问题开发的,您调整了所有参数以获得测试数据的最佳性能。文学作品中有许多这种罪恶的例子。最近的一个例子是 Isensee 等人在他们的 not-new-net 论文中披露的,他们在论文中证明了最初的 U-net 在 10 个不同的问题上几乎优于 2015 年以来对该方法提出的所有改进。因此,您应该始终对最先进的模型执行与您应用于新提出的方法相同的参数调整。

原罪 3:微不足道的改进

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

显著性测试确保你不是在报告沧海一粟。图片来自皮查拜费利克斯米特迈尔

在做了所有的实验后,你终于找到了一个比最先进的模型产生更好结果的模型。然而,即使在这一点上,你还没有完成。机器学习的一切都是不精确的。此外,由于学习过程的概率性,你的实验会受到许多随机因素的影响。为了考虑这种随机性,您需要执行统计测试。这通常是通过使用不同的随机种子多次运行您的实验来执行的。这样,您可以报告所有实验的平均性能和标准偏差。使用显著性检验,比如 t 检验,您现在可以确定观察到的改进仅仅与机会相关的概率。这个概率应该至少低于 5%或 1%,才能认为你的结果是有意义的。为了做到这一点,你不必是一个专家统计学家。甚至有在线工具来计算它们,例如用于识别率比较相关性比较。如果您运行重复实验,请确保您还应用了 Bonferroni 校正,即您将所需的显著性水平除以相同数据的重复实验次数。关于统计测试的更多细节,你应该查看我们深度学习讲座的这个视频。当然,显著性测试是第一步,更好的是提供更精细的统计数字,如置信区间。

原罪 4:混杂因素和不良数据

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

尺寸缩放后,用两个不同的麦克风录制了 51 个扬声器。每个点代表一个记录。该数据变化的主要因素是麦克风的差异。下图 CC BY 4.0 来自 讲座。

数据质量是机器学习的最大陷阱之一。它可能会引发严重的偏见,甚至导致种族歧视。然而,问题不在于训练算法,而在于数据本身。作为一个例子,我们展示了使用两个不同麦克风的 51 个说话者的降维记录。因为,我们记录了相同的说话者,如果给定适当的特征提取,他们实际上应该被投射到相同的点上。然而,我们可以观察到相同的记录形成两个独立的簇。事实上,一个麦克风直接位于说话者的嘴部,另一个麦克风位于大约 2.5 米远的记录现场的摄像机上。通过使用来自两个不同供应商的两个麦克风,或者在医学成像环境中通过使用两个不同的扫描仪,已经可以产生类似的效果。如果您现在在扫描仪 A 上记录了所有病理患者,在扫描仪 B 上记录了所有对照受试者,您的机器学习方法可能会学习区分扫描仪,而不是实际的病理。你会对实验结果非常满意,产生了接近完美的识别率。然而,你的模型在实践中会完全失败。因此,请避免混杂因素和不良数据!

原罪 5:不恰当的标签

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

每个训练实例一个标签通常不足以理解问题的复杂性。如果向多名评核人展示(蓝色分布),有些情况可能会产生许多不同的标签,而其他情况下所有评核人会产生相同的标签(红色曲线)。来自 Pixabay马克塔·马乔瓦的图片。

普罗泰戈拉已经知道:“万物的尺度是人。”这也适用于许多分类问题的标签或基本事实。我们训练机器学习模型来反映人为的类别。在很多问题中,我们在定义类的时候就认为类是明确的。当我们查看数据时,我们发现它经常包含模糊的情况,例如,在 ImageNet 挑战中,一个图像显示两个对象,而不是一个。如果我们去研究复杂的现象,比如情绪识别,那就更加困难了。在这里,我们意识到在中,许多现实生活中的观察情绪甚至不能被人类清楚地评估。为了得到正确的标签,我们需要询问多个评分者并获得标签分布。我们在上图中对此进行了描述:红色曲线显示了清晰案例的尖峰分布,即所谓的原型。蓝色曲线显示了模糊案例的广泛分布。在这里,不仅是机器,还有人类评分员都可能以相互矛盾的解释而告终。如果你只用一个评定者来创造你的基本事实,你甚至不会意识到这个问题,这个问题通常会引起关于标签噪音以及如何有效处理标签噪音的讨论。如果您可以访问真实的标签分布(当然,这是很昂贵的),您甚至可以证明您可以通过删除不明确的情况来显著提高您的系统性能,例如我们在表演情感与现实生活情感的情感识别中看到的。然而,在您的实际应用中,情况可能并非如此,因为您从未见过不明确的情况。因此,你应该选择多个评定者,而不是一个人

原罪 6:交叉验证混乱

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

不要使用相同的数据来选择您也用于评估的模型和特征。图片来自

这几乎与第一项罪相同,但它是伪装的,我甚至在几乎提交的博士论文中看到过这种情况。所以即使是专家也可能上当。典型的设置是,在第一步中,您有一个模型、架构或特性选择。因为您只有几个数据样本,所以您决定使用交叉验证来评估每一步。因此,您将数据分成 N 个折叠,选择 N-1 个折叠的特征/模型,并在第 N 个折叠上进行评估。重复 N 次后,计算平均性能并选择性能最好的特性。现在,你已经知道什么是最好的特性,你可以继续使用交叉验证为你的机器学习模型选择最好的参数。

这似乎是正确的,对不对?不要!它是有缺陷的,因为你已经在第一步中看到了所有的测试数据,并对所有的观察值进行了平均。因此,来自所有数据的信息被传递到下一步,您甚至可以从完全随机的数据中获得极好的结果。为了避免这种情况,您需要遵循一个嵌套过程,它将第一步嵌套在第二个交叉验证循环中。当然,这是非常昂贵的,并产生了大量的实验运行。请注意,只是由于您正在对相同的数据进行大量的实验,在这种情况下,您也可能只是由于偶然的机会而产生一个好的结果。同样,统计测试和 Bonferroni 校正也是强制性的(参见 Sin #3)。我通常会尝试避免大的交叉验证实验,并尝试获得更多的数据,这样你就可以进行训练/验证/测试分割。

原罪 7:过度解读结果

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

让别人来庆祝你的工作,不要自己去做。照片由 Rakicevic NenadPexels 拍摄。

除了之前所有的罪,我认为我们在机器学习中经常犯的最大的罪,现在在当前的炒作阶段,是我们过度解释和夸大了我们自己的结果。当然,每个人都对机器学习创造的成功解决方案感到高兴,你完全有权利为它们感到骄傲。然而,你应该避免根据看不见的数据或状态来推断你的结果已经解决了一个问题,因为你已经用相同的方法解决了两个不同的问题。

此外,由于我们在《原罪 5》中所做的观察,声称超人的表现引起了怀疑。你如何超越你的标签的来源?当然,你可以在疲劳和注意力集中方面打败一个人,但在人造课上胜过人类?你要小心这种说法。

每一个主张都应该以事实为依据。你可以假设你的方法在讨论中的普遍适用性,清楚地表明你的推测,但是要真正声称这一点,你必须提供实验或理论证据。现在,很难让你的方法得到你认为它应得的知名度,陈述大的主张当然有助于推广你的方法。尽管如此,我建议留在地面上,坚持证据。否则,我们可能很快就会迎来下一个人工智能冬天,以及前几年已经存在的对人工智能的普遍怀疑。让我们在当前的周期中避免这种情况,并坚持我们真正能够证明要实现的目标。

当然,你们大多数人已经知道这些陷阱。然而,你可能想时不时地看看机器学习的七宗罪,只是为了确保你仍然在地上,没有上当:

原罪#1:数据和模型滥用——分割训练和测试,检查过度拟合!
原罪之二:不公平的比较——同时调整基线模型!
原罪 3:无关紧要的改进——进行显著性测试!
原罪 4:混杂因素和不良数据——检查您的数据&采集!
原罪 5:不恰当的标签——使用多个评分者!罪恶 6:交叉验证混乱——避免过多的交叉验证!
罪过 7:过度解读结果——坚持证据!

如果你喜欢这篇文章,你可以在这里找到更多文章,在这里找到更多关于机器学习的教育材料,或者看看我的深度 学习 讲座。如果你想在未来了解更多的文章、视频和研究,我也会很感激你在 YouTube、Twitter、脸书、LinkedIn 上的鼓掌或关注。本文以 Creative Commons 4.0 归属许可发布,如果引用,可以转载和修改。

可疑或不太可疑的情报世界

原文:https://towardsdatascience.com/the-shady-or-not-so-shady-world-of-tipsters-bd39e370718f?source=collection_archive---------41-----------------------

这篇文章从一个潜在投资者的角度出发,深入探讨了情报贩子和体育博彩行业的世界

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

Lionello DelPiccolo 在 Unsplash 上拍摄的照片

如果从正确的角度来看,体育博彩行业可能会提供一个未被发现的投资机会,而不仅仅是一个赌徒的平台?根据个人经验以及统计和数学模型,我试图回答一些紧迫的问题,例如:

  1. 追踪一个举报人的账户能获得令人满意的投资回报率吗?
  2. 投资线人账户有什么风险?

三个主要人物

赌客:通常是对体育赛事的结果下金钱赌注的人

收受赌注者:收受赌注者是以约定的赔率接受和支付体育和其他赛事赌注的组织或个人。

**告密者:**告密者是指定期在互联网网站或专门的博彩场所提供有关体育赛事可能结果的信息的人。

线人帮助赌客识别体育博彩市场的隐藏价值。如果一个市场有“价值”意味着什么?当市场的隐含赔率高于或低于情报提供者确定的市场赔率时,情报提供者认为市场具有价值。

**让我们来看一个例子:**镇上有一家新的博彩公司,他是第一个推出十字军 vs 蓝调市场的人。他们为十字军打败蓝军提供了 1.80 的赔率。那就是一个隐含概率 1/1.80100 = 55.5%。*情报贩子注意到这个市场,他的第一印象是这个市场提供价值。这种印象之后是对过去比赛、当前状态、首发阵容、天气预报、比赛裁判等的严格研究。在这个例子中,研究证实了情报提供者的第一印象,并表明十字军大约有 70% 赢得比赛,而不是 55.5% 。如果消息人士是对的,那么在十字军身上下注 1.80 美元肯定是有价值的。根据爆料者的说法,正确的赔率应该更接近于 1.43

最好的情报提供者通常致力于某项运动,每周花费数小时研究市场,以确定提供最大价值的市场,然后将他们的情报提供给他们的订户。投注者使用这些线人帐户试图在体育博彩行业中获得对庄家的优势。

可以把线人账户想象成新手交易员的 etoro 账户。简而言之,休闲投注者宁愿每月支付费用,以反映一个声誉良好的情报,研究哪个体育博彩市场拥有最佳价值(如果有的话),而不是自己做艰苦的英里。同样, etoro 允许新手交易者自动模仿领先交易者。

贪婪和假设的危险

这一切对我来说听起来很容易。当我涉足体育博彩时,我在 Twitter 上搜索消息灵通人士的账户。假设和我开始从体育博彩中赚钱的渴望让我确信,从长远来看,模仿拥有最多追随者的线人一定是有利可图的。令我吃惊的是,我错了。我得到了一个惨痛的教训,没有适当的尽职调查,这是一个肯定会捐钱给庄家的方式。

数学占了上风

如何对线人进行适当的尽职调查?很快就变得很明显,决定一个线人账户生存能力的两个主要变量是他们小费的准确性平均几率。让我们更详细地探讨这两个概念。小费准确性不言自明:它是成功小费的数量(导致庄家支付的小费)除以小费者提供的小费总数。这可以显示为小数或百分比。

赔率通常以十进制赔率的形式表示,代表博彩公司在成功选号的情况下将付给投注者多少钱。

**让我们来看一个例子:**一家博彩公司可能提供 1.80 的赔率支持蓝军击败红军。这意味着,如果一个玩家在这个市场下注 $100 ,那么在成功选择的情况下,他们将赢得总计 $180 (包括他们的股份)的 ROI80%

平均赔率是情报提供者提供的所有市场赔率的平均值。

例如,情报提供者账户可能提供以下三个市场的情报

  1. 蓝军以 1.80的赔率击败红军
  2. 蓝军 vs 红军,总积分超过 52.50 赔率为 1.70
  3. 蓝军 vs 红军,蓝军以超过 3.5 的赔率尝试 1.85

这三个市场的平均赔率为 1.78

可以清楚地看到为什么平均选择准确率和平均几率都是至关重要的。在平均赔率为 1.05 的情况下,选择准确率为 80% 的情报贩子远不如在平均赔率为 20.00 的情况下,选择准确率为 30% 的情报贩子有利可图。

风险和回报——我的 7 个问题

因此,像大多数谨慎的投资者一样,我们应该在风险和回报之间寻找完美的平衡。潜在投资者可能会提出如下问题:

  1. **长期盈利能力。**如何确定情报提供者在一段特定的时间内或挑选后是否会长期获利?
  2. **精度波动。**如果情报贩子的拣货准确率从 74% 下降到 65% ,对盈利能力会有什么影响?
  3. **斗气波动。**如果市场上的平均赔率从 1.85 下降到 1.75 会发生什么?
  4. 失去条纹。情报贩子继续连败的可能性有多大?即对于一个 Y 投注样本,连续错得 X 投注金额的概率是多少?
  5. 风险厌恶。我应该在每个提示上下注占我账户总余额的百分比(姑且称这个百分比为【Z】)以及增加Z 会如何影响我在一段特定时期或若干次挑选中的风险敞口和期望值。
  6. ***正收益概率。*如果我的起始资金是 P 在一段特定的时间或选股后,以 3P 结尾的概率有多大?
  7. ***负收益概率。*如果我的起始资金是 P 在一段时间或若干次挑选后,以 0.5P 结束的概率是多少?

预期值

作为一个潜在的投资者,这些对我来说都是重要的问题。为了回答问题 1-3,我使用了一种叫做期望值的概率理论。简而言之,期望值(EV)是一个变量的预测值,计算方法是所有可能值的总和乘以其出现的概率。所有的计算都强烈依赖于之前讨论的两个变量,即线人的小费准确性和他们小费的平均市场赔率

足够的样本量

在这一点上,一个谨慎的投资者可能会想:“如果线人账户只提供了几个他们都发现了的提示,那会怎么样?这将意味着他们有一个 100%的偏斜选择准确性。这个值肯定不能作为所有未来预测的指标吧?”

潜在投资者再次提出了合理的担忧。为了对情报提供者的选择准确性有信心,应该确保计算中使用了足够的样本量。如上例所示,小样本量不能用于精确预测。有关确定适当样本量的更多信息,可以阅读了解二项式分布的置信区间。根据经验,在计算情报提供者的选择准确度时,建议使用至少有 100 个数据点的数据集。

马尔可夫的奇妙世界

为了回答问题 4 ,我回复到使用马尔可夫链。马尔可夫链是非常强大的、随机的数学系统,在各种行业中用于对达到给定状态的概率进行建模。马尔可夫链用于经济学、遗传学、金融以及谷歌搜索引擎的排名算法。马尔可夫链不仅允许我们精确地模拟连续得到 X 数量的选号的概率,对于 Y 选号的样本是错误的?它还可以确定自动交易机器人在一个 Y 交易的样本中获得 X 错误/正确交易量的概率。

全押加注

问题 5 的答案在于投资者的雄心。如果投资者正在寻找一个激进的投资(更高的风险和更高的回报),那么他会希望在他的账户余额的 10% — 20% 范围内的某个地方下注他的账户总余额的更大部分。一个更保守的方法(风险更小,回报更少)将会看到一个投注者投注他们账户总余额的 5-10%的。**

交叉检查

为了回答问题 6 & 7 我做了 4,000 次模拟,使用举报人账户的历史数据来确定 N次举报/天后的最终账户余额。这些模拟是使用输入变量来完成的,这些输入变量包括情报提供者的平均提示准确性、每个下注市场的平均赔率、起始帐户余额以及每次选择下注的总帐户余额的百分比。解释了情报提供者选择准确性的差异。**

我的 Excel 皮革人和肥皂

随后,我开夜车构建了一个 excel 电子表格,它为我提供了一个工具,让我可以对情报提供者的账户进行探究。他们中的绝大多数就像被车灯照着的鹿一样束手无策。然而,这些精英却表现得像一个在聚光灯下蓬勃发展的弗拉门戈舞者。我发现的一个不太为人所知的线人账户是一个赌注的儿子又名肥皂。

  1. SOAP 选择橄榄球联盟作为体育博彩行业的利基市场。他们为大多数大型橄榄球比赛提供提示,特别关注超级橄榄球和世界七人橄榄球系列赛。
  2. SOAP 对他们的数字和他们的跟踪记录是透明的。他们在推特上发布每一次选择,并保持他们选择准确性的最新记录(这可以在他们的推特账户上验证)。
  3. 他们目前对超级橄榄球和世界七人橄榄球系列赛的选择准确率是 87/118。这是一个 73.7%的选择准确率。
  4. 肥皂小费市场的平均赔率是 1.85。

$1,000 的起始资金为例,并假设总资金的 15% 在总共 20 周(每周提供 2 次提示)中的每一次下注会生成以下曲线图:

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

该图表示在 20 周内跟踪 SOAP 提示的投注者的账户余额(使用了期望值的概率理论)

当使用期望值的概率理论时,该图表明遵循 SOAP 提示的投注者在 20 周之后将有 8359 美元的期末账户余额。

下表包含一些值得注意的数字:

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

从情报分析 Excel 表中获得的 SOAP 投资见解

我对未来价值预测进行了两次单独的分析,以验证预测的价值。账目平衡了。在4000 次模拟 SOAP 特定指标后,平均期末资金为$ 8335,这与使用期望值概率理论时从 SOAP 分析曲线图中读取的*$ 8359*期末账户余额几乎相同。**

结论

作为一个认真的投资者,在 20 周的时间里,736%的投资回报率足以让我惊讶。几乎令人难以置信的是,目前, SOAP 正在 twitter 上免费提供他们的精选。我相信,用不了多久,就会有人发现他们的服务有赚钱的潜力。

…还是他们将继续成为体育博彩行业的现代罗宾汉?

作者不是注册投资顾问或经纪人。作者表达的所有投资或金融观点均源于个人研究和经验,旨在作为教育材料。作者明确建议你在做投资决定之前先向专业人士寻求建议。

作者领英

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值