TowardsDataScience 博客中文翻译 2019(一)

原文:TowardsDataScience Blog

协议:CC BY-NC-SA 4.0

TDS2019

来源:{url}

1.5T 担心的理由

原文:https://towardsdatascience.com/1-5t-reasons-to-be-worried-14dac3c280aa?source=collection_archive---------27-----------------------

…为什么 1.5 万亿美元只是学生贷款问题的开始

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

学生贷款借款人的平均债务超过 3 万美元。也许这代表了你的情况,也许没有。无论如何,学生债务的影响触及到每个人,因为这些贷款的影响可能意味着每个纳税的美国人欠下 4000 多美元,并对年度增长构成重大阻力。

额外的 350 美元学生贷款——大约是一个普通借款人的还款额——是通过外出就餐或在当地购物注入当地经济的更少的钱;支持旅游驱动型地区的是更少的旅行;为退休存的钱少了。

教育是一项投资,随着时间的推移会有回报——这一点已经得到了充分的研究和证明。但是,它对每个人的回报并不一样,考虑到对借款人精神和财务的不利影响,它的价值是有限的。考虑这些事实:

  • 如今,每 1 美元的政府贷款中,至少有~ 0.15 美元不太可能得到偿还
  • 普通借款人可以免费在 T2 生活两年,用这些钱来偿还债务
  • 经济每月损失了 150 亿美元的支出
  • 面对经济复苏和繁荣,问题变得越来越严重

我们今天在哪里?

联邦贷款的总未偿余额(包括本金和利息)在短短十年多的时间里增加了近三倍,这是由直接贷款的指数增长和联邦家庭教育贷款的适度下降(FFEL)推动的

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

…随着接受者的人数趋于稳定。合乎逻辑的结论?每个唯一借款人的平均余额正在增加:

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

让我们用几种不同的方式来思考这些数字的含义。对于持有 2018 年学生债务平均数额的人来说,这个数额代表:

  • 一居室公寓 24 个月的租金,基于美国的平均租金(~1405 美元/月)
  • **购买超过 12 年半的食物,**基于每人每年在食物上的平均花费(~ 2641 美元/年)
  • 15%的房屋首付,基于美国房屋价值中位数(~ 226,300 美元)
  • 退休储蓄的机会成本超过 80,000 美元,假设 10 年内的月供以 5%的回报率进行投资,那么该金额将增长 20 年,直到退休

越来越糟了

不仅数额在增长,借款人的还款能力也在下降。当某人短期内无法支付时,金额不仅不会消失,反而会增加利息。

而且,这发生在我们历史上第二长(118 个多月)的经济扩张期。在经济衰退期间,这些债务会发生什么?

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

自 2013 年第三季度以来,未偿还直接贷款增长了 102%;违约直接贷款增长超过 225%

政府在未来几年将面临数千亿美元的损失,这反过来又让纳税人面临数千亿美元的损失。

如果我们假设大约有 1 . 3 亿纳税人,那么今天每个纳税人的欠款超过 1700 美元,这是一个保守的假设——除了未来新发放贷款的违约之外,目前“信誉良好”的一些贷款肯定会转变为违约贷款。

觉得这听起来不算过分?考虑一下这个:

不仅大多数人负担不起额外的 1700 美元以上的税收,而且经济也负担不起。

我们是怎么来到这里的?

这场危机正在升级的两个原因是,大学越来越贵,学位的价值也在上升。

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

Shades of blue = College prices indexed

根据 2000 年的指数,公立学校的大学费用已经增长到 2.218 英镑;CPI 已经增长到 1.376;收入中值为 1.013 英镑。

整个“我用暑期兼职付了大学学费”的轶事不再管用了。

与此同时,大学学历和高中学历之间的差异也从未如此之大:

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

人们无法承受拿不到学位的代价,同时也无法承受学位本身的代价。

债务分配

债务分配不公平。根据你所在的州、专业和种族的不同,债务水平和支付能力也不同。

下面的地图根据平均工资和平均债务负担之间的差异给各州(不包括北达科他州)着色。这个数字代表平均债务。因此,举例来说,虽然加州的债务相对低于俄勒冈州,但俄勒冈州人的支付能力高于平均工资。

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

专业不同,预期收入也不同。想要高薪专业?很明显,选择工程:

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

对艺术或非营利组织充满热情,想要“高意义”(有意义)的工作?虽然没有报酬,但你还是要为学位付钱:

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

尽管每个专业的期望工资不同,但大学对每个学生收取的费用是一样的。这公平吗?不同专业是否应该有不同的借款限额上限?

在种族问题上,《华尔街日报》最近做了一项深度分析,研究学生债务如何对传统黑人大学的毕业生产生比其他人更大的影响:

[## 学生债务危机对历史上的黑人大学打击最大

长期以来,传统的非裔美国人学校是通往财务安全的必经之路,但现在,这些学校培养出的毕业生却面临着…

www.wsj.com](https://www.wsj.com/articles/the-student-debt-crisis-hits-hardest-at-historically-black-colleges-11555511327?mod=article_inline&mod=hp_lead_pos9)

下一步是什么?

对于每一美元的学生贷款,大约有 15 美分违约;一家银行典型的拖欠率是 1.57 分。太多的钱被发放出去,而不考虑人们是否能够偿还,我们都被套牢了。

以下是基于历史趋势和衰退对违约率的影响,对未来 5 年联邦贷款违约的基本情况、上行情况和下行情况的预测:

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

Bars = Forecasted total federal loan volume; Lines = Estimated loan defaults and forebearance

我估计,如果衰退环境即将来临,学生贷款会走上上次衰退期间消费贷款的老路,那么改善的空间很小,而下行风险很大。

你怎么看?

学生贷款是个问题吗?的解决方案是消灭所有学生债务重新开始吗?促进收入分享协议

我认为,大学应该承担更多的责任,培养出符合需求的技能和毕业生,让他们能够就业,为当今经济所需的各种领域做好准备。

由于几乎所有的还款风险都由政府和私人贷款机构承担——没有对表现非常差的学生的惩罚——激励措施略有偏差。贷款发放后,这所大学就完整了。如果贷款部分以毕业后 6 个月就业为条件呢?全额偿还贷款?

现状不能继续,否则我们应该期待同样的结果。同样的结果将意味着更多的政府风险、持续的高违约率,以及用新的或更高的税收来弥补这些损失的负担。

有何反馈或意见?我很想收到你的来信!请随时在 LinkedIn 上与我联系,或在 jordan@jordanbean.com 发邮件给我

1 —流失=快乐:以客户为中心的保持方法

原文:https://towardsdatascience.com/1-churn-happiness-a-customer-centric-approach-to-retention-540d1f4a7037?source=collection_archive---------19-----------------------

异种客户血统

通过计算终身价值来庆祝“客户异质性”

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

Photo by Henry & Co on Pexels

“从来没有人说:嗯……他是个糟糕的律师,但至少他很便宜!!"彼得·费德

在之前的一篇文章中,我讨论了如何超越预测,留住客户不可避免地归结为理解 客户价值我们愿意支付 的价格来保持这一价值。为了达成这一谅解及其各自的实施,我们提出了三个必须回答的问题:

1)哪些客户很快就有翻盘的概率最高?

2)我们每个客户的终身价值是什么?

3)什么样的挽留优惠最适合每位客户?

在回答问题#1 时,我们开发了一个客户流失预测模型,该模型提供了几种我们可以用来识别高风险客户/会员的策略。由于各种权衡,不存在单一的最优策略,因此决定使用哪种特定策略将完全基于我们愿意投资的金额,以防止现有成员离开。

你会问,“那么我们应该对每个高风险客户投资多少呢?”?嗯,这完全取决于我们期望他们在一生中购买和贡献多少。这种期望被称为顾客的终身价值(LTV)。

这篇文章是我的回购的“后续文章”。在这里,我将涵盖我在这个项目过程中遇到的主要想法、结果和推论。现在,让我们直接跳到问题 2:

我们每个客户的终身价值是什么?

终生价值(LTV)为什么它很重要?

通常,当我们想到获取和保留客户时,我们会立即进入成本最小化(底线)的思维状态。然而,为什么当我们雇佣人才时,我们想要最好的,而且我们愿意为最好的支付(最高限额)?我们需要将同样的逻辑应用到我们的客户获取和保留工作中。如果有美元可赚,我们就不应该纠结于便士!

LTV,又名获取-保留价值,被定义为未来(净)现金流的现值。这是一个前瞻性的概念,而不是衡量过去的盈利能力。

那么我们如何计算 LTV 呢? 嗯,看情况。所有的收入来源都可以归结为合同或非合同模式。主要区别在于,在合同环境中,我们观察客户“死亡”的时间(例如:一个应用程序提供每月订阅,而客户没有重新订阅),而在非合同环境中,不观察客户变得不活跃的确切时间(例如:客户从电子商务网站购买商品,并且不再返回)。

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

Types of Revenue Streams

这些模型中的每一个都有自己独特的评估 LTV 的方式,因此我们将只涵盖离散的合同计算,因为我们的用例涉及基于订阅的固定价格业务*。*如果你对非合约 LTV 分析感兴趣,可以参考这个很棒的教程

在离散的合同环境中计算 LTV——游戏计划:

1)进行生存分析,并使用 Kaplan Meier 曲线分析我们每个成员的生存概率。

2)创建一个 Cox 比例风险模型(生存回归)来研究生存时间(预期寿命)和我们的变量之间的关系。

3)使用该回归模型确定所有成员的预期寿命,并计算其各自的 ltv。

4)重新审视我们的客户流失模型和已识别的高风险会员。

生存分析

生存分析是统计学的一个分支,最初用于医学和生物学科,研究患有重大疾病的试验患者的生存时间。简单地说,我们称之为“事件时间”分析。这项技术不仅可以进一步应用于传统的死亡事件,还可以应用于不同业务领域中许多不同类型的事件。

生存分析适用于我们可以定义的情况:

  • ***一个“出生”事件:*对于我们的应用程序,这将是客户与公司签订合同的时候。我们用这个来衡量用户成为会员的时间(任期)。
  • ***“死亡”事件:*当客户在 2016 年 2 月会员资格到期后的 30 天内没有重新订购时,就会发生这种情况。

但是,请记住,这更像是一种探索性的数据分析技术,用于通过可视化不同群组各自随时间推移的累积生存概率来评估不同群组的预期寿命。该函数的直观表示通常被称为卡普兰-迈耶曲线,它展示了某一时间间隔内某一事件(例如,生存)的概率。

类似于我们如何在创建回归模型之前进行双变量 EDA 以了解个体特征的行为和潜在影响,我们在创建 Cox 比例风险(CPH)回归之前进行生存分析。现在让我们看看使用一种叫做卡普兰-迈耶曲线的特定类型的生存曲线,我们可以收集到什么信息。

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

上面的曲线提供了一些与我们人口健康相关的直觉。总的来说,我们的成员在 4000 天时有~80%的存活概率,因此保持力似乎相对较强。这表明 KKBox 是一个相当健康的业务,因为客户幸存的几率很高。现在,在确定客户的终身价值之前,让我们将我们的数据分成不同的群组,以建立一个坚实的基础。

生存分析#1:集群客户群

之前的项目中,我们根据用户活动确定了以下 4 个群组:

  • 集群 3,电力用户
  • 集群 2,二级电力用户
  • 群集 0,活动多数
  • 聚类 1,不太活跃的少数群体

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

在这里,我们可以看到群 1(不太活跃的少数)和其他群之间的明显区别。这是对我们的细分分析的可靠跟进,因为它进一步证明了集群 1 如何明显地具有该组的最差预期寿命(75%的存活率,而其他组在 4000 天的存活率约为 89%)。然而,从长远来看,让 75%的最差客户存活 11 年是一个很大的问题。

生存分析#2:注册方法

虽然 KKBox 没有提供太多关于注册方法值的信息,但我发现这是一个有趣的特性,因为它可能代表用户“如何”加入平台。

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

进行生存分析的一个好处是,我们可以清楚地看到影响强成员和弱成员的确切因素。在这里,我们看到了所有 4 种注册方法的存活率的明显差异,其中 registered_via = 9 和 3 优于其他方法。拥有 registered_via = 10 和 4 的成员似乎几乎瞬间死亡。如果我们对这一特征的假设是正确的,那么通过归因,我们可以用前两种方法重新分配我们的资源,以获得更多的长期成员。

从过程改进的角度来看,存活曲线也是调查为什么 4 和 10 表现如此差的一个提示。这是一个很好的例子,说明我们如何通过评估营销活动及其为我们公司创造的客户类型,使用生存曲线来优化用户获取。**

生存分析#3:付款计划期限

使用订阅的公司通常为客户提供不同的层级。通常,这些层中的一个会被突出显示或区分,因为公司有意试图吸引客户选择默认包。通过生存分析,我们可以问这样一个问题:我们默认用户订阅的内容会如何影响他们作为客户与我们在一起的时间?

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

在这里,我们可以看到计划的选择对会员资格期限有重大影响。与每月 30 天的计划相比,持续时间更长的计划随着时间的推移存活率更低。这可能是因为一旦计划到期,计划期限长的人不太愿意以同样高的一次性付款重新投保。此外,这张图表对我们如此有价值是因为它告诉我们如何能够 优化客户激活

那么我们应该给每个人默认一个 30 天的计划吗?嗯,那要看目前的经营策略。如果企业希望在短期内(365 天或更短)增加收入以获得现金流,那么默认用户使用 360 天计划可能是最好的选择。但如果企业优先考虑长期客户健康和权益,那么 30 天计划是显而易见的候选方案。

这些卡普兰迈耶图不仅在视觉上吸引人,而且它们清楚地向我们现有的客户解释了潜在的模式。这是一个如此简单和初级的工具,但它提供了有价值的信息,我们可以根据这些信息做出清晰、有效的决策。不要忘记,所有这些见解仅仅来自于从两个特征(任期和流失率)计算累积边际率!

Cox 比例风险(CPH)回归

如前所述,我们的卡普兰迈耶曲线只适用于一个特征,忽略了所有其他特征的影响。因此,需要一个更好的模型来同时评估所有数字和多重预测因子对生存时间的影响。

Cox 比例风险(CPH) 是一种常用的半参数模型,用于研究生存时间和所有变量(包括分类和定量预测因子)之间的关系。对于给定的危险率,它通过累积计算一段时间内个人的“死亡”风险来返回每个用户的预期寿命。这些“危险”可以被认为是增加/减少生存机会的东西。例如,在我们的业务问题中,风险可能是由于客户拥有的合同类型或他们注册应用程序的方式而导致的相关死亡可能性(客户流失)。

我们必须再次强调,运行 CPH 回归模型的要点不是分析谁死谁不死。相反,我们这样做是为了研究我们的特征(也称为协变量)对死亡的时间的影响。所述研究的结果是预测用户预期寿命的能力,然后我们反过来用它来计算他们各自的寿命值。

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

CPH Regression Output

由此产生的模型摘要相当详细,所以现在我们只关注关键输出: exp(coef) 。这被解释为变量的每个额外单位的危害(风险)的标度:

  • 1: 无影响,对死亡贡献无影响
  • 低于 1: 风险降低,对死亡的影响较小
  • 以上 1: 危险增加,对死亡的贡献更大

解释摘要:

  • city_agg 是一个工程特性,根据人口将所有城市减少到 5 个组成部分。在 exp(coef) 下针对每个预测值给出的风险比(HR)表明,具有exp(coef)=~. 9city_agg_4 和 city_agg_3 特征在降低风险方面的作用最小。
  • Cluster_2 和 Cluster_3 分别具有 exp(coef) = .77 和. 71, (即小于 1)的特征意味着危险降低,因此生存更好。因此,一个成员被归类为这些集群中的任何一个,死亡的几率就会降低一倍。 分别为 77 和. 71 ,因此是更好生存的良好预后。
  • city_agg_1,Cluster_1,registered_via_PCA危害比= ~2 及以上!因此,这些是重要的“杀手”,因此是低存活率的强烈迹象。

既然我们有了 CPH 回归模型,我们现在可以计算预期寿命和寿命价值。

估算所有成员的预期总寿命,并计算其各自的 ltv。

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

这里我们看到观察到的任期和我们新计算的预期寿命。通过比较这两块地,我们可以看到,就任期而言,我们目前的成员人口相当年轻。中位年龄约为 1000 天,我们的成员变动率(死亡事件),我们可以预计我们的成员与我们在一起的中位时间为 4000 天(约 11 年)。

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

如前所述,预期寿命价值是作为未来(净)现金流的现值计算的。我们假设加权平均月成本为 9.50 美元(每天约 0.32 美元,美元换算),年折扣率为 10%(实际上,折扣率通常为 6-12%)。

超过 4000 天的总 LTV 为 819.45 美元,我们看到了大规模采用对于这种商业模式的成功是多么的关键。值得注意的是,这一计算没有考虑成员的任期,这意味着 443,914,440.78 美元的总 LTV 包括了我们的成员已经为公司贡献的过去价值。然而,我们更感兴趣的是确定我们期望成员贡献多少剩余价值。

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

对于我们的用例来说,这更有价值,因为我们现在对未来的预期有了一个现实的视角。此外,我们可以看到 LTV 如何陷入负面,因此我们可以识别根据我们对生命周期的估计预计会死亡的活着的用户。为了更好地理解这一点,有助于将它们解释为代表这些成员贡献的超过其各自 LTV 数额的额外价值的绝对值。

这是 LTV 建模提供的另一个很好的洞察,因为这些成员可能属于 【集群 3(高级用户) ,并且可能是潜在的溢价向上销售的候选人。即使从公司估值的角度来看,我们也可以做出一个非常有力的论证,仅仅基于这种分布,这家公司实际上值多少钱。

重新审视我们的流失模型和已识别的高风险会员

**在之前的项目中,我们就着手回答了这个问题:哪些客户很快就有翻盘的概率最高?尽管我们创建了几个可以轻松回答这个问题的模型,但我们仍然没有足够的信息来为我们的业务选择最佳模型。我们的结论是,因为我们不知道每个客户的价值,我们不能正确地确定什么样的治疗将有效地说服他们留在我们身边。这种治疗的成本是最终决定我们应该使用哪种模型的因素,因为这些模型让我们清楚地了解了取决于策略的风险和回报。现在我们知道了客户对我们的价值,让我们重温一下之前的模型,量化两者之间的风险回报权衡。

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

在我们继续之前,这是一个很好的地方来简要提及 LTV 分析的一个小免责声明。最终,LTV 将作为一个临时快照来使用和对待。它应该被视为一种结果,而不是原因。因此,价值的变化应该是我们在营销、产品、沟通策略等方面采取行动的结果。考虑到这一点,即使我们见证了 4000 天的高存活率,假设这一存活率将随着时间的推移保持不变也是不明智的。因此,我们将使用我们当前的模型,使用未来三年的 LTV 上限值进行推断。

因此,如果我们不进行干预,而我们所有的实际高风险成员都受到了影响,那么总的潜在价值损失会是多少?答案是 未来三年 5833677.41 美元。 这是对实际上是高风险成员的预期剩余 LTV 的总和。但是如果我们真的干预了呢?你愿意花多少钱来保持这种价值?

GBT 1:1 比率模型—太多的假阴性

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

在这个模型中,我们放弃了 2,618 名会员,剩下约 764,000 美元,因此我们有机会在三年内保留 17,305 名会员,剩余 LTV 为 507 万美元。然而,这也带来了一个问题。为了接触到所有 17,305 名成员,我们必须再次接触被标记为高风险的 94,020 名成员。

GBT 13:1 比率模型—假阳性太多

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

这种模式基本上放弃了 11,670 名会员,剩下 324 万美元,因此我们有机会保留 8,253 名会员,剩余 LTV 为 241 万美元。这种模式的优点是,我们只有 15,559 名成员被确定为实际高风险。这意味着“按比例”与其他模型相比,我们不需要接近那么多人来接触那些实际上是高风险的用户。

有了这些信息,我们现在就有了做出实际决策的框架。作为一个例子,让我们以单个治疗成本来评估每个模型,以更好地了解它们的总成本和 ROI。让我们从一些假设开始:

  • 治疗费用为 9.50 美元(1 个月订阅,加权平均)
  • 我们只会接近那些我们能获得至少 200%总回报的用户。这样我们就忽略了 LTV 不超过 30 美元的会员。
  • 所有成员都受到同样的待遇

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

由于 LTV 建模,我们可以做出明智的决定,我们应该选择哪种模型策略。通过只追逐有潜力给我们带来合理投资回报的客户,我们可以确保明智地花钱。还需要注意的是,这仅仅是一个查看成本对我们每个模型的影响的练习。事实上,我们不会给予所有会员相同的待遇,因为顾客从来都不是同质的。当我们忽视客户的异质性时,我们会浪费宝贵的资源去追逐任何人和任何人的产品销售,不惜任何代价。我们稍后再看这个。

有了这些模型以及它们相关的风险、回报和成本,我们可以简单地决定我们愿意花多少钱。

结论:我们每个客户的终身价值是什么?

我们从了解 LTV 的需要开始这篇文章,这样我们就可以确定我们可以花多少钱来说服一个高风险客户重新考虑他们的退出。这个成本是至关重要的,因为它将阐明我们的每个模型策略在成本和潜在收益方面的权衡。在执行计算时,我们实际上能够通过计算获得更多的价值。

优化客户获取和激活

进行生存分析的一个好处是,我们可以清楚地看到促成强势和弱势成员的确切因素,从而使我们能够根据需要重新分配资源,以更好地集中精力进行收购。

尽管人们普遍认为长期计划对企业最有利,但这项分析利用相对有限的数据为相反的观点提供了有力的证据。诸如此类的洞见使得生存分析对所有企业来说都是非常宝贵的。

收购成本与收购价值

正如我之前提到的,我们经常寻求将获取和保留客户的成本降至最低,同时愿意为最优秀的人才支付额外费用。LTV 是一个有价值的工具,可以用来寻找和获得最好的成员。当有美元可赚时,我们不应该纠结于便士!

让我们看看第三个也是最后一个问题:

什么样的挽留服务最适合每位客户?

不幸的是,这个问题的答案超出了这个项目的范围。但是,回答这个问题背后的主要思想是承认所有的顾客并不是生来平等的。如前所述,我们对所有客户一视同仁,仅仅是为了展示成本对客户流失模型的影响。事实上,平等对待所有客户的问题在于存在“普通客户”的错误观念。使用这种方法,我们无法在更精细的层次上识别客户的独特属性。当我们忽视客户的异质性时,我们会浪费宝贵的资源去追逐任何人的产品销售,不惜任何代价。 LTV 是我们用来了解适合合适客户的合适价格的工具。将这些治疗方法分配给所有高风险客户后,可以创建一个模型来了解哪些治疗方法被证明是最有效的。

正确回答这个问题的一种方法是通过细分、目标和定位的方法。从总体上看,我们可以将 CLV 的客户群分为三类,并定义一个如何对待他们的简单主题:

  • 高价值客户 :识别他们
  • 中等价值客户 :发展他们
  • 低价值客户 :控制成本

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

Screenshot from InfoTrust CLV Video

通过利用 LTV,我在这个项目中展示的一切都为我们如何处理客户流失建模项目增加了一个新的视角。这一点尤其正确,因为它们不像许多人想象的那样是一维的。关于这个项目,最令人印象深刻的是我们能够从客户获取、激活和保留方面得出的推论数量。这证明了终身价值是一种无价的工具,任何企业都不应该缺少它,但却没有得到足够的重视。干杯!

其他参考资料和灵感:

我希望你喜欢这些文章!我对客户终身价值这一话题非常感兴趣,如果您想进一步了解这一话题,请随时通过 LinkedIn 与我联系!

1 —流失=快乐:以客户为中心的保持直觉

原文:https://towardsdatascience.com/1-churn-happiness-customer-centric-approach-to-retention-fd1d85464e45?source=collection_archive---------22-----------------------

异种客户血统

使用 Google BigQuery 和 Apache Spark 的 KKBOX Music 的流失预测用例

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

Photo by Pixabay on Pexels

“只有一个老板。顾客。他可以解雇公司里从董事长开始的所有人,只要把钱花在别的地方。”

—萨姆·沃尔顿

客户流失无疑是企业主最害怕的词汇之一,因为这意味着他们已经永远失去了一个客户。尽管这是做生意不可避免的一部分,但如果公司实施适时的营销和销售方法,许多流失的客户都可以被保留下来。

如果你问任何一个数据科学家,流失预测模型的目的是什么,他们很可能会说“预测流失…废话。”这个回答当然是正确的;然而,它只是部分地解决了实际问题。

除了预测,客户的获得和保留不可避免地归结为理解 客户价值我们愿意支付 的价格来保持这一价值。它是关于“庆祝客户的异质性”知道所有客户并非生来平等,从而使公司产品和服务的开发和交付与其最高价值客户的当前和未来需求保持一致。要正确执行此操作,我们需要回答以下问题:

**1)哪些客户很快就有翻盘的概率最高?**如前所述,可以训练预测模型来识别最有可能离开的客户。

**2)我们每个客户的终身价值是什么?**在确定哪些客户有离开的风险后,我们会遇到这样的问题:“我们提供什么激励措施让他们重新考虑?”(这种优惠通常被称为治疗)。通过了解客户对我们企业长期成功的价值(即客户终身价值),我们可以开始以合适的价格用合适的待遇接近他们。

3) 什么样的挽留优惠最适合每位客户? 根据顾客的终身价值,商家可以制定多种治疗方案。将它们分发给所有高风险客户后,可以创建一个模型来了解哪些治疗方法是最有效的。

我将使用现有企业的数据作为例子来探讨这些问题。在本文中,我们将遵循 CRISP-DM 方法,并在下一篇文章中的建模和评估基础上进行构建:

  • 业务理解: 这个阶段从业务的角度考虑我们想要完成什么
  • 数据理解: 此阶段涉及收集、描述和探索数据
  • 数据准备: 此阶段涉及数据的清理、构建和集成
  • 建模: 这一阶段包括建立和评估模型
  • 评估: 在这里,我们评估模型满足我们的业务目标的程度,并试图找到该模型有缺陷的业务原因
  • 部署: 在这个阶段,我们确定一个部署结果的策略,监控部署的性能,维护部署。这一部分不包括在内。

最后,这篇文章是作为我的回购的“后续”而写的。在这里,我将涵盖我在这个项目过程中遇到的主要想法、结果和推论。所以,让我们从问题 1 开始:

哪些客户很快翻盘的概率最高?

1.商业理解:进入 KKBOX 音乐

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

KKBOX 是亚洲领先的音乐流媒体服务,拥有世界上最全面的亚洲流行音乐库,拥有超过 3000 万首歌曲。他们向数百万人提供无限制版本的服务,由广告和付费订阅支持。然而,这种微妙的商业模式依赖于准确预测付费用户的流失,这正是我希望实现的。

2.数据理解

本次练习的数据可在 Kaggle 公开获取。这是由第 11 届 ACM 网络搜索和数据挖掘国际会议(WSDM 2018)主办的比赛的一部分。数据包含了~ 230 万会员从 2015 年 1 月到 2017 年 3 月的音乐收听和交易习惯。

— 2.1 数据集描述—

我们将在这个项目中使用的数据集分为两个版本: v1v2 。这里,我们将只使用 v1 文件,因为它们包含近 3 年的数据,而 v2 只包含一个月。

  • train_v1: 包含唯一的用户 id,以及自20172/28 日起是否被篡改。 ~800K 记录@ 45.56 MB
  • 交易 _v1: 截至20172/28 的用户交易。它包含与计划定价、交易日期和会员到期日相关的功能。~ 2200 万条记录@ 1.68 GB
  • user_logs_v1: 截至20172/28 日的日订阅用户活跃度。这包含与播放的独特歌曲数量、每天收听的总秒数以及部分收听的歌曲数量相关的特征。 ~4 亿条记录@ 29.78 GB
  • **会员:**所有用户信息数据。它包含与性别、注册方法、城市和年龄相关的特征。~ 500 万条记录@ 417.89 MB

总计:31.92 GB 包含所有文件的 22 个原始数据点,包括 4 个日期字段

以下是我用于高效数据准备和模型构建的数据架构:

  • 原始表( RAW_ ) —所有表的原始未触及版本,将用作干净备份。
  • 工作表( WRK_ ) —所有表格的清洁和正确格式化版本。这些将作为我们的派生表的源。
  • 衍生表( DRV_ ) —专为我们的用例创建的表。所有的特征工程都将在这里进行。

— 2.2 注释和观察—

鉴于如此庞大的数据集,我决定使用 Google BigQuery 作为持久化的存储解决方案。对于建模,我使用了 Apache Spark(通过 Google Dataproc)。

免责声明:我意识到 Google BigQuery 并不打算用作 DBMS,Postgre 和 MySQL 服务器之类的东西更适合这个用例,但是……他们提出让我免费使用它!

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

3.数据准备

请参考 创建派生表 及特性 章节中的 KKBox 搅动—第 1 部分— ETL 笔记本

— 3.1 派生表构造—

我们将从构建每月派生表开始,其中包含在每个月内具有成员资格到期日的所有成员。我们还将包括表中所有特定于成员的信息,以及一些简单派生的特性。最后,我们根据 KKBOX 的定义计算 is_churn 。结果是:

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

我们将分别使用 2016 年 1 月和 2016 年 2 月作为训练集和验证集。

— 3.2 特征工程—

对于这个项目,我最终创建了大约 230 个特性,每个特性都有两种形式;汇总和追溯数据。

聚集特征 是成员数据的一般聚集,主要是绝对总和和平均值。这些集合特征的例子:

  • **Total _ spend:**会员一生中花费的总金额。
  • spent_per_num_unq :总花费/独特歌曲数量总和

回顾性特征 采取三种主要形式:

成员资格到期后 7、15、30、60 和 120 天的时间间隔内的聚合数据(AVG、标准差、总和)。示例:

  • total_secs_last_15_AVG :过期 15 天内平均收听的音乐秒数
  • over_50perc_last_30 :过期 30 天内收听率超过 50%的歌曲数量

两周一次的活动街区。示例:

  • SUM_unq_songs_0_15 :对过期后 0 到 15 天内的唯一歌曲进行求和
  • AVG _ 歌曲 _15_30 : AVG #到期后 15 到 30 天内的歌曲

双周活动板块比较。创建这些功能是为了捕捉导致成员到期日期的趋势行为。示例:

  • dif SUM _ unq _ Songs _ 0 _ 15 _ 15 _ 30:过期后 0-15 天与 15-30 天区间内唯一歌曲总和的差值
  • dif avg _ Songs _ 15 _ 30 _ 30 _ 45:到期后 15-30 天与 30-45 天内每天播放的 AVG 歌曲数量的差异

— 3.3 EDA 和客户细分分析—

本节参考以下笔记本:

由于本文更多地关注于项目的建模方面,我强烈建议您访问本节的相应笔记本。正如您将在第一个笔记本中看到的,我喜欢使用统计方法来指导 EDA 过程,尤其是在处理如此多的功能时。除此之外,还通过 K-Means 将用户划分为集群组,以进一步了解现有的客户群及其各自的行为。

我将这些细分市场定义如下:

电力用户

人数不多但忠诚,这部分用户是所有指标中最活跃的。由于这些用户往往比其他人拥有更长的会员时间,他们的流失率低于 1%。这个群体也拥有最高的每用户平均收入。

集群 2,二级电力用户

就活跃度而言,这些用户仅次于我们的超级用户,约占总观察收入的 16%。像我们的集群 0 用户一样,他们的流失率略高于 1%。

集群 0,主动多数

排在第三位的是活跃分子,我们称之为“活跃多数”。这些用户占我们观察人口的近 43%,是收入的最大贡献者,占总收入的近一半。尽管集群 2 的用户更活跃,但在流失率%和每用户平均收入方面,他们之间几乎没有区别。

集群 1、 非活跃少数

与所有其他群体相比,客户流失率最高,我们观察到这部分客户的活跃程度明显低于其他群体。然而,有趣的是,这些用户最有可能在他们的订阅上获得折扣,然而他们中的许多人最终都搅动了 (集群 1 中所有用户中 34.5%的人目前低于他们的计划价格,搅动了。这让我对这些人中的许多人是否值得花费资源产生了疑问,并强调了为什么在决定谁值得追求时,客户终身价值如此重要。

— 3.4 处理阶级不平衡—

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

正如我们在探索性数据分析中所讨论的,我们正在处理我们的目标变量(流失)中的一个显著的类别不平衡,非流失与流失的比例为 97:3。为了避免我们的非流失数据占主导地位,我们将从基于 50:50 平衡集(通过对主导类进行欠采样)的建模开始,并在必要时调整这种平衡。

4.建模

请参考本节的跟踪笔记本:

我们最终在 Apache Spark 上使用了两个分类评估器:***【GBT】***和 随机森林分类器(RFC) 。为这个项目构建了各种模型,这些迭代产生了许多特性。在这里,我将介绍导致我们最终的 GBT 模型(最佳性能)的一般演变。该部分按如下方式进行:

  1. 最初的 GBT 和 RFC 模型建立在一个 1 对 1 样本上
  2. GBT 模型基于各种 x 比 1 采样比例,以减少过拟合和整体精度
  3. 基于各种 x 比 1 采样比例和不同特征重要性阈值构建的 GBT 模型,以进一步降低过拟合和整体精度

我们会参考流失值如下: 流失= 0: 正类,客户没流失。 流失= 1: 负类,客户确实流失了

模型#1:一对一流失与非流失比例分割

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

观察

值得注意的是,我们的模型特征目前仅包括聚合特征和随时间间隔聚合数据特征。查看这些分数,我们可以看到我们的模型稍微有些过度拟合。然而,最令人担忧的是,与召回率相比,我们的准确率较低。查看我们的验证模型的混淆矩阵,我们可以看到这些分数的影响。

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

这里我们看到,与我们的假阳性相比,我们模型的假阴性太高了。考虑到我们目前的使用案例,如果 KKBox 使用这种模式,他们在治疗成本上的损失可能会比实际客户流失更多。就验证分数而言,GBT 和 RFC 之间没有实质性差异,然而,RFC 似乎概括得更好。

下一次迭代的注释

我们需要解决的第一个问题是两个模型中的大量假阴性。由于我们的模型目前对做出客户流失=1 预测更加敏感,我相信通过引入更多非客户流失数据来创造轻微的不平衡,我们可能能够降低这种敏感性。

模型#2:具有趋势特征的多个比率子集分割

在这里,我们总共创建了 7 个子集,在每个奇数时间间隔上从 1 比 1 到 13 比 1(非流失到流失),因为我们希望改善假阳性和假阴性之间的平衡。我们还增加了更多关注趋势的功能。

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

观察

我们现在有大约 230 个功能,包括我们的双周活动板块双周活动板块功能对比。看上面的结果,我们可以看到我们对 AUC 做了一些改进。我们还可以看到,在比率子集上,回忆显著增加。这意味着子集似乎已经解决了大量假阴性的问题,但代价是产生了更多的假阳性。

我们的模型仍然过度拟合,高比率模型(9:1、11:1 等)表现最差。然而,在高比率模型上,我们的召回分数更好,在模型误差上也有所改善,精确度略有下降。

下一次迭代的注释

由于归纳缺乏一致性,我们将通过基于重要性减少特征的数量来解决模型的复杂性。为此,我们将首先得出所有模型的所有特征重要性分数的平均值。然后,我们将生成该组的 5 个数字的汇总,以生成以下特征组:高于平均值的特征、高于 75%的特征、高于 50%的特征和高于 25%的特征。

模型#3:多个比率子集分裂@调整阈值—最佳性能模型

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

观察

为了简化我们的分析,我们只包括了每个比率子集的模型,这些模型都是一般化的最佳模型(最佳 1:1 模型、最佳 3:1 模型等)。基于目前的结果,我们增加了模型的总体概括。

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

我希望在泛化、假阳性和假阴性方面有更好的结果。我们可以通过许多方式继续构建和改进这些模型,但我们将结束项目的这一阶段,继续我们目前的成果。

5.估价

— 5.1 模型评估—

在这个项目开始的时候,我们就着手回答这个问题: 哪些客户很快就有翻腾的概率最高? 和虽然我们创建了几个可以轻松回答这个问题的模型,但我们仍然没有足够的信息来为我们的业务选择最佳模型。

由于我们目前不知道每个客户的价值,因此我们不能正确地确定什么样的待遇会说服他们留在我们这里。这种治疗的成本是最终决定使用哪种模型的因素,因为 这些模型根据我们选择的策略让我们清楚地了解风险和回报。 让我进一步解释一下:

例#1:太多的假阴性

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

通过查看 预测,流失=1 列,我们可以看到我们的模型归类为高流失风险的总人数。仅根据这一模型,我们将为 93,367 名成员提供治疗,希望保留其中的 17,305 人,同时冒着 2,618 人的风险。这并不意味着这种模式不好。据我们所知,这些成员的治疗费用可以忽略不计,这意味着对所有 93,367 名成员进行治疗是可以承受的。但是如果总的治疗费用不可忽略呢?在这种情况下,这种模式可能过于昂贵,因为总治疗成本可能超过没有流失的用户的总价值。

例二:误报太多

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

与之前的模型相比,现在我们只有一小部分的假阴性,但是我们也有大约 4.5 倍的假阳性。查看 预测,流失=1 列,我们看到 15,559 个成员被标记为高风险。我们冒着失去 11,670 名会员的风险,却可能获得说服 8,253 名会员留下的回报。因此,这种模式可能更适合于总治疗费用高而我们的资源有限的情况。

— 5.2 结论—

这两个模型仅仅是我们在寻找如何识别和接近不开心的顾客的完美平衡时追求的两个极端。它们还展示了正确理解客户价值对我们业务长期成功的重要性,以及留住客户的相关成本。流失预测项目通常不会产生一个单一的、完美的模型,但是它们会提供有价值的信息,这些信息可以用于更有效的决策和实践。

如果你喜欢这个话题,你可能会喜欢我写的下面这篇文章。通过计算终身价值庆祝“客户异质性”

1 分钟数学:0 是偶数还是奇数?

原文:https://towardsdatascience.com/1-minute-math-is-0-even-or-odd-93d30090201f?source=collection_archive---------18-----------------------

我的学生经常问我的一个问题是:0 是偶数还是奇数 还是两者都是

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

Photo by Jeremy Perkins on Unsplash. Zero — a beautiful number.

0 是偶数吗?

要回答这个问题,我们首先需要定义“偶数”是什么意思。

偶数是一个数 n,它可以写成某个整数 k 的 n=2⋅ k

这意味着如果我们把一个偶数除以 2,就没有余数了!

我们可以把 0=2⋅ k 写成一些 k 吗? Yepp,如果选择 k=0 就可以。

太棒了。这意味着 0 是偶数!

0 也是奇数吗?

同样,我们首先需要定义“奇数”的含义,常见的定义与偶数的定义非常相似。

奇数是一个数 n,对于某个整数 k,它可以写成 n=2⋅ k+1

我们能把 0=2⋅k+1 写成整数 k 吗?没有。我们不能,因为解这个方程得到的不是一个整数。

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

答案

好了,证明完成了。0 是偶数(且只有偶数!).

不会甚至(一语双关)太难吧?

一分钟数学:比萨和毕达哥拉斯可视化

原文:https://towardsdatascience.com/1-minute-math-pizza-and-pythagoras-visualized-359470941bd6?source=collection_archive---------44-----------------------

小号+中号还是大号?还有呢?

许多比萨饼店提供小号、中号和大号的比萨饼。如果你想知道点一个大披萨而不是一个小的和一个中的披萨会不会让你得到更多的披萨,这里有一个漂亮的视觉技巧可以帮你找到答案。

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

每种尺寸点一份披萨(我知道,这就是它如此美丽的原因!多好的理由去订购更多的比萨饼!),把它们切成两半,像这样放在一起。

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

Perfectly fitting pizza!

它是否完全合适,并且在左下角有一个直角?如果你点了一个小的和一个中的比萨,而不是一个大的,你会得到同样多的比萨。披萨的三个直径符合毕达哥拉斯的方程式。

是不是长这样而且大披萨“太短”了?那么你可能想点一个小号和中号的比萨饼来代替。

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

The pizza is too small. The small and the medium pizza together are indeed more than the large pizza.

还是大披萨“太长”?这在大多数地方都应该发生——这意味着如果你点一个大披萨而不是一个小的和一个中的一起点,你会得到更多。

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

The pizza is too big! These were our original dimensions — it looks like we made a good deal.

当然,我们假设所有三个比萨饼的高度 a 是相同的。因为如果我们将毕达哥拉斯方程两边的一些数字相乘,我们会得到一个包含三个披萨体积的方程。

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

所以下次你点披萨的时候,记得每种尺寸至少买一个,亲自尝试一下。

当然,纯粹是出于科学原因。

从零开始的单向方差分析—用一个工作实例剖析方差分析表

原文:https://towardsdatascience.com/1-way-anova-from-scratch-dissecting-the-anova-table-with-a-worked-example-170f4f2e58ad?source=collection_archive---------4-----------------------

ANOVA 是方差分析的缩写,是一种使用统计显著性比较平均值的常用统计方法。在这篇文章中,我解释了如何从零开始计算一元方差分析表,应用于一个很好的例子。

本文概述:

  1. 介绍单因素方差分析的示例和目标
  2. 了解方差分析模型
  3. 使用 Python 的 statsmodels 库执行 ANOVA
  4. 从头开始的方差分析—剖析方差分析表
  5. 结论

1.单因素方差分析的目的是通过一个例子

在整篇文章中,我将使用一个关于披萨递送时间的例子。假设我们在 3 家不同的披萨公司(A、B 和 C)订了很多次披萨,并且测量了送货时间。

跟着 Python 笔记本过来吧!

首先,我们需要将数据导入 Python:

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

Getting our 21 observed pizza delivery times into pandas

数据现在看起来如下:

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

Pandas DataFrame with the pizza delivery times

每家公司的平均交付时间提供了哪家公司更快的第一手信息,在本例中,B 公司:

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

Average delivery time per company

但是,平均水平不足以很好地描述这种情况,因为交付时间存在相当大的差异。例如,原始数据显示 B 公司有时也非常慢。

为了说明 B 公司是否比 T4 公司更快,我们需要一个假设检验。如果需要的话,不要犹豫,回到这篇文章中,这篇文章对假设检验给出了直观的解释。

在当前比较 2 组以上平均值的情况下,我们需要一个单向方差分析。

2.ANOVA 是如何工作的?

ANOVA 模型从估计比萨饼交付时间中存在的总变化量开始(这就是为什么它被称为方差分析)。

查看我们的示例,我们可以说比萨饼的交付时间从 8.9 分钟到 14.0 分钟不等。如果我们忽略关于公司的信息,我们对新的比萨饼外卖的最佳估计是 8、9 和 14 分钟之间。我们暂且称之为总变差

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

The companies’ average delivery time is more valuable information than the overall average delivery time

下一步是将这个总的变化分成两部分:组间变化和组内变化

组间差异由我们的变量公司解释

如果我们在图表中添加变量 company ,我们会发现,如果我们知道哪家公司配送我们的披萨,我们就可以给出更精确的配送时间范围。

  • 如果 A 公司送货,需要 11,8 到 14 分钟。
  • 如果 B 公司送货,需要 10,0 到 14,0 分钟。
  • 如果 C 公司送货,需要 8.9 到 13.6 分钟。

这种现象是由于组间变异:由我们的变量解释的变异的量化。

我们的可变公司无法解释组内变化

但是,也有一部分变化是我们的变量“公司”无法解释的:我们仍然不知道为什么 A 公司的交付时间在 11、8 和 14 之间存在差异,我们需要更多的变量来解释这一点。

由于我们没有这些新的变量,这种变异仍然无法解释,被称为组内变异

方差分析:组间差异的假设检验

当总变差被一分为二时,应用假设检验来找出在我们的 21 个样本中观察到的差异是否具有显著性:

  • 是一家比萨公司系统地更快,还是这种随机噪声是由于抽样效应?

我们需要一个统计测试来给我们这个答案:ANOVA F-test(T7 ),这将在本文的剩余部分中详细讨论。

3.使用统计模型的方差分析

在 Python 中,可以如下获得单向 ANOVA F 检验:

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

1-Way ANOVA table

为了理解这个表中发生了什么,我现在从头开始展示 ANOVA 表中每个值的计算!

4.使用数学和 python 的方差分析——从零开始

跟着 Python 笔记本过来吧!

4.1.平方和总计

我们开始行动吧!我之前描述的变化是用平方和来计算的,

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

Sum of Squares

为了达到这个目的,我们首先计算整体平均值

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

Compute overall mean for ANOVA

然后计算原始分数和总平均值之间的平方差之和:

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

Compute the Sum of Squares Total

通过对 sum_sq 列求和,可以在 statsmodels 的 ANOVA 表中找到该值。

4.2.残差平方和

残差平方和的计算略有不同,因为它采用的不是整体平均值,而是三组平均值。

我们需要从其组的平均值(其自己的比萨饼公司的平均值)中减去每个值,然后对这些差值求平方并求和。

下面是 Python 中的实现方式:

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

Compute Sum of Squares Residual

我们可以在 sum_sq 下的 statsmodels 的 ANOVA 表中的 Residual 行找到该值。

4.3.解释的平方和

计算了总平方和和残差平方和后,我们现在可以使用以下公式计算解释的平方和:

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

Summation of Sums of Squares

因为我们已经有了 SS 残差和 SS 总数,我们可以做一个简单的减法来得到 SS 解释。为了达到这一目的,我们采用每组平均值和总体平均值之间的平方差的加权和,如下所示:

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

Compute Sum of Squares Model

该值可在 ccompany 行的 sum_sq 下的 statsmodels 表中找到。

4.4.自由度

在本文中,我不会深入探讨自由度,但我们在进一步的计算中需要用到它们:

  • df1 =被解释部分的 df1 =组数-1
  • df2 =残差的 df2 =观察次数-组数

在我们的示例中,df1 = 2,df2 = 18。

4.5.均方差

方差分析中最重要的统计检验是 f 检验。零假设表明所有组的平均值是相等的,这意味着我们的模型没有解释价值,我们没有证据选择一家比萨饼公司而不是另一家。

另一种假设认为,至少有一种方法是不同的,这将是更深入地了解哪家或哪些公司更快的原因。

我们计算均方如下:

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

Computing the Mean Squares

下面是 Python 中的实现方式:

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

Computing the Mean Squares in Python

4.6.f 统计量

我们使用均方差来计算 F 统计量,作为解释变量与未解释变量之间的比率:

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

Computing the F statistic

以下是 Python 中的实现:

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

Compute the F score in Python.

4.7.p 值

在假设检验中,p 值用于决定一个替代假设是否可以被接受(如有必要,在此阅读更多关于 p 值的内容)。

如果 p 值低于 0.05,我们拒绝零假设,支持替代方案:这意味着至少有一个组均值显著不同

我们使用具有 df1 和 df2 自由度的 F 分布计算 P 值,在我们的例子中是 F(2,18)分布。使用概率计算,我们发现 p 值如下:

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

Compute the p-value using scipy

4.8.解释 p 值

我们必须将 p 值与我们选择的α值进行比较,在本例中,α值为 0.05。

我们的 p 值 0.45 大于 0.05,所以我们不能拒绝我们的零假设,也不能接受我们的替代方案。尽管三个样本的平均值不同,我们没有统计上的显著差异。

这意味着,根据观察到的数据,没有足够的证据来假设三家披萨公司的送货时间存在普遍差异。

5.结论

在本文中,方差分析使我们能够从统计上检验样本差异是否可以概括为总体差异。

在我们的数据中,一家披萨公司的平均速度更快,但由于方差分析,我们意识到这种差异并不显著:我们没有足够的证据来得出一家公司总体速度更快的结论*。*

这完美地说明了统计推断的目标:判断观察到的差异是否显著。

我希望这篇文章对你有用,并祝你在单向方差分析中好运。感谢阅读!

一万种行不通的方法

原文:https://towardsdatascience.com/10-000-ways-that-wont-work-311925525cf0?source=collection_archive---------23-----------------------

fast.ai《程序员实用深度学习》第三课

“我没有失败。我刚刚发现了一万种行不通的方法。”

~托马斯·爱迪生

我是一名数学助教,正在努力学习 fast.ai 的“程序员实用深度学习”第三课,这一周对我来说是一个主要的骄傲吞咽者。在第二课结束时,我能够构建一个模型,将画作分类为毕加索或莫奈的作品,并将我的模型投入生产(在此尝试一下!)。

然而,这个星期,我什么也没做出来。我遵循了我通常的 fast.ai 工作流程:我看了一遍讲座,然后边看边翻阅笔记本,根据需要暂停。当我复习第二次(第三次,第四次…)时,我将宝贵的详细版讲稿放在手边。

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

Photo by Lukas Blazek on Unsplash

所以这个星期,我打开了讲座中使用的第一个笔记本,这是一个多标签分类器,使用了 Kaggle 的“星球:从太空了解亚马逊”数据集。我计划用那个数据集运行笔记本,就像在讲座中一样,然后获取另一个数据集,并确保我仍然可以让它工作。

但是我甚至不能让笔记本像在课堂上那样运行。使用 Kaggle API 获取数据、查看数据、拟合网络头部以及拟合一个周期都很顺利,但是当需要为整个模型绘制学习率图时,我得到了以下错误:

RuntimeError: CUDA out of memory. Tried to allocate 2.00 MiB (GPU 0; 7.43 GiB total capacity; 6.89 GiB already allocated; 2.94 MiB free; 47.24 MiB cached)

我毫不气馁,转向 fast.ai 论坛,看看是否还有人遇到过这个问题。有人有,他们的问题通过减少批量解决了。也许那对我也有用!

没有。我尝试通过将bs=32作为参数传递给databunch()函数来将批处理大小设置为 32,还尝试了bs=16bs=4bs=2,但是我一直得到相同的错误。bs=1给了我一个不同的错误,因为该函数进行比较,所以每批需要多个项目。于是我自己在论坛发帖

没有人回答这个问题,但我在 fast.ai 网站上找到了一个关于 CUDA 内存错误的文档。它说要减少批量大小或训练一个更小的模型,这是我尝试过的,所以因为那时我已经花了整整三天试图解决这个问题,我把笔记本放在一边。

其他笔记本——使用 CAMVID 数据集进行图像分割,以及使用 BIWI 头部姿态数据集进行图像回归——至少进展顺利。

在讲座的最后,Jeremy 说我们应该尝试思考一个有趣的多标签分类、图像回归或图像分割问题,并警告我们最具挑战性的部分将是创建我们的数据集群。他绝对是对的!

fastai 库有一个名为 data_block API 的工具,它完成了大量繁重的工作,包括将数据分成训练集和验证集以及它们的标签,并设置它们以加载到您的模型中。只涉及到 10 行代码,但我并不真正理解第 0 步是什么:我不知道如何为它选择数据集,如何让数据集准备好成为数据束,一般来说,我只是觉得它难以理解。在接下来的四天里,我阅读了 data_block API 文档,Wayde Gilliam 的“寻找数据块涅槃(快速 ai 数据块 API 之旅)”,以及几十个论坛帖子,但我仍然只是.没有.明白。

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

Photo by JESHOOTS.COM on Unsplash

Jeremy 说我们会经常回到 data_block API,所以我会采纳下图(本课程第 1 课的幻灯片)的建议,收起我的骄傲,继续学习第 4 课,而不会觉得自己已经稍微掌握了第 3 课。口碑-口碑。

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

Slide from Lesson 1 of the course, found on https://hackernoon.com/how-not-to-do-fast-ai-or-any-ml-mooc-3d34a7e0ab8c

关于此主题的其他帖子:

第一课:fast . ai 入门

第二课:对孕检结果进行分类

第二课(续):深度学习能比鸽子表现得更好吗?

第四课:预测服务员的小费

第五课:但是泡菜去哪里了?

第六课:每个人都想成为一只猫我是一名南加州大学东湾分校的数学讲师,也是一名有抱负的数据科学家。在 LinkedIn 上和我联系,或者在 Twitter 上和我打招呼。

2020 年要考虑的 10 个人工智能 API

原文:https://towardsdatascience.com/10-artificial-intelligence-apis-to-consider-for-2020-4b8147578833?source=collection_archive---------44-----------------------

你认为开发人员会自己编写整个软件的代码吗?即使他们想也做不到。软件代码很复杂,包含数百万个逻辑。开发人员最终可能会感到困惑,搞乱整个软件。

这就是应用编程接口(API)的用武之地。对于那些不知道的人来说,API 是一种现成的代码,有助于将单调的任务数字化和将复杂的功能自动化。现在,每个 IT 服务领域都有它的 API:网站开发、手机 app 开发、联网、DevOps。甚至当涉及到人工智能开发服务时,我们有一些特定的 API 使得整个人工智能应用程序开发&部署过程变得更加容易。

在这篇博客中,我列出了 10 个最受欢迎的 API。这些 API 将是人工智能(AI)行业中最常用的。我在对流行的人工智能和机器学习咨询服务进行了广泛的研究和讨论后,收集了这个列表。为此,非常值得你花时间。因此,仔细阅读列表,决定哪一个符合您的要求:

2020 年十大人工智能 API

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

Signity Solutions

1.Alexa 技能管理 API

大家都知道亚马逊的智能助手 Alexa 吧?它通过允许人们使用语音命令与设备进行交互而改变了人们的生活,这种方式非常壮观。

Alexa 技能管理 API 允许开发者通过为 Alexa 智能助手创建、管理和测试新技能来更新交互模型。这些技能可以是任何东西——比如播放你最喜欢的歌曲,阅读新闻标题,打开某个网站,预订航班,支付账单,或者播放你最喜欢的电影。(如果我们相信亚马逊,有超过 70,000 种技能可用。

这样使用 Alexa 技能管理 API,开发者可以将 Alexa 智能助手的功能提升到一个全新的水平。该 API 对开发 Alexa 智能助手的开发人员非常有用。

2.谷歌助手 API

Google Assistant API 允许开发者将 Google 智能助手嵌入到移动应用、扬声器、智能显示器、手表、汽车、笔记本电脑、电视和其他 Google Home 设备中。这样做可以在这些设备中实现语音控制,让用户搜索天气、交通、新闻、航班、添加提醒和管理任务,并通过使用他们的手机来控制智能家居设备。类似热门词汇检测、自然语言理解和其他智能服务的功能在谷歌助手 API 的帮助下也是可行的。所以,对于希望让自己的人工智能应用更智能、更高效的人工智能开发者来说,这个 API 可以成为一个很好的资源。

3.BigML

从事 BigML 工作的开发人员同意其公司的说法,即它是人工智能和机器学习的最简单的 API。嗯,这是因为 API 包含了令人印象深刻的功能,如异常检测和旭日东升可视化。这意味着开发人员可以完美地使用它,即使他们没有以前的经验。此外,还有案例研究和用户指南来帮助开发人员,以防他们在任何任务中遇到困难。

因此,API 甚至可以帮助新手人工智能开发人员以无与伦比的专业知识执行他们的任务。难怪它是目前可用的最优选的人工智能 API。

4.预测

PredictionIO 是你在理想的人工智能 API 中想要的一切。它可以免费部署,提供了各种可定制的模板,并能够在部署为 web 服务后动态响应查询。更令人兴奋的是,PredictionIO API 附带了包含开发人员说明和演示教程的详细文档。这意味着开发者在充分利用它的时候不会遇到任何问题。

最重要的是,API 会定期更新。这意味着使用它的开发人员会不时遇到新的特性。

5.Animetrics 人脸识别

对于正在寻找一个 API 来创建面部软件或只是简单地进行图像分析的开发人员来说,Animetrics 人脸识别是正确的选择。找原因?嗯,这里有一些:

首先,Animetrics 人脸识别软件的工作很简单。它检测照片中的人脸,并将它们与已知人脸集进行匹配。

第二,API 返回关于面部特征或地标的信息,作为图像上的坐标。

第三,开发人员可以使用 API 轻松地从图库中上传或提取主题,甚至从主题中删除人脸。

通过这种方式,这些开发人员可以使用这种人工智能 API 轻松获得面部识别和图像分析所需的相关信息。如果你问我,这个人工智能 API 对于开发者来说无疑是一个很好的选择。

6.Wit.ai

Wit.ai 用于为家庭自动化、联网汽车、机器人、智能手机和可穿戴设备等人工智能系统构建智能语音接口。

人工智能 API 是我最喜欢的选择,它可以在人工智能系统中为开发人员提供强大的语音自动化工具。不仅仅是因为它帮助他们轻松地传输和处理来自人类互动的自然语言。还因为它通过鼓励开发人员与社区中的其他人共享他们的发现来促进合作和共享的文化。Wit.ai 帮助每个人成长。也许,这是主要原因之一,Wit.ai API 因创建高度先进的人工智能系统而受到全球开发者的青睐。

7.Salesforce 爱因斯坦语言

如果你正在寻找一个有效的人工智能 API 来分析来自电子邮件、聊天或网络表单的文本,没有比它更好的选择了:Salesforce Einstein 语言 API。背后最大的原因是

API 将文本情感分为积极、消极和中性类别,以理解文本背后的情感。(我们也可以创建自定义模型或使用预建的情感模型。)然后,API 将文本分类到用户定义的标签中,以理解用户发送文本的意图。因此,通过这种方式,Salesforce Einstein 语言 API 可以让开发人员轻松理解他们从电子邮件、消息或任何 web 表单中收到的任何文本背后的意图。

8.蟒蛇

Anaconda 是一个由 Python 支持的企业级安全和可伸缩的 API。开发人员用它来控制数据科学资产。使用 API 的主要原因之一是它允许开发者访问 700 多个易于安装的软件包。此外,您可以使用 Anaconda 快速地将项目部署到交互式数据应用程序、实时笔记本和 ML 模型中。正因如此,许多开发者都在使用它。

9.Indico

Indico 无疑是用于预测分析的最佳人工智能 API 之一,原因是它的工作速度非常快。API 有两个选项。其中一个进行文本演变(情感分析、参与度、情感),另一个进行文本演变(面部情感、面部定位)。这样,API 可以很容易地预测照片和文本,而不必获得任何正式的培训。难怪 Indico API 是每个想要创建高级文本和图像分析系统的人的最爱。

10.SummarizeBot API

SummarizeBot API 用于人工智能系统和区块链驱动的解决方案的文本和多媒体分析。这个 API 非常适合这些功能是有原因的。使用 API,您可以轻松地从文档或网站中抓取重要信息,从视频、图像和 gif 中进行情感分析和提取。此外,还有超过 100 种语言,以及对多种文件格式的支持。总的来说,人工智能提供了很多,开发者应该选择它。

结论:

那么,现在你有 10 个最好的人工智能 API,你可以在 2020 年考虑。现在,您的工作是确定哪一个满足您的业务需求。你当然可以借助人工智能开发公司,有足够的知识和经验。所以,赶紧伸出手吧。

原载于 2019 年 10 月 15 日【https://www.signitysolutions.com】

学生的 10 本最佳数据科学读物

原文:https://towardsdatascience.com/10-best-data-science-reads-for-students-3bae97d9bb23?source=collection_archive---------5-----------------------

学习数据概念的前 10 篇 ML 和统计文章

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

是时候进行一些精选了!以下是我给学生写的 10 篇最好的文章。如果你发现自己对写作很感兴趣,试着跟随文章中的链接——它们几乎总是来自同一个博客。我尽量让事情不那么无聊,让你开心。

尽情享受吧!

#1 了解数据

[## 什么是数据?

关于信息、内存、分析和分布的思考

bit.ly](http://bit.ly/quaesita_hist)

#2 向孩子(或你的老板)解释监督学习

[## 向孩子(或你的老板)解释监督学习

既然知道了什么是机器学习,那就来认识一下最简单的那种。我的目标是让各种各样的人…

towardsdatascience.com](/explaining-supervised-learning-to-a-kid-c2236f423e0f)

#3 无监督学习去神秘化

[## 无监督学习去神秘化

无监督学习听起来像是“让孩子们自己学习不要碰热烤箱”的一种奇特方式,但是…

hackernoon.com](https://hackernoon.com/unsupervised-learning-demystified-4060eecedeaf)

#4 数据科学简史

[## 自动灵感

在 19 世纪,医生可能会为情绪波动开出水银处方,为哮喘开出砷处方。它可能没有…

bit.ly](http://bit.ly/quaesita_history)

#5 机器学习——皇帝穿衣服了吗?

[## 机器学习——皇帝穿衣服了吗?

深入了解机器学习的工作原理

medium.com](https://medium.com/@kozyrkov/machine-learning-is-the-emperor-wearing-clothes-928fe406fe09)

#6 一句话的统计推断

[## 一句话的统计推断

每一个假设测试——从 STAT101 到那些最可怕的博士资格考试——都可以归结为一句话。这是…

hackernoon.com](https://hackernoon.com/statistical-inference-in-one-sentence-33a4683a6424)

#7 TensorFlow 已死,TensorFlow 万岁!

[## 张量流死了,张量流万岁!

如果你是一个人工智能爱好者,你没有看到这个月的大新闻,你可能只是打了个盹…

hackernoon.com](https://hackernoon.com/tensorflow-is-dead-long-live-tensorflow-49d3e975cf04)

#8 统计学家证明统计很无聊

[## 统计学家证明统计很无聊

统计学词汇的基础知识

towardsdatascience.com](/statistician-proves-that-statistics-are-boring-4fc22c95031b)

#9 用小狗解释 p 值

[## 用小狗解释 p 值

你会发现 p 值潜伏在数据科学(以及其他科学)中。如果你选了 STAT101…

hackernoon.com](https://hackernoon.com/explaining-p-values-with-puppies-af63d68005d0)

#10 什么是决策智能?

[## 什么是决策智能?

人工智能时代领导力的新学科

towardsdatascience.com](/introduction-to-decision-intelligence-5d147ddab767)

额外收获 1:刻薄的统计学 YouTube 课程

Catch the rest of the playlist here.

奖金 2:娱乐性机器学习课程

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

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

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

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

影响数据科学的 10 大最佳实践

原文:https://towardsdatascience.com/10-best-practices-for-data-science-with-impact-d5f4e0525d9f?source=collection_archive---------23-----------------------

或者…如何不在数据科学上失败

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

Photo by Vlad Hilitanu on Unsplash

Gartner 在 2018 年预测,到 2022 年,85%的数据科学项目将会失败。这种类型的统计数据不是唯一的。经济学家发表了一项研究,该研究得出结论,尽管 70%的企业高管认为分析“非常”或“极其重要”,但只有 2%的人表示他们已经取得了“广泛的积极成果”。

预期和现实之间的这种差异的三大报告原因是:

1.难以定义或框定要解决的问题。

2.提出解决方案或设计的困难。

3.无法将数据科学见解转化为真正改变业务执行方式的行动。

要在数据科学领域取得成功,维护从数据到分析、洞察到行动的链条非常重要。

为了帮助企业弥合从见解到行动的差距,我们专注于一项使命,不仅帮助企业 成功 ,而且帮助企业 在数据科学和人工智能领域引领

这些见解基于与 100 多家客户的合作,涵盖了从金融、能源、医疗保健等几乎所有行业。

这些客户处于其旅程的任何阶段,无论他们是建立数据科学实践、培养和提高其数据科学能力,还是对已经成熟的数据科学组织进行现代化和创新。通过这次经历,我学到了在数据科学领域取得成功的 10 大基本最佳实践。

最佳实践 1:从快速成功的用例开始,以获得业务认同

什么类型的用例会带来快速的成功?是当你设想一个数百万美元的机会时,还是当你有万亿字节的数据,你怀疑有隐藏的金块要发现时?两者都不是——要在 6–12 周内获得立竿见影的效果,您需要针对具有 3 个基本特征的用例:

*1。愿意拥有成功的商业冠军。*支持者对于验证用例的业务意义,以及从更广泛的业务和执行层面获得认同至关重要。

*2。明确 KPI 以衡量结果的业务影响。*这些对于向业务涉众展示你的项目的可测量的前后业务影响是必不可少的。

*3。可用、可访问和干净的数据。*速赢必须快速展示业务成果,以保持业务兴趣—如果您的数据存在质量或可用性问题,您就有可能将速赢变成数据清理工作。

最佳实践 2:创建有效的数据科学组织和团队

虽然有几种数据科学组织结构是可能的,但我们已经看到了轴辐式模型的大量成功。在这里,该中心由首席数据官领导的中央数据科学卓越中心(CoE)组成。辐条是卫星数据科学团队,位于各种业务职能部门,如营销、财务等。在这种结构中,中央 CoE 有创新的自由,同时与辐条合作,为相关的业务用例将新的创新引入市场。

高效的数据科学团队拥有跨职能的人才和赞助商。项目负责人不仅来自数据科学卓越中心,还来自业务线和 IT 部门。我们看到的最大错误之一是在数据科学项目所有权中忽视 IT——早期 IT 参与是避免陷入概念验证(POC)困境的关键。有效的数据科学团队倾向于为项目分配小组,组长是经验丰富的数据科学家或工程师,小组成员由数据科学家、数据工程师、可视化专家、架构师和数据科学故事讲述者组成。如果你有一个初出茅庐的数据科学组织,根据需要外包以补充你的团队,从而获得最大的影响。

最佳实践 3:选择合适的工具和指标来匹配工作

计划您是否需要用于编码的工具,或者可视化建模,或者两者都需要——如果您的团队刚刚起步,可视化工具可能更合适,但是如果您有高级数据科学家,他们可能更喜欢使用 Python 等语言。或者,也许您的团队需要在单一环境中涵盖这两个群体的工具。规划一个适合您公司战略的基础架构,例如,您是需要一个多云基础架构还是留在防火墙后面。规划您需要扩展的数据量和速度,或者所需的计算能力。思考适合您要实现的目标的方法和算法——例如,您需要自定义算法,还是现成的就足够了?

就指标而言,选择正确的指标将数据科学结果与业务目标联系起来非常重要。例如,预测算法的性能通常以均方根误差(RMSE)来衡量,但是根据相关的业务目标,对数均方根误差的度量可能会获得更好的结果。另一方面,对于优化算法,指标通常是业务 KPI,如成本或收入。

将数据科学指标转化为业务指标并估算投资回报(ROI)非常重要。许多数据科学家犯了一个错误,他们根据数据科学指标向高层报告了他们的成功。告诉你的商业利益相关者你的算法的 RMSE 提高了 50%,对那个人来说是没有意义的。相反,请确保将此转化为业务 KPI,如对成本、利润或客户服务水平的影响。

最佳实践 4:尽早构建业务利益相关者 POC 仪表板

尽早构建业务利益相关方 POC 仪表板是获得业务认同的关键。要做到这一点,让商业利益相关者参与到设计思维研讨会中来开始你的项目。在此会议期间,就项目产生的仪表板而言,围绕对他们有意义的内容勾画想法并进行头脑风暴。然后,快速构建 POC 仪表板,它不需要是最“设计”或最复杂的仪表板,即使可视化技能有限的人也可以使用现有的无代码仪表板工具来实现这一目的。在你的仪表盘中,一定要包括业务投资回报的视觉效果,以及 之前与 之后的情景分析。

最佳实践 5:广泛而频繁地沟通

通过频繁的项目进度审查建立持续的业务认同。在这些回顾中,让你的商业利益相关者来引导陈述。避免展示代码,而是使用 POC 仪表板以业务语言展示结果。

或者,创建可分享的故事,用商业语言向更广泛的企业宣传项目的目的和愿景。像 Scrollytelling 这样的方法对此特别有效。

最佳实践 6:使用敏捷方法

为了确保持续的进展,实施敏捷数据科学方法。这意味着至少要将你的项目分成 2-3 周的冲刺阶段,在每个冲刺阶段结束时进行冲刺评审,展示所取得的成果,以及敏捷任务计划。邀请所有风险承担者参加冲刺评审和冲刺计划,以减少不确定性,管理风险,获得共识,并控制项目的范围。

最佳实践 7:提前规划灵活的基础设施

数据科学概念验证未能进入现实世界的一个主要原因是,当需要扩展时,所需的基础架构不可用。然后,POC 被束之高阁,直到基础设施被收购,这通常意味着无限期,或者到 POC 被遗忘的时候。因此,请务必尽早让 IT 部门参与进来,以计划您的 POC 将如何在生产中扩展。例如,考虑弹性计算能力、备份环境和提高灵活性的多云方法。

最佳实践 8:在 POC 阶段询问运营问题

在 POC 过程中,找到操作问题的答案,例如您将如何调用您的模型(例如,实时还是批处理)、模型需要调整的频率、数据接收的速率(例如,流式作业还是计划作业)、生产中的数据量以及所需硬件的大小。还要关注最终用户体验,例如确定需要执行建议操作的人员、他们舒适的工作环境,并开始解决任何变更管理需求。

最佳实践 9:制定实施概念验证的计划

从第一天开始就计划如何将 POC 投入生产,并在最终的 POC 冲刺评审中包括生产计划。在 POC 期间,您可能会处理一部分数据—要将 POC 部署到现实世界中,您还需要考虑其他相关的数据要求,例如治理、容量和数据管理员的角色。在 POC 期间,您可能会使用所需基础架构的一个子集。例如,在公共云环境中构建的 POC 可能需要在生产环境中的私有云中运行—通过灵活的环境为这种过渡做好计划。在 POC 阶段,实际工作可能主要涉及数据科学家和数据工程师,而将 POC 投入运行需要开发人员、业务用户和分析师的更多投入。从一开始就让这个扩展团队参与 POC 流程,以获得他们的早期认同。

最佳实践 10:超越洞察和预测,优化行动

传统的商业智能工具提供了对业务状态的洞察,但它们不会帮助您了解未来可能发生的事情,为此,您需要预测性分析。反过来,预测分析可以帮助您了解未来可能发生的事情,但它不会帮助您获得关于如何应对的建议-为此,您需要规定性分析。说明性分析和决策优化的秘方(该术语描述了用于决策解决方案的数学编程和约束编程方法)。这是唯一一种能够考虑成千上万(如果不是数百万的话)同时发生的可能性和业务限制之间的多种权衡的技术,并且能够推荐未来的下一个最佳行动或计划。

举一个简单的例子来说明这一点,考虑一家公用事业公司更好地规划其运营的决策,无论是与发电、市场动态还是其分销网络有关。在可再生能源的情况下,预测分析将根据可用容量和天气模式通知他们可以产生多少能量。它不会推荐他们应该产生多少能量——为此他们需要决策优化。预测分析将告知他们市场价格可能如何演变,但它不会建议他们 应该 通过合作伙伴购买或出售多少能源——这来自决策优化。预测分析将告知他们能源需求可能如何随时间演变,但不会建议他们 应如何 规划其基础设施,以应对不断变化的需求和气候变化的不确定性——为此,他们再次需要决策优化。

要真正从洞察、预测到更好的决策,探索决策优化能为您的企业带来什么。

您 应用了哪些最佳实践来从您的数据科学工作中获得更多?请评论!

指导你在新加坡寻找数据科学工作的 10 张图表

原文:https://towardsdatascience.com/10-charts-to-guide-your-search-for-a-data-science-job-in-singapore-e4e3be9f1135?source=collection_archive---------13-----------------------

银行薪酬最高,大多数职位都在其中。雇主大多在寻找有经验的雇员。

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

Top technical skills requested by employers hiring for data science jobs in Singapore. The size of the boxes in this simple tree map is proportional to the number of times these key words appear in job requirements posted by employers.

数据科学相关的职位是目前市场上谈论最多的工作之一,这是由行业内的传言和各种公司不断增长的需求推动的。

以下是 812 份最近的招聘启事告诉我们新加坡的雇主想要什么,以及求职者应该期待什么。

背景

2019 年 4 月 27 日,作为课堂作业的一部分,我刮了政府的就业银行 MyCareersFuture 。这是我的项目回购的链接,但请注意,有些链接可能已经过期,因为职位发布有一个有限的保质期。

在剔除了离群值和在网络搜索中发现的奇怪角色后,我将数据集缩减到 812 个职位条目,这并不总是精确的。几家公司也公布了年薪数据,我把这些数据转换成了月薪。

摘要

简而言之,雇主主要寻找有经验的数据科学专业人员,他们也了解业务需求,并能领导团队。这些高级职位薪酬较高,尤其是在银行业和 IT 行业。

经验丰富的数据专业人士——尤其是高级数据科学家——将从当前的就业市场前景中获得最大收益,而那些几乎没有或根本没有经验的人应该降低他们的期望。入门级和初级数据专业人员的月薪预计不到 5000 新元。

担任高级数据职位的薪酬中值超过 8000 新元,尽管有些公司愿意为顶级人才支付更高的薪酬。让我们仔细看看主要趋势。

一、工作在哪里(以及高薪):

1.月薪中位数:6750 新元

在某些情况下,一些希望填补高级职位空缺的雇主准备支付超过 2 万新元。但数据专业人士的月薪中值更低,为 6750 新元。大约三分之一(35%)的公司提供的平均工资在 4,50 至 7,500 新元之间。

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

2.IT 行业银行薪酬最高,数据工作最多

银行和金融部门的数据工作提供最好的中等工资,而大多数空缺职位(40%)在 IT 部门(也提供有竞争力的工资)。

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

The middle “line” in each box represents the median value for that category. For a good explanation on how to interpret box plots, see: https://www.wellbeingatschool.org.nz/information-sheet/understanding-and-interpreting-box-plots

在招聘数据职位的公司中,星展银行提供的薪酬中位数最高,紧随其后的是安永会计师事务所和印度尼西亚旅游预订网站 Traveloka。

如果你对工作地点很挑剔,那么,你会很高兴地知道,CBD 和滨海湾的热门办公地点是一些薪酬最高的数据工作的所在地。

那些有合适技能并准备去西部稍远一点的科学园大道的人会发现默克公司和强生公司提供的两个高薪职位。

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

二。雇主在寻找什么:

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

1.招聘:数据科学家,数据工程师

这是 812 份招聘启事中最常见的两个职位,尽管它们只占启事的 10%。这主要是因为在这个行业中,描述同一个角色的头衔有各种各样的混乱方式。

2.经验、商业知识、管理技能

“数据”是公司描述潜在雇员职责时最常用的词。

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

但在那之下,最常用的关键词是:业务、团队工作(显示为两个独立的词)、管理、解决方案、团队等。这与业内人士的非正式反馈是一致的,即公司不仅仅想要数据专家,还想要那些能够将他们的专业知识转化为业务需求的人。

当谈到工作要求时,雇主最常使用的词是“经验”,其次是“技能”和“知识”。

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

这对新来者来说可能是一个潜在的绊脚石,尽管在一个非科技或 STEM 行业出身的人大量交叉的行业,“经验”可以有某种程度的宽泛解释。

3.技术要求:Python,SQL,计算机科学背景,工程技能

令人惊讶的是,用来描述技术技能的术语并不在十大需求之列。它们只出现在数据科学角色工作要求中使用的前 20 个关键词列表中。在我的数据集中,“工程”是最顶级的技术技能术语,其次是“Python”、“分析学”、“计算机科学”和“SQL”。

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

引用更高级技能的术语,如“机器学习”和“大数据”,出现在列表的更靠后的位置,尽管仍在职位要求描述中最常用的 50 个词之列。“深度学习”不在关键词的前 50 名之列,这反映了它在新加坡就业市场的相对利基地位。

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

A side-by-side comparison of the top words used to describe job responsibilities and desired technical skills in data roles.

求职者应该知道的:

1.经验是你的主要财富

很明显,那些有更多经验的人会要求更高的报酬。但是有经验和没有经验的雇员之间的工资差距的视觉确认和感觉总是好的:

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

2.对那些“处于中间”的人来说,良好的工作流动性

处于中间位置的数据专业人员——有一些年的经验,但还不被认为是老手——会为大多数空缺职位(几乎 74%)都是中级职位而欢呼。这将为初级数据专业人员提供晋升的机会,对于那些已经处于中间类别的人来说,他们可以在不同的部门之间横向移动,或者晋升到高级职位。

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

3.如果你是新人,管理你的期望

上面的两张图表显示了为什么新人需要对他们的求职和薪水期望持现实态度。在 812 个数据职位空缺中,只有 90 个(11%)是初级或入门级职位。工资中位数自然也是最低的,每月不到 5000 新元。

4.实习和临时工作安排很少

数据专业人员需要处理大量的敏感数据。这可能是为什么绝大多数职位空缺都是永久性的,而实习或临时工作的机会很少的一个原因。但很有可能是公司没有正式为这些职位做广告。

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

这里是这些图表的数据集和我的 Jupyter 笔记本的链接。

为了这个项目,我还必须建立一系列机器学习模型,试图预测的高薪,以及招聘信息中提供的职位的资历。

这项练习有助于磨练我构建和评估机器学习模型的技能,尽管我不认为数据集足够大或足够细,可以产生远远超出我们从这些图表中所能辨别的主要见解。但是将这些模型应用到一个更大的数据集会很有趣,如果我将来能得到一个的话。

同时,祝你找工作好运!

源链接:

Github 回购

原始数据来源

11 场数据科学竞赛让你磨练 2020 年的技能

原文:https://towardsdatascience.com/10-data-science-competitions-for-you-to-hone-your-skills-for-2020-32d87ee19cc9?source=collection_archive---------5-----------------------

这里有一个网站列表,供您练习数据科学技能并参加在线黑客马拉松和竞赛

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

Photo by Max Duzij on Unsplash

数据科学家大多从事理论工作,并亲自对数据进行实验。在现实世界中处理数据之前,他们很少有机会实践。数据科学竞赛和平台为数据科学爱好者提供了一个在解决现实生活问题时进行互动和竞争的平台。

数据竞赛有多种用途。最大的好处之一是,它们是学习最佳实践、积累工作反馈和提高技能的绝佳场所。他们也可以作为解决问题和集思广益的渠道,探索大问题的众多众包解决方案。

此外,数据竞赛是一个在各种数据相关领域的最优秀和最聪明的人中拓展边界和鼓励创造力的机会。您获得的经验非常宝贵,有助于您了解寻找大数据可行解决方案的过程。

这里有 10 个数据竞赛供您尝试,从数据可视化到数据分析,以及介于两者之间的一切。

1.Bitgrit

Bitgrit 是去年 8 月推出的数据科学竞赛领域的新成员。该平台由日本初创公司 Bitgrit Inc. 牵头,已经在全球积累了超过 25,000 名数据科学家的社区。

自成立以来,Bitgrit 已经举办了几场人工智能比赛,包括一场预测外汇汇率的比赛和另一场为一款匹配个人资料的移动应用程序优化算法的比赛。他们还有一个工作委员会,专注于为各种全球客户提供数据科学工作机会。

有关他们的竞争和行业更新的更多信息,请查看他们的在线数据科学出版物

2.卡格尔

Kaggle 是一个伟大的,如果不是最好的数据科学平台的话。它让每个人都有机会进入世界上最大的数据科学社区。

Kaggle 使数据科学家和其他开发人员能够托管数据集,参与机器学习竞赛,并编写和共享代码。这是一个众包平台,旨在吸引、培养、培训和挑战来自世界各地的数据科学家,以解决数据科学、机器学习和预测分析问题。

Kaggle 上发布的数据科学问题的类型可以是任何东西,从试图通过检查患者记录来预测癌症的发生,到分析电影评论引起的情绪以及这如何影响观众的反应。在 Kaggle 上举办的竞赛产生了深远的影响,例如加强和实现了最先进的艾滋病毒/艾滋病研究,并改善了交通预测。从根本上说,Kaggle 为公司提供了从世界上最好的数据科学家那里寻求解决方案的机会,并让外部的眼睛来看待他们试图解决的问题。

如果你之前从未参加过任何数据科学竞赛,我强烈推荐你从 Kaggle 开始。对于刚刚尝试进入数据科学领域的初学者来说,这是一个绝佳的地方。现在就上 Kaggle,参与发人深省的项目,并与行业领袖和博学的专家进行富有洞察力的讨论。

3.国际数据分析奥林匹克竞赛(爱达荷州)

IDAO 是高等经济学院和 Yandex 举办的年度比赛。本次活动对所有团队和个人开放,无论他们是本科生、研究生还是博士生、公司员工、研究人员或新数据、科学家。

目的是弥合机器学习模型日益增长的复杂性和行业性能瓶颈之间的差距。参与者不仅要努力提高预测的质量,还要设计资源高效的算法。

这将是一场团队机器学习比赛,分为两个阶段。第一阶段将在网上进行,向所有参与者开放。第二阶段将是线下现场决赛,来自线上的30 强表演团队将在 Yandex 莫斯科办公室展开角逐。

在线比赛将于 2020 年 1 月 15 日至 2 月 11 日开始,请在您的日历上做好标记,并在此注册

4.驱动数据

DrivenData:社会公益数据科学竞赛是一项在线挑战,通常持续 2-3 个月。在这里,全球数据科学家社区竞相提出最佳统计模型,以解决困难的预测问题,从而有所作为。

DrivenData 为一些世界上最大的社会挑战和承担这些挑战的组织带来了数据科学和众包方面的前沿实践。他们举办机器学习竞赛,帮助非营利组织、非政府组织、政府和其他社会影响组织使用数据科学为人类服务。

DrivenData 的部分使命是让数据科学家和非营利组织能够从这些竞赛中所做的工作中学习。为此,获胜者提交的代码在开源许可下发布,供其他人学习、使用和修改。

在他们的博客上阅读更多关于 DrivenData 的信息。

5.顶部编码器

Topcoder 是一个全球性的、随需应变的设计师和技术专家网络的所在地。他们帮助各种规模的企业快速设计和构建令人惊叹的数字解决方案。

Topcoder 类似于 Coda Lab,因为它也是编译代码测试和研究的合作成果。他们在自己的主网站上面临着各种各样的挑战和竞争,从数据科学到编码再到网页设计。其中许多提供了不错的奖励,尽管有些只是为了挑战。

最吸引人的是一年一度的 Topcoder 公开赛,即“终极编程和设计锦标赛”它的特点是一系列的比赛,如算法,开发,用户界面设计和质量保证。最初的比赛是在线的,获胜者可以获得积分,从而获得额外的奖品和一次在美国举办的 TCO 总决赛之旅。

TCO 也有更小的地区性活动,让更多人参与竞争。这些活动只有一两天,但提供了更多参与国际活动的机会。

点击了解更多关于 TCO 2020 的信息。

6.Codalab

用于计算研究的开源平台。举办竞赛是为了合作研究和代码测试。虽然他们不提供有声望的奖励,但他们一起工作来创造更有效和可复制的代码。Coda Lab 的主要特点是数据的编程和代码构建,可以成为你涉足合作项目和挑战的好方法。

7.DataHack 和 DSAT

DataHack 是由 Analytics Vidhya 创建的一个平台,它是机器学习、人工智能和数据科学爱好者的最大社区之一。如果你还不知道,他们的博客对新手和专家来说都是惊人的。从学习路径到在线课程,它应有尽有。

这个平台基本上允许您在现实生活的数据科学问题上与世界上最好的人竞争,通过解决现实世界的问题来学习,展示您的专业知识并被顶级公司聘用,建立您的个人资料,并在竞争中名列前茅并赢得丰厚的奖励。

AV 中另一个很酷的平台是数据科学能力倾向测试( DSAT )。它测试 ML 算法的实践知识技能、Python 和其他 DS 工具的编程技能、神经网络架构、对统计和常用概念(如概率分布、人口统计、抽样方法等)的理解、定量能力——处理数字的能力、对业务问题规模的快速估计、线性代数等。和沟通技巧,这些问题可以测试你的书面沟通,并提供具体的反馈。

8.机器黑客

Machine Hack 是一个机器学习竞赛的在线平台。他们处理最棘手的商业问题,现在可以在机器学习&数据科学中找到解决方案。

在 Machine Hack,你可以测试和练习你的 ML 技能。在这个平台上,您有机会通过我们行业策划的黑客马拉松与数百名数据科学家竞争。另一个好处是,公司可以发现和评估有才华的数据科学家,这意味着如果你表现出色,公司将雇用你。还有一个论坛供你分享你的想法和寻求专家的帮助。

此外,如果你觉得自己还没有完全准备好接受挑战,Machine Hack 有一个专门的地方供你练习 ML 技能。它还有一个社区贡献部分,超过 10,000 名数据科学家和机器学习开发人员在这里写下他们的经验、教程、黑客和演练,以帮助这个不断增长的社区。

9.铁即

Iron Viz 是一个数据可视化竞赛,让你有机会与来自世界各地的数据明星竞争。一系列资格赛的获胜者将晋级冠军赛,这是一场在 Tableau Conference EuropeTableau Conference 举行的现场比赛。在新奥尔良举行的 2018 Tableau 会议上,重温 Iron Viz 锦标赛的精彩比赛。

它的工作原理是参与者必须下载 Tableau 桌面,并用它来创建您的可视化。然后,通过 Tableau 公共配置文件,他们可以使用美联社提供的数据集发布他们的可视化效果,并可以选择与您选择的任何公共数据集相结合。这个比赛需要使用 Tableau 环境,这是鼓励人们使用它的一个很好的方式。

阅读这篇博客这里了解更多!

10.数据科学挑战

数据科学挑战是一项挑战,旨在寻找数据科学领域最聪明的头脑,帮助政府应对巨大挑战,并通过彻底改变我们思考世界问题的方式来保护人民的安全。

想象一场正在出现的人道主义危机,比如埃博拉病毒或毁灭性的地震;一个外国国家的稳定和安全在下降。通过识别、映射和跟踪关键数据,人们可以预测事件将如何发展,并获得人们应该如何反应的关键洞察力。

随着气候变化逼近人类,数据科学也将在开发尖端灵丹妙药方面发挥重要作用。通过参与他们的数据科学挑战,您将为让世界变得更美好做出贡献。不仅如此,您还将与数据科学社区斗智斗勇,与有代表性的国防数据玩游戏,甚至赢得奖品。

在此注册了解数据科学挑战的更新和新闻

11.天池大数据竞赛

天池是一个由全球数据科学家组成的众包社区,举办各行业的大数据竞赛。这个大数据竞赛有百万美元的奖金池和真实的业务测试案例。你有机会与来自世界各地的人工智能精英竞争。

天池也有 TC Lab 可以让你在 3 秒钟内创建自己的 TC Lab,它提供在线编辑和共享,以及免费的计算资源。技术中心在技术中心回答你关于人工智能的问题,你可以得到各个领域专家的互动回答。提供数据集,帮助您探索不同的行业和应用场景。这是唯一一个拥有公共数据共享服务的阿里巴巴平台。

我会说,这次大数据竞赛非常强调电子商务和人工智能领域的消费者行为。举例来说,服装关键点检测-挑战基线重复购买者预测-挑战基线阿里云基于行为的恶意软件检测只是平台中活跃的竞争的几个例子。

从这里开始并在 Twitter 上关注他们的更新。

如果你对数据科学竞赛有其他建议,请在下面的评论中留下。感谢阅读,上帝保佑!

LinkedInTwitter 上与我联系。

如果你喜欢你所读的,看看我的数据科学系列!

[## 如何“超级学习”数据科学—第 1 部分

这是一个简短的指南,基于《超学习》一书,应用于数据科学

medium.com](https://medium.com/better-programming/how-to-ultralearn-data-science-part-1-92e143b7257b) [## 数据科学简介

什么是数据科学、大数据、数据、数据科学流程及其应用。

towardsdatascience.com](/the-data-scientists-toolbox-part-1-c214adcc859f)

这里有一些很棒的数据科学资源!

[## 2020 年你应该订阅的 25 大数据科学 YouTube 频道

以下是你应该关注的学习编程、机器学习和人工智能、数学和数据的最佳 YouTubers

towardsdatascience.com](/top-20-youtube-channels-for-data-science-in-2020-2ef4fb0d3d5) [## 机器学习和数据科学的 20 大网站

这里是我列出的最好的 ML 和数据科学网站,可以提供有价值的资源和新闻。

medium.com](https://medium.com/swlh/top-20-websites-for-machine-learning-and-data-science-d0b113130068) [## 开始数据科学之旅的最佳书籍

这是你从头开始学习数据科学应该读的书。

towardsdatascience.com](/the-best-book-to-start-your-data-science-journey-f457b0994160) [## 数据科学 20 大播客

面向数据爱好者的最佳数据科学播客列表。

towardsdatascience.com](/top-20-podcasts-for-data-science-83dc9e07448e) [## 关于人工智能和大数据的 20 大电影。

这里有一些人工智能和大数据电影,你应该在新冠肺炎封锁期间在家观看。

towardsdatascience.com](/top-20-movies-about-machine-learning-ai-and-data-science-8382d408c8c3)

联系人

如果你想了解我的最新文章,请通过媒体关注我。

其他联系方式:

黑客快乐!

10 天成为谷歌云认证专业数据工程师

原文:https://towardsdatascience.com/10-days-to-become-a-google-cloud-certified-professional-data-engineer-fdb6c401f8e0?source=collection_archive---------4-----------------------

最近参加了更新的 Google Cloud 认证专业数据工程师考试。为考试而学习是用谷歌云学习数据工程过程的一个很好的方法。

如果你想使用谷歌云产品并且:

  • 是一名数据工程师
  • 想成为一名数据工程师
  • 想建立一家科技公司
  • 是一名数据科学家,希望了解整个数据管道

在这篇文章中,我将分享什么,为什么,以及如何帮助你在考试中尽最大努力。🎯

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

Aim for the apple.

为什么

让我们先解决为什么的问题。我决定参加谷歌云认证专业数据工程师考试有两个原因。首先,我想了解更多关于数据工程和机器学习的谷歌云产品。第二,我想通过考试,证明我已经掌握了信息。😃

出于几个原因,我选择了谷歌考试,而不是 AWS 和微软 Azure。首先,谷歌在机器学习和人工智能方面是领先的云提供商。如果我要在这个领域创办一家公司,它们也是我会使用的平台。

与其他主要云服务相比,谷歌拥有最清晰的帮助文档和最好的 UX。他们也有最低价格的GPU最强大的机器用于训练深度学习模型。

此外,谷歌考试有很好的学习材料,我们将在下面深入探讨。这也是一个专业水平的考试,这意味着它很难,但通过意味着最高水平的掌握。最后,专业数据工程师考试在 2019 年 3 月更新,所以我认为它应该比一个更老的,未更新的考试更相关。

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

如果你是一名数据人员,并且更喜欢 AWS,请参加机器学习大数据 专业证书考试。每本 300 美元,外加每次模拟考试 40 美元。

如果你对微软 Azure 感兴趣,他们有两个考试必须通过才能获得认证:Azure 数据工程师助理称号。Azure 考试的修改日期是 2019 年 6 月 21 日。

学习计划

作为背景,我使用过许多谷歌云产品,但在开始准备考试之前,我不知道 BigQuery 和 Bigtable 之间的区别。我也没有做过多少数据工程工作。

这不是一两天就能应付的考试。我怀疑几乎没有人不好好学习就准备参加这个考试;谷歌产品及其选项的数量变化如此之快。

以下是我用来准备考试的资源。下面的格式是受丹尼尔·伯克的有用帖子的启发,我用它来指导我的学习计划。

Linux 学院

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

乐于助人 : 7.5/10

Linux 学院的谷歌云认证专业数据工程师课程内容不错。这门课程有视频、测验、一本清晰图表电子书和一次期末考试。Linux 学院提供免费的 GCP 实践时间。它还有一个有用的社区 Slack 频道。

我在学习的时候记了很多笔记——其中大部分来自 Linux 学院的视频。

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

A legal pad before studying.

截至 2019 年 6 月初,该课程没有针对新考试进行更新,因此它没有发挥应有的作用。导师表示,这些资料可能会在 2019 年 6 月下旬全部更新。

Linux Academy 期末考试从谷歌官方实践考试中抽取了一些问题。如果你在 2019 年 6 月中旬参加考试,不要太相信最终的考试结果。测试没有完全更新,实际的考试问题感觉更难。

总的来说,UX 还不错,但是有一些小问题(例如,视频不是全屏就是太小)。

一句话:Linux Academy 是一个很好的基础,但是你可能想等到他们的培训材料更新后再开始为考试学习。

Linux Academy 每月 49 美元,按月付费,7 天免费试用。

Qwicklabs 实验室

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

乐于助人:5.5/10

快速实验室练习的重点不是考试。我发现这对整体学习来说很好,但如果你想弄清楚你需要为考试学习什么,那就没什么帮助了。

和 Linux Academy 一样,Qwicklabs 提供了一个 Google Cloud 沙盒用于练习。Qwicklabs 在沙盒中检查你的进度,这很好。它没有视频。

UX 没问题。每节课的倒计时有点分散注意力和压力——然而实际的谷歌考试也有倒计时。Qwicklabs 计时器很大——如果它会分散注意力,我建议将窗口的这一部分移到屏幕之外。

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

Qwicklabs countdown timer example

在做互动练习时,我建议并排设置你的窗口——一个用于教学,一个用于你在 GCP 的工作。

Qwicklabs 的课程可以购买学分。你可以每月花 55 美元购买无限制的 Qwicklabs 套餐。折扣代码可以在 sathish vj 的帖子这里获得。

我建议先做 Linux Academy,然后用 Qwicklabs 多练习。

乌德米

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

乐于助人:5.5/10

本资源由三个 50 题的带计时器的模拟考试组成。实践考试有一些更新的问题,但仍然有旧的案例研究问题。他们使用了与 Linux academy 相同的 Google 官方实践考试题。几个问题有语法问题。此外,现在有几个问题是不正确的。比如现在有一个 BigQuery ML K-means 算法。

我确实通过考试和复习答案学到了东西。答案是详细的,并链接到源文档。只是不要太相信分数。真正的考试感觉难多了。😄

总的来说,这些考试不是很好,但我发现它们值得花时间和金钱,因为没有什么好的选择。

一次性购买 9.99 美元(价格可能会有变化——我先看到的是 10.99 美元)。

Coursera

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

谷歌推荐参加 GCP 专业的 Coursera 数据工程、大数据和机器学习。这个专业包括五门 Coursera 课程。我决定不参加,因为它看起来好像没有为修订后的考试更新过——它参考了旧的考试案例。事后看来,我会选择这些课程,因为它们看起来相当全面。

官方实践考试

乐于助人:5.5/10

谷歌官方实践考试在网上是真实考试的迷你版。问题是最相关的;我只是希望有更多这样的人。如上所述,其他一些人也在他们的模拟考试中使用这些问题。

你必须填一张表格来参加模拟考试,但是它是免费的。

其他好资源

这里是我用来准备考试的小抄、博客帖子和其他资源。

  • 特立独行的林的小抄在这里很好,但是在三月考试前刷新。
  • 广 X这里的是预更新的考试。
  • Dmitri Lerko 的帖子这里反映了更新后的考试。
  • Chetan Sharma 的帖子这里也反映了更新的考试。
  • 官方的谷歌云文档内容丰富。你肯定想花些时间给他们做笔记。不是所有的最新材料都在考试中,但学习这些都很有好处。😃例如,下面是 BigQuery 文档。
  • 谷歌云官方博客是这里。值得花一些时间来帮助你理解你可能会觉得有挑战性的话题。

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

So many things learn!

你还有其他有用的资源吗?请在评论中分享或在 Twitter @discdiver 上发给我。

我发现一件不必要的困难是确定学习材料的更新程度。为了让这变得更容易,我向谷歌建议,他们应该对他们的认证考试进行版本化——就像大多数软件遵循语义版本化一样。像 1.1 这样的版本标签可以使培训材料提供者很容易地指出他们的材料与哪个测试版本相匹配。这可以节省考生的时间,避免挫败感。如果你认为这是一个好主意,请告诉谷歌。你可以发推特给他们 @ GCPcloud 。😃

不管怎样,我一般都考得很好,并且对自己自学的能力很有信心。如果你不喜欢自学,并且你的预算允许,你可能想参加面授课程

现在让我们转向测试。

考试

考试由 50 道选择题组成。你有两个小时来完成它。您可以标记问题供以后查看,并在提交测试之前重新查看所有问题。

有传言说你需要 70%左右的正确率才能通过考试。然而,没有官方公布的及格分数。谷歌称:

1.并非所有问题都可以评分。

在任何给定的时间,我们考试中的一小部分问题可能是未评分的。这些是新开发的问题,正在对其有效性进行评估。这是测试行业的标准做法。

2.通过考试所需的分数是保密的。

每次考试的及格分数是保密的。它由内部和外部主题专家小组按照行业公认的标准制定流程确定。及格分数平等地适用于所有考生。当考试内容发生变化时,会重新评估。

你永远不知道你的分数,只知道你是否及格。如果你通过了测试,你的认证有效期为两年。

考试将花费你 200 美元。如果你没有通过,你可以在 14 天后再花 200 美元参加考试。如果你第二次没有通过,你需要等 60 天,然后再付钱。

下面是官方测试概述

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

What do you see in the crystal?

如何知道自己准备好了?

如果你决定学习谷歌云认证专业数据工程师考试,很难知道你什么时候准备好参加考试。这很棘手,因为很少有好的测试模拟,你甚至不知道你需要通过什么!

就像生活中的大多数事情一样,练习增加了你表现出色的机会。尽可能多地参加模拟考试,并查看结果。您希望确信自己了解概念、陷阱和最佳实践。

本来打算学习一个月左右,但是决定硬推。第六天我试图报名参加第二天的考试,但是考点已经被预订了。我决定多花几天时间学习,并在周末与家人一起度过。

我结束了 10 天相当紧张的学习,中间休息了几天。我觉得考试那天准备得还不错。我没有记住每个资源的每个 IAM 角色,但是我对关键产品的最佳实践有很好的理解。

测试体验

你在考试中心的电脑上参加考试。你必须把你的电话和其他个人物品交给监考人。测试过程中你会被录像。其他人可能会在同一个房间参加其他考试。

提供耳塞、草稿纸和铅笔。这听起来很傻,但是如果你不戴耳塞,你可能想提前练习一下。我建议你不要按开始,直到他们牢牢地在你的耳朵里。

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

Ears.

我已经知道考试会很难。这比我想象的要难多了。这感觉是我参加过的最难的考试,我参加过 SAT、ACT、GMAT、GRE、LSAT 和几个认证考试。不管怎样,这是我第一次参加云提供商的考试。

测试很难,原因有几个:

  • 材料的广度是巨大的。谷歌有很多产品,每个产品都有很多潜在的问题,它们是如何协同工作的。有超过 200 个谷歌云 API。这个考试没有涵盖全部,但是涵盖了一堆。
  • 该考试还测试您对与 Google 产品相关的几个 Apache 开源产品的了解。
  • 甚至不清楚到底有多少谷歌产品会参加考试,因为新产品总是在增加,产品总是在变化。
  • 问题通常是多行的,需要考虑多个变量和高度集中。
  • 有些问题需要多个答案(如果需要多个答案,则指定答案的数量)。
  • 很多回答都有些正确。你需要选择最佳答案。

考试将在多个方面测试你。当我参加考试时,我只是努力保持注意力集中,不让自我怀疑的声音进入我的脑海。

在我第一次做完这些问题后,我还有大约 30 分钟的时间。我标记了七个答案来复习。复习完后,我有 10 分钟的空闲时间。我点击了提交知道我已经尽了最大的努力,筹码会落在他们可能落的地方。

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

Poker chips.

在下一个屏幕上,我看到我已经暂时通过了*。😃我从学监那里拿了我的东西,然后出去了。*

第二天我收到了谷歌发来的邮件,我已经正式通过了。它包括一些免费赠品的代码。我本来更喜欢一个不太贵的测试,但现在我感到有些尴尬。

我计划在未来的一篇文章中写关于 Google 工具的数据摄取、处理、存储和机器学习。跟随 me 确保你不会错过。现在我来提一下考试上没看到的。

我没看到的是

  • 我想问多少问题就问多少。各种模拟考试都有一堆。
  • 关于确切产品成本的问题。只要知道什么是有意义的,如果你对成本更敏感或不太敏感。
  • Firestore 问题。
  • AI Hub 提问。
  • 很多 ML 概念题。我参加测试时比谷歌数据库产品更了解 ML 概念,所以这也许解释了为什么测试的这一部分对我来说并不重要。
  • 许多关于代码示例的问题。

包装

如果你想更多地了解谷歌的数据科学和工程产品,并且你有时间投入其中,那么为这个考试而学习是有意义的。这个考试不需要你编写实际的查询或清理数据,所以你需要到别处去发展这些技能。

如果你还不是 GCP 的专业人士,我保证如果你花时间为考试而学习,你会学到很多东西。

在我看来,如果你通过了测试,很好。如果没有,也没关系。不管怎样,你都会学到很多,这是最重要的。😃

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

It’s the climb.

说到学习,希望这篇文章对你的学习有帮助。如果你有,请分享到你最喜欢的社交媒体频道。👍

我帮助人们了解云计算、数据科学和其他技术主题。如果你对这些感兴趣,可以看看我的其他文章

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

学习愉快!📙

11 个免费工具,让您轻松、快速地开始数据可视化。

原文:https://towardsdatascience.com/10-free-tools-to-instantly-get-started-with-data-visualisation-d7fadb5f6dce?source=collection_archive---------0-----------------------

使用这些简单直观的工具,直接进入数据可视化流程。

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

Photo by rawpixel.com from Pexels

#编辑:自 2020 年 10 月起,MyHeatMap 和 OpenHeatMap 不再有效。

不要单纯的展示数据,用数据讲一个故事!

是的,我们有数据和见解,现在怎么办?显然,下一步将是与人们交流这些发现,以便他们能够采取必要的行动。传达 数据的最有效方式之一就是通过讲故事。但是要成为有效的故事讲述者,我们需要把事情简单化,而不是复杂化,这样分析的真正本质才不会丢失。

当谈到讲故事和观想时,有许多工具可供选择。有些是免费的,有些是付费订阅的。有些简单直观,但缺乏交互性,而有些复杂,需要一点努力才能开始。

如果你刚刚开始数据可视化,没有艺术或图形设计经验,不想编码,想立即开始制作图表或地图,那么这篇文章就是为你准备的。除了 Tableau Public、PowerBI 和 Google Charts 等在数据科学生态系统中非常常用的流行工具之外,本文还试图揭示其他工具。

因此,这里有11 个免费可用的工具,让初学者立即开始构建漂亮的视觉效果。

所有这些数据可视化工具都是免费的,但如果你想升级和访问更多选项,尤其是云服务,可能需要一个高级版本。

1.数据包装器

Datawrapper 使创建图表&地图变得容易。只需点击鼠标,您就可以轻松创建 choropleth、符号或定位器地图。同样,您也可以根据自己的数据创建图表。这些图表是交互式的,可响应的,可嵌入你的网站。该工具的免费版本面向单个用户,支持每月 10,000 次图表查看。

Datawrapper 主要是为记者构建的,也是由记者构建的。全世界的新闻编辑室都使用 Datawrapper 来构建图表和地图。然而,它对任何人来说都是非常有用的,谁想要可视化伴随他们的文章。该网站还托管了他们名为 CHARTABLE 的博客,在那里他们定期撰写关于数据可视化的最佳实践。

过程

只需从 Excel 或谷歌工作表中复制您的数据。您还可以上传 CSV 文件或链接到 URL 以实时更新图表。只需一次点击,即可从多种图表和地图类型中进行选择。定制和注释图表,使其更加有效。将现成的嵌入代码复制到您的 CMS 或网站中,或将图表导出为图像或 PDF 进行打印。

演示

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

2.草图

RAWGraphs 是一个开放的网络工具,可以在令人惊叹的 T2 D3 . js T3 库的基础上创建基于矢量的可视化。

RAWGraphs 主要是为设计师和 vis 极客设计的工具,旨在提供电子表格应用程序(如 Microsoft Excel、Apple Numbers、Google Docs)和矢量图形编辑器(如 Adobe Illustrator、Inkscape 等)之间缺少的链接。

RAWGraphs 是高度可定制和可扩展的,接受用户定义的新的定制布局。关于如何添加或编辑布局的更多信息,请访问他们的网站

过程

RAWGraphs 处理表格数据(例如电子表格和逗号分隔值)以及从其他应用程序(例如 Microsoft Excel、TextWrangler、TextEdit 等)复制和粘贴的文本。基于 SVG 格式,可视化可以很容易地用矢量图形应用程序进行编辑,以便进一步细化,或者直接嵌入到网页中。

只需在 RawGraphs 中插入原始数据,在各种可视化模型中进行选择,然后调整创建的图表并浏览数据。

使用 RAWGraphs 最简单的方法是访问官方应用页面上的最新版本。然而,RAWGraphs 也可以在您的机器上本地运行。按照 G ithub repo 上的说明进行安装。

演示

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

3.记录

Charted 让您可视化数据并自动创建漂亮的图表。它是由 Medium 的产品科学团队开发的。Charted 被刻意保持简单和易于使用。它不存储、操作或转换数据,因此它不是一个格式化工具。但是,它有几个强大的核心功能:

  • 在所有尺寸的屏幕上都能很好地渲染,包括监视器
  • 每 30 分钟重新获取数据并更新图表
  • 将数据系列移动到单独的图表中
  • 调整图表类型、标签/标题和背景

过程

提供数据文件的链接,Charted 返回一个漂亮的、交互式的、可共享的数据图表。当前图表支持。csv、. tsv. google 电子表格和 dropbox 共享链接。还可以生成 HTML 代码,然后嵌入到网站中。

演示

下载 repo 并运行npm install来安装依赖项。之后就可以跑npm start了。这将在 localhost:3000 上启动一个服务器。或者,也可以在 charted.co 的试用。

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

4.图表工作室

Chart Studio 是 Plotly 强大的基于网络的在线图表创建工具。它是创建 D3.js 和 WebGL 图表的最复杂的编辑器之一。它有一个免费使用的基本版本。此外,还有付费的企业版和云版。任何人都可以将源代码集成到他们的应用中。

过程

要么拖放数据文件,要么通过 Falcon SQL 客户端连接到 SQL。然后,只需玩提供的选项,并立即获得交互式图表。

演示

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

5.快速图表

FastCharts 是来自金融时报 DataViz 团队的产品。他们最近软推出了一个公共版本的内部浏览器制图工具,供人们工作和提供反馈。

该工具可用于:
通过简单地将数据直接粘贴到浏览器中制作折线图、条形图和面积图
为图的点和/或区域添加注释
下载 png 和可编辑 SVG

虽然这个工具是为内部使用而设计的,但 FastCharts 也在该业务的其他部分赢得了声誉,因为他们为演示文稿创建图表——这是一个比 Excel 或 Google Sheets 更简单的工具,为用户提供了更专业的带有 FT 品牌的图表。

过程

CSV 或 TSV 格式的任何数据都可以用来创建图表,然后可以根据用户的喜好进一步定制。

演示

这里有一个展示如何在一分钟内制作图表的演示 GIF:

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

https://fastcharts.io/

6.帕拉弟奥

Palladio 是一款免费的数据驱动工具,旨在轻松可视化复杂的历史数据。该项目旨在理解如何设计基于人文探究的图形界面。帕拉第奥位于历史和设计的交汇处。

使用 Palladio 可以创建四种类型的可视化:

  • 地图视图:将坐标数据转换为地图上的点。
  • 图表视图:让您可视化数据的任何两个维度之间的关系
  • 列表视图:可以排列数据的维度来制作定制的列表。
  • 图库视图:数据可以显示在网格设置中,以便快速参考

过程

任何可以用表格/电子表格格式表示的信息集合都可以使用 Palladio,唯一的要求是所有数据都用包括逗号、分号和制表符在内的分隔值表示。

我们可以粘贴、上传或提供数据链接,以创建新的 Palladio 项目。

演示

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

7.Openheatmap(不再受支持)

Opeheatmap 是一个非常简单的工具,可以立即将电子表格转换成地图。从绘制一个街区的房价到 twitter 关注者,openheatmap 可以将所有这些转化为交互式可视化,而不涉及任何复杂性。

过程

只需上传你的电子表格或提供谷歌硬盘的链接。如果数据没有问题,接下来您就可以查看您的地图了。您的电子表格应该有一列用于您要映射的位置,一列用于值,如果您想要动画地图,还可以选择一列用于每行的时间。例如:

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

Source: http://www.openheatmap.com/upload.html

演示

让我们使用 openheatmap 绘制’伦敦地铁站’的地图。

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

8.我的热图(不再受支持)

MyHeatMap 是另一个可以交互查看地理数据的工具。然而,免费版本只允许用户创建最多只有 20 个数据点的公共地图,这实际上非常少。Myheatmap 输出颜色编码的热图,目标受众非常容易理解。地图上没有杂乱的标记、旗帜、等高线或生长的斑点。此外,使用 myheatmap 创建的热点图完全可以与平移和缩放功能进行交互。

过程

用户只需上传 CSV 格式的地理数据。该文件应包含一个标题行,其中至少有三个字段。其中两个字段必须命名为“纬度”和“经度”,它们对应的列必须包含以纬度和经度表示的地理坐标。

演示

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

9.图表生成器

Chartbuilder 是一个前端图表应用程序,可以方便地创建简单漂亮的图表。Chartbuilder 是用户和导出界面。Chartbuilder 支持在 Quartz 开发的制图平台 Atlas 上创建所有图表。Chartbuilder 不是数据分析或数据转换工具。它只是以一致的预定义样式创建图表。

过程

将 csv 或 tsv 格式的数据粘贴到 chartbuilder 中,并导出代码以绘制移动友好响应图表或静态 SVG 或 PNG 图表。对于那些对定制图表风格不感兴趣的人来说,托管版本:【http://quartz.github.io/Chartbuilder】就可以了,否则也可以下载并在本地安装。

演示

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

10.Timeline.js

TimelineJS 是一个开源工具,它使任何人都能够构建视觉上丰富的交互式时间线。初学者只需使用谷歌电子表格就可以创建一个时间表。专家可以利用他们的 JSON 技能创建定制安装,同时保持 TimelineJS 的核心功能。

TimelineJS 可以从各种来源获取媒体。Twitter,Flickr,YouTube,Vimeo,Vine,Dailymotion,Google Maps,Wikipedia,SoundCloud,Document Cloud 等等!

过程

创建时间表是一个简单的过程。提供了一个电子表格模板,需要填写,然后简单地发布内容。然后,所生成的链接可以被嵌入到媒体中或任何网站上需要时间线的地方。该网站有一个很好的 i ntroductory 视频来开始使用 Timeline JS。

演示

时间线将如何在中型博客/网站中呈现的示例。

曼德拉:有目标的一生

[## 嵌入时间线

嵌入时间线

Embedcdn.knightlab.com 时间线](http://cdn.knightlab.com/libs/timeline/latest/embed/index.html?source=0AmNxBKGzRxw8dE9rbThJX0RCUmxheW1oOUMxWEdLd3c&font=Georgia-Helvetica&maptype=TERRAIN&lang=en&height=650)

11.Canva 图形生成器

Canva Graph maker是一款多功能工具,可让您立即轻松地创建漂亮的数据可视化。与其他在线图表制作者不同,Canva 既不复杂也不耗时。没有学习曲线—您将在几分钟内获得一个漂亮的图表,将原始数据转化为既直观又易于理解的东西。

过程

本质上,在 Canva 中创建图表只需 5 个简单的步骤:

  • 选择图形或图表模板
  • 添加您的数据或信息
  • 从我们的库中添加图标或插图
  • 更改颜色、字体、背景等
  • 下载、打印或共享

对于任何类型的用例,都有大量可用的图表类型。有面积图,条形图,比较图,饼状图和其他各种你可以在他们的网站上探索。

演示

这里有一个演示 GIF,展示了如何用 Canva 轻松制作一个非常基本的图表。自己尝试构建更专业、更美观的图表。

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

结论

数据可视化并不一定很困难或昂贵。编码无疑给了你更多的选择来创建和定制图表,尤其是在数据混乱的时候,但是这些工具在即时数据可视化方面提供了很好的选择。这不是一个详尽的列表,我一直在寻找更多的工具来简化其他人的可视化过程。

你应该知道的 10 个 Git 命令

原文:https://towardsdatascience.com/10-git-commands-you-should-know-df54bea1595c?source=collection_archive---------1-----------------------

使用 Git 节省时间的技巧

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

在本文中,我们将讨论作为开发人员、数据科学家或产品经理应该知道的各种 Git 命令。我们将看看如何用 Git 检查、移除和整理。我们还将介绍使用 Bash 别名和 Git 编辑器配置来避免 Vim 和节省时间的方法。

如果您对基本的 Git 命令不太熟悉,在阅读本文之前,可以看看我以前的一篇关于 Git 工作流的文章。

[## 学会足够有用的东西

GitHub 项目的 4 个基本工作流程

towardsdatascience.com](/learn-enough-git-to-be-useful-281561eef959)

这里有 10 个需要了解的命令和它们的一些常见标志。每个命令都链接到该命令的 Atlassian 位存储桶指南。

检查东西

让我们先来看看检查变更。

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

  • [**git diff**](https://www.atlassian.com/git/tutorials/saving-changes/git-diff) —在本地查看所有文件更改。可以附加文件名以仅显示一个文件的更改。📂
  • [**git log**](https://www.atlassian.com/git/tutorials/git-log) —查看所有提交历史记录。也可用于带有git log -p my_file的文件。输入q退出。📓
  • [**git blame my_file**](https://www.atlassian.com/git/tutorials/inspecting-a-repository/git-blame) —在我的文件中查看谁在何时更改了什么。👉
  • [**git reflog**](https://www.atlassian.com/git/tutorials/rewriting-history/git-reflog) —显示本地存储库头的更改日志。有利于寻找丢失的作品。🔎

用 Git 检查东西并不令人困惑。相比之下,Git 为删除和撤销提交和文件更改提供了大量选项。

撤销事情

git resetgit checkoutgit revert用于撤销对您的存储库所做的更改。这些命令可能很难保持正确。

git resetgit checkout可以用于提交和单个文件。git revert仅用于提交级别。

如果您只是处理您自己的本地提交,而这些提交还没有合并到协作远程工作中,那么您可以使用这些命令中的任何一个。

如果您正在协同工作,并且需要中和远程分支中的提交,那么git revert就是您的工具。

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

这些命令中的每一个都有不同的选项。以下是常见的用法:

  • [**git reset --hard HEAD**](https://www.atlassian.com/git/tutorials/resetting-checking-out-and-reverting) —放弃自最近一次提交以来已暂存和未暂存的更改。

指定一个不同的提交而不是HEAD来放弃自该提交以来的更改。--hard指定丢弃暂存和未暂存的更改。

确保您没有放弃来自您的合作者所依赖的远程分支的提交!

  • [**git checkout my_commit**](https://www.atlassian.com/git/tutorials/undoing-changes) —丢弃自 my_commit 以来未暂存的更改。

HEAD通常用于my_commit来放弃自最近一次提交以来对本地工作目录的更改。

checkout最适合用于本地撤销。它不会弄乱您的合作者所依赖的远程分支的提交历史!

如果使用分支而不是提交来使用checkout,那么HEAD会切换到指定的分支,并且工作目录会更新以与之匹配。这是checkout命令更常见的用法。

  • [**git revert my_commit**](https://www.atlassian.com/git/tutorials/undoing-changes/git-revert)—撤销 my_commit 中更改的效果。revert 在撤销更改时进行新的提交。

revert对于协作项目是安全的,因为它不会覆盖其他用户分支可能依赖的历史。

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

revert is safe

有时,您只想删除本地目录中未被跟踪的文件。例如,您可能运行了一些代码,这些代码创建了许多不同类型的文件,而您不希望这些文件出现在您的 repo 中。哎呀。😏你可以在一瞬间清理它们!

  • [**git clean -n**](https://www.atlassian.com/git/tutorials/undoing-changes/git-clean)—删除本地工作目录中未跟踪的文件。

-n标志用于不删除任何内容的试运行。

使用-f标志实际删除文件。

使用- d标志删除未跟踪的目录。

默认情况下,不跟踪文件。gitignore 不会被删除,但是这种行为可以改变。

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

现在您已经知道了在 Git 中撤销事情的工具,让我们再看两个命令来保持事情有序。

整理东西

  • [**git commit --amend**](https://www.atlassian.com/git/tutorials/rewriting-history#git-commit--amend) —将您的暂存更改添加到最近的提交中。

如果没有暂存任何内容,此命令只允许您编辑最近的提交消息。仅当提交尚未集成到远程主分支时,才使用此命令!⚠️

  • [**git push my_remote --tags**](https://www.atlassian.com/git/tutorials/syncing/git-push)—将所有本地标签发送到远程 repo。有利于版本变更。

如果你正在使用 Python 并对你构建的包进行修改, bump2version 会自动为你创建标签。一旦你推送了你的标签,你就可以在你的新闻稿中使用它们了。这是我制作你的第一个 OSS Python 包的指南。跟随 me 确保你不会错过版本控制的部分!

救命,我卡在 Vim 里出不来了!

使用 Git,您可能偶尔会发现自己被扔进了 Vim 编辑器会话。例如,假设您试图在没有提交消息的情况下提交—除非您更改了 Git 的默认文本编辑器,否则 Vim 会自动打开。如果你不知道 Vim,这种情况很糟糕——参见上的 4000+up 投票以及如何摆脱这种情况的答案。😲

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

Freedom!

下面是您用保存的文件逃离 Vim 的四步计划:

  1. 按下i进入插入模式。
  2. 在第一行键入您的提交消息。
  3. 按下退出键— esc
  4. 输入:x。别忘了冒号。

瞧,你自由了!😄

更改默认编辑器

为了完全避免 Vim,您可以在 Git 中更改您的默认编辑器。以下是带有常用编辑器命令的文档。下面是将默认值更改为 Atom 的命令:

git config --global core.editor "atom --wait"

如果您喜欢 Visual Studio 代码:

git config --global core.editor "code --wait"

假设您已经安装了文本编辑器,现在您可以在其中解决 Git 问题了。耶!👍

我应该注意到 VSCode 有很多很棒的 Git 功能。详情见此处的文档

为 Git 命令创建快捷方式

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

如果您在 macOS 上为您的终端使用 Bash,您可以通过向您的添加以下别名来创建 Git 命令的快捷方式。bash_profile

alias gs='git status '
alias ga='git add '
alias gaa='git add -A '
alias gb='git branch '
alias gc='git commit '
alias gcm='git commit -m '
alias go='git checkout '

您可以调整以上内容,为您喜欢的任何 Git 命令创建快捷方式。

如果你没有一个. bash_profile ,你可以用下面的代码在 macOS 上创建一个:

touch ~/.bash_profile

然后打开它:

open ~/.bash_profile

查看更多关于的信息。bash_profile 这里这里

现在,当你在终端中输入gs时,它和输入git status是一样的。请注意,您可以在您的终端中输入快捷方式后的其他标志。

您也可以创建 Git 别名,但是这需要您在快捷命令前键入git。谁需要这些额外的按键?😉

包装

在本文中,您已经看到了一些关键的 Git 命令,并配置了您的环境以节省时间。现在你有了 Git 和 GitHub 的基础。准备好下一步了吗?

  • 查看这篇 Bitbucket Git 教程以深入了解。
  • 探索这个交互式指南来 Git 分支。分支可能会令人困惑,所以绝对值得一看。🔎
  • 去玩,去学习,去给别人解释不同之处。

我希望这篇 Git 和 GitHub 介绍对你有用。如果你有,请分享到你最喜欢的社交媒体渠道,这样其他人也可以找到它。👏

我写了如何有效地使用 Python、Docker 和其他编程和数据科学工具。如果你对此感兴趣,请关注我,在这里阅读更多。

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

去干掉他们!😁

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

一年来训练甘的 10 个教训

原文:https://towardsdatascience.com/10-lessons-i-learned-training-generative-adversarial-networks-gans-for-a-year-c9071159628?source=collection_archive---------1-----------------------

训练生成性对抗网络很难:让我们把它变得简单一些

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

介绍

一年前,我决定开始我的旅程,进入生成性对抗网络(GANs)的世界。自从我开始对深度学习感兴趣以来,我就一直对它们感兴趣,主要是因为它们可能产生的令人难以置信的结果。当我想到人工智能这个词时,GAN 是我脑海中首先出现的词之一。

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

Faces generated by GANs (StyleGAN)

但只有当我第一次开始训练它们时,我才发现这种有趣算法的两面性:训练对来说非常困难。是的,在我尝试之前,我从报纸和其他在我之前尝试过的人那里知道这一点,但我一直认为他们夸大了一个本来很小但很容易克服的问题。

我错了。

当我试图创造出不同于传统的 MNIST 例子的东西时,我发现了影响甘斯的巨大的不稳定性问题,随着花在寻找解决方案上的时间增加,这个问题变得极其令人讨厌

现在,在花了无数天研究已知的解决方案并试图提出新的解决方案后,我终于可以说,我至少对我的 GAN 项目中融合的稳定性有了更多的控制,你也一样。我不能承诺给你 10 分钟的解决方案,让你的每个项目都达到完美的收敛(或者用博弈论的话说,纳什均衡),但是我很乐意给你一些提示和技巧,你可以遵循,让你的 GAN 之旅变得更容易一点,不那么耗时,最重要的是,不那么烦人。

甘斯的现状

自从生成敌对网络及其稳定性问题诞生以来,已经进行了大量的研究。现在我们有大量的论文提出稳定收敛的方法,除此之外还有冗长而困难的数学证明。此外,一些实用技术和启发浮出了深度学习世界:我注意到,这些未经证实、背后没有数学思维的技巧往往非常有效,一定不能丢弃。

随着稳定性的提高,生成的图像真实感也有了重大飞跃。你可以看看英伟达的 StyleGAN 和谷歌的 BigGAN 的结果,就能真正了解 GANs 已经走了多远。

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

Images generated by BigGAN

在阅读并尝试了文献和实践中的许多技巧后,我整理了一份你在训练 GANs 时应该考虑和不应该考虑的建议清单,希望能在这个复杂且有时乏味的主题上拓展你的视角。

1.稳定性和容量

当我开始我的第一个独立 GAN 项目时,我注意到在训练过程中的某个早期点,鉴别器对抗损耗总是变为零,而发电机损耗非常高。我立即得出结论,一个网络没有足够的“容量”(或参数数量)来跟上另一个网络:所以我急忙改变生成器的架构,为卷积层添加更多的滤波器,但令我惊讶的是,什么都没有改变

在进一步探索了网络容量变化对训练稳定性的影响后,我没有发现任何明显的相关性。肯定有某种联系,但它并不像你刚开始时想的那么重要。

因此,如果你发现自己的训练过程不平衡,而且你没有任何网络在能力方面明显超过对方,我不会建议你添加或删除过滤器作为主要解决方案。

当然,如果您非常不确定您的网络容量,您可以查看一些在线架构示例,这些示例用于与您类似的情况。

2.提前停止

你在 GANs 训练中可能遇到的另一个常见错误是,一旦你看到发电机或鉴频器损耗突然增加或减少,就停止训练。我自己也这样做过无数次:在看到损失上升后,我立即认为整个训练都毁了并且归咎于一些不完美的超参数。

后来我才意识到,损失经常随机上升或下降,这并没有什么错。当发电机损耗比鉴频器损耗高得多时,我获得了一些很棒很真实的结果,这是完全正常的。因此,当你在训练过程中遇到突然的不稳定时,我建议让训练进行得更久一点,在训练过程中关注生成图像的质量,因为视觉理解通常比一些损失数字更有意义。

3.损失函数选择

当面对选择用来训练我们的 GAN 的损失函数时,我们应该选择哪个

这个问题在最近的一篇论文中得到解决,在这篇论文中,所有不同的损失函数都进行了基准测试和比较:出现了一些非常有趣的结果。显然选择哪个损失函数并不重要:没有哪个函数绝对胜过其他函数,GAN 能够在每种不同的情况下学习。

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

Results from the paper: no loss is superior

因此,我的建议是从最简单的损失函数开始,留下一个更具体的“最先进的”选项作为可能的最后一步,因为我们从文献中知道,你很可能以更差的结果结束

4.平衡发生器和鉴别器重量更新

在许多 GAN 的论文中,尤其是一些早期的论文中,在实现部分看到作者对鉴别器的每次更新使用了生成器的两次或三次更新的情况并不罕见。

在我的第一次尝试中,我注意到,在不平衡训练的情况下,几乎每次网络超过另一个时,鉴别器都会出现(损失大幅减少)。因此,读到即使是著名论文的作者也有类似的问题,并实施了一个难以置信的简单解决方案来克服它,给了我信心,让我相信我所做的是正确的。

不幸的是,在我看来,通过不同的网络权重更新来平衡训练是一个非常短视的解决方案。几乎从未改变生成器必须更新其权重的频率,最终成为稳定我的训练的最终解决方案:它有时可以推迟“不稳定性”,但永远无法解决它,直到收敛。当我注意到这个技术的无效时,我甚至试图使它更动态,根据两个网络丢失的当前状态改变权重更新时间表**;只是后来我发现,我不是唯一一个试图走这条路的人,和许多其他人一样,我没有成功克服不稳定性。**

我只是后来才明白,其他的技巧,稍后在文章中解释,对提高训练稳定性有更大的效果。

5.模式崩溃和学习率

如果你在和 GANs 打交道,你肯定会知道什么是模式崩溃。它包括发生器“折叠”,并且总是为作为输入的每个可能的潜在向量生成单个图像。这是 GAN 训练中一个相当常见的障碍,在某些情况下,它会变得非常烦人

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

Mode Collapse example

如果你发现自己处于这种情况,我推荐的最直接的解决方案是尝试调整 GAN 的学习速率,因为根据我的个人经验,我总是可以通过改变这个特定的超参数来克服这个障碍。根据经验,当处理模式崩溃时,尝试使用较低的学习速率,并从头开始训练。

学习率是最重要的超参数之一,如果不是最重要的话,因为在训练过程中,即使很小的变化也会导致的剧烈变化。通常当使用更大的批量时,你可以允许更高的学习率,但是根据我的经验,保守一点几乎总是一个安全的选择。

还有其他方法来对抗模式崩溃,如特征匹配迷你批次鉴别,我从未在自己的代码中实现过,因为我总是找到另一种方法来避免这种特殊的麻烦,但如果需要的话,可以随意给予它们一点关注。

6.添加噪声

众所周知,加大鉴别器的训练难度有利于整体稳定性。增加鉴别器训练的复杂性的一个最公知的方法是将噪声添加到真实和合成数据(例如由生成器生成的图像)中;在数学世界中,这应该是可行的,因为它有助于给两个竞争网络的数据分布带来一定的稳定性。这确实是一个简单的解决方案,我推荐尝试它在实践中可以很好地工作(即使它不能神奇地解决你可能遇到的任何不稳定的问题),同时只需要最小的努力来设置。也就是说,我开始使用这种技术,但过了一段时间后就放弃了,转而使用其他一些我认为更有效的技术。

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

7.标签平滑

实现相同目标的另一种方法是标签平滑,它更容易理解和实现:如果真实图像的标签集是 1,我们将其更改为更低的值,如 0.9。这个解决方案阻止了鉴别者对其分类过于自信,或者换句话说,阻止了依靠非常有限的一组特征来确定图像是真是假。我完全赞同这个小技巧,因为它在实践中表现得非常好,而且它只需要改变你代码中的一两个字符。

8.多尺度梯度

当处理不太小的图像时(比如 MNIST 的图像),你必须查看多尺度渐变。这是一个特殊的 GAN 实现,由于两个网络之间的多个跳跃连接,使得梯度从鉴别器流向生成器,类似于传统上用于语义分割的 U-Net 中发生的情况。

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

MSG-GAN architecture

多尺度渐变论文的作者能够训练 GAN 直接生成高清 1024x1024 图像,而没有任何特殊障碍(模式崩溃等),而在此之前,只有渐进增长的 GAN 才有可能(Nvidia 的 ProGAN)。我已经在我的项目中实现了,我注意到了更稳定的训练和令人信服的结果。查看文件了解更多细节,并进行尝试!

9.TTUR

当我说两个时标更新规则或 TTUR 时,你可能会认为我指的是 GAN 培训中采用的复杂而清晰的技术,你可能完全错了。它只包括为发生器和鉴别器选择不同的学习速率就这样。在首次引入 TTUR 的论文中,作者提供了收敛到纳什均衡的数学证明,并表明使用不同的学习速率实现著名的 gan(DCGAN,WGAN-GP)实现了最先进的结果。

但是当我说“使用不同的学习率”时,实际上我真正的意思是什么?一般来说,我建议为鉴别器选择一个较高的学习率,为生成器选择一个较低的学习率:这样,生成器不得不做出较小的步骤来欺骗鉴别器,并且不会选择快速、不精确和不现实的解决方案来赢得对抗游戏。举一个实际的例子,我经常选择 0.0004 作为鉴别器,0.0001 作为生成器,我发现这些值在我的一些项目中工作得很好。请记住,使用 TTUR 时,您可能会注意到发电机的损耗较高。

10.光谱归一化

在许多论文中,例如在 SAGAN(或自我关注 GAN)的论文中,显示了谱归一化,一种应用于卷积核的特殊类型的归一化,可以极大地帮助训练的稳定性。最初只在鉴别器中使用,后来证明如果也用在生成器的卷积层中也是有效的,我完全赞同这个决定!

我几乎可以说,在我的 GAN 中发现并实现频谱归一化改变了我的 GAN 之旅的方向,坦率地说,我看不出有任何理由不亲自使用它:我几乎可以保证它将带您进入一个显著更好和更稳定的训练,同时让您专注于深度学习项目的其他更有趣的方面!(详见本文。)

结论

大量的其他技巧、更复杂的技术和架构有望终结 GANs 的训练问题:在这篇文章中,我想告诉你我个人发现并实施的克服我遇到的障碍的方法。

因此,如果你发现自己在了解这里介绍的每种方法和技巧时遇到了困难,那么还有很多材料需要研究。我只能说,在花了无数个小时研究和尝试每一种可能的方法来解决我的 GAN 相关问题之后,我对我的项目更有信心了,我真的希望你也能这样做。

最后,我想真诚地感谢阅读并关注这篇文章,希望你能带着有价值的东西走出去。

非常感谢,祝甘历险记愉快!

每个数据科学家都应该知道的 10 种机器学习方法

原文:https://towardsdatascience.com/10-machine-learning-methods-that-every-data-scientist-should-know-3cc96e0eeee9?source=collection_archive---------0-----------------------

现实世界中的数据科学

快速启动您的数据科学技能

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

Photo by chuttersnap on Unsplash

机器学习是研究和行业的热门话题,新的方法一直在发展。这个领域的速度和复杂性使得即使对专家来说,跟上新技术的步伐也很困难——对初学者来说更是势不可挡。

为了揭开机器学习的神秘面纱,并为那些不熟悉核心概念的人提供一条学习之路,让我们来看看十种不同的方法,包括每种方法的简单描述、可视化和示例。

机器学习算法也称为模型,是一种数学表达式,表示问题(通常是业务问题)上下文中的数据。目的是从数据到洞察力。例如,如果一家在线零售商希望预测下一季度的销售额,他们可能会使用机器学习算法,根据过去的销售额和其他相关数据来预测这些销售额。类似地,风车制造商可能会对重要设备进行视觉监控,并通过训练有素的算法提供视频数据,以识别危险的裂缝。

所描述的十种方法提供了一个概述,以及一个在您磨练机器学习知识和技能时可以建立的基础:

  1. 回归
  2. 分类
  3. 聚类
  4. 降维
  5. 集成方法
  6. 神经网络和深度学习
  7. 迁移学习
  8. 强化学习
  9. 自然语言处理
  10. 单词嵌入

在我们开始之前还有最后一件事。让我们区分机器学习的两个一般类别:有监督的和无监督的。当我们有一份想要预测或解释的数据时,我们应用监督 ML 技术。我们通过使用以前的输入和输出数据来预测基于新输入的输出。例如,您可以使用监督 ML 技术来帮助服务企业预测下个月将注册该服务的新用户数量。相比之下,无监督 ML 着眼于在不使用目标变量进行预测的情况下关联和分组数据点的方法。换句话说,它根据特征来评估数据,并使用特征来形成彼此相似的项目聚类。例如,您可以使用无监督学习技术来帮助零售商对具有相似特征的产品进行细分,而不必事先指定要使用哪些特征。

回归

回归方法属于监督最大似然法的范畴。它们有助于根据一组先前的数据来预测或解释特定的数值,例如,根据类似物业的先前定价数据来预测物业的价格。

最简单的方法是线性回归,我们使用直线的数学方程( y = m * x + b )来模拟数据集。我们通过计算直线的位置和斜率来训练具有许多数据对 (x,y) 的线性回归模型,该直线使所有数据点和直线之间的总距离最小化。换句话说,我们计算最接近数据中观察值的直线的斜率( m )和 y 截距( b )。

让我们考虑一个更具体的线性回归的例子。我曾经使用线性回归来预测某些建筑的能源消耗(以千瓦时为单位),方法是收集建筑的年龄、楼层数、平方英尺和插墙设备的数量。由于有多个输入(年龄、平方英尺等),我使用了多变量线性回归。原理与简单的一对一线性回归相同,但在这种情况下,我创建的“线”发生在基于变量数量的多维空间中。

下图显示了线性回归模型对建筑实际能耗的拟合程度。现在想象一下,你可以访问一栋建筑的特征(年龄、平方英尺等),但你不知道它的能耗。在这种情况下,我们可以使用拟合线来估算特定建筑的能耗。

请注意,您还可以使用线性回归来估计对最终能耗预测有贡献的每个因素的权重。例如,一旦你有了一个公式,你就可以确定年龄、体型还是身高是最重要的。

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

Linear Regression Model Estimates of Building’s Energy Consumption (kWh).

回归技术涵盖从简单(如线性回归)到复杂(如正则化线性回归、多项式回归、决策树和随机森林回归、神经网络等)的所有领域。但是不要陷入困境:从学习简单的线性回归开始,掌握技术,然后继续前进。

分类

另一类监督 ML,分类方法预测或解释类值。例如,它们可以帮助预测在线客户是否会购买产品。输出可以是或不是:买方或不是买方。但是分类方法不限于两类。例如,分类方法有助于评估给定图像中包含的是汽车还是卡车。在这种情况下,输出将是 3 个不同的值:1)图像包含汽车,2)图像包含卡车,或者 3)图像既不包含汽车也不包含卡车。

最简单的分类算法是逻辑回归——这使它听起来像一种回归方法,但它不是。逻辑回归基于一个或多个输入估计事件发生的概率。

例如,逻辑回归可以将一个学生的两个考试分数作为输入,以估计该学生被特定大学录取的概率。因为估计值是一个概率,所以输出是一个介于 0 和 1 之间的数字,其中 1 表示完全确定。对于这个学生,如果估计的概率大于 0.5,那么我们预测他或她会被录取。如果估计概率小于 0.5,我们预测他或她将被拒绝。

下面的图表显示了往届学生的分数以及他们是否被录取。逻辑回归允许我们画一条代表决策边界的线。

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

Logistic Regression Decision Boundary: Admitted to College or Not?

因为逻辑回归是最简单的分类模型,所以它是分类的好起点。随着您的进步,您可以深入非线性分类器,如决策树、随机森林、支持向量机和神经网络等。

使聚集

使用聚类方法,我们可以进入无监督最大似然分类,因为它们的目标是对具有相似特征的观察结果进行分组或聚类。聚类方法不使用输出信息进行训练,而是让算法定义输出。在聚类方法中,我们只能使用可视化来检查解决方案的质量。

最流行的聚类方法是 K-Means,其中“K”表示用户选择创建的聚类数。(注意,有各种选择 K 值的技术,例如肘法。)

大致来说,K-Means 对数据点的作用是:

  1. 在数据中随机选择 K 个中心。
  2. 将每个数据点分配给随机创建的最近的中心。
  3. 重新计算每个聚类的中心。
  4. 如果中心没有变化(或者变化很小),这个过程就结束了。否则,我们返回步骤 2。(为了防止在中心不断变化的情况下陷入无限循环,请预先设置最大迭代次数。)

下一个图将 K-Means 应用于一组建筑物数据。图中的每一列表示每栋建筑的效率。这四项测量与空调、插入式设备(微波炉、冰箱等)、家用燃气和供暖燃气有关。我们选择 K=2 进行聚类,这样可以很容易地将其中一个聚类解释为高效建筑群,而将另一个聚类解释为低效建筑群。左边你可以看到建筑的位置,右边你可以看到我们用作输入的四个维度中的两个:接入设备和加热气体。

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

Clustering Buildings into Efficient (Green) and Inefficient (Red) Groups.

在探索聚类时,您会遇到非常有用的算法,例如基于密度的带噪声应用程序空间聚类(DBSCAN)、均值偏移聚类、凝聚层次聚类、使用高斯混合模型的期望最大化聚类等。

降维

顾名思义,我们使用降维从数据集中删除最不重要的信息(有时是冗余的列)。在实践中,我经常看到具有数百甚至数千列的数据集(也称为特征),因此减少总数至关重要。例如,图像可能包含数千个像素,但并非所有像素都对您的分析有影响。或者在制造过程中测试微芯片时,您可能需要对每个芯片进行数千次测量和测试,其中许多会提供冗余信息。在这些情况下,您需要降维算法来使数据集易于管理。

最流行的降维方法是主成分分析(PCA),它通过寻找最大化数据线性变化的新向量来降低特征空间的维度。当数据的线性相关性很强时,PCA 可以显著地降低数据的维数,而不会丢失太多的信息。(事实上,您还可以测量信息丢失的实际程度,并做出相应的调整。)

另一种流行的方法是 t-随机邻居嵌入(t-SNE),它进行非线性维数约简。人们通常使用 t-SNE 进行数据可视化,但你也可以将其用于机器学习任务,如减少特征空间和聚类,仅举几例。

下一幅图显示了对 MNIST 手写数字数据库的分析。MNIST 包含数以千计的从 0 到 9 的数字图像,研究人员用这些图像来测试他们的聚类和分类算法。数据集的每一行都是原始图像的矢量化版本(大小为 28 x 28 = 784)以及每个图像的标签(零、一、二、三、…、九)。请注意,我们因此将维度从 784(像素)减少到 2(我们可视化的维度)。投影到二维可以让我们把高维的原始数据集可视化。

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

t-SNE Iterations on MNIST Database of Handwritten Digits.

集成方法

假设你决定造一辆自行车,因为你对商店和网上的选择不满意。你可以从找到你需要的每个部分的最佳部分开始。一旦你组装所有这些伟大的部分,最终的自行车将胜过所有其他选项。

集成方法使用相同的想法,将几个预测模型(监督 ML)结合起来,以获得比每个模型单独提供的预测质量更高的预测。例如,随机森林算法是一种集成方法,它结合了用数据集的不同样本训练的许多决策树。因此,随机森林的预测质量高于用单个决策树估计的预测质量。

将集成方法视为减少单个机器学习模型的方差和偏差的一种方式。这很重要,因为任何给定的模型在某些条件下可能是准确的,但在其他条件下可能是不准确的。对于另一个模型,相对精度可能是相反的。通过结合这两个模型,预测的质量被抵消了。

绝大多数卡吉尔比赛的冠军都使用某种合奏方法。最流行的集成算法有随机森林、 XGBoostLightGBM

神经网络和深度学习

与被认为是线性模型的线性和逻辑回归相比,神经网络的目标是通过向模型添加参数层来捕获数据中的非线性模式。在下图中,简单的神经网络有三个输入、一个具有五个参数的隐藏层和一个输出层。

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

Neural Network with One Hidden Layer.

事实上,神经网络的结构足够灵活,可以构建我们熟知的线性和逻辑回归。术语深度学习来自具有许多隐藏层的神经网络(见下图),并封装了各种各样的架构。

跟上深度学习的发展尤其困难,部分原因是研究和行业社区已经加倍努力进行深度学习,每天都在产生全新的方法。

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

Deep Learning: Neural Network with Many Hidden Layers.

为了获得最佳性能,深度学习技术需要大量数据和大量计算能力,因为该方法可以在庞大的架构内自我调整许多参数。很快就清楚了为什么深度学习实践者需要用 GPU(图形处理单元)增强的非常强大的计算机。

特别是,深度学习技术在视觉(图像分类)、文本、音频和视频领域取得了极大的成功。深度学习最常见的软件包有 TensorflowPyTorch

迁移学习

让我们假设你是一名在零售业工作的数据科学家。你已经花了几个月的时间训练一个高质量的模型来将图像分类为衬衫、t 恤和 polos。您的新任务是构建一个类似的模型,将服装图像分类为牛仔裤、工装裤、休闲裤和礼服裤。能否将构建在第一个模型中的知识转移并应用到第二个模型中?是的,你可以,使用迁移学习。

迁移学习是指重新使用以前训练过的神经网络的一部分,并使其适应新的但类似的任务。具体来说,一旦您使用某项任务的数据来训练神经网络,您就可以转移一部分已训练的层,并将它们与一些可以使用新任务的数据来训练的新层相结合。通过增加几层,新的神经网络可以学习并快速适应新的任务。

迁移学习的主要优势在于,你需要更少的数据来训练神经网络,这一点尤为重要,因为深度学习算法的训练在时间和金钱(计算资源)方面都很昂贵——当然,找到足够的标记数据来进行训练通常非常困难。

让我们回到我们的例子,假设衬衫模型使用一个有 20 个隐藏层的神经网络。在运行了几个实验之后,您意识到您可以转移 18 个衬衫模型层,并将它们与一个新的参数层相结合,以在裤子的图像上进行训练。因此,裤子模型将有 19 个隐藏层。这两个任务的输入和输出是不同的,但是可重用层可以汇总与两者相关的信息,例如布料的各个方面。

迁移学习已经变得越来越受欢迎,现在有许多可靠的预训练模型可用于常见的深度学习任务,如图像和文本分类。

强化学习

想象一只老鼠在迷宫中试图找到隐藏的奶酪块。我们把老鼠暴露在迷宫中的次数越多,它就越容易找到奶酪。起初,老鼠可能会随机移动,但一段时间后,老鼠的经验有助于它意识到哪些动作会让它更靠近奶酪。

鼠标的过程反映了我们用强化学习(RL)来训练系统或游戏的过程。一般来说,RL 是一种帮助代理从经验中学习的机器学习方法。通过记录行动并在设定的环境中使用试错法,RL 可以最大化累积奖励。在我们的例子中,鼠标是代理,迷宫是环境。鼠标可能的动作有:向前、向后、向左或向右移动。奖励是奶酪。

当你对一个问题只有很少甚至没有历史数据时,你可以使用 RL,因为它不需要预先的信息(不像传统的机器学习方法)。在 RL 框架中,您可以边走边从数据中学习。毫不奇怪,RL 在游戏方面尤其成功,尤其是像国际象棋和围棋这样的“完全信息游戏。有了游戏,来自代理和环境的反馈很快就来了,允许模型快速学习。RL 的缺点是,如果问题很复杂,可能需要很长时间来训练。

就像 1997 年 IBM 的深蓝打败了人类最好的棋手一样,2016 年基于 RL 的算法 AlphaGo 打败了最好的围棋手。目前 RL 的先驱是英国 DeepMind 的团队。更多关于 AlphaGo 和 DeepMind 的信息请点击这里

2019 年 4 月,OpenAI Five 团队是第一个击败电子竞技 Dota 2 世界冠军团队的人工智能,这是一个非常复杂的视频游戏,OpenAI Five 团队选择它是因为当时没有能够赢得它的 RL 算法。击败 Dota 2 冠军人类队的同一个 AI 团队也开发了一种可以重新定向街区的机器人手。点击阅读更多关于 OpenAI 五人组的信息。

你可以看出强化学习是一种特别强大的人工智能形式,我们肯定会看到这些团队取得更多进展,但也值得记住这种方法的局限性。

自然语言处理

世界上很大一部分数据和知识是以某种人类语言的形式存在的。你能想象在几秒钟内阅读和理解成千上万的书籍、文章和博客吗?显然,计算机还不能完全理解人类的文本,但我们可以训练它们完成某些任务。例如,我们可以训练我们的手机自动完成我们的短信或纠正拼写错误的单词。我们甚至可以教机器与人类进行简单的对话。

自然语言处理(NLP)本身不是一种机器学习方法,而是一种广泛使用的为机器学习准备文本的技术。想想各种格式的大量文本文档(word、在线博客等等)。).这些文本文档中的大多数都充满了需要过滤掉的错别字、漏字和其他单词。目前,最流行的文本处理软件包是由斯坦福大学的研究人员开发的 NLTK(自然语言工具包)。

将文本映射成数字表示的最简单方法是计算每个文本文档中每个单词的频率。想象一个整数矩阵,其中每行代表一个文本文档,每列代表一个单词。词频的这种矩阵表示通常被称为词频矩阵(TFM)。从那里,我们可以创建另一个流行的文本文档矩阵表示,方法是将矩阵中的每个条目除以每个单词在整个文档集内的重要性权重。我们将这种方法称为术语频率逆文档频率(TFIDF ),它通常更适合机器学习任务。

单词嵌入

TFM 和 TFIDF 是文本文档的数字表示,它们仅考虑频率和加权频率来表示文本文档。相比之下,单词嵌入可以捕获文档中单词的上下文。通过单词上下文,嵌入可以量化单词之间的相似性,这反过来允许我们对单词进行算术运算。

Word2Vec 是一种基于神经网络的方法,它将语料库中的单词映射到一个数字向量。然后,我们可以使用这些向量来查找同义词,对单词执行算术运算,或者表示文本文档(通过取文档中所有单词向量的平均值)。例如,让我们假设我们使用足够大的文本文档语料库来估计单词嵌入。我们还假设单词国王王后男人女人是语料库的一部分。假设向量(‘字’)是表示字’字’的数值向量。为了估计向量(‘女人’),我们可以对向量执行算术运算:

向量(‘国王’)+向量(‘女人’) 向量(‘男人’)~向量(‘女王’)

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

Arithmetic with Word (Vectors) Embeddings.

单词表示允许通过计算两个单词的矢量表示之间的余弦相似性来找到单词之间的相似性。余弦相似性度量两个向量之间的角度。

我们使用机器学习方法来计算单词嵌入,但这通常是应用机器学习算法的前一步。例如,假设我们可以访问几千名 Twitter 用户的推文。还假设我们知道这些 Twitter 用户中的哪一个买了房子。为了预测 Twitter 新用户买房的概率,我们可以将 Word2Vec 与逻辑回归结合起来。

你可以自己训练单词嵌入,或者获得一组预训练(迁移学习)的单词向量。要下载 157 种不同语言的预训练单词向量,请看一下 FastText

摘要

我试图涵盖十种最重要的机器学习方法:从最基础的到最前沿的。很好地学习这些方法并充分理解每一种方法的基础可以作为进一步研究更高级的算法和方法的坚实起点。

当然,还有大量非常重要的信息需要涵盖,包括质量度量、交叉验证、分类方法中的类别不平衡以及过度拟合模型等,仅举几例。敬请关注。

这个博客的所有可视化都是使用沃森工作室桌面完成的。

特别感谢史蒂夫·摩尔对这篇文章的大力反馈。

推特:@ castan LinkedIn:@jorgecasta

本年度 10 大医学创新…是谷歌和微软领先吗?

原文:https://towardsdatascience.com/10-medical-innovation-in-the-current-year-is-google-and-microsoft-taking-the-lead-327d43a89506?source=collection_archive---------15-----------------------

在不久的将来,我们可以期待看到什么样的医学创新?

介绍

2019 年已经过去了将近一半,我希望每个人都度过了美好的一年,没有任何人出现任何严重的健康问题。让我们继续讨论,让我们谈谈医疗行业。

医疗行业总体来说是一个有趣的领域。有许多政府法规和私营企业试图“介入”这一行动以获取利润。那么 2019 年医疗行业有哪些最有前景的技术正在发生?一些科技巨头正在做什么来利用这个行业并渗透到这个领域呢?

为了找到这些问题的答案,我们需要关注克利夫兰诊所的医疗创新峰会,简称 MIS。因为他们刚刚公布了十大医学创新。最后,对于技术部分,我们需要看看谷歌的 2018 年 I/O 峰会,以及来自微软的 Ellie Patient Engagement 和 Care Management。

从列表开始

从底部开始,我们有:

  1. 基于 RNA 的疗法
  2. 二尖瓣和三尖瓣经皮置换和修复(心脏修复)→是的,我不知道这是什么,简单搜索后是关于无创心脏手术的,所以我们就叫它心脏修复。
  3. 机器人手术的创新(机器人手术)
  4. 院前卒中诊断面罩(卒中面罩)
  5. 用于医学教育的虚拟和混合现实(虚拟现实/混合现实)
  6. 通过 3D 打印实现的患者专用产品(3D 打印)
  7. 癌症治疗免疫疗法的进展免疫疗法(利用人体自身的免疫系统来对抗癌症)。
  8. 急性卒中干预的扩展窗口
  9. 人工智能在医疗保健中的出现 ( 人工智能)→ 我是一个超级人工智能迷,所以我对这项创新非常兴奋。
  10. 疼痛的替代疗法:对抗阿片类药物危机→这是一个相当大的问题,我将有一个单独的部分来讨论这个主题。

技术

这个榜单有意思的是,在十大创新中,有五项与技术创新有很强的关联。更具体地说,机器人、人工智能、3D 打印、VR/AR 和遮阳板。

所有这些设备都有一个共同点——它们增强了医生帮助病人的能力。人工智能可以用来直接辅助决策过程。VR/AR 和 3D 打印等其他工具可以用来加快医生的教育过程。

想想上面列举的例子,难怪谷歌和微软等科技巨头会感兴趣。让我们具体看看这些公司计划如何利用这些机会赚钱。现在请注意,虽然我无法涵盖这些公司在医疗保健行业所做的一切,但我希望能让您大致了解一下他们正在开发的产品。

谷歌

从谷歌开始,从他们的 2018 谷歌大会我们知道他们一直在研究一个人工智能系统。人工智能系统基本上是一个从视网膜眼底照片中检测糖尿病视网膜病变的分类器。

这些图像看起来像这样:

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

这是非常有趣的东西,特别是考虑到这些模型可以部署在农村地区,那里没有足够的医生。今年,谷歌已经表明他们的算法可以执行类似甚至更好的视网膜专家,这在我看来是非常惊人的。

微软

虽然微软在医疗保健行业有多种产品,但我想介绍一种我认为特别有趣的产品。

该产品名为“埃莉患者参与和护理管理”,我将简称为埃莉。虽然 Ellie 是由另一家名为“Get Real Health”的公司构建的,但它是使用微软云技术构建的,因此它确实植根于微软。

这款软件产品与谷歌产品的不同之处在于,它不是一款基于人工智能的产品,而更像是一款面向医生的数据管理软件。现在,我不是说这个产品不会有人工智能的成分。我相信在不久的将来,一些人工智能组件将会出现,因为他们正在收集数据。但目前来看,我认为这不是他们的主要卖点。

当您观看“获得真正健康”的产品视频时,您会意识到他们的卖点是远程患者管理、与患者协作以及增加医疗机构的收入。

虽然我不确定数据隐私是如何得到保护的,但这似乎是一个非常有前途的方向。然而,与数据隐私安全相关的医疗保健法律极其复杂,因此我们将看到该产品如何在未来几年生存下去。

类鸦片

当我们想到阿片类药物危机时,我们倾向于认为这完全是美国的问题。但是根据许多不同的消息来源,阿片类药物过量显然是一个全球性的现象。

例如,我们可以看看加拿大政府发布的关于阿片类药物的联邦行动:

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

我们可以看到不列颠哥伦比亚省因使用不同药物而死亡的人数最高。虽然我不知道为什么不列颠哥伦比亚省的死亡率最高,但这个省似乎比看上去的要多。

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

丹麦、挪威和瑞典等欧洲国家似乎也面临着类似的问题。这方面有很多不同的资源,所以对于对这个主题感兴趣的人,我强烈建议他们自己做研究。

关闭

那么哪个创新最让你兴奋呢?你在医疗行业的哪个领域工作?这些创新如何影响你的职业?请在下面留言,我会很感兴趣的。

我个人对医疗行业的 AI 创新感到非常兴奋。如果你们想让我介绍其他话题,请在下面留言。

参考

  1. MIS2018:“十大”医疗创新:2019。(2019).YouTube。检索于 2019 年 7 月 18 日,发自 https://www.youtube.com/watch?v=yVIbfQFlPv0t = 3251s
  2. 克利夫兰诊所公布 2019 年十大医疗创新。(2018).咨询 QD。检索于 2019 年 7 月 18 日,来自https://consult qd . clevelandclinic . org/Cleveland-clinic-unveils-top-10-medical-innovations-for-2019/
  3. 克利夫兰诊所公布 2019 年十大医疗创新。(2018).咨询 QD。检索于 2019 年 7 月 18 日,来自https://consult qd . clevelandclinic . org/Cleveland-clinic-unveils-top-10-medical-innovations-for-2019/

图像

  1. 加拿大不列颠哥伦比亚省。(2019).Flickr。检索于 2019 年 7 月 23 日,来自https://www . Flickr . com/photos/152977080 @ N03/32736012704/in/photostream/
  2. 文件:正常左 eye.jpg 的眼底照片。(2012).Commons.wikimedia.org。检索于 2019 年 7 月 23 日,来自https://commons . wikimedia . org/wiki/File:眼底 _ 照片 _ 正常 _ 左眼. jpg
  3. 文件:克利夫兰诊所 logo.svg —维基共享。(2018).Commons.wikimedia.org。检索于 2019 年 7 月 23 日,来自https://commons . wikimedia . org/wiki/File:Cleveland _ Clinic _ logo . SVG
  4. 克利夫兰诊所公布 2019 年十大医疗创新。(2018).咨询 QD。检索于 2019 年 7 月 23 日,来自https://consult qd . clevelandclinic . org/Cleveland-clinic-universes-top-10-medical-innovations-for-2019/
  5. 推特。(2019).Twitter.com。检索于 2019 年 7 月 23 日,来自https://Twitter . com/Cleveland clinic/status/1055099130001924096
  6. 图片来自 Pixabay罗宾·希金斯
  7. 来自 PexelsVidal Balielo Jr. 照片
  8. 来自 PexelsAlexander Krivitskiy 的照片
  9. 病人右眼的照片显示没有糖尿病视网膜病变的视神经萎缩。沃尔夫拉姆·syndrome.jpg。(2009).Ru.m.wikipedia.org。检索于 2019 年 8 月 4 日,来自https://ru . m . Wikipedia . org/wiki/% D0 % A4 % D0 % D0 % B0 % D0 % B9 % D0 % BB:Photographic _ image _ of _ the _ patient _ right _ eye _ showing _ optic _ atrophy _ without _ diabetic _ retinopathy _ Wolfram _ syndrome . jpg
  10. Pixabay 上的免费图片——微软、微软、Logo、商业。(2019).Pixabay.com。检索于 2019 年 8 月 10 日,来自https://pix abay . com/vectors/Microsoft-ms-logo-business-windows-80658/
  11. 来自 Pexels 的【JESHOOTS.com】T2 的照片

录像

  1. PexelsSuzy Hazelwood 制作的视频
  2. 免费视频-家庭,图片,绘画,儿童。(2019).Pixabay.com。检索于 2019 年 7 月 23 日,来自https://pix abay . com/videos/family-picture-drawing-children-11283/

gif

  1. 狗,我不知道我在做什么。(2019).吉菲。检索于 2019 年 7 月 23 日,来自https://giphy . com/gifs/dog-mechanic-I-have-no-idea-im-do-vxcpgzwep 7 f1 ec
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值