丘吉尔与数据分析

数据分析已经存在有相当长一段时间了。早在二战期间,它便是同盟国胜利的关键因素之一。同盟国数据分析活动著名的例子,包括破译Enigma密码避免德军潜艇攻击、使用喷火式战斗机拍摄的2D图片重构3D图像,帮助英国皇家空军的情报人员分析如何在霸王行动中规避德军V1和V2的攻击。

  从与那个时代中数据分析相关的活动和人物那里学到的经验,对我们具有无比重要的意义。二战同盟国领导人之一、英国首相丘吉尔,很多人会误认为“我只相信我自己篡改的数据”这句话是出自他之口。尽管这句话蕴含了典型的“英国佬式的智慧”,但实际上,这是德国纳粹宣传部门的杜撰,用以讽刺丘吉尔。即使是这样,丘吉尔依旧教给了我们一些与数据分析相关的有用的东西。

  一个好的数据分析模型应该满足应用领域的基本要求,遵循一定的流程。数据驱动分析CRISP-DM体系为此提供了一种结构化的方法路径。CRISP-DM包括了商业理解、数据理解、数据准备、模型设计、模型评估、模型部署等部分。作为1953年诺贝尔文学奖的得主,丘吉尔有很多名言,可以帮助我们更好地理解这个流程。

  具有可操作的方法—旨在解决现实的商业问题

  任何数据分析项目都应该起始于一个商业问题,然后提供解决问题的方案。数据分析不是纯粹的技术、统计或是计算机练习,任何数据分析模型都需要是可操作的。例如我们可以通过一个模型来预测信用卡诈骗或客户流失率这些问题。

  经理和政治家一样是决策者,因此他们需要有像丘吉尔所说的“预言明天、下周、下个月、下一年…将会发生什么的能力,还需要有解释事情为什么没有发生的能力”。换句话说,即使模型没有预测成功,但它拥有一种以易懂的方式解释流程的能力,这一点仍然至关重要。

  为了将模型和业务联系起来,相关各方需要在进行分析寻找解决方案之前,界定和描述问题。例如,尝试去预测10年后或者更长时间后会发生什么,从日常运营的角度来看没有任何意义。正如丘吉尔所言“预测太过遥远也是一种错误,一次只能处理命运链条中一环”。很多在企业中使用的数据分析模型预测范围不超过2-3年。

  理解你掌握的数据

  数据和理解之间有相当大的鸿沟,丘吉尔认为“真正的天才拥有处理不确定、危险、冲突信息的能力”。对大多数的商业问题而言,大数据是一个复杂而且不快捷的解决途径。它要花费大量时间去运作,而且起初甚至看不太清楚前景。商业数据分析专家的职责是去真正地理解数据并且选择最重要的数据源和变量。

  准备数据

  一旦有用数据的全景浮现了,分析专家将会通过整合不同数据源、选择相关变量、清理数据集来为建模做准备。这通常是一个耗时且单调乏味的任务,但必须完成,如那句名言所说“如果你正在经历炼狱,那么请继续走下去”。

  一定记得尽可能多地去借鉴历史信息。当尝试预测未来事件时,使用过去的交易数据是非常有效的,因为大部分的预测力都来自于这类型数据“越是回顾历史,越能预见未来”。

  建模:要精简

  数据分析模型不仅要有效,而且要容易解释。

  模型一定要有统计显著性和预测力:“诚实是件好事,但保证正确性也很重要”。如何度量取决于分析模型类型。例如,在分类模型中(比如客户流失或者欺诈),模型要有好的判别能力。在聚类模型中,同一类应该尽可能保持同质性。

  但是,如果一个人太过注重统计精度,就有得到黑箱模型风险,黑箱模型在多数商业情景中不容易被接受。典型的例子就是神经网络,它的模型效果很好,但是没有提供对数据模式的洞察力。相反,线性回归模型非常容易被理解,但只提供了有限的建模效果。

  可解释性指数据分析模型和它描绘的模式能够很灵活、很容易被理解。对一般的商业使用者而言模型不能太过复杂。例如,在信用卡风险模型或者医学诊断中,需要的是具有可解释性的模型,以提供对内在数据模式的洞察力。“所有伟大的东西都是简单的,很多能被表述成几个简单的词汇”。

  为了获得可解释性,模型需要简洁,它需要找到一个模型效果(如描绘复杂过程的能力)和可解释性的平衡点,让模型如同专家一样有一种以综合方式提供相关内容的能力。任何人不想让模型处于这样一种境地“文件的长度很好地抵御了被读的风险”。

  评估模型

  “无论战略有多漂亮,你也应该偶尔看看结果”换句话说,数据分析模型应该同时具备经济效率和运营效率。

  为了获得经济效率,商业数据分析专家需要把分析中产生的成本考虑进去,这包括收集、预处理、分析数据和模型产品化等成本。软件成本、人力资源流失和硬件投入都应该考虑在内。在项目开始时,要做一个投入产出分析。

  运营效率指在实际应用收集数据、数据预处理、评估模型、满足产量所付出的努力。在现实中,线上评估(如欺诈监测)可能至关重要。另外,运营效率也指监控和后验测试、必要时重新测试模型需要付出的努力。

  持续完善的过程

  分析模型本来就在持续的演进中,“改进是为了完善,经常改进是为了完美”。有时候甚至在第一个模型版本出来之前,商业分析专家就会意识到一些调整和微调是必要的。这是由于商业流程本身就是变化的,所以模型需要适应这种变化,或者由于模型不理想需要微调。“成功是克服一个个失败同时不失去激情的能力”。

  模型部署

  最后,在紧张激烈努力和完整透彻的分析之后,你的提议可以付诸实践了。你的策略和行动再也不会是基于直觉的了,再也不是模糊概念,它变成事实和数据导向型的。正如丘吉尔先生自己做的,你将“欣慰地从原因和理论的翻腾大海中穿行至结果和真理的大地”。

  数据分析:鲜血、牢笼、眼泪和汗水

  成功地领导一个数据分析项目需要遵循一定的过程:界定商业问题来确保你的方法将产生可行的结果;理解和准备好数据;建造一个简约、效果好的模型;能够很容易地不断完善模型。为次,你需要使数据分析具有可操作性、统计上有效且有可解释性、具备经济效率和运营效率。

  如果这样过程看起来很复杂,谁能引导你走向成功?那就是在统计、IT、编程、商业洞察力和沟通交流技能等方面具有全方位的平衡能力的数据科学家。他们在这些方面训练有素,将成为未来商业分析过程的核心。不幸的是,现有的人员中同时具备项目经理、商业分析师、专业程序设计师、和统计等专业知识的人凤毛麟角。

  这是一个数据驱动经济时代,只需要极少的专家就能掌控以前需要整个团队管理的活动,正如丘吉尔所言“在人类战争史上,从来没有一次像这样,以如此少兵力,取得如此大的成就,保护如此多的众生”。

转载于:https://www.cnblogs.com/lu5936/p/6248957.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/417447.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#图片按指定大小分割

/// <summary>/// 切割一张指定的图片/// </summary>/// <param name"source">指定的图片源</param>/// <param name"tileWidth">图块宽度</param>/// <param name"tileHeight">图块高度</param&g…

前端学习(2233):react的子传父数据传递

import React from react; import ReactDOM from react-dom;import ./App.css class ParentCom extends React.Component {constructor(props) {super(props)this.state {childData: null}}render() {return ( <div ><h1 > 子元素传递给父级 { this.state.childDa…

mysql 错误问题_Mysql常见的几个错误问题及解决方法:

Mysql常见的几个错误问题及解决方法&#xff1a;1.问题&#xff1a; mysql DNS反解&#xff1a;skip-name-resolve错误日志有类似警告&#xff1a;点击(此处)折叠或打开120119 16:26:04 [Warning] IP address 192.168.1.10 could not be resolved: Name or service not known12…

idea maven web工程明明添加了maven lib的依赖,但启动web容器时始终报No Class Found?...

idea maven web工程明明添加了maven lib的依赖&#xff0c;但启动web容器时始终报No Class Found? 很久没用idea搭新工程&#xff0c;最近自己想做个东西&#xff0c;冲心搭个web工程&#xff0c;jar包都用maven刷好了&#xff0c;而且也将jar包添加至web module的Dependences…

C#快速排序

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace SortTry{public class QuickSort{/// <summary>/// 排序/// </summary>/// <param name"numbers">待排序数组</param>/// <param name&qu…

mysql identity sql_SQL Server中identity(自增)的用法详解

一、identity的基本用法1.含义identity表示该字段的值会自动更新&#xff0c;不需要我们维护&#xff0c;通常情况下我们不可以直接给identity修饰的字符赋值&#xff0c;否则编译时会报错2.语法列名 数据类型 约束 identity(m,n)m表示的是初始值&#xff0c;n表示的是每次自动…

C# CSV文件读取(带换行单元格中内容处理)

//读取内容StringBuilder sbContent new StringBuilder();using (StreamReader sr new StreamReader(Application.StartupPath "/content.txt")){string line;while ((line sr.ReadLine()) ! null){//双引号开头&#xff0c;中间处理换行if (line.Length > 0 …

上传文件至数据库并下载

在FineReport中&#xff0c;会出现希望直接将txt、excel等文件整个保存在数据库中进行备份&#xff0c;并且希望通过FineReport制作报表将这些文件下载下来的情况。 上传&#xff1a;使用文件控件上传文件&#xff0c;以二进制流保存至数据库字段中&#xff08;字段类型必须是用…

前端学习(2235):react的列表渲染

import React from react; import ReactDOM from react-dom;class Welcome extends React.Component {constructor(props) {super(props)this.state {list: [{title: "第一节课",content: 时间}, {title: "第一节课",content: 时间}, {title: "第三节…

URL参数解析方法

这几天遇到这样一个需求&#xff0c;需要在不同页面之前传递参数&#xff0c;一般我们都是通过URL来传递&#xff0c;如下 window.open(test.html?id123&name456) 然后在新窗口的时候我们再用window.location.search方法获取?后面的参数内容&#xff0c;但是拿到的内容是…

webview代码实例化_WebView常用类和基本方法详解

上一篇文章我们实现了一个简单的WebView&#xff0c;并且能够在程序中的不调用浏览器进行网页的展示和浏览&#xff0c;Android给WebView提供了一些子类&#xff0c;其子类下的方法能够让我们的WebView功能更加完善、性能更加的强大&#xff0c;接下来我们就一起来学习WebView常…

TFS2010 删除工作区(同时删除工作区中所有的目录映射)

删除工作区 tf workspace /delete 工作区名;创建的用户 /server:TFS服务器 例tf workspace /delete WHQ-PC;whq /server:http://192.168.0.12:8080/tfs/defaultcollection注&#xff1a;该操作会同时删除工作区中所有的目录映射&#xff0c;所有项目需要重新映射。

Android pop3与imap方式接收邮件(javamail)

需要下载3个jar包&#xff1a;mail.jar/ activation.jar/ additionnal.jar 1.pop3 /*** 以pop3方式读取邮件&#xff0c;此方法不能读取邮件是否为已读&#xff0c;已经通过测试* */private void getEmail() {List<Map<String, Object>> list new ArrayList…

前端学习(2236):react的列表渲染二

import React from react; import ReactDOM from react-dom;class Welcome extends React.Component {constructor(props) {super(props)this.state {list: [{title: "第一节课",content: 时间}, {title: "第一节课",content: 时间}, {title: "第三节…

win10 radmin远程不了_不用QQ也能电脑远程,win10这隐藏功能太良心了!真后悔发现太晚...

在工作中&#xff0c;我们难免会遇到一些棘手的电脑问题&#xff0c;自己搞定不了&#xff1f;那就找高手帮忙吧&#xff01;假若就在身旁还能帮上忙&#xff0c;但远在天边的又是鞭长莫及&#xff0c;这该如何是好呢&#xff1f;这时候大家都会想到QQ的远程功能。但经常用QQ远…

js 获取url参数(QueryString)

/// <summary>/// 获取url参数/// 王洪岐/// </summary>function QueryString(fieldName) {var urlString document.location.search;if (urlString ! null) {var typeQu fieldName "";var urlEnd urlString.indexOf(typeQu);if (urlEnd ! -1) {var …

【dubbo】消费者Consumer搭建

一.consumer搭建&#xff08;可以web/jar&#xff09; 1.新建Maven项目&#xff0c;groupId&#xff1a;com.dubbo.consumer.demo artifactId:demo projectName:dubboo-consumer-demo 2.新建class &#xff1a;com.dubbo.consumer.demo.DemoAction package com.dubbo.consumer.…

js 获取某iframe中document,浏览器兼容

/// <summary>/// 获取iframe中document&#xff0c;浏览器兼容/// 王洪岐/// id:iframe的ID/// </summary>function getIFrameDOM(id) {return document.getElementById(id).contentDocument || document.frames[id].document; }

c# mysql executenonquery_C#中ExecuteNonQuery()返回值注意点分析

本文实例讲述了C#中ExecuteNonQuery()返回值注意点。对于C#数据库程序设计有一定的借鉴价值。分享给大家供大家参考之用。具体分析如下&#xff1a;首先&#xff0c;在查询某个表中是否有数据的时候&#xff0c;我们通常用ExecuteNonQuery()&#xff0c;并通过判断值是否大于0来…

前端学习(2237):react实现疫情数据

import React from react; import ReactDOM from react-dom; import jsonData from ./code.jsonconsole.log(jsonData) let provinceObj {}/* let provinceObj{"广东省":{confirm:0,suspect:0,heal:0,deal:0}} */ jsonData.data.list.forEach((item, i) > {if (p…