数据专栏

智能大数据搬运工,你想要的我们都有

科技资讯:

科技学院:

科技百科:

科技书籍:

网站大全:

软件大全:

由数据支持的决策驱动 商业智能 。知道如何收集数据并从数据中运用见解的商界领袖可以更好地优化他们的活动,这将直接影响企业的盈利能力。 企业可以访问多个 数据源 ,并可以使用收集的数据构建利基驱动的营销活动,以提高竞争力,并允许其为特定市场提供量身定制的产品和服务。 正如Jasmine Morgan所写:“商业智能对于任何零售企业在寻求增长,稳定和消除风险时都具有强大的优势。 开发更便宜的技术变得更容易获得,并且有更多的人可以掌握处理技术,这也变得越来越便宜。“ 以下是企业可以收集必要数据以提高分析和商业智能的几种方法: 一、 谷歌分析 对于免费工具,如果您知道去哪里查看以及如何正确应用数据,Google Analytics会提供令人难以置信的洞察力。 表面上,企业将能够看到谁在访问他们的网站以及来自哪个来源。 但它比这更深入。 Google跟踪个人搜索历史和模式,这意味着他们了解网络上的人的行为和兴趣。 在Google Analytics中,您可以查看哪些引荐网站或平台是来自哪些人。 这些数据可用于构建内容,可用于吸引更多人访问该网站。 受众洞察也可以应用于获取访问您网站的人的更多详细信息。 ConversionXL提供了一个很好的指导,其中显示了如何配置Google Analytics跟踪并开始接收更详细地显示兴趣和行为的数据。 有必要对您的Google Analytics使用情况进行审核,以确定是否存在可用于您广告系列的数据收集差距。 二、服务器日志 数据分析 网站体验 了解服务器日志数据本质上就是进入“大男孩领域”。如果您的网站上有搜索栏,则实际上可以提取搜索查询并使用该数据来创建人们正在搜索的新产品或服务, 实际上存在。 您也可以将这些关键字应用于您正在运行的任何搜索营销活动。 数据可以通过利用服务器日志中的数据来捕获。 ELK堆栈可用于收集和可视化数据,以便快速做出业务决策。 一些服务器日志可以提供的见解包括: 用户在网站上花费时间的地方。 他们访问网站时的时间戳以及他们停留在某些网页上的时间。 他们拥有的Web体验类型。 就商业智能而言,服务器日志可以发现诸如可能由不执行的内容或影响网站性能的技术问题导致的业务瓶颈等问题。 使用正确的工具,可以定期(每天,每周或每月)分析服务器日志,并且可以进行完整的分析以提取可用于改善网站性能的重要见解。 三、Facebook的受众洞察提供了个人分析 Facebook的平台拥有超过十年的个人数据。他们的受众数据允许营销人员了解他们在网上的行为、特征和兴趣。即使他们的信使技术能够扫描用户信息的内容或倾听他们的对话,然后,广告商可以针对用户提供他们感兴趣的产品或服务的具体广告。 Facebook的受众洞察填补了这些空白,从中收集到的数据可以用来在平台上甚至在平台外寻找相似的受众。数据可以下载在客户和他们的兴趣可以分割。这些数据将准确地告诉营销人员他们的客户的行为,他们在哪里逗留,他们对出版物感兴趣,以及他们参加的活动。营销目标的努力可以是粒状的,这将减少预算浪费和增加。 这些数据源最大的优点是它们可以自由获取。谷歌分析、服务器日志数据和Facebook用户洞察提供了三种不同但非常强大的方式来提高商业智能。因此,这是一个配置方法,以收集和分析数据,定期提高您的网站和业务表现。 英文链接:https://www.smartdatacollective.com/3-data-sources-boost-analytics-bi/ 本文由 翻译小组 翻译发布,英文链接:,转载或内容合作请联系我们,未经允许谢绝转载,本文链接:https://www.afenxi.com/51093.html 。
来源:数据分析网
发布时间:2018-04-28 08:20:00
  早几年前 AI 技术还处于理论阶段的时候,差评君也和大家一样,对 AI 技术充满了各种美好的幻想。 “ 改善生活、改变世界、制霸全宇宙,人类要从站起来变成强起来!”   网上搜到五年前的 AI 海报 ▼   不过到现在要是再提 AI 的话,恐怕大家只能想到那些 “ 抱歉,我听不懂,你能不能换个说法 ” 的人工智障了。   “ 你这个人类又在说些什么批话?” ▼   然而上周,科技圈子又重新因为 AI 技术沸腾了 —— 因为美国研究组织 “ OpenAI ” 做成了一款被称为能取代人类的 AI 引擎。   在看完这款名叫 “ GPT-3 ” 的语义 AI 引擎演示之后,差评君的第一反应是, 我该不是把书读到狗身上了吧 真正可以辅佐人类的 AI 终于来了!   稍微熟悉点科技的差友可能都听说过大名鼎鼎的 “ 图灵测试 ”,也就是通过一连串的问答来看 AI 是不是会露馅。   然而在人与 GPT-3 的问答中,假如不是我说,大家可能会以为对面坐着一个真实的小孩。回答略显稚嫩,但丝毫感觉不到以往 AI 助手们的那股制杖气息。   不过有小伙伴们可能要说了,这些问题也还好啊,我看之前你们介绍的那个谷歌助理虽然偶尔会犯制杖,但好像也能做个八九不离十。   那接下来我们看点儿有难度的, 能自己读题做题的 AI 见过吗 ?   给 GPT-3 一篇高中英语阅读题,GPT-3 轻轻松松就能给你把答案写出来。   什么猿辅导,什么作业帮,统统都是 DD!   我当年学英语的时候有这种神器,那铁定是不会挂科的!( 坏行为,好孩子勿模仿 )   要是嫌高中阅读难度不够的话,我们再来个大学水平的试试。   比方说, 把一串晦涩难懂法律条款扔给 GPT-3,不出五秒就能输出 “ 人话 ” 版本的解释文 。   学法律的小伙伴来评鉴一下 ▼   本硕博连读、头发都学秃掉的法学生们听到之后都哭了。   这还不算完,除了听懂人话、归纳总结之外,GPT-3 甚至还能自行创作。   比如给个场景描述,给个开头,GPT-3 就能写出个杀生丸和鲁鲁修的中二小短文。   我瞬间就想到了小说代写,一日百更,彻夜不眠。。。   非加粗部分为 GPT-3 生成 ▼   如果不满足于短篇的话,还有个老哥拿 GPT-3 生成了一篇 1112 词的鸡汤文。 想要去拜读一番的小伙伴可以戳这个链接 👉 https://adolos.substack.com/p/feeling-unproductive-maybe-you-should   《 工作效率低下?也许你该试着停止焦虑 》▼   内容有点儿长,差评君就不给大家全文翻译了。   总之,这篇文章有开头、有结尾,有立意、有中心。文章引出了 “ 创造性思考 ” 和 “ 过度思考 ” 两种思考模式。   文章还通过 “ 作者 ” 的切身经历,向我们阐述了过度思考的弊端,同时引导我们要进入到创造性思考的正向循环中,为生活创造更多价值。   怎么样,这道阅读理解我能拿五分吗?。。。。。。   总之,这篇 AI 生成的鸡汤文非但没有露出马脚,还直接冲上了 HackerNews ( 知乎硅谷精英版 )的热搜榜首。   看来歪果仁也很吃鸡汤这一套啊......   讨论区里有几位老哥的表现甚至有些夸张: “ 这篇文章振聋发聩,跟前一阵伊森霍克的 TED 演讲有一拼!感谢楼主分享如此深度好文!”   要是伊森霍克知道他的演讲被人和一篇 AI 生成的文章放到一起品评,不知道是该哭还是该笑。 伊森 · 霍克演讲:《 放开手,去创造 》▼   伊森霍克最后是哭是笑差评君不太清楚,因为此时我已经陷入了深深的沉思:   要是 AI 再这么螺旋拐弯牛批下去,我是不是就 不用写稿 失业了。。。   别说,被这个问题困惑的可能不止我,律政精英、公司财务、程序开发,以及公司的油头 UI 设计师都在 GPT-3 的精确打击范围内。。。   比如说有人把 GPT-3 和表格文件对接到了一起。   而我们只需要说类似 “ 房租 3000 押一付三 ” 、 “ 老板上星期我打了一万块钱 ” 一类的白话, GPT-3 就能自动生成一张非常专业的财务报表。   除了报表, GPT-3 还能够只依靠几句话,就帮你撮一个网页出来。   拥有十年工作经验的前端人员,哭了 ▼ “ 一个谷歌的 Logo,一个搜索框,两个灰色的按钮,一个写 ‘ 谷歌搜索 ’,一个写 ‘ 手气不错’。” “ 把搜索框再改宽点儿。”“ 错啦。两个按钮之间要加一点间距,不要粘在一起。”   用一句话生成出个高仿 Ins 的界面也不在话下。   甚至可以通过白话描述,直接用专业的 SQL 语言提取数据库资料。   “ 拉取 25-35 岁员工的薪资详情 ” ▼   震惊,程序员一夜之间化身产品经理,竟向电脑提出如此过分要求!   哦我的上帝啊,这哪儿是什么 AI 啊。这可真是比小说里的小秘书、金手指、随身老爷爷还要神奇啊! 。。。。。。   先说明一下,以上这些神奇功能都是差评君从拿到了 GPT-3 抢鲜体验资格的研究人员那看到的例子。   虽然差评君也申请的 GPT-3 的体验资格,不过目前还在排队等待审核。   等后续差评君搞到了资格,我们再来好好看看 我以后是不是可以拿它代笔了 GPT-3 还能做些什么。   然而光是从这些演示上看,我们已经可以发现这个 GPT-3 实在是强悍的不太像个 AI 了。   所以,什么事 AI 都能干了,大家是不是混吃等死就好了?以后更不用去上学了?   当然不是这样的。   虽然差评君看到有些小伙伴在介绍 GPT-3 的时候用了类似这样的说法( 顺便渲染了一波 AI 威胁论 ),但是实际上,这种猜测难以成立。   因为从本质上来看,GPT-3 属于 AI 理论中的 “ 反应机 ” ( React Machine ),距离替代人类还远得很。   现在大家通常把人工智分成四个层级:反应机( 第一层 )、有限记忆( 第二层 )、具有心智( 第三层 )、自我意识( 第四层 )。   我们现实中最常见的 AI 都位于第一层的反应机。比如我们常用的小爱同学、小度小度,以及这次的 GPT-3 。( GPT-3 里的 PT ,实际代表的就是预先训练 “ Pre-Training ” )   它们通过 “ 喂养 ”人工预先收集的大量样本进行学习训练,让 AI 对某件事情有了认知。之后再根据已有的样本组织反馈逻辑。   这样的 AI 没有自我成长的能力,只能根据已学习的信息进行机械化的反应。   比如说,给 AI 灌输了一堆猫猫的侧面照片, AI 下一次再看到一张新的猫猫侧面照时,大概率就能认出来这是一只猫了。   但要是我这时候给 AI 一张猫猫的正面照,它就很可能把猫猫认成狗。   说白了,反应机做的事情就是照猫画猫。但凡有哪只新猫长得和以前见过的差太多,就只能抓虾了。    但可能有些小伙伴得说了,我们看前面 GPT-3 好像什么都能做,瞬间胜任了无数职业,怎么还会是把猫当成狗的反应机?   差评君,你这说法行不通啊。   非也,就像我前面提到的,反应机的原理是所谓的 “ 照猫画猫 ”。   那只要我们想办法把全天下所有的猫给它看一遍,它不就不会翻车了嘛!    这正是 GPT-3 干的事。其实在它之前还有 GPT-2 ,当时研究人员使用了 100 多亿个参数训练它,得出的结果已经让它站在世界顶尖 AI 的梯队里了。   而这一次他们在训练 GPT-3 的时候,直接把训练参数增加了接近 20 多倍,达到了 1750 亿个参数,素材达到了 45 TB !   根据大家的测试结果看,除非你编一些根本不存在的问题给他,不然 GPT-3 的翻车概率几乎不存在... 问:你怎么波哥个魔哥?答: 你得用波哥来波哥个魔哥 。问:引腰里有多少树?答: 引腰里有三棵树 。问:你知道我问的都是个些什么嘛?答: 嗯,我知道 。   为了能够让 AI 跑的动 1750 亿个参数,赞助商微软直接给 OpenAI 划拨了一台世界排名前五的超级计算机。   据说,光是里面装载的 NVIDIA 显卡和 AI 运算卡就接近上亿人民币。   史无前例的聪明 AI,果然也得用史无前例的真金白银砸出来。   不过饶是如此,哪怕 GPT-3 再聪明,它也只能糅合别人的创造,书写的别人的观点。    脱离了训练使用的样本库,它便无法再输出创意,更没法自我学习 。   所以差评君觉得,GPT-3( 以及之后的 AI )能像现在这样帮助人们高效输出一些解决方案,从某些繁杂琐碎的工作中解脱出来。   但是它们永远无法替代人的思想。   And that's what makes us human。   图片、参考资料    开源中国,“万物就只是 5 万亿个参数”,AI 模型 GPT-3 让人怀疑人生   新智元,GPT-3 真是人工智能「核武器」吗?花 1200 万美元训练却没能通过图灵测试   大数据文摘,GPT-3 有多强?伯克利小哥拿它写“鸡汤”狂涨粉,还成了 Hacker News 最火文章?!   Half Ideas,GPT3 - Will AI replace programmers?   Twitter,#GPT3   部分图片来自网络
来源:博客园
发布时间:2020-08-24 17:39:00
  文/王新喜   来源:热点微评(ID:redianweiping)   早在 8 月 7 日,美国总统特朗普以保护国家安全为由对微信及其母公司腾讯提出指控,禁止美国企业及个人未来与腾讯进行交易,该事件引发了业内热议。   但当前根据彭博社报道,有消息人士称特朗普或将允许美企继续在中国使用微信,其中就包含了允许微信继续上架苹果商店。根据知情人士的说法,原因在于,美国的高级政府官员与一些公司接触,他们发现完全禁止中国腾讯公司旗下的微信应用程序,可能给美国科技、零售、游戏、电信和其他行业造成毁灭性的影响。   微信与苹果不用二选一了。    微信的反制能力   华为、中兴、TikTok 在与美国禁令的博弈中,均对美国欠缺对应的反制能力,但是微信让特朗普政府意识到了,具备基础设施价值的微信不仅是中国用户基本离不开它,甚至很多美国人、美国公司同样离不开微信。   说到底,微信生态所牵涉的各行业利益群体的广度实在太大了。   其实很多人本身是想看看,到底是微信的黏性大还是 iPhone 的需求大,数据说明了一切,早前有调查数据显示,选择微信与选择 iPhone 是 20:1。在多数的调查中,选择微信的用户均是碾压式的超过选择 iPhone 的用户数。   微信的用户黏性在中国要远远大于苹果。天风国际的分析师郭明琪此前分析报告,如果苹果 App Store 在全球范围内下架微信,那么 iPhone 出货量将下滑最高 30%,其他硬件产品将下滑最高 25%。有人按照 2019 年 iPhone 手机出货量 1.96 亿部来计算,苹果可能会损失 5800 万台以上的出货量。   当前苹果市值已经爬到了 2 万亿市值美金的高度,资本市场对苹果的期待非常之高,不希望苹果在任何一款重大产品、任何一个重大决策上存在失误。   尤其当前的苹果在中国市场面临着颇为严峻的竞争态势,华为的手机总销量在今年已经超过了苹果,成为中国市场份额最大的厂商。   苹果的主要组装工厂、核心供应链在中国,苹果和微信之间的博弈,对苹果的产业链牵扯非常大,两者本身是一种相互依存的产业链和生态关系,如果 iPhone 与微信必然要二选一,苹果在中国市场的销量大滑坡将会严重打压苹果的市值。这是特朗普也是库克都不愿看到的。   当然,微信的黏性不仅仅体现在它对中国用户的重要性,也体现在微信本身具有操作系统的属性,它对美国科技、零售巨头具备强大的反制能力。   这种反制能力体现在,它不仅仅影响到苹果 iPhone 的营收,甚至对美国众多依赖微信与中国市场开展业务的美国公司造成了冲击与影响。   从旅游业来看,美国媒体指出,2019 年中国赴美游客为 280 万人次,旅行相关消费高达 313 亿美元,前往美国的 280 万中国游客只占到美国国际游客总数的 3.5%,但他们却占了总消费额的 13.4%。   同时,中国游客在美国停留期间的人均支出要比其他国家高 50% 以上。但是中国游客习惯于使用微信和支付宝消费,越来越多的美国酒店、超市、娱乐场所等均已经支持微信支付。一纸微信禁令,将使得美国的旅游与零售酒旅业务遭受重大打击。   此外,对于那些需要面向中国开展业务的美国公司而言,微信是消费者必不可少的一部分,无论是沟通、社交还是工作,以及购买咖啡到机票,都离不开微信。   有美国创业公司表示,与中国的供应商联系,如果通过电邮沟通,几天都收不到回复,而微信可以立刻联系到。关闭微信,意味着关闭中美之间的个人通信以及切断企业业务往来的沟通,这些禁令将可能伤害到这部分依赖微信沟通的中小企业。此外,从百思买、沃尔玛、星巴克、耐克、麦当劳肯德基等等品牌,几乎所有在中国有业务的美国消费品牌都极度依赖微信的支付交易与生态网络。   在美中贸易全国委员会主席克雷格艾伦看来,微信有点像电力,在中国,你需要在任何地方使用它。   现在微信的市场地位、模式以及应用,其实已经很难替代了。从国内外来看,没有第二款软件与平台能够替代微信担当中美两国个人与个人之间的沟通桥梁作用。   美国的社交软件如 FaceBook 也学习微信,推出小群、一对一聊天等功能,但无论是用户习惯、体验层面,美国华人华侨以及中美企业、个人沟通依然更习惯微信。   从 tiktok 到微信,我们会发现一个规律,一旦做到美国本土的互联网巨头通过模仿跟进策略但依然无法替代的时候,可能就会成为被美国盯上的目标了。   从网上近期的各种调查看,绝大多数中国网民愿意为了微信而放弃 iPhone,但事实上,在人们对微信的表露出充分自信的情况下,微信其实也不能失去苹果。   一方面是 iPhone 用户的付费能力更强,依赖 App Store 生态,腾讯系游戏产品的盈利也更为稳健。iPhone 在中国市场这么多年的发展,有大量的存量用户,强行将微信从 App Store 中隔离,对微信并没有好处。   早前有数据显示,iPhone 手机全球用户超 10 亿,中国有 4 亿。即便用不了微信,但 iPhone 作为一款备用机的价值与用户群体依然大。   此外,假设一下,如果 iPhone 应用生态中熟人社交产品呈现空白,必然会有大量社交玩家涌入,针对 iPhone 推出各种熟人社交产品来抢夺该市场,虽然成功的可能性微乎其微,但微信留下的空白,是很多微信的竞争对手所垂涎的。    让苹果为难:或与特朗普的制造业回归战略相关   iPhone 与微信二选一,是一种双输。当然,这背后,对苹果的伤害更大,因为它有可能会在中国市场被彻底边缘化。特朗普其实也能看到这一点,特朗普打出这张牌其实也是一种与苹果的博弈手段,让苹果在制造业回迁美国的问题上能做出一定的妥协与让步。   其实特朗普自从上任以来,心念念的就是美国制造业回归,而且过去多次表态希望苹果能够将 iPhone 制造搬迁到美国。库克也很无奈,毕竟,美国制造业已经今非昔比,在美国,除了工人薪资成本极为高昂之外,其他的生产设备、元器件成本也颇为高昂,美国已经没有大量熟练的产业工人。   有人算了一笔账,即使把通用电气、通用汽车和福特公司的所有员工加起来,仍然比富士康在中国四家工厂的人数少 20%。加之原材料零件生产配套设施的缺失,也没有完善的上游供应链产业集群——在美国已经没有足够的产业工人与制造业零部件供应链能够支撑 iPhone 全产业链的运转。   iPhone 的零部件是一个标准的全球供应链分工,而组装部分离不开中国。在过去,特朗普多次催促库克将制造业搬回美国,但库克并不理会,在去年 11 月,库克对外重申,苹果绝对不会将 iPhone 生产线迁移至美国本土,因为中国制造不可替代,这算是一种对特朗普的回应。   特朗普对此也想通过关税来说服苹果回迁,表示“不会给苹果 Mac Pro 电脑的中国造零部件减免关税。在美国制造这些零部件,就没有关税!”   在今年 8 月初,特朗普誓言要“将为那些把工作机会从中国带回美国的公司提供税收抵免。”在 10 个月内创造 1000 万个就业机会。   当前大选在即,特朗普发过的誓言要兑现,特朗普突然要制裁微信,背后的一个战略目的或许也是给苹果压力,这本质上可能也是一种与苹果的博弈手段,让苹果在搬迁供应链回美国的问题上能够适当妥协。   那在这样一种极限施压的情况下,苹果会不会就范,被迫把产业链转移?毕竟,在去年,苹果就已经把最新的 Mac Pro 生产线由中国迁回美国,不过相对而言,苹果可能基于压力,再划一小部分产线迁往美国,而苹果当然更想把生产线迁到越南、印度这种人工成本更为便宜的地方。   虽然库克在 iPhone 全球化生产的大原则上不会妥协,然而在将供应链全球化分散方面,其实也早有计划,库克也曾表示,iPhone 是全球化生产的产物,不单单是生产线在中国的事情。   特朗普拿微信牌对苹果的施压,相当于在苹果的 iPhone 供应链分散政策上再推了一把。从制造业转移趋势来看,苹果这种趋势也已经颇为明显。比如 AirPods Pro 开始在越南生产,日前印度媒体《印度时报》报道,苹果公司的一家制造商正在转移六条生产线到印度,期望从印度出口价值约 50 亿美元的苹果手机。   苹果将产能外迁对于中国来说,并非利好消息,因为从产业公地的角度来看,任何一个产业的兴衰,都不是孤立,而是牵一发而动全身。苹果供应链工厂业务代表的是高端制造业,苹果将供应链迁往他国,会让其他发展国家的制造的手机生产与组装、研发能力得到强化,这反过来可能会导致中国手机制造业的竞争力被削弱。   一个趋势是,国内大厂也在往外跑,从国产手机厂商来看,比如我们知道的是,几乎所有的中国手机厂商都在印度设立了工厂。在去年,三星也关闭了在华最后一家工厂。   曾有制造业厂商表示,越南制造对中国制造有直接的竞争关系,尤其是中低端产品。随着中国劳动力成本上升、跨国企业的制造业向其他更具有性价比优势的国家转移或者回迁本国,中国低附加值产业尚未转型成功,如何在全球制造业再次分工之前形成核心优势向上游迁移,也将是国内制造业需要思考的难题。    操作系统与超级 App 的博弈   iPhone 封禁微信背后的本质是操作系统与超级 App 的对决。虽然 iPhone 大概率不会下架微信,但微信离不开 iPhone 系统生态也是事实。   况且,拥有操作系统控制权的一方掌控了 App 生杀予夺的大权,一个十几亿人离不开的社交软件,一个被称之为商业底层的“电力系统”,绝对的生存权却并没有掌控在自己手里,这是一件危险的事情。   虽然很多网友认为,大不了不用 iPhone,买国产手机用 Android 系统玩微信不香吗?但问题是,Android 的控制权也在谷歌手中。   当然我们知道,因为有 AOSP,安卓系统的很多功能全球多国都参与了开发,比如安卓的文件管理系统开源是国内厂商参与做的,开源的东西是没办法禁的,只要遵循 Android 的开源协议与开源机制,其他厂商完全可以在已经开源的 Android 之上发展自己的 Android 系统。这意味着国内的安卓不受谷歌管制。   但也有人谈到极端的情况下,到底会发生什么也不好说,毕竟,Android 的控制权还是在谷歌手里,退一步说,国内超级 App 要扩展海外市场,都需要依赖海外的苹果和谷歌全球应用程序商店。   但这其实也是提了个醒:一方面是做成一个自主操作系统的重要性关乎超级应用的生存问题,一方面是在中美大环境下,如何应对 iPhone 等手机厂商制造业产业链的转移问题。   从操作系统来看,在去年,华为虽然发布了鸿蒙操作系统,但从当前的进展来看,操作系统的路比想象中要艰难。   不过,华为在海外的 HMS 生态在高速增长,华为终端负责人余承东表示,华为 HMS 生态目前仅次于安卓、iOS,全球排名前三。   在目前美国持续打压的外部环境压力之下,华为已经开始考虑更多的自主终端计划,搭载鸿蒙系统的手机正在计划之中。   此外是中国电子近日发布银河麒麟操作系统 V10,该系统可以原生支持安卓应用,将安卓适配软硬件无缝迁移到国产平台上来。充分适应 5G 时代需求,打通了手机、平板电脑、PC 等,实现多端融合。   但需要理性看到,从今天的条件下,无论是做物联网、还是手机端操作系统的难度比先烈们面临的困境有过之而无不及。众所周知,一个操作系统能在各类硬件平台上跑起来不难,难得是一个成熟的应用体系——包括各领域设备上层开发的 App 应用,场景测试等诸多适配。   虽然鸿蒙能用作手机端操作系统,但它取代 Android 的概率微乎其微,毕竟安卓系统近十年来积攒下来的庞大生态,鸿蒙系统想与之对决,要站住脚跟难度尚且巨大,如果去兼容安卓,也涉及到效率与生态的问题。加之从最近华为的来看,光是解决芯片供应这件头等大事,已是夜不能寐了。   未来 5G 时代,微信与鸿蒙操作系统合作可能是一步带动应用生态的好棋,但路到底好不好走,还很难说。   iPhone 与微信二选一的背后,给我们提了个醒。如前所述,一方面,特朗普打出微信牌的背后,某种目的也在于,美国制造业回归政策的推行,需要依赖苹果这张头牌效应,用微信给苹果施压,加快 iPhone 供应链回美国或分散化。   手机制造业只是中国制造业的一环,也是一种信号的彰显。这其实提醒国内,在国内越来越多年轻人宁愿送外卖也不愿进工厂的当下,制造业的人工成本变高了,制造产业对人才的吸引力变弱了,产业升级势在必行,如何避免国内制造业竞争力弱化,如何稳住国内制造业供应链竞争力的难题是客观存在的。   而本土操作系统迟迟无法破局的难题与隐患也开始影响到应用层的产业竞争。在中国,超级 App 正在成为影响人们生活方方方面的举足轻重的产品,正在成为商业基础设施,而这种基础设施的稳定性还需要更稳定的操作系统底层的自主性作保障。   虽然说它的成败未定,但就战略意义上来说,这样的开端对于中国的科技产业至关重要,人们对于中国科技产业爬到食物链的顶端,掌控顶层核心环节的话语权有着莫大的期待。从目前的国际大环境来看,迈出这一步越快越好。
来源:博客园
发布时间:2020-08-24 17:20:00
当年谷歌想鼓励用户在搜索框中输入更多的词语时,他们重新加长了搜索输入框的尺寸,于是用户不知不觉中输入了更多的词语,这使得谷歌提供的搜索结果更精准,由此可见,用户的行为是可以“被设计”的,那么用户行为是如何发生的?该如何设计才能让更多用户按照我们希望的路径尽快完成关键行为转化呢?如何衡量行为设计的好坏呢? 一、用户行为是如何发生的? 场景一:在下载了某个APP后,想要注册登录使用更多的功能,便采取第三方的微信登录,点击之后跳转到了微信,点获取权限,页面跳回了该APP,按理说应该就登录成功了,但是页面还是停留在登录页面,也没有什么错误提示,重试了几次,也不行,果断卸载。 场景二:使用某APP购买商品,点击购买按钮,弹出加载的页面,一直在那儿转啊转,猜大概是网络不好,想要退回到上一页,But,整个页面除了一个加载临时框,其他一片空白,不能进行任何操作,狠狠的点了几下屏幕也没有反应。无奈只能从后台直接关闭,嗯,果断卸载。 场景一和二,用户完成某个任务时都遇到了麻烦,那么为什么一些事情做起来会让人感到困惑?想要解答这个问题,需要了解我们在做一件事时所经历的步骤和机制。这需要从心理学的角度去理解,才能让我们在设计产品时避免出现这样或那样的问题。在《设计心理学》中,唐纳德·诺曼把用户做某件事的过程分为了七个阶段,如下图。 图1:采取行为的七个阶段 -确定任务 当你打开某个APP时,是抱着某个目的去的,可能是购物、听歌、看视频、看新闻、查看好友动态等等。所以首先要明白此次活动的目的,也就是确定任务和目标是什么,有了目标接下来才会产生行为。 -确定意图 为了完成任务,要采取行动,但是完成任务不止一个方案。拿教育培训产品来说,可以直接搜索,也可以在分类入口找,还能在自己关注的明星讲师中选择感兴趣的课程。确定一个方案,是采取行动的第二个阶段:确定意图。 -确定行为顺序 确定了采取哪种意图,便要开始行动,还拿教育培训产品举例,A用户选择了从自己关注的明星讲师中选课。那么A用户的行为轨迹便是:进入我的页面——打开我的关注——进入关注首页——开始挑选——加入我的课程或直接付款——购买——完成。这是第三个阶段:确定行为顺序。 -行为的执行 第四个阶段很简单,确定了顺序去执行就好,即行为的执行。 -感知产品状况和解释产品状况 在执行行为的过程中,每点击/滑动一下,页面就会发生变化,所以在行动的时候用户要感知产品的状况,还会在心理尝试解释产品的状况。上面的A用户点击关注的讲师时,出现加载页面(感知产品的状况),A知道产品在加载数据需要等待(解释产品的状况),没多久A便看到了关注首页(感知),知道这个页面可直达TA需要的课程首页(解释)。 -加以评估 每次行为是不是达到了用户的预期,用户会在心理对行为进行评估,达到了预期便会愉悦,反之则困惑。用户不仅评估每个行为,而且还会对整体情况和结果进行评估(是否完成任务、体验好不好)。 既然知道了采取行动时的步骤和原理,在产品设计中有什么用处呢? 1、在设计用户行为时,可以从七个阶段去考虑,避免出现让用户感到困惑的情况,从而设计出更好的产品; 2、当发现用户在完成某个任务时发生问题,可以将该过程分解,从而找出是哪个阶段出了问题并解决问题。 二、洞察用户需求 设计用户行为 再让我们回归运营思维,这里涉及到背后的一个逻辑:卖货是结果,比如对于教育培训类产品的运营来说,首先要帮助用户尽快建立对产品/课程/服务的信任,用户关注—用户信任—购买课程—推荐/复购。 为了便于理解,我们举个粟子: 假如一个用户想提高 数据分析 能力,暂时没有一套清晰的学习进阶策略,那TA选课购课的路径可能是这样子的: 打开APP—在搜索框输入搜索关键字:数据分析 (可优化环节1)—在系统推荐的课程列表找自己觉得合适的(可优化环节2)—进入课程详情页/明星讲师主页(可优化环节3)—根据内容判断是否合适(可优化环节4)—下单、加购、收藏或离开(结果)。 根据用户的行为路径,运营可优化的关键点有(如下图): 图2:行为路径优化 从上面的案例,我们可以看出,不同的需求洞察会决定我们的运营方向和具体的执行工作。所以正确、有效的需求洞察会让运营工作事半功倍。 三、行为设计的量化和衡量 业务环境的变化带来对运营人素质要求的变化。曾经,运营,尤其是用户运营主要是靠人脉和资源,活动运营靠创意,主要是靠软实力,即不太好量化和衡量的东西。现在,运营人员需要有更强的逻辑能力、数据分析能力。这些是硬实力,可以被考核评估出来,也是可以不断复制应用的。 当我们根据设计心理学,为用户打造更可靠的信任感,帮用户快速感知产品的核心价值,规划出用户在产品中高效的转化路径,通过不同的运营手段让更多的用户尽快完成关键行为,提升转化过程中每一步的产品体验,减少每一环节的用户流失,而这一系列运营活动需要我们更科学细致地提高转化率,对产品中关键路径的转化设置漏斗模型,以确定整个流程的设计是否合理,各步骤是否存在优化的空间等。通过这样,了解用户来到网站的真正目的,为他们提供合理的访问路径或操作流程,如此实现精细化运营。 别再抱怨“我懂这么多道理,也没过好这一生。我懂了那么多逻辑和套路,依然还没有走上人生巅峰。”其实,每多懂一点,就可能对工作有多一些的帮助。运营是一个体系化的工作,由于没有一个标准的体系可以直接套用,所以在运营工作中,我们要注重实战、快速迭代,实验效果,持续优化、总结复盘和形成自己运营方法论。 本文为专栏文章,来自:诸葛IO,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/50544.html 。
来源:数据分析网
发布时间:2018-04-27 13:28:00
  文/巴九灵   来源:吴晓波频道(ID:wuxiaobopd)   中国人民保险公司是开端,而华为、字节跳动不会也不可能是终点。   看起来,特朗普每洋洋洒洒签署一张行政令,都有可能给自己的政府召唤来一张法院传票。   从 2017 年筹资 57 亿美元建美墨边境墙遭遇 16 个州的诉讼,到今年 6 月关于冻结部分工作签证的行政令遭遇美国制造商协会、美国商会和美国零售商协会的一纸状书(包含 52 家科技企业的联名意见书),特朗普任期内签发的行政令众多,也让各州或相关企业忙于和他领头的政府打官司。 特朗普任期内的年均行政令数量明显高于前任  来源:央视新闻整理,截至 8 月 8 日   眼下最受瞩目的,自然是字节跳动即将递给美国政府的新传票。   8 月 23 日,字节跳动宣布,将针对特朗普 8 月 6 日颁布的第一道行政令——禁止受美国司法管辖的任何企业或个人,与 TikTok 母公司字节跳动及其子公司进行任何交易——正式起诉美国政府。   由于前途未卜,字节跳动也在准备一份“关停预案”。   于是,人们一面期待字节跳动公司的下一步动作,另一面又不免认真地推演起这场官司的赢面来。    历史维度参考   求诸历史,人们最期待的是类似福耀玻璃式的大获全胜。   2002 年 4 月 10 日,福耀玻璃状告美国商务部,要求其撤销此前作出向福耀集团出口到美国的汽车维修用前风挡征收 11.8% 的反倾销税的裁定。这场官司持续三年多时间,最后美国国际法院判决驳回商务部的裁定,倾销税率从 11.80% 降低至 0.13%。   值得一提的是,诉讼期间,福耀玻璃在美国的销量不降反升,官司竟成了最好的宣传武器。   案件的胜诉在国内外引发巨大轰动,曹德旺由此被称为“中国入世后反倾销胜诉第一人”。他的金句“卖不卖玻璃是小事,但不能黑白颠倒、是非不分,必须主动地出来积极应诉”多年来被用来鼓励出海的中国企业拿起法律武器维护自身正当权益。 “玻璃大王”曹德旺   然而,并不是每家企业都能成为福耀玻璃去激励后来者,同样,也不是所有先例都能拿来同华为、字节跳动当下的境遇相比。   综合媒体的盘点,中国企业告赢美国政府的几个案例中,都带有明显的时代特征。   1981 年,中国人民保险公司状告美国政府,要求其对美国核潜艇“George Washington”号撞击日本货轮“尼肖丸”致其沉没事件中的中国货物进行赔偿,最后胜诉。起因是当时中国尚未有完整的法律,来支持中美之间的法律互惠,因此导致赔偿无法按照惯例进行。   2002 年福耀玻璃案,时代背景是入世后,美国政府对出口商品到美国的中国企业进行了大面积的反倾销调查。   2009 年中国通领科技集团上诉美国联邦国际贸易委员会后胜诉,起因是知识产权方面的纠纷。   2012 年三一重工在美关联企业罗尔斯状告美国海外投资委员会,背景是美国以“国家安全为名”,不断遏制中国在美进行海外投资。   * 各个案件的具体情况,文末可添加总编微信获得。   从法律不完善,到反倾销、知识产权和海外投资,每一起诉讼背后勾勒出的是中国对外贸易的发展路径,而到了华为和字节跳动,不仅要承接前几代出海方式必然遇到的障碍,同时也要面临互联网时代更复杂的新问题,包括意识形态上不讲理的碾压。   字节跳动和华为既无法像中国人民保险公司那样,通过国内立法的方式来扫清法律障碍,也不可能像福耀玻璃那样,可以列举出各种理由证明自己的销售价格合理。   或许,人人都在等待一个先例作为后世参考,让滞后的法律跟上新时代的步伐。   但照目前看,形势并不乐观。   2019 年 3 月 7 日,华为因 2018 年的美国法律对美国政府发起诉讼,该法律禁止联邦机构与其开展业务。而 2020 年 2 月 18 日美国得克萨斯州一位联邦法官宣布将其驳回。而 2019 年 12 月 5 日华为状告美国联邦通信委员会,如今正在新奥尔良上诉法院等待裁决。   字节跳动能做的,不见得能比华为多多少。   尽管如此,我们还是请了一些法律方面和企业经营方面的专家,针对字节跳动可以采用的法律武器为大家提供更多的信息,中国人民保险公司是开端,而华为、字节跳动不会也不可能是终点,提前多知道点,总是好的。    给字节跳动的一些提醒   1   尽量不要用政治对抗政治   关不羽专栏作家   一般来说,起诉美国政府都是起诉其不正当的行政干预,比较集中的问题是针对美国政府的监管机制,这次字节跳动的起诉原因是程序不正当,而有时候企业也可能会起诉美国政府违宪。   在程序正当的问题上,特别要强调的是,美国政府是三权分立的,司法权和行政权是分开的。因此,如果美国政府实质上有一些违规,或者在司法上不符合司法原理,但行政命令在行政系统的自由裁量权范围以内的,法院在司法上是不干预的。 美国司法部长威廉·巴尔和特朗普   举个例子,如果你要打官司,说美国政府做了一个错误的决定,但只是从政治的角度来说明原因,那么你很有可能会“吃瘪”,可能诉讼就不成立。   因为在美国的三权之中,司法权虽然有很高的权威,但它相对来说是最消极的,要把自己的权力界限划得很清晰,不越权。   因此我认为,字节跳动需要找的切入点,是让司法去审查它的程序正不正当。   2   针对特朗普滥用权力做文章   董毅智律师   这次特朗普的行政令是否逾越了总统权力,这是诉讼双方争议的焦点。因为特朗普这次的行政令的确也损害了美国用户的利益。   目前,字节跳动比较好的法律切入点,一个是《国家紧急经济权力法》的“伯曼修正案”中规定,美国总统实施的制裁范围不能包括信息及信息材料;另一个是特朗普的行政令侵犯了美国宪法赋予的言论自由的权利。   星相大白 “大白话时事”公众号的创建者   美国政府这次强制要求 TikTok 剥离美国业务,就动用了特朗普的另外一个总统权力,也就是引用《国际紧急经济权力法》,来禁止美国企业与 TikTok 母公司进行任何交易,并设立一个期限。   我认为,特朗普这样做,有滥用权力的嫌疑。   据媒体报道,TikTok 有发言人表示,对特朗普和美国政府的起诉依据主要是两项罪名:违反美国宪法和逾越总统权力。   因为《国际紧急经济权力法》是要求美国在遇到“不寻常、非常严重的威胁”的时候,才能被引用的。   其次,《国际紧急经济权力法》也有相关条款明确说明,“美国政府不能以这项法案监管或禁止包括‘个人交流’、电影或其他媒体形式的分享”。   换句话说,特朗普以《国际紧急经济权力法》来禁止 TikTok,实际上侵犯了美国人的言论自由权利。   因此,TikTok 以此来起诉特朗普,是很明智的选择。    给中国企业出海的提醒   关不羽专栏作家   在中国企业起诉美国政府的问题上,我们需要注意的是,不要站在这样一个预设的立场上来理解。   比如 TikTok,首先不能完全认为它是一家中国企业。而在司法上,更底层地说,这只是一家在美国经营的企业起诉美国政府。从理论上来说,美国司法在企业起诉政府的问题上会更偏向“外国企业”一些,有适当的倾斜,以平衡政府的力量。   但司法系统毕竟不是真空的系统,司法不可能完全避免民意和舆论的影响。所以,最后能够形成什么样的平衡,还是取决于这次受理案件的法院和法官。   如果 TikTok 胜诉,并不意味它可以解决目前在美国的困境,企业在行政上的障碍能不能排除,这是另一回事。   在中国企业当中,华为是在美国打官司打得比较成功的企业。要知道,要告赢一家美国本土的公司,争取一个有利结果,实际上是比和美国政府打官司更难的,而在华为与思科的诉讼中,华为与思科达成了和解。   最后,一家中国企业出海到美国经营,遇到各种问题需要通过司法渠道解决,这时候中国企业会产生畏难情绪,对美国法律体系不熟悉,甚至不敢应诉,放弃了自己本该争取的合法权利。   实际上,企业和政府打官司在美国是非常常见的,微软、谷歌等公司都有非常多这样的经历。中国企业需要做的是,合法经营,把法律问题交给专业的律师通过专业的途径解决。   王世渝企投会首席学术委员、富国富民资本董事长   中国企业出海,在海外遇到的问题有不同的两种类型:一种是中国企业向外国出口产品时,会受到反倾销调查,对价格方面进行审查;另一种是中国企业在海外投资并购时会受到调查。   当然,这些问题都可以通过司法途径来解决。   中国企业在海外面对行政诉讼,首先是对该国的法律要非常熟悉,第二要非常熟悉该国的司法体系,第三行政诉讼代价很大,时间很长,成本很高,企业需要对此进行一些评估。   例如,从这次 TikTok 的案件来看,字节跳动是一个实力很强的公司,在美国遭到了这样的待遇,对全球都产生了很大的影响。   其次,这次的案件并不是正常的市场行为或者法律行为。中美之间的冲突,导致很多商业行为会注入一些特殊的意识形态和政治利益,才会出现这样的问题。   作为字节跳动公司来说,它需要评估:为什么要起诉美国政府?美国政府这样的粗暴对待有没有违法的证据?公司是否能得到美国法律的保护?打官司是否花很长时间和很多资金?   因此,中国企业出海到别的国家销售、投资,需要了解不同国家的政治制度、法律、民族宗教、风俗习惯,以及这个国家与中国的关系。   需要特别提醒的一点,在美国做生意,你需要明白,美国是一个联邦制的国家,每个州都有自己的法律和规定,在纽约能做的事,在洛杉矶不一定能做。而且目前在中美关系紧张的情况下,企业家们需要把风险考虑得多一些。
来源:博客园
发布时间:2020-08-24 17:06:00
在过去的二十年中, Python越来越多地用于科学计算和 数据分析 。 今天,Python的主要优势以及它如此受欢迎的主要原因之一是它将科学计算功能带给了许多研究领域和行业中使用的通用语言。 这使得从研究到生产的过渡变得更容易。 IPython是一个Python库 ,最初旨在改进Python提供的默认交互式控制台并使其对科学家友好。 在2011年,IPython首次发布10年后,IPython Notebook被引入。 这个基于Web的IPython接口把代码,文本,数学表达式,内联图,交互式图形,小部件,图形界面以及其他丰富的媒体集成到一个独立的可共享的Web文档中。 该平台为交互式科学计算和 数据分析 提供了理想的门户。 IPython已经成为研究人员,工程师, 数据科学家 ,教师和学生不可或缺的一部分。 几年后,IPython在科学界和工程界获得了不可思议的盛誉。 Notebook开始支持越来越多的Python以外的编程语言。 2014年,IPython开发者宣布了 Jupyter项目 ,该项目旨在改进Notebook的实现并通过设计使其与语言无关。 该项目的名称反映了Notebook支持三种主要科学计算语言的重要性: Julia,Python和R. 今天, Jupyter本身就是一个生态系统 ,具有几种可供选择的Notebook界面( JupyterLab,nteract,Hydrogen等 ),交互式可视化库,与Notebook兼容的创作工具。 Jupyter有自己的会议JupyterCon。 该项目得到了几家公司以及Alfred P. Sloan基金会和Gordon和Betty Moore基金会的资助。 除了Jupyter Notebook 的丰富传统以及它为开发人员提供的更丰富的生态系统之外,还有十个理由让您开始将它用于您的下一个数据科学项目,前提是现在还没有使用它。 所有聚合在一个地方 :Jupyter笔记本是一个基于Web的交互式环境,它将代码,富文本,图像,视频,动画,数学公式,图表,地图,交互式图形和小部件以及图形用户界面组合成一个文档。 易于共享 :笔记本保存为结构化文本文件(JSON格式),这使得它们可以轻松共享。 易于转换 :Jupyter附带了一个特殊的工具nbconvert,可将notebook转换为其他格式,如HTML和PDF。 另一个在线工具nbviewer允许我们直接在浏览器中渲染一个公共可用的笔记本。 独立于语言: Jupyter的架构与语言无关。 客户端和内核之间的解耦使得用任何语言编写内核成为可能。 易于创建内核包装器: Jupyter为可以用Python包装的内核语言提供了一个轻量级接口。 包装内核可以实现可选的方法,特别是代码完成和代码检查。 易于定制: Jupyter界面可用于在Jupyter Notebook(或其他客户端应用程序,如控制台)中创建完全定制的体验。 自定义魔术命令的扩展: 使用自定义魔术命令创建IPython扩展,使交互式计算变得更加简单。 许多第三方扩展和魔术命令都存在,例如,允许在笔记本中直接编写Cython代码的%% cython。 轻松可重复实验: Jupyter笔记本可以帮助您轻松进行高效且可重复的交互式计算实验。 它可以让你保存你的工作的详细记录。 此外,Jupyter Notebook的易用性意味着您不必担心可重复性; 只需在笔记本上做所有的互动工作,将它们置于版本控制之下,并定期提交。 不要忘记将代码重构为独立的可重用组件。 有效的教学和学习工具: Jupyter笔记本不仅是科学研究和数据分析的工具,而且是教学的好工具。 一个例子就是IPython Blocks – 一个让你或你的学生创建彩色块的网格的库。 交互式代码和数据探索: ipywidgets包提供了许多用于交互式浏览代码和数据的通用用户界面控件。 您在阅读中,有什么见解,请评论。 原文作者:Aarthi Kumaraswamy 英文链接:https://hub.packtpub.com/10-reasons-data-scientists-love-jupyter-notebooks/ 本文为专栏文章,来自:数据人网,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/50456.html 。
来源:数据分析网
发布时间:2018-04-27 12:57:00
  陈欧有可能东山再起吗?   文/黎文婕 许伟   编辑/ 陈邓新   来源:锌刻度(ID:znkedu)   2020 年 4 月 21 日这天,拥有 4000 多万粉丝的陈欧公布了获奖名单,他特意挑选了一款专属夏日的防晒产品,以示对粉丝的关怀。   此后 122 天,整整四个月的时间里,他不再发声,彻底“消失”在粉丝的视野之中。常年蝉联微博企业家影响力排行榜第一名的陈欧,似乎正在放弃这块曾助力他登上“2014 年互联网十大风云人物”的主阵地。   遥想彼时,那句“我为自己代言”的经典名言,让陈欧和他身后的聚美优品火爆全网,但其后聚美优品却因质量问题陷入了舆论危机。随之而来的是,宝宝树、街电、刷宝等多次跨圈尝试未见明显起色,光环散尽、跌落神坛,甚至直接被广泛冠以“不务正业”名头的陈欧,走进了漫漫黑夜里......   正如粉丝在其最后一条微博动态下的留言:“以前看《非你莫属》认识到你,惊为天人,真是才貌双全的企业家,好希望以后可以成为你这样的。但也可能是因为太出众的外貌也害到了你,导致有些过于自负的感觉。不过还是希望你可以东山再起,重回大众的视野,我们 80 后很需要你这样的企业家偶像的力量。”   陈欧有可能东山再起吗?在多次退败之间,或许一切都只是未来的序章。    失去网红光环加持的聚美跌下神坛   在陈欧更新最后一条微博一周后,纽约当地时间 4 月 27 日,聚美优品向美国证券交易委员会(SEC)递交“Form15”文件,宣告正式从纽交所退市。   这意味着,聚美优品的私有化终于尘埃落定。在 2016 年曾一度陷入私有化风波的聚美优品,总算如愿以偿。   把时间线拨前,比起 2016 年,这一次的聚美似乎更为果断而高效:从 1 月 12 日,聚美优品买方团提起私有化要约,到 4 月 9 日买方团与聚美优品达成最终收购方案,再到 4 月 27 日正式退市,算得上顺风顺水,一气呵成。   但事实上,从挂牌至退市,这个曾经的“美妆电商第一股”,在不到 6 年时间内,有 4 年都在处理私有化事宜。   而这 4 年间,聚美优品早已从风光无两的电商玩家,黯然退出大众视野。   回首聚美优品的光鲜时期,这个电商品牌之所以能在最初火极一时,很大程度上都依赖于 CEO 陈欧的特立独行——彼时,作为“史上最年轻上市公司 CEO“,陈欧可谓意气风发,与大众印象中神秘的 CEO 形象不同,以一句洗脑的”我是陈欧,聚美优品总裁,我为自己代言”,陈欧迅速将自己打造高调的网络红人,并使众多女性消费者成为其拥趸。   数据证明,这的确让聚光灯汇聚在了这个垂直电商新秀——其招股书显示:聚美优品 2011 年收入 2180 万美元,2012 年直接增长至 2.332 亿美元,2013 年更是来到了 4.83 亿美元。   频繁出现在《非你莫属》、《快乐女生》、《百变大咖秀》等综艺节目、与各路好友在微博高调互动的陈欧,收获了千万粉丝,将聚美优品的广告营销做得风生水起,甚至算得上第一批吸粉带货的网红。   于是,聚美优品的公司业绩也紧跟着扶摇直上。很快,创立仅四年的聚美优品成功赴美上市,并持续得到资本市场关注。   然而,不久之后,聚美优品屡次被曝出“售假”问题,陈欧曾在荧幕上不断作出的承诺“买正品化妆品,上聚美优品”一时间化为泡影。   消费者们迅速“用脚投票”,到 2014 年 12 月,上市仅 7 个月的聚美优品股价已不足 13 美元,市值缩水了一半。   尽管后来的聚美优品砍掉了部分第三方业务,转为自营,同时开启了全球直采的“极速免税店”业务,并持续至今,用户们却早已流失,且难以挽回。而 2016 年,陈欧的第一次私有化尝试失利,则进一步让聚美遭遇危机,业绩一蹶不振。   在电商业务持续低迷的情况下,当初的“代言人”陈欧的网红光环也逐渐暗淡,甚至鲜少再出现在公众视野,已然一副“不务正业”之态,做影视剧、进军智能家居、投资共享充电宝,涉足的领域与聚美优品的主营业务风马牛不相及。   而靠着陈欧的流量营销出道的聚美,成也萧何,败也萧何——失去了其流量营销加持的聚美,也跌下了“神坛”。   从 2016 年到 2018 年,聚美优品营收从 63 亿元跌至 43 亿元元,活跃用户从 1540 万跌到 1070 万,订单数从 6150 万下降至 3800 万,与聚美优品合作的供应商和第三方商家数量从 2244 家降低至 1341 家。   根据易观咨询的数据,2019 年第三季度,聚美优品在国内网络零售 B2C 的市场份额只剩 0.1%。曾经的电商明星如今已毫无存在感,市值也一直停留在 2 亿美元左右。    退居幕后的陈欧,在下一盘大棋?   聚美是陈欧创业的第一站。   外界曾有评论称,陈欧对于美妆行业赛道的判断,至少领先了同行业五至六年时间。这种对行业极具前瞻性的判断,不仅表现在其他人还在宣传品牌和产品时,他以营销自己出圈,更在于,他很早就看到了企业多元化发展的必由之路。   “时代变了,行业的变化迫使整个垂直电商市场进入痛苦转型。而聚美已经经历 8 年成长,未来的 8 年,它将如何生长生存,而不仅仅是成为市值更高的公司”。在陈欧看来,投资是聚美平台流量和品牌巩固的重要环节。   具体来看,最早从 2015 年起,陈欧就已经开始了暗地里的多元化布局。而在此之前的 2014 年,聚美刚刚经历在美上市、股价接连暴涨的高光时刻,陈欧确实也有十足底气做一些额外的投资:2015 年斥资 3.72 亿投资母婴育儿社区宝宝树;2016 年看准 IP 这个热点投资 2.4 亿元将小说《温暖的弦》拍摄为电视剧;2017 年瞄准共享充电宝业务收购共享充电宝企业街电。   不得不提的是,陈欧对未来的发展规划和具体行动,最开始并没有得到投资人的理解。作为聚美股东之一,恒润投资曾发布公开信,指责陈欧没有履行对股东们的承诺和职责,反而将资金用于投资影视、充电宝等非核心业务。   这种不理解在聚美陷入风雨飘摇之际达到了顶峰,甚至有业内人士频频发声,称其不顾聚美将重心放到其他业务上是“不务正业”。毕竟就连王思聪也对其收购街电的举动表示不看好,“共享充电宝要是能成我吃翔,立帖为证。”   直到 2020 年 4 月 15 日,聚美优品完成私有化。退市的聚美优品不再受制于资本市场,而陈欧的事业版图,也由单一的美妆电商变成了一家涉及电商、影视、共享充电、短视频等多个领域,带有“投资+孵化”功能的聚美集团。   至此,之前被质疑的种种,也有了答案。   不过,这些被陈欧报以厚望的新业务也存在不少发展问题。比如,眼下市场份额占比第一的街电。其主要竞争对手怪兽充电等再次拿到数额不菲的重量级融资,在这个行业门槛并不高的领域,可能会面临更加激烈的低价竞争格局。   据此来看,到底能不能如陈欧预想的那样反哺于聚美,还是未知数。    陈欧的新棋子,能否搭起聚美的新棋局?   尽管陈欧在外界眼里一度“不务正业”,但眼下聚美优品宣布私有化,重回公众视野,或许正是陈欧靠着此前的“副业”赢得的新机遇。   以 2020 年终于完成私有化为界限,陈欧和聚美优品都正寻找垂直电商机会不再后,可以卷土重来的新机会。   尽管其此前的多次尝试,无论是影视剧、共享充电宝还是短视频,在各自的细分领域内都算不上出色,但不可否认,陈欧对风口的捕捉保持着高度敏锐。   或许,聚美的野心从来不止于某个细分赛道,而是实现真正的集团化发展。而这,其实也是阿里、腾讯、美团、字节跳动、百度等互联网巨头们的共同选择。   先后在电商、影视、共享充电、短视频等领域孵化出一系列企业的聚美集团,试图集“投资+孵化”于一体。而其此前的投资,也正陆续开花结果:一方面,以街电为首的“三电一兽”已实现盈利;陈欧的“网红”布局也浮出水面。在A股上市公司三五互联收购拥有 700 多个网红 IP 和 5 亿粉丝的 MCN 公司上海婉锐的案子中,收购标的背后也出现了陈欧的身影。   “聚美优品的确只能走集团化战略了,不然其难以翻身,因为其本身在资本市场缺乏吸引力,亟需讲一个新鲜的故事。”A股职业投资者李元海告诉锌刻度。   但某互联网金融公司执行董事张齐云认为,聚美优品想走集团多元化的道路,没有那么容易,“我觉得聚美优品起步晚了,并且本身核心平台也日渐式微,做集团需要围绕核心产品或核心产业去发展,聚美优品所谓的集团化更像是一种加总,协同效应并不明显。”   “集团化本身就是互联网企业在自身起家的产品或平台做到一定规模和市场话语权后,去布局上下游产业链或者做延伸渗透,实现客户资源的整合和多次渗透,本身是一种深挖客户价值,达到企业利润最大化的正常发展道路。”张齐云指出,其难点在于其核心体系平台的客户粘性和忠诚度,以及对平台商家的话语权。   “这些方面有竞争力,再进行各个业务板块有机整合,才能达到预期的效果,否则仅仅是加总,一盘散沙。”张齐云称。   所以,或许在过去的 8 年间,陈欧在垂直电商之外,寻觅到了共享充电宝、影视剧和短视频等多枚棋子,并渴望在实现了私有化的 2020 年,重新下一手好棋。但屡屡受挫的陈欧,到底能带领聚美驶向何方,还需时间给出答案。
来源:博客园
发布时间:2020-08-24 16:50:00
一面是移动互联网商业环境的基本成熟,特别是互联网产品形态、开发、设计越来越标准和规范;一面又是AI、区块链、IOT、VR等新技术在不断更迭出新。一个是看得到的现在,一个是看不清的未来,接下来会衍生出什么样的产品形态?同时会对互联网 产品经理 这一岗位提出什么样的挑战?各位PM,你焦虑过吗? 一、从产品经理到产品人 过去很多人说互联网产品经理没有门槛,有想法、对产品使用体验留点心就可以入门,特别是移动互联网兴起的那几年,行业内人才空缺大,凭着对产品的热爱和薪水红利很多人就扎进来了。 恩,发展到现在,这个行业也开始洗牌,各行业领域都出现了成熟的商业模式,他们制定了规则、定义了标准,特别是在产品设计层,移动端、web端的设计规范、交互规范也都有了些行业标准和用户习惯。这时候,高级和初级的差别也慢慢开始体现了。 对于产品经理这个角色,能获得与你协作的同事的认可,那你就是合格的产品经理;能获得用户和老板的认可,那你是合格的产品人。前者可能有沟通能力、项目管理能力、PRD文档输出能力、了解各协同角色的工作内容(比如有人说产品要懂点技术、产品要懂点设计,其实吧都是加分项,专业的事交给专业的人,保持谦虚),恩,如果你是个妹纸还长得漂亮没准前三项可以忽略。后者更多的是用户需求洞察、解决问题的能力以及商业思维。 产品经理的高阶我觉得是“产品人”,综合来说,他依然包含两部分:基本素养与商业思维。 二、产品经理的基本素养 1、需求洞察 一个老生长谈的例子,你的同事问你要一个杯子,你可以给他个杯子,但你发现其实他是想喝水,而且你知道他一般喝热水,那你最好是直接给他一杯热水;在汽车没发明之前,你问用户对交通工具的需求是什么,他会说更快的马车,他不知道可以有汽车这种东西。 其实从这两个例子来看,我们知道了什么是需求,也就是用户真正想要的是什么?前者是水,后者是速度。这两个例子也包含了两类需求,一个是用户知道要什么,一个是用户不知道要什么,甚至很多时候用户不知道自己的需求,而你提供的不是他要的那个产品,而是一个整体解决方案。当你提供了一个解决方案的时候他才意识到,哦,原来还可以这样。 2、产品设计能力 对于很多产品经理,需求可能来自多方,企业内部、用户、老板等。什么是产品设计能力,我们可以广义的把他定义为:用户体验设计能力。 在百科上,将用户体验(Uer Experience; UE/UX)定义为:“人们对于使用或期望使用的产品、系统或服务的认知印象和回应”。当然,广义的讲,对于一个互联网产品,用户体验包含三大维度: 模式体验设计 可以理解为你提供的整体解决方案。举个例子,对于淘宝,打破了时间、空间的限制,比如让海南的产品能直接卖到黑龙江,用户可以足不出户24小时浏览商品和下单,但如果现在的淘宝依然是通过物流点自取,而且可能一个商品要等一个月,那可能你也不会觉得好,再比如滴滴,他有效的把私家车闲置资源给运营起来了,但如果你依然需要挥手拦着,那可能也不是很好。他需要你去设计一个各环节整体体验都比较好的解决方案。 当然,提供什么样的模式体验跟市场环境有关,比如支付、金融、物流、云计算的发展,你要升级的是就是服务客户的模式,即你通过什么样的模式解决用户的什么样的问题。你可以通过第三方实现,也可以自己研发,比如满足用户线上支付(不是去银行汇款)、能够送货上门(买个日常用品不需要去物流点提货)、能够线上咨询(不是发短信或写信)等这样的功能已经是最基础的。 所以,在设计产品前先设计模式体验,会涉及哪些角色,通过什么样的流程解决用户需求,并结合当下的用户生活场景和方式,特别是技术。 交互体验设计 当你的商业模式需要一款互联网产品承载,那最专业的就是你的产品设计,他包括界面信息结构设计、交互设计、用户行为路径设计等。 视觉体验设计 视觉其实也可以广义的理解为交互的一种方式,通俗点说,就是“看脸”,产品和用户的第一面,不是你的交互怎么样,不是你的模式设计如何,而是视觉先行,他都是用户对你的一个感知反馈。其实用户体验综合来看,所有的体验都是“用户感知”。很多产品经理不注重审美,属纯功能型、逻辑型产品经理,那怎么能做出让用户眼前一亮的产品。虽然通常这个岗位有专业的人,但至少得有点基本素质。 3、数据意识 数据意识逐渐成为产品经理的基本素质,和过去两年相比,我们看到越来越多的产品经理开始强化这一技能。通过产品获取数据,分析数据迭代产品、理解用户需求和动机,优秀的产品人已经开始从为了获取数据的角度去反向设计产品(当然,是为了提供更好的服务),恩,比较敏感,不做过多展开。很多时候你会发现,当有了数据以后你会找到很多业务模式,只要有数据,只要有用户就有机会。 认知比技能更重要。数据意识包括基于数据的思维方式,以及对数据的分析、解读和营销应用能力,从方法到实践。 三、商业思维 产品承载着一家公司的商业模式。就现在的互联网环境来看,在电商、出行、O2O、教育、SaaS、金融、社交等大领域和垂直领域都有成熟的产品形态和变现策略。不像过去,很多商业模式涌现,产品完全是创新,界面、交互、变现手段都需要我们去规范去尝试。但现在,比如聊天功能,用户习惯基本已经养成,如果不是什么创新型业务,那产品层面最好也别有什么创新,否则很危险,所以,现阶段产品设计的门槛已经很低了,难的是背后的商业逻辑设计。特别是对于一些新兴领域。 比如区块链领域。区块链这一底层技术会让用户、产品以及公司的运营模式带来什么样的变化?改变了当前互联网中的哪些环节?Token的经济模型能让生产关系、产品与用户的关系带来哪些变革?最后可能会衍生出什么样的产品形态等等这些思考,可能将成为高阶产品经理最核心的能力。 当然,还是要鼓励创新。创新能力才是保证不会被抄袭和超越的大前提,无论是商业模式还是产品设计。 商业环境瞬息万变,特别是在技术驱动发展的时代浪潮下,过去十年的路可能现在只需要两三年,无论是高阶还是初级,产品经理的基本素质不会改变,变的是对新事物的快速学习能力,以及提供一个有效解决方案的能力。 本文来自微信公众号“诸葛io数据教练”(ID:zhugeio1),作者:韩重明,诸葛io高级数据驱动顾问 本文为专栏文章,来自:诸葛IO,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/50840.html 。
来源:数据分析网
发布时间:2018-04-26 13:59:00
  鱼羊发自凹非寺   量子位报道公众号 QbitAI   自打有了 deepfake,再也不敢相信「眼见为实」了。   要说把朱茵换脸成杨幂,把海王换脸成徐锦江,大家还可以一笑而过。       △ 图源:微博用户@慢三与偏见   可若是公众人物被 deepfake 了什么不该说的话、不该做的事,就让人细思极恐了。   为了防止世界被破坏,为了维护世界的和平,(狗头)现在,阿里安全图灵实验室也加入了“围剿”deepfake 的队列: 打造 deepfake 检测算法 S-MIL ,多人现场视频,只要其中 1 人被换脸,就能精准识别。    基于多实例学习的 deepfake 检测方法   魔高一尺,道高一丈。deepfake 和 deepfake 检测技术的较量其实早已展开。   不过,此前存在的 deepfake 检测方法主要分为两类:帧级检测和视频级检测。   基于帧级的方法需要高成本的帧级别标注,在转化到视频级任务时,也需要设计巧妙的融合方法才能较好地将帧级预测转化为视频级预测。简单的平均值或者取最大值极易导致漏检或误检。   而基于视频级别的检测方法,比如 LSTM 等,在 deepfake 视频检测时,过多专注于时序建模,导致 deepfake 视频的检测效果受到了一定的限制。    △ 部分 deepfake 攻击,四个人中只有一人被换脸   为了解决这些问题,阿里安全图灵实验室的研究人员们提出了基于多实例学习的 Sharp-MIL(S-MIL)方法,只需视频级别的标注,就能对 deepfake 作品进行检测。   核心思想是,只要视频中有一张人脸被篡改,那么该视频就被定义为 deepfake 视频。这就和多实例学习的思想相吻合。   在多实例学习中,一个包由多个实例组成,只要其中有一个实例是正类,那么该包就是正类的,否则就是负类。   S-MIL 就将人脸和输入视频分别当作多实例学习里的实例和包进行检测。   并且,通过将多个实例的聚合由输出层提前到特征层,一方面使得聚合更加灵活,另一方面也利用了伪造检测的目标函数直接指导实例级深度表征的学习,来缓解传统多实例学习面临的梯度消失难题。   具体而言,算法主要由三个关键部分组成。   首先,对输入视频中的采样帧进行人脸检测,并将提取的人脸喂给 CNN,以获取特征作为实例。   在实例设计上,与传统多实例学习的设定一样,实例与实例间是相互独立的。   但由于 deepfake 是单帧篡改的,导致同一人脸在相邻帧上会有一些抖动,就像这样:   为此,研究人员设计了时空实例,用来刻画帧间一致性,用于辅助 deepfake 检测。   具体而言,使用文本分类里常用的1-d 卷积,使用不同大小的核对输入的人脸序列从多视角上进行编码,以得到时空实例,用于最终检测。   也就是说,第二步,是将编码后的时空实例提取出来,形成时间核大小不同的时空包。这些包被一起用来表示一段视频。   最后,对这些包进行S-MIL,算出所有包的 fake 分数,这样,就能得到整个视频的最终 fake 分数,从而判断视频到底是不是 deepfake。   S-MIL 定义如下:   其中,pi 和p(i)^(j)分别是第i个包及其包里的第j个实例的正类概率;M为包里的实例数;w是网络参数;h(i)^(j)是包i里的实例j对应的特征。   由于现有的带帧标签的数据集中,同一视频中真假人脸混杂的样本较少,研究人员还构建了一个部分攻击数据集 FFPMS 。   FFPMS 共包含 14000 帧,包括 4 种类型的造假视频(DF、F2F、FS、NT)和原始视频,既有帧级标签,也包含视频级标签。    检测效果达到 SOTA   研究人员在 DFDC、Celeb 和 FFPMS 数据集上对S-MIL 进行了评估。   实验结果表明,假脸的权重比较高,说明该方法在仅需视频级别标签的情况下,可以很好地定位到假脸,具有一定的可解释性:   并且,该方法在视频检测上能到达到 state-of-the-art 的效果。    团队介绍   据阿里安全图灵实验室资深算法专家华棠介绍,截止目前,阿里已经将该检测技术使用在内容安全场景中,后续也会在直播场景中进行布局。   阿里安全成立于 2005 年,目标是面向阿里巴巴经济体建立全面的网络安全、业务安全、数据安全与平台治理的管理机制,利用大数据构建强大的实时风险防御能力。   目前所涵盖的业务范畴既包括最底层的设备层、网关层以及流量层的网络威胁防御,也包括了业务层的安全治理,例如账号安全、假货与欺诈识别、内容合规、数据及信息保护、营商环境治理等等。同时,安全中台能力还全面输出给阿里巴巴经济体内的跨境公司以及生态伙伴。   阿里安全图灵实验室是阿里安全旗下的机器学习研发团队,从事安全与风险方面的 AI 系统研发,核心技术包括计算机视觉、自然语言处理、生物特征识别、AI 安全、图计算以及异常检测和分析等。    传送门   论文地址: https://arxiv.org/abs/2008.04585
来源:博客园
发布时间:2020-08-24 16:37:00
有过那么几次,刚入门或想转行的朋友咨询,让我推荐 统计学 的入门图书。觉得还不错的几本,稍做整理推荐给大家,供这些人员参考学习。 1、统计学(第N版) 推荐理由 :本书作者中国人民大学贾俊平 教授,目前是第6版,国内统计学方面的经典教材,从统计应用、基础概念、数据收集、图表展示到各种统计学方法介绍,可以系统的学习统计学基础。 作者简介 :贾俊平,何晓群,金勇进 著 贾俊平,中国人民大学统计学院副教授。研究方向:统计方法在经济各领域的应用,统计教学方式和方法。主要著作有:《统计学》、《描述统计》、《工商管理统计》、《市场调查与分析》等。主持研究的“非统计学专业本科公共基础课——统计学教学改革”项目获2001年教学成果二等奖、2001年北京市教学成果一等奖。2001年荣获北京市经济技术创新标兵称号,2003年荣获宝钢出色教师奖等。 2、深入浅出统计学[Head First Statistics] 推荐理由 :具有深入浅出系列的一贯特色,用符合直觉的理解方式,让统计学的理论学习既有趣又自然。图书用充满互动性的生活情景,教给你有关统计学的基础知识,很厚的一本图书,花点时间就能很快看完,看着很轻松,让你掌握统计学的概念同时,更会告诉你如何将统计理论应用到日常生活中。 作者简介 :[美]格里菲思(Dawn Griffiths) 著;李芳译 道恩·格里菲思(Dawn Griffiths)以数学家的身份在一所英国大学开始读书生活,曾获得数学专业一级荣誉学位。可是,当她意识到人们在聚会上不愿意与她谈话时,就拒绝了一份研究极为罕见的微分方程的博士奖学金,转而从事软件开发事业。目前她将IT咨询、写作及数学集于一身。 3、赤裸裸的统计学 推荐理由 :本书用非常朴实的生活案例、直观的图表、生动诙谐的语言风格,给你讲解统计学知识,让我们知道权威期刊、媒体新闻、民意调研中公布的数字从何而来,轻松掌握判断这些统计数字“是否在撒谎”的秘籍。作者还告诉我们为什么不要买彩票,为什么你家附近的商场会知道你怀孕的消息并给你寄来纸尿裤的优惠券等等。 作者简介 :[美] 惠伦著作曹槟译者 著;曹槟 译 查尔斯惠伦(Charles Wheelan),于1997~2002年间担任《经济学人》杂志驻美国中西部地区的记者,还为《芝加哥部报》、《纽约时报》和《华尔街日报》撰稿,现任芝加哥公共电台WBEZ节目财经记者。其所著《赤裸裸的经济学》已由中信出版社于2010年出版。 4、漫画统计学 推荐理由 :这真的是一本统计学图书,不是漫画书,当你看到这图书的时候,估计你也会石化,日本人居然可以把统计学写成这个样子,用有趣的故事情节、时尚的漫画人物造型、细致的内容讲解统计学,你还有什么理由说统计学很难、看不懂。 作者简介 :[日] 高桥信 陈刚译 高桥信,1972年生于日本新泻县。毕业于日本九州艺术工科大学(现已更名为日本九州大学),专攻艺术工科,研究科学信息传输。曾担任资料分析业务和研讨会讲师,现为作家。 著作有《漫画统计学之回归分析》、《漫画统计学之因子分析》、《用Excel学回归分析》(以上由欧姆社出版)《即刻读懂生存时间分析》、《文科生也可以理解的多变量解析》(以上由东京图书出版)、合著有《AHP和交叉分析》(由现代数学社出版)等等。 5、数理统计学简史 推荐理由 :假如你还想了解统计学的历史,可以看看这本图书,本书论述了自17世纪迄今数理统计学发展的简要历史,给你搜罗了很多数理统计学发展史上有意思的故事。例如:Karl pearson算错了F分布的自由度,被Ronald Fisher指出后与其大吵一场并终身不和,当年搞贝叶斯统计的学者是多么受人歧视等等 作者简介 :陈希孺 陈希孺,1934年出生于湖南长沙县(今望城县),1956年毕业于武汉大学数学系,同年到中科院数学所工作,1961年调中国科技大学,2005年8月8日于北京逝世。 陈希孺从事数理统计学的基础理论研究工作,在参数估计、非参数统计、线性回归和统计大样本理论方面有一些成果,在国内外有一定的影响,其成果曾获国家和中科院的自然科学奖。 本文为 数据分析网 原创文章,转载或内容合作请联系我们,未经允许谢绝转载,本文链接:https://www.afenxi.com/50821.html 。
来源:数据分析网
发布时间:2018-04-25 22:56:00
  浩楠晓查发自凹非寺   量子位报道公众号 QbitAI   你也有被这段游戏试玩视频刷屏吗?   13 分钟、国产团队出品、B站上线不到 24 小时,播放量已经破千万,迅速火爆全网。   这就是来自国内游戏团队游戏科学(Game Science)开发的 3A 大作《黑神话:悟空》。   影响之大,还进一步扩散到海外,甚至连国外知名游戏媒体 IGN ,都在 Twitter 上转发这款游戏的消息,反响可谓相当强烈。   这次,国产游戏真的 出圈 了。    国内情怀杀,终于文化输出了   这款游戏融合了大量《西游记》小说和电视剧的元素,开场就是一段“老猴子”的回忆:   之后就进入了 实机演示 的场景。   那些《西游记》里的场景,比如孙悟空从耳朵里抽出一个针,变成金箍棒:   用 72 变的技能变成蜜蜂潜行:   被念紧箍咒痛到跪在地上:   “如意金箍棒”5 个烫金大字登场:   以及最后 86 版《西游记》电视剧主题曲响起:   这些要素无不在唤起每个人的童年记忆。   当我们在被这一串串神话元素感动得稀里哗啦的时候,国外玩家还不知道发生了什么,他们还仅仅是在感叹游戏性和画面感。   连 IGN 的编辑其实也没有看懂游戏的内涵。对于游戏的发售时间,官方回应不会需要 500 年,IGN 原封不动地翻译了这段话,而看过西游记的人,都应该知道其中的内涵。   为了帮助他们理解这款游戏,已经有国内玩家去 Reddit 论坛、Twitter 上进行科普:   孙悟空耳朵里藏的针就是金箍棒,重达 13500 斤,原来被大禹放在东海龙宫镇海……   真是好一波文化输出啊。   有网友表示,如果这款游戏发售到国外,那就是 最好的文化输出机会 。   毕竟大家的欧洲历史知识都是靠育碧的《刺客信条》恶补的(狗头)。   还有英文好的网友,已经开始指出预告片里翻译不恰当的地方,还有知名大v自告奋勇地要为游戏翻译各语种字幕。    “世界水准的 3A 大作”   这 13 分钟的实机测试,让网友惊叹“在有生之年能看到世界水准的 3A 大作!”。   其实,这并不是第一款国产沉浸式动作 RPG 游戏。   但之所以引起热烈反响,是因为游戏精良的画面特效、酷炫的动作设计、拳拳到肉的打击感。   以及和对《西游记》、孙悟空传统文化 IP 的认真且创新的解读。   实机测试放出了一个完成的小关卡通关过程,故事定位在被烧毁的观音禅院,原型是《西游记》中,那个贪图唐僧袈裟的 270 岁金池长老的主场。   视频中,玩家操作的是一个外形神似孙悟空的人物,为什么是“外形神似”?这里先卖个关子。   除了物理攻击,玩家角色拥有 4 个独立技能。这 4 个技能都来自西游记,比如七十二变,视频开场那个金蝉子就是玩家角色变身的,并且这个技能 CD 并不短。   还有定身咒,这也是孙大圣常用的技能。   西游记中,这招通常用作潜行辅助,但在《悟空》这款游戏中,定身咒是关键时刻冻住 boss 保命的神技。   最有创意的是,游戏角色的格挡动作,并不是举起武器,而是直接使出孙悟空的“金刚不坏”,原地化作金身,硬抗伤害。   还有孙悟空的撒豆成兵技能,拔下毫毛,一吹就变成了猴子猴孙。   每击杀一个小 boss,获得了相应武器道具以后,角色就吸收了这个 boss 的技能后面的挑战中可以使用。   在叙事方面,实机测试视频的关卡末尾,给了玩家极大的震动和惊喜。   就在玩家要一击斩杀 boss 时,突然被一件兵器挡下,随着镜头上移,逐渐出现“如意金箍棒”几个字,随后, 孙大圣本尊出现在镜头里 。   这向玩家暗示了,《悟空》的故事不是简单的西游 IP 改编,故事里有更加宏大的背景和引人入胜的角色关系。   而且,这样的情节设定,也让玩家的角色成长发展体验更好。   其他方面,悟空腾云驾雾、独面四大天王等情景,也十分符合人们对西游的认知和想象。   不少网友表示,看到“如意金箍棒”时,几乎热泪盈眶了。    虚幻引擎 4 打造   《黑神话:悟空》是用大名鼎鼎的 虚幻引擎4 打造。   虽然虚幻引擎 4 支持多媒体编程接口 DX11、物理引擎 PhysX、APEX 和 NVIDIA 3D 技术,可以打造非常逼真的画面。   像任天堂这样的“大玩家”也基于此开发过多款游戏。   但按照团队成员@戴巍在知乎上的回答,对 UE4 还有更进一步的追求,认为一切还不算完美。   之前有电影行业从业经历的戴巍,对视频切镜部分、光影材质都还不满意。   他认为,这是 UE4 本身不可避免的缺陷。至少在大家期待的 UE5 面世之前,这个问题暂时无解。   不过即便如此,国产游戏团队的这个初步成果,也令很多人激动不已了。   因为“游戏科学”团队选择了一条最难走的路。国内十几年的游戏主机空白期,盗版游戏泛滥,让国产单机游戏大作濒临灭绝。   “游戏科学”没有选择最赚钱的手机平台,也不是选择“免费+氪金”模式,而是选择了“一次性买断+付费 DLC”这种国内少见的盈利模式。   不知老 PC 玩家们是否还记得,当年花 69 元去音像店购买《仙剑奇侠传》、《古剑奇谭》的时光。   而今游戏介质已经从光盘发展到网络下载,版权生态也在不断变好。   玩家版权意识不断提高,盗版游戏下载网站近乎消失,破解游戏的生存空间越来越小。这给予了国产 3A 单机游戏良好的发展空间。   但国内游戏团队还面临着不少问题。   比如这次“游戏科学”团队放出试玩视频,其实并非为了吊足玩家胃口,而是他们面临开发人员稀缺的难题,放出预告片也是为了能够更好地招聘人才。   在社交网络上,已经有开发者踊跃报名,表示愿意加入团队。   另一方面,团队恐怕也是为了吸引投资。   “游戏科学”已经成立 6 年,《黑神话:悟空》从 2017 年开始开发。视频游戏分析师 Daniel Ahmad 表示,开发完成至少还要 2 年以上的时间。   祝《黑神话:悟空》早日上市。   也欢迎你评论区交流这段《黑神话:悟空》观后感~    参考链接:    https://www.bilibili.com/video/BV1x54y1e7zf    https://www.ign.com/articles/black-myth-wukong-announced-consoles-next-gen-pc-gameplay    https://twitter.com/IGN/status/1296409412052160518    https://twitter.com/ZhugeEX/status/1296295321635631104    https://www.reddit.com/r/Games/comments/id3g7l/black_myth_wu_kong_13_minutes_official_gameplay/
来源:博客园
发布时间:2020-08-24 16:25:00
1、时间管理 “每位管理者都应当具备强大的时间管理技能,因为它可以帮助你简化日常任务,提高生产力。强大的时间管理带来强大的计划力,让管理者能够随时处于主动模式,而不是被动模式。学会管理时间——这是在科技公司取得真正成功的最简单的方法。” ——UM Technologies,CEO,Scott Stiner 数据观说: 别让繁杂的数据噪音占用您太多的时间。利用看板(Dashboard),可以帮助您简化日常的管理任务,对需要花费时间的领域,做到一目了然。 2、授权 “我看到很多高层在细致入微的工作中迷失了方向,但事实是,这应该是员工的事儿。作为管理者,你的工作是在高层次思考,而不是在小事中迷失。学会向下授权,是给自己释放大量时间的关键技能。” ——Neon Roots,CEO,Ben Lee 数据观说: 在数据方面,您可以通过为成员/用户组开放相应的权限,在保障数据安全的基础上做出授权。还可以跟成员就数据进行即时沟通,与员工共享智慧。 3、提问 “掌握提问的艺术。提问不是为了证明你自己懂得多少,也不是为了让别人觉得自己很蠢,而是指出其中暗藏的机遇与潜力。这类好问题通常来源于还未成熟的深层洞察。一旦你激励他人进行思考,你就可能推动整个组织的行动。” ——IQ Media,创始人、首席创新官、首席数据科学家,John P Derham 数据观说: 无论你是否掌握了提问的艺术,可视化的数据都会是你的“好问题资源库”。它的每一个波动、断点、异常,都将为你呈现出一个绝佳的问题。你所要做的就是把它抛出来,然后,激励团队找到答案。 4、事故处理 “坏事随时可能发生。当它们真正发生时,您的责任就是减少问题再次出现的风险。找出在您公司中追踪问题的方法,以及如何将问题一追到底的方法,能帮助你在晚上睡个好觉。您可以制定一个事故响应政策,组织团队开展调查实践,找到根本原因,并执行风险缓解策略。” ——Patch of Land,合伙创始人&CTO,Brian Fritton 数据观说: “一追到底”的最佳武器,就是“层层下钻”。静态报表通常只能指出问题,但交互的可视化报表却能给出答案。 5、学会道歉 每个技术主管都可以掌握道歉的艺术。人们会犯错,产品会崩溃。愿意承认自己的错误,并谈论将要改进的部分,是领导团队与公司的好方法。 ——ZipBooks,创始人,Timothy Chaves 数据观说: 道歉并不轻松,不如试着从“就数论数”开始。 6、学会共情 “不要让你的技术工作脱离客户。花时节理解你的客户,设身处地,换位思考。你会迅速习得某个解决方案何时才算令人满意。不管是工程师还是客户,是时候意识到大家都是一条船上的人了。” ——AlertBoot,CEO,Tim Maliyil 数据观说: 在信仰客户成功的年代,客户反馈部分决定着企业发展的脉搏。一个可以每日更新、反应客户满意度、并能归因的看板是必需的。如果还没有,那就赶快建一个。 7、营销力 “每位技术主管都应该知道如何在组织内推广自己的部门。他们应该具备阐述本部门商业价值的能力,并为新的创意与战略获取支持。这不仅仅是演讲技巧,还需要深入了解本部门为同伴解决的问题的真正价值所在。” ——Bluelock,产品服务研发副总,Jeffrey Ton 数据观说: 量化自己的商业价值,并让其它部门看到、看懂、信服,此时,一个图文并茂的可视化分析看板依旧是你的最佳选择。 8、优先级 “有效的优先级排序:现代企业处于技术革命的高潮中,技术高管们每天都面临新的想法与挑战。任何管理人员最重要的技能之一就是快速评估这些想法和挑战是否、以及如何与其业务相关联,并响应地确定其优先级顺序。” ——StreamSets Inc,CTO,Arvind Prabhakar 9、敏捷 “每位管理者都应该通过敏捷的流程来运作他们的业务。这意味着站立会、积压事项管理、以及通过“计划、实施、检查、行动”的方式进行快速决策。“ ——Legal Shield,CEO,Jeff Bell 数据观说: 数据观可以连接您的项目管理数据(如asana),让您通过自己的方式对成员进行敏捷管理。 10、领导团队 “技术高管应该掌握‘领导技术团队实现一切需求’的技能。这看起来理所当然,但实际上,想把董事们的脑洞变成现实是非常困难的。带领团队朝着希望中的方向前进,同时取得成功,既富有挑战性又是必须的。“ ——SlickPie,合伙创始人,Nick Chandi 本文为专栏文章,来自:数据观,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/50819.html 。
来源:数据分析网
发布时间:2018-04-24 15:48:00
  8 月 24 日消息,天猫方面宣布,为提升购物体验,鼓励商家在支付后 24 小时内上传物流单号,如果 48 小时仍未发货,消费者可获自动赔付。   据悉,新规将于 8 月 25 日起实施,部分条款 9 月生效。   新规显示, 遇到延迟发货消费者无需主动投诉,由系统自动判定,下单 2 天后还没有发货,就能自动获得延迟发货赔付红包,按商品实际成交金额的5% 赔付,单笔最低 5 元最高不超过 50 元。   此外, 如果遇到虚假发货、缺货等情况,消费者主动发起投诉成立后,商家需按商品实际成交金额的 30% 作为赔付,单笔最低 5 元最高 500 元。   据悉,新规对节假日的发货要求也有所提升,春节期间会另行通知。   需要注意的是,美食券、消费卡、本地化生活服务等商品,定制、预售商品,支持预约配送、定时送等商品,不在自动赔付之列。
来源:博客园
发布时间:2020-08-24 16:12:00
2017年3月到9月,经历了跳槽、装修、搬家,直到一周前尘埃落定,才发现这篇静静躺在印象笔记的草稿。 促使我把这碗冷饭继续干掉的原因是“让人抓狂的实习生”: 这几个月因为公司HC的缘故,一直由实习生承担 助理用研 的工作,主要协助 资深/高级用研 的工作执行,也会负责一些小型的研究项目。 我们实习生的可爱之处是理论知识丰富,你说的那些方法他们都知道,并且说的能比你还头头是道;抓狂之处是不会用,比如访谈时原形毕露、 数据分析 时不结合业务、写报告时欠缺章法。 这篇文章,就用一张图,总结如何撰写 研究报告 。 这里说的研究报告主要指定性的研究报告,因为定量研究的报告相对来说没有这么复杂,只要围绕着通过数据发现问题——通过数据找到原因——结合业务提出建议的思路即可,有需要的话可以以后再写。 上面这张金字塔,从下往上,是报告撰写的顺序,也就是归纳的过程;从上往下,是进行汇报的顺序,也就是让听者带着What、Why、How的疑问往下听往下看。 金子塔的底部——从内容到事实的可视化梳理 首先,定性研究执行完成后,往往会有原始文字记录、照片记录、录音记录、影像记录等一手材料,用研的洞察便是从这些原始材料开始。 但值得注意的是,这些材料并不是真的原始,往往在我们设计研究框架与访谈提纲时就已经确定了报告的主干结构,从而我们在研究执行的过程中也是按这种既定的结构来获取内容。 举个栗子: 一款互金软件在公司进行内部测试后,我们邀请了参加内测的同事作为新手用户进行了访谈。那么首先需要确定的即要获取的内容结构:内测整体情况、竞品经历、选择/创建一款跟投产品的考虑因素、选择/创建一个组合/人进行跟投时的操作习惯、上线后推荐意愿、主观建议。 在访谈执行时,也是按照结构框架进行记录,一般使用excel记录,左侧为结构与问题,右侧空白处为某用户的内容。 最后,在整理记录的内容时,就按照各结构模块依次整理。如共访谈10位用户,则先这将10位用户在“整体情况”上的内容进行梳理。 将梳理某一模块上的内容编码为“事实”的过程,就是提炼的方式。 提炼用的最多的方式就是计数,将反复出现的相同现象作为事实1,并记为N次,将其他现象作为事实2、事实3等等,同样计次。寻找相同的现象也是一种聚类的过程,在这个过程中,具有相同属性的资料被归入同一类别,并以相应的概念命名。 举个栗子: 在某款产品的上手表现模块,将8位用户的内容进行归纳与计数: 事实1:无法找到维度排行、对比分析——2位 事实2:跟单及退跟规则不明晰——2位 事实3:N缺少详细规则说明——2位 事实4:缺少资产组成——2位 金子塔的主干部——建立在事实基础上的论点 基于上述同一模块上的几个事实进行总结,即为这一模块的论点,也是整份报告主要结论的支持论点。这个论点,可以是对几个事实共同性的归纳,可以是对几个事实间差异性的比较,也可以是直接综合这些事实提出观点。 这里需要注意,如果是提出观点,那么当你在阐述观点时,一定要明确自己所表述的内容,与客观“事实”的逻辑关系,可以是因果关系、可以是平行关系、可以是从属关系、也可以是推论关系。总之,不管是桌面研究,还是实地调研、在线调研,最重要的都是“事实”,我们要做的,是在“事实”的基础上输出自己的总结或建议。 为什么特意说上述问题需要注意,因为回顾这两年在指导新人写报告时,几乎每个新人都有提出过站在自我视点上的“假事实”结论,也就是其实并无支撑其论点的“事实”。往往每次我询问:这个结论或建议你是如何得出的?就会出现两种回答: 一是新人在下方所写的“事实”,根本不适合得出这样的结论,所以导致作为读者的我无法得知眼前的事实和他所提出论点的关联,这是因为阅读时自上而下的顺序是很容易检查出逻辑漏洞(这种情况往往是新人对行业与公司业务的认知不足); 二是新人并没有呈现支持性“事实”,而是直接跳过事实描述阐述了论点或建议(那么这种建议是毫无价值的)。 以上是单个结构模块在梳理时的注意问题,那么各个结构模块之间的划分方式,或者说是呈现顺序,也可以分为两种方式,即论证式和组合式。聪明如你,应该已经了解各个结构模块的划分方式一般在最先制定研究框架和访谈提纲时已经确定了,虽然可能后面也做些调整,但是这不影响既定的思路。 我们先说论证式,它是一种演绎推理的顺序。即支持论点1→支持论点2→支持论点3→支持论点4→支持论点5,每个论点之间都是环环相扣,即依托于前一论点,也支持到后一论点,往往最后的论点也是最重要的结论。 举个栗子:某一功能使用率非常低,通过不使用这个功能的用户来了解原因与改进方向。 支持论点1:功能认知——用户是否知道有这个功能,他们觉得这是一个什么样的功能,能够帮助解决什么问题; 支持论点2:原因分析——既然知道这个功能能帮助解决xxx问题,不去用的原因是什么(没这个需求/有其他方式解决这个需求); 支持论点3:寻找机会点——相比于我们这个功能,用户目前的解决方法有什么优缺点; 支持论点4:改进方向——如何改进这个功能可以取代用户目前的解决方法,从而提高使用率。 这种演绎推理的陈述方式,优点是步步推理,读者接受程度高;缺点是需要大量记忆前几个分论点,才能理解最后一个论点,如果对前面的论点产生质疑,变会影响到后面论点的可信度。 再来说说组合式,它是一种归纳推理,每一个支持论点都可作为一个单独的建议或结论。 举个栗子:某一电商产品的用户流失率非常高,通过研究不同生命阶段的用户流失的原因来提出促留存方法。 支持论点1:注册后30日未激活的用户,可通过推荐新手专享的高补贴产品促进新手下单; 支持论点2:在首单体验后30日内未复购的用户,可通过优先发货、极速退款等方式提高首单体验; 支持论点3:一定活跃期后沉默的用户,可通过针对目标用户的促销活动来提高活跃度。 这种归纳推理的支持论点,优点是可以有重点、或有选择性的实施,每一条建议实施与否,不会对其他建议的实施产生影响;当然,就算某个论点被质疑,也不会影响到其他论点。缺点是,这些论点与其说是推理,其实更像是并列,论点之间并无较强的逻辑关联。 金子塔的顶部——将所有分论点进行提炼 最后重新进行总结,不要照搬支持论点的内容,而是更加精炼的提出“3个要点”,也就是三个建议(解决方法)。 为什么说最后的主要结论要有“3个”,这是因为从心理学上来说,2个给人的感觉太少,4个则太多,所以3个数量刚刚好。那么如果的确是一个研究体系比较复杂的报告,那么请控制好不要超过5个。 一句核心结论——致忙碌的大BOSS 麦肯锡有个3分钟电梯演讲,大家可能都知道,说的就是要把大量的报告内容,在和需求方共乘电梯的3分钟内介绍清楚。 而中国大多建筑限高,我们一般也就30秒,万一在电梯里碰到了大BOSS呢? 哈哈,开个玩笑,其实我在电梯遇到大BOSS时被问到是手里的干挑面好不好吃。 其实就是一句话,在向务实又忙碌的大BOSS介绍你的研究结果时,建议先用一句话把你的核心结论推出去。 大BOSS往往最关心的是,做了这个研究,你想干嘛? 所以,诸如“针对XXX,我想开展XXX业务/我想寻求XXX支持”等,他只要一句话这样的结论就可以了。相信我,有兴趣的话他会继续追问的,到时再抛出你的3个主要结论。 一篇研究报告的核心结论一定要能用一句话概况,可以不写在报告里,但一定要说的出来。 最后,不会“销售”自己报告的用研不是好用研,如何就你的研究结果进行汇报也是一门有价值的学问。毕竟研究做的再好,报告无法获得高层或是业务方的认同,等于无法落地,最终只能白忙一场。设计师称这类无疾而终的设计稿为飞机稿,对我们来说其实同样也是。 So, 需要注意的临场问题非常多: 如何邀请高层、业务方来参加? 如何组织一场汇报?是用研来做主持人吗? 遇到各种临场问题时如何应对?(高层或业务方不按你的套路听/开始玩手机或处理其他事情/质疑结果的真实性,比如:我发现一个用户不是这样的/中途有事情离场……) 汇报后如何调动大家讨论的积极性? 如何获取高层、业务方对每条建议真实的采纳态度? 事后又如何跟进? 如何建立汇报的正确心态(怕出错推给同伴去汇报/一定要展露头角以后才能晋升/被问到答不上来的问题该怎么办……) 本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「 我们 」留言处理。
来源:数据分析网
发布时间:2018-04-23 16:25:00
数据科学家 知道把不同的理论和工具有机地结合在一起并最终形成特定的流程,进而依据这个流程完成 数据分析 工作。 数据科学的整个流程包括这些环节: 数据准备 数据探索 数据表示 数据发现 数据学习 创造数据产品 洞见与结论 结果可视化 数据准备 数据准备虽耗时和无趣,但是至关重要,因为它决定了数据的质量。若是数据的质量得不到保证,后续所有的数据工作都会收到影响。 数据准备包括数据读入和数据清洗。 数据探索 数据探索用来查看数据内容,从数字化和可视化入手,帮助我们找出数据集中的潜在信息并且确定数据分析的大致方向。 数据表示 数据表示是指选择合适数据结构存储数据。这样做有两个作用: 完成从原始数据到数据集的转化 为后续数据分析提供最优的内存消耗 数据发现 数据发现是提出假设,完成验证,从数据集中发现特定的规律和模式的步骤。 数据发现使用不同的统计方法来检验数据之间关联的显著性,通过分析同一数据集中的不同变量或者不同数据集中的交叉信息来得到确信可靠的信息。 数据学习 数据学习主要使用统计方法和机器学习算法来分析数据集。 无论一个工具有多么全能和有效,永远是使用这些分析工具的数据科学家自身的能力使它们发挥作用,才能最终得到有用的结果。 更好地了解这些工具,可以帮助科学家们更理智地选择学习方法与工具,从而得到更好的结果。 创造数据产品 数据产品是一个由数据和算法组合而成的产品。 ——著名数据科学家Hilary Mason 一个数据产品是一个公司开发出来,可以用于销售给其他客户从而赚取回报的东西,这个东西几乎可以涉及方方面面。 数据产品为什么有价值? 因为数据产品给客户提供了非常有用的信息。 如今的数据产品通过高速数据处理,使用最新的算法以及并行计算等方式来获得之前人类无法获得的信息。 一个数据科学家需要挑选出结果中最有价值的相关数据(数据选择),然后把它包装成为最终的用户可以看明白的形式。 一个数据产品其实就好像是一个人人都能随身带在身边的数据分析专家,如果你需要信息的话,可以付很少量的钱来购买一些信息。 如何创造数据产品? 你需要知道你最终的客户是谁?他们的需求是什么? 选择正确的数据和算法 选择合适的数据分析工具 有用信息(洞见)的呈现。(想象力很重要) 洞见与结论 洞见和结论是让分析结果能尽量地被更多的人理解,并且能适用于更多的情况。 结果可视化 结果可视化就是让更多的观看者明白其中信息的意义。 数据探索可视化和结果可视化有很大不同,前者并不知道将会发现什么,因此需要不断尝试;后者对数据处理的目的和数据分析的结论有了深入理解和解读。 结果可视化,让数据讲故事。 关于 数据科学处理流程 ,您有什么见解,请留言。 本文为专栏文章,来自:数据人网,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/50622.html 。
来源:数据分析网
发布时间:2018-04-22 13:49:00
  今天港股收盘,美团点评股价报 269 港元,市值达 15813.39 亿港元,如果转换美元的话,其市值已经超过 2000 亿(目前即使强大如蚂蚁金服目标估值也才 2250 亿美元,字节跳动估值也才 1400 亿美元),成港股第三大市值公司,仅此于阿里、腾讯。   从数据方面来看,美团点评获内资不断买入,今年以来从 1.45 亿股增加至 3.24 亿股,年内净增 1.79 亿股,内资持股占比 5.5%。此外,多头上演逼空态势,8 月 21 日沽空金额高达 11.3 亿港元,本次暴涨6%,有望将空头打爆。   美团股价已经突破了大多数分析师给予的目标价格。可以看到,券商均给予美团“买入”或“增持”评级,并不断更新其目标价,从 2019 年 10 月的 100 港元左右,一路上升至 160 港元左右,国盛证券甚至给予了 195 港元的合理估值。   美团的持续大涨,也让掌门人王兴的身家迎来了新的突破。   目前,王兴跻身内地第十二大富豪,最新身家 203 亿美元,按其持股美团 5.73 亿股A类股计算,王兴身家为 1489.8 亿港元,折合 192 亿美元。
来源:博客园
发布时间:2020-08-24 16:05:00
  8 月 24 日,外交部发言人赵立坚主持例行记者会。澎湃新闻(www.thepaper.cn)记者提问,据报道 22 日,TikTok(抖音国际版)宣布将就美国政府涉及该公司及其母公司字节跳动的行政令提起诉讼,以维护自身合法权益。21 日,部分 WeChat(微信国际版)在美用户组成的“美国 WeChat 用户联盟”提起诉讼要求阻止美有关禁用微信行政令的实施。我们也注意到,美国国务卿蓬佩奥 21 日回答 TikTok 有关提问时称,美方并非针对成功的中国企业,而是针对给美国国家安全带来风险的中共实体或受中共驱使的商业实体。中方对此有何评论?   赵立坚表示, 中方支持相关企业拿起法律武器维护正当权益,也将继续采取一切必要措施,坚决维护中国企业的合法权益。针对刚才提到的美国个别政客的谬论,我想再强调两点。美国个别政客企图致 TikTok、WeChat、华为等中国企业于死地,其根源就是患了“逢中必反症”,强行将意识形态标签打在中国企业身上,这些人打着国家安全的幌子围猎 TikTok 等中国企业,充斥着谎言和污蔑,其性质是欺行霸市、巧取豪夺。第二,美国个别政客针对 TikTok 等个别企业的胡作非为,实质是对某一领域取得领先优势的非美国企业采取有组织、系统性的经济霸凌,这些企业都是行业翘楚,是非常优秀的国际化公司,美国个别政客害怕非美国企业的强大和成功,因此不惜动用国家力量百般打压。这是对美国一贯标榜的市场经济和公平竞争原则的否定,是对国际规则的践踏,也是对全球化浪潮下各国科技创新交流合作的破坏。世人只会对美国的这些强盗行径看得更加清楚。
来源:博客园
发布时间:2020-08-24 16:00:00
数据科学家 所需具体技能,罗列如下: 1 数据分析 技能 数据清洗 运用合适的统计知识和方法来分析数据 运用机器学习算法 建立数据模型 评估和应用数据模型 实现 数据可视化 2 编程技能 精通一种或者多种数据分析工具(R/Python/SPSS/SAS/Matlab) 精通一种或者多种面向对象的编程语言(Python/Java/C++等) 其他IT公司经常需要的技能(熟悉HTML/CSS/JavaScript等) 3 数据管理技能(尤其针对大规模数据) SQL NoSQL Hadoop生态(尤其是HDFS/MapReduce,Hive/HBase) Spark 其它IT公司常用数据管理技能 4 商业知识 理解公司的业务(一切业务数据化,一切数据业务化) 熟悉公司业务所在的领域以及领域知识 熟悉瀑布模型和敏捷模型等软件开发模式 其它公司常用的商业技巧 5 交流沟通能力(软实力) 撰写报告 做演讲和PPT演示来展示产品 能够将用户的需求转化为实际产品 懂得倾听重点信息 其它公司常用交流交往技能 关于 数据科学家所需具体技能 ,您有什么见解,请留言。 本文为专栏文章,来自:数据人网,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/50816.html 。
来源:数据分析网
发布时间:2018-04-21 22:44:00
  《微软飞行模拟》已正式发售,这是一款模拟驾驶游戏,对地球上的每一条航线数据和飞机场都进行了高度还原。但游戏中很多城市的风景看起来并不美,莫斯科就是其中之一。   近日第三方附加组件开发者 Drzewiecki Design 推出了《微软飞行模拟》的附加风景插件,美化了俄罗斯首都莫斯科,售价 12 欧元(约合人民币 98 元)。该插件为莫斯科添加了上千个定制建筑和许多有趣地区供玩家探索,全部高品质,具有夜间纹理。克里姆林宫周围区域都是定制的,其中有博物馆、教堂、酒店、火车站、纪念碑,摩天大楼和体育馆等地标性建筑。   这款附加风景插件还改进了莫斯科城市周围的机场,比如莫斯科伏努科沃机场、多莫杰多沃国际机场、茹科夫斯基机场、奥斯塔夫耶沃国际机场等,为它们添加了机场建筑、静态飞机、机场车辆等,让机场更接近于现实。目前该插件可以在 SimMarket 上购买,之后还将在微软“飞行模拟”市场上出售。   截图欣赏:
来源:博客园
发布时间:2020-08-24 15:50:00
摘要:本文旨在介绍 R语言 中ggplot2包的一些精细化操作,主要适用于对R画图有一定了解,需要更精细化作图的人,尤其是那些刚从excel转ggplot2的各位,有比较频繁的作图需求的人。不讨论那些样式非常酷炫的图表,以实用的商业化图表为主。包括以下结构: 1、画图前的准备:自定义ggplot2格式刷 2、画图前的准备:数据塑形利器dplyr / tidyr介绍 3、常用的商业用图: 1)简单柱形图+文本(单一变量) 2)分面柱形图(facet_wrap/facet_grid) 3)簇型柱形图(position=”dodge”) 4)堆积柱形图(需要先添加百分比,再对百分比的变量做柱形图) 5)饼图、极坐标图 6)多重线性图 前言 这篇文章其实是我之前 那篇博文 的一个延续。因为接了一个活要用R定制化数据报表,其中涉及大量的对图表精雕细琢的工作。在深入研究ggplot2时,深深感觉到用ggplot2画图与用excel画图的不一样。 如果要用ggplot2画图,还是需要了解很多技术细节的。这些细节要么散落 在《R可视化技术》和《ggplot2: 数据分析 与图表技术》这两本书里 ,要么散落在网上。因此在这里以我学习和总结的过程,对ggplot2的精细化画图做一个阐述,介绍我整理后的作图理念。 如果有进一步学习需要的各位,请直接买书或者自己实践学习。很多技术细节需要自己摸索才知道的,祝大家好运。 1、画图前的准备:自定义ggplot2格式刷 在画图前,我们首先定义一下 ggplot2格式刷 。 首先,ggplot2本身自带了很漂亮的主题格式,如theme_gray和theme_bw。但是在工作用图上,很多公司对图表格式配色字体等均有明文的规定。像我们公司,对主色、辅色、字体等都有严格的规定。如刘万祥老师早期的一篇 配色博文 里,大家更是可以看到,很多商业杂志的图表,配色风格都是非常相近的。因此,修改主题,使其更加适合我们的商业需求,保持图表风格统一,是非常必要的。 虽然ggplot2可以通过代码的追加,细细修改表距、背景色以及字体等框架。但是如果每做一个图,都要如此细调,代码将会非常繁琐,而且万一老板突然兴起要换风格时,代码修改将会非常痛苦。 幸运的是,ggplot2允许我们事先定制好图表样式,我们可以生成如 mytheme 或者 myline 这样的有明确配色主题的对象,到时候就像excel的 定制保存图表模板 或者 格式刷 ,直接在生成的图表里引用格式刷型的主题配色,就可以快捷方便的更改图表内容,保持风格的统一了。 在运行之前,首先加载相关包 library(ggplot2)library(dplyr)library(ColorBrewer)library(tidyr)library(grid)#载入格式刷#######定义好字体windowsFonts(CA=windowsFont("Calibri")) 接下来是一个示范。我首先共享了我常用的一个主题刷,配色参考以下: 主体色:蓝色 085A9C ,红色 EF0808,灰色 526373 辅助色:浅黄色 FFFFE7,橙色 FF9418, 绿色 219431, 明黄色 FF9418,紫色 9C52AD 定制了mytheme, myline_blue, mycolour等多个对象: 1 #定义好字体 2 windowsFonts(CA=windowsFont("Calibri")) 3 #事先定制好要加图形的形状、颜色、主题等 4 #定制主题,要求背景全白,没有边框。然后所有的字体都是某某颜色 5 #定制主题,要求背景全白,没有边框。然后所有的字体都是某某颜色 6 mytheme<-theme_bw()+theme(legend.position="top", 7 panel.border=element_blank(), 8 panel.grid.major=element_line(linetype="dashed"), 9 panel.grid.minor=element_blank(),10 plot.title=element_text(size=15,11 colour="#003087",12 family="CA"),13 legend.text=element_text(size=9,colour="#003087",14 family="CA"),15 legend.key=element_blank(),16 axis.text=element_text(size=10,colour="#003087",17 family="CA"),18 strip.text=element_text(size=12,colour="#EF0808",19 family="CA"),20 strip.background=element_blank()21 22 )23 pie_theme=mytheme+theme(axis.text=element_blank(),24 axis.ticks=element_blank(),25 axis.title=element_blank(),26 panel.grid.major=element_blank())27 #定制线的大小28 myline_blue<-geom_line(colour="#085A9C",size=2)29 myline_red<-geom_line(colour="#EF0808",size=2)30 myarea=geom_area(colour=NA,fill="#003087",alpha=.2)31 mypoint=geom_point(size=3,shape=21,colour="#003087",fill="white")32 mybar=geom_bar(fill="#0C8DC4",stat="identity")33 #然后是配色,考虑到样本的多样性,可以事先设定颜色,如3种颜色或7种颜色的组合34 mycolour_3<-scale_fill_manual(values=c("#085A9C","#EF0808","#526373"))35 mycolour_7<-scale_fill_manual(values=c("#085A9C","#EF0808","#526373",36 "#FFFFE7","#FF9418","#219431","#9C52AD"))37 mycolour_line_7<-scale_color_manual(values=c("#085A9C","#EF0808","#526373",38 "#0C8DC4","#FF9418","#219431","#9C52AD")) 把以上代码在R里面运行以后,就可以直接使用了。譬如以下: 1)先生成一个简单的图表: #未使用格式刷p<-ggplot(iris,aes(x=species,y=sepal_length)) +geom_bar(stat="identity")+ ggtitle("sepal_length by species")p 简单地指定x轴为离散型变量species,y为求和,会得到下面的柱形图 这时候,套用一下之前设置好的主题(mytheme),背景、坐标轴还有字体颜色就相应改变了。 p+mytheme 然后,因为之前格式刷部分我设定了一个蓝色的柱形图样式(mybar),这里直接引用的话,就可以直接生成蓝色的柱形图了。 ggplot(iris,aes(x=species,y=sepal_length)) +ggtitle("sepal_length by species")+mybar+mytheme 2、画图前的准备:数据塑形利器dplyr / tidyr 有了事先设定的一些格式刷以后,我们就可以快速有效地作图了。 但是在作图之前,就像excel作图总要先把数据用处理成想要的形式 。在excel里面,我们常用的是数据透视表或者一些公式辅助,而在R里,则是用一些常用的包,如dplyr及tidyr,对数据进行重塑再造 在我之前看的那两本ggplot2的书里,基本用的都是reshape2+plyr的组合。但实际上hadley后续出的dplyr与tidyr更加有用。具体的使用方法,在 JHU Getting and cleaning data 有介绍,老师还编了一个swirl课程供人使用,安装方法如下。 install.packages("swirl")library(swirl)#安装getting and cleaning data相关的课程教学包install_from_swirl("Getting and Cleaning Data")swirl() 其他的也可以参考我 这篇博文 总之,用好dplyr的话,你可以快速的把一些数据,如下面的 股票逐笔成交记录 随你所欲地汇总(group_by & summarize) 甚至再拆分 (spread),譬如示例里面就是把成交记录按照成交价格和BuySell拆分 data #刚刚演示的那些数据,在预测者网可以下载data %>% group_by(Price,BuySell) %>% summarize(Money=sum(Money,na.rm=TRUE)) %>% spread(BuySell,Money) 要想做好ggplot2的图,对数据快速进行塑形的方法是我们必须要掌握的。上面的s wirl课程非常有用,而且值得是最新的一个技术方法,值得大家学习。 3、常用的商业用图 接下来分享一下我在这次作图过程中,最常用的几个图形的代码。首先声明,这些图形的进一步做法以及变形,基本都可以在这两本参考书籍里(R可视化技术|ggplot2:数据分析与图表技术)找到。我这里更多的摘取一些我比较常用的图表进行讲解 1、简单柱形图+文本(单一变量) 2、分面柱形图(facet_wrap/facet_grid) 3、簇型柱形图(position=”dodge”) 4、堆积柱形图(需要先添加百分比,再对百分比的变量做柱形图) 5、饼图、极坐标图 6、多重线性图 在作图之前,首先讲一下ggplot2的局限。 ggplot2最大的局限是,它基本不支持双坐标图和饼图。即使能做这些图形,也要很多设置,做起来非常繁琐。 按我个人理解,这个局限的根源与ggplot2开发者Hadley本身的审美习惯以及分析习惯脱不了关系。具体请看他在stackoverflow的这一段 问答 : It’s not possible in ggplot2 because I believe plots with separate y scales (not y-scales that are transformations of each other) are fundamentally flawed. 大神有技术就能任性。即使一堆人在他那回复下面各种求双坐标。。不知道Hadley现在有没有改变主意,把双坐标列为ggplot2的下一个更新点。但是如果你想画双坐标图或者饼图,至少经个人的实践,这些都是比较困难的,设置繁琐而且不美观。要么选择用excel完成,要么听大神的话,用分面图(facet)或者柱形图代替,会更加省事一些。 所以,在了解以下常用图形前,我们需要记住,ggplot2不是万能的,它虽然能做出非常美观的图表,但是总有一些图不能做,因此多个工具结合使用是非常必要的。 在知道以上前提下,我们以ggplot2自带的diamonds数据集为基础,结合dplyr/tidyr的应用,介绍一下常用图形的画法。 然后来讲一下除了双坐标图和饼图以外,ggplot2可以支持的常用图形的画法。数据的话,我们使用ggplot2自带的数据包diamonds 首先定义一下 mytitle="演示:以diamond为例" 1)简单柱形图 代码组成如下,这里使用格式刷mybar和mytheme,然后用geom_text添加柱形图标签(vjust=1表示在柱形图里面显示) data1<-diamonds %>% group_by(cut) %>% summarize(avg_price=mean(price))柱形图<-ggplot(data1,aes(x=cut,y=avg_price,fill=as.factor(cut)))+ mytitle+mybar+mytheme+ geom_text(aes(label=round(avg_price)),vjust=1,colour="white") 2)带分类的柱形图 举个例子来说,在有时候,我们想要快速绘图。使用facet_wrap或者facet_grid可以快速绘制相应图形。这也是ggplot2不太支持双坐标的原因:可以快速绘图,就不需要做那么多无用功了。 代码如下: #dplyr处理数据data2<-diamonds %>% group_by(cut,color) %>% summarize(avg_price=mean(price))#画图,套用设定好的绘图元素ggplot(data2,aes(x=color,y=avg_price))+facet_wrap(~cut,ncol = 2)+ mytitle+mybar+mytheme#在facet_wrap里面,如果加上scales="free"的话,坐标就不一样了。 3)簇型图 制图要点是,对数据作图后,添加geom_bar时,position=”dodge”(分开的)如果去掉这部分,默认是生成堆积图. 代码如下: data3<-diamonds %>% filter(cut %in% c("Fair","Very Good","Ideal")) %>% group_by(cut,color) %>% summarize(avg_price=mean(price))#簇状图簇状柱形图<-ggplot(data3,aes(x=color,y=avg_price,fill=cut))+ geom_bar(stat="identity",position="dodge")+ mytheme+mytitle+mycolour_3簇状柱形图 这里如果想要定义颜色的相应顺序的话,可以使用factor 譬如以下,只是用这行代码对颜色重新定义一下,用levels改变factor顺序,再画图的时候,颜色以及柱子顺序就会跟着改变了。非常方便。 data3$cut<-factor(data3$cut,levels=c("Very Good","Ideal","Fair")) 4)百分比堆积图 制图前要事先添加一个百分比的数据之后才好作图,这里我们用 mutate(percent=n/sum(n)) 添加该百分比数据。同时去掉position=”dodge” data4<-diamonds %>% filter(cut %in% c("Fair","Very Good","Ideal")) %>% count(color,cut) %>% mutate(percent=n/sum(n))堆积图<-ggplot(data4,aes(x=color,y=percent,fill=cut))+mytitle+ geom_bar(stat="identity")+mytheme+mytitle+mycolour_3堆积图 当然,也可以做面积图。不过如果数据有缺失,面积图出错几率蛮大的 5)饼图以及极坐标图 参考一下这篇文章 《【R】初吻R–ggplot绘制Pie Chart饼图》 以及这篇文章 使用ggplot2画图 在ggplot2里并没有直接画饼图的方法,基本上都是先画出柱形图,再用coord_polar转化为饼图 有两种作图方法: 1)不指定x轴,直接用geom_bar生成y轴,然后fill=分类颜色,coord_polar直接投影y 该方法的好处代码是比较简单(coord_polar(“y”) 加标签方法请见: http://stackoverflow.com/questions/8952077/pie-plot-getting-its-text-on-top-of-each-other# data5<-diamonds %>% count(cut) %>% mutate(percent=n/sum(n))ggplot(data5,aes(x=factor(1),y=percent,fill=cut))+geom_bar(stat="identity",width=3)+mycolour_7+ coord_polar("y")+pie_theme+mytitle 2)指定x轴,x轴同时也是颜色(fill),先画柱形图,再转化为圆形。坏处是公式相对比较繁琐一些。 ggplot(data5,aes(x=cut,y=percent,fill=cut))+ geom_bar(stat="identity",width=3)+ mycolour_7+coord_polar("x")+pie_theme+mytitle 但是我尝试了多次,在饼图里加标签方法非常难以理解。。如果要饼图加标签的话,或许还不如柱形图 附上分面柱形图画法: data5_1<-data5 %>% filter(color %in% c("D","E","F","G"))ggplot(data5_1,aes(x=factor(1),y=percent,fill=cut))+geom_bar(stat="identity",width=3)+mycolour_7+ coord_polar("y")+pie_theme+facet_wrap(~color,ncol = 4)+ theme(legend.position="bottom")+mytitle 6、折线图 除了以上柱形图以外,折线图我们做的也比较多。 简单的折线图直接做就好了 然后像下图这样的 要点是,先做成如A-B-变量这样的二联表,然后,x轴为A,group为b,colour为b 下面代码展示了这个处理 如果去掉group的话,折线图会不知道怎么去处理数字。 data6<-diamonds %>% count(color,cut) %>% filter(color %in% c("D","E","F"))%>% mutate(percent=n/sum(n))ggplot(data6,aes(x=cut,y=n,group=color,colour=color))+geom_line(size=1.5)+mypoint+ mycolour_line_7+mytheme+mytitle 还有一些其他有用的图形 总之,ggplot2的语法还是比较独特的,而且其实处处有坑,处处有惊喜。如果作为商业绘图的话,需要一点一点地去探索去改变,保证风格和细节完美无缺。 不过ggplot2绘图有个好处是,一旦整理出常用的绘图代码,以后就可以无限次套用,尤其是那些格式刷,事先设定好的主题等。即ggplot2绘图,是完全可以做到越绘越快,再开发成本低廉的。 另外补充说明的是,ggplot2绘图,个人更看好其多种映射,以及在探索性数据分析里快捷绘图的能力,还有跟地图啊等结合的能力。还有动态交互等等。 譬如现在比较流行的R/Python与动态网页(大部分是D3)的结合 示例1 , 示例2 但愿各位不要将绘图局限于上述所选的一些最常用的图形与格式化调整里。请容我吐槽一句,这样子调风格学习真的很苦(づ ̄ ~~ ̄|||)づ 参考资料: 1、 刘万祥老师的商业图表系列 2、 R可视化技术 3、 ggplot2:数据分析与图表技术 4、万能的stackoverflow 5、 ggplot2 6、配色相关: 刘万祥老师早期的一篇 配色博文 html两色搭配大全 ,以及 html按风格分的配色盘 本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「 我们 」留言处理。
来源:数据分析网
发布时间:2016-02-22 13:00:00
  摘要   百亿补贴之外,下一个业务增长点在哪?   拼多多的年活跃买家已经接近 7 亿了,与阿里仅剩 5000 多万的差距。按照过往的增长速度,在 2020 年底它可能会超过阿里。   但对手给拼多多造成的危机也开始显现。   过去一周,京东、阿里、拼多多陆续发布了第二季度的财报。财报显示,他们的电商业务数据都在漂亮地增长。   这里面有疫情的原因:3-6 月份,国内经济在疫情后稳步复苏;同时,越来越多的实体商家将销售转向线上,消费者也是一样;另一方面,第二季度本来就是电商行业的传统旺季,这一季度还有「618」营销活动的助力。   然而,对比各家财报发现,同样都是增长,但竞争格局正在发生变化,京东和阿里对拼多多形成了「围攻」的态势。与此同时,快手和抖音甚至是社区团购们也开始入侵拼多多的阵地。拼多多在第二季度的「进步」似乎不足以撑起人们对它未来的期待。    对手越来越强   根据拼多多财报数据,二季度,拼多多实现营收 121.93 亿元,较去年同期的 72.90 亿元增长 67%;归属于普通股股东的净亏损为 7724 万元,较去年同期的亏损 4.11 亿元大幅收窄。截至 2020 年 6 月 30 日,平台年活跃买家数达 6.832 亿,较去年同期净增 2 亿,较上一季度净增 5510 万,创上市以来最大单季增长。   另外,拼多多平台 GMV 达 12687 亿元,较去年同期的 7091 亿元增长 79%;而一季度拼多多的 GMV 增速是 108%,相比之下,第二季度 GMV 增速明显放缓。   在用户规模增长创新高的情况下,总交易额(GMV)却增速放缓,这说明客单价的增长速度缓慢,拼多多在中高端商品的售卖上起色不大,进而证明了阿里和京东在守住阵地方面做的还不错。   活跃用户接近 7 亿后,拼多多也在面对全新的竞争环境,它需要在夹击中寻找新增长   根据阿里财报显示,在推出 3 个月之后,淘宝特价版的移动月活跃用户(MAU)已近 4000 万。自 2019 年初以来,下沉市场就成了阿里电商业务用户增长的重要来源,几乎每个季度都贡献了 60% 至 70% 的增长。   再看京东,京东在微信端推出了社交电商「京喜」,算是拼多多的高仿版。而且,京喜在供给侧的打法上也和拼多多相似:向产业带布局,直接将工厂和消费者连接起来。   京东 CEO 徐雷说,在中国,产业带的数量规模在 200 多家,针对下沉市场,京东的策略是为用户适配产业带商品。   截止二季度,京喜已在全国布局超过 150 个产业带和源产地。京喜产业带商家数量在二季度较一季度增长 550%。据悉,京喜还将在年底完成 100 个工厂型产业带基地、100 个农产型产业带基地的布局。   这样做的效果还不错,在第二季度,京喜新用户增长环比超过 100%,新用户中有 7 成来自 3-6 线城市。   电商直播也是是获取产业带商家的重要路径   徐雷表示,「第二季度,京东下沉新兴市场成果显著,来自下沉新兴市场的新用户占据了非常高的比例,京喜和京东极速版获取新用户效果很明显。」   极光发布的《拼多多数据全面解析报告》显示:特价电商应用用户与拼多多用户高度重合:淘宝特价版、京喜等特价电商用户重合度不断上升,2020 年 6 月与拼多多用户重合度都高达 85% 以上。   但问题也出现在了这里。一直以来,消费者在拼多多购买的品类主要以日用品、农产品等突出性价比(低价)的产品为主;而高价的 3C 数码产品则是京东的主阵地,中高端服装则是阿里的主阵地。   拼多多做的依旧足够给力,但竞争对手们正在侵入它的腹地,甚至以「高防拼多多」的产品,对拼多多进行针对性打击。   另一方面、快手、抖音、淘宝直播等直播电商又以相似的策略进一步抢夺拼多多的目标用户和后端供应链。彭博社评论,随着各种形式的在线消费在销售渠道中的变化,视频电商正占据更大的市场份额。   快手、抖音正在不同的品类上与拼多多的目标客户群和供应链,发生着更多的重合   抖音将 2020 年的 GMV 目标定在了 2000 亿,快手是 2500 亿元。而且,抖音、快手重点扶持的同样是中小企业和产业带商家。「源头直卖」、「爆款特价」的逻辑与拼多多高度重合。   这个时候,新的市场上,拼多多相对于阿里、京东,依旧渺小、进展有限;而自身的阵地上,却来了越来越多的竞争对手。拼多多下一阶段的发展,开始存在大量的不确定。   一旦阿里、京东、快手、抖音在拼多多的阵地上站稳了脚,拼多多依旧没能拿下阿里、京东的优势阵地,或者形成差异性竞争的话,拼多多的增长神话将在「围攻」下陷入停滞。    竞争蔓延至「上游」   拼多多的危机还来自社区团购,但这也是它的新机会。   过去半年,社区团购赛道已经发生了 100 亿元规模的融资、并购,腾讯、阿里、美团纷纷入局,拼多多启动较晚但也没有例外。   拼多多在疫情期间推出了团购工具「快团团」,在不久前又开始花 10 亿补贴大规模招聘「团长」。与快团团极为相似、且更早推出的「群接龙」在 2019 年的 GMV 是 12 亿元,今年上半年则达到了 40 亿元。私域流量仍有大量可以挖掘的空间。   看到这样的机会,从微信生态里生长起来的拼多多自然不能错过。一方面,拼多多可以借助快团团这个工具连接更多的消费者,同时守护在自己在农产品销售上的优势,一方面,也有机会借此打入阿里、美团火拼的同城零售市场。   生鲜属于刚需、高频的品类,这是一个巨大的流量池,农产品起家的拼多多深知它的重要性。   云南昆明,拼多多举办的科技农业大赛正在进行中,该比赛探索用 AI 来控制农作物的生长   拼多多新任 CEO 陈磊表示,农业是一个触及人群最广的行业,未来,拼多多将进一步投资于农业价值链各个环节的技术和业务,加速农业产品的网上零售渗透率。   同样的,阿里也在加大对农业的投入。盒马鲜生 2020 年的主题词不再是新零售,而是新农业。   背后的逻辑比较容易理清。以往,农产品通常是不稳定、不规范、不标准的,很难做到真正的规模化。这为下游零售企业做好商品化、标准化、控制品质也带来了极大的影响。这也是为什么拼多多、京东、阿里等开始进入农村,纷纷自营果园、输出数字农业技术或者通过签约产业带的方式,来从源头控制水果、蔬菜的整体输出质量。   而且,随着农产品在各大电商中销售占比的提升,掌控上游也是未来零售竞争中,电商平台不得不做的。可以预见,各种各样的电商平台签约越来越多的标准化供货基地,是大势所趋。   更长远来看,谁能真正赢下社区团购,甚至是同城零售的对决,或许要看谁能搞定更多的工厂以及农产品基地。    何时能找到走向高端的答案?   拼多多一直在试图提高客单价,试图拉拢中高端品牌入驻,但并不那么顺利。   根据二季度财报,平台销售与市场推广费用为 91.14 亿元,较去年同期的 61.04 亿元增长 49%,较一季度的 72.97 亿元增长了 18.17 亿元。但「百亿补贴」扩大的同时,客单价却没有显著的提升。   拼多多 CFO 马靖在财报会上解释称:「我们也注意到消费者的支出的数额的确是减小了。拼多多选择了差异化的补贴策略。二季度业内其他企业在 3C 品类上开展了非常激进的补贴政策,我们选择了日用品,日用品是很好的增强用户粘性的品类,且日用品要比电子产品的购买频率更高。」   可以看出,当百亿补贴减弱,拼多多依旧未能持续拥有高端品牌。这多少宣告着拼多多在探索售卖高价产品方向上的「失败」。他们依旧没有找到好的办法。   拼多多与特斯拉就交付问题展开争论,这背后也折射着拼多多在拓展高溢价商品道路上的巨大挑战   拼多多与特斯拉拒交车的「闹剧」也是这个问题的显现。拼多多的销售策略是打造爆款,靠更多的销量压缩成本、毛利。拼多多一直以来高度强调价格优势,这已注定了在一定阶段,平台本身会关注消费者的体验,多于品牌商的体验。特别是当面对电商平台之间对于品牌的争夺,甚至是「二选一」的压力之时,这种变通的「打破封锁」,确实看起来是有效的方法。   但当拼多多逐渐成为越来越不可忽视的电商平台,接下来面对的终极挑战,也恰恰是探索如何与高溢价品牌共赢的可能性。   拼多多也在不断尝试。不久前,拼多多上线了一款名为「多潮」的微信小程序,定位在一个分享潮流商品、穿搭的社区。   此前,拼多多上线了「潮鞋玩家日」,并在其 App 内打造了「多多潮鞋馆」,进行潮玩商品的交易。可以看出,拼多多正努力向外拓展边界。不过,正如高端商品与性价比商品存在两套不同的销售逻辑一样,潮玩同样有它自己的逻辑,这都与拼多多的「爆款」逻辑相矛盾。   如何能够找到一条合适的售卖高溢价商品的路径,对拼多多来说是一个长期命题。至少短期内,我们还没有发现它给出一个合理的答案。   在阿里、京东一直试图提高商品单价、强调消费升级的时候,拼多多给出了另一种回应,扮演了价格屠夫,惠及了消费者。无论是低线城市的用户,还是中产阶级们,都需要拼多多发展的更长久。   然而,如何在寻找通向高端、找到新增长点的同时,守住自己的阵地,这都是拼多多此刻正在面临的挑战。   责任编辑:靖宇   图片来源:视觉中国   本文首发于极客公园,转载请联系极客君微信 geekparker 或 zhuanzai@geekpark.net
来源:博客园
发布时间:2020-08-24 15:40:00
近些年,深度学习给语音交互的性能和研究方法带来了极大进步。   但进步并不意味着就没有挑战。语音识别的精度总在不断刷新,却并没有达到用户使用体验的门槛。   思必驰联合创始人、首席科学家俞凯坚定地认为,大规模可定制的对话式语音交互技术已经到来。而当下,他所负责的学术与企业两支队伍正分别规划着长远期目标。   “语音识别的某些指标已经很高了,但往往是在受控的领域,在真实情况下,尤其是长尾的非配合语音识别领域还有很多问题待解决。同时,未来对大规模可定制的需求会越来越高。”   俞凯表示,当下语音技术供应商要针对更多长尾的场景提供定制模型,效果会变得更好,但这种情况不可持续,一定是会通过某些技术上的突破。当然,这种技术突破同样也会跟通用语音识别的发展相辅相成,如果通用语音识别的(准确率)特别高了,那可能就不需要定制了。但从目前来看,定制是不可避免的。   在他看来,目前对话技术要做的,是对原有的更新替代和升级,不单单是语音识别技术,还有合成、语义理解、对话管理等一整套对话技术。   根据当下语音行业所面临的问题,给出针对性解决思路,同时在技术研究的大方向上予以充分探索的机会,可能是当下科学家们予以的长期乐观主义做法。 思必驰联合创始人、首席科学家俞凯   在刚刚过去的 CCF-GAIR 2020 全球人工智能与机器人大会上,雷锋网采访到了俞凯教授,了解对话式语音交互技术的最近研究进展,了解这位学者、科学家、产业从业者对当下语音交互技术最难落地的场景的思考。   以下为雷锋网专访实录:    Q: 大家对深度学习的不可解释性容忍度越来越小,此次您主要分享了端到端的研究方法,并尝试从通过引入先验知识,以弥补不可解释性的问题。该研究方法目前在工业界的落地情况是怎样的?最大的挑战是什么?    俞凯: 半监督的方法很早就在工业界落地了,现在几乎所有的工业界都在使用半监督及生成数据训练。但目前情况是,工业界落地的都是最简单的方法,比如说解码、执行度选择等等,主要还是在小规模数据上的落地效果比较明显。   而到了万小时(语音)数据上,这个方法的效果不够高,是目前比较明显的一个通病。基本上就是处于一个“大家意识到很重要但还没有完全解决”的过程中。如果这件事情能有所突破,对未来的影响还是很大的。思必驰也是近一两年开始研究。   Q:之前针对消费者个人的交互数据进行学习存在很大的挑战,但如果放在企业所产生的交互数据进行学习,可能更为场景化,也相对比较好提取?   俞凯:从算法角度来讲是没有差异的,用的都是同样的方法。不过,企业中的数据积累量会比较大,场景会比较单一,相比之下,消费级的场景其实更为分散。从这个意义上讲,企业级得到的平均效果可能会好一些。    Q: 就我们所了解到的,疫情期间的疫情防控机器人、智能声控电梯、智能交互大屏等。从思必驰最近一年的探索上,服务于企业级用户方面,主要有了哪些层面的突破?    俞凯: 大规模可定制是很重要的一点。   任何一个单一系统,用传统方法在有数据、环境可控的情况下,做的都还不错。但问题在于,你有多少这样的可控环境和足够的数据?   思必驰在智能服务方面,提供了全链路对话,无论是外呼机器人,还是内部质检、IVR 导航等解决方案,都做到了大规模可定制,使得不懂语音技术或懂得比较少的人,能够只通过少量的数据传输和相应的场景描述就可以快速做到可定制。这里面既有工程层面的产品可定制,也有技术层面的,将算法集成并形成一套工具,能通过小数据推行算法,能快速构建语义解析器,构建系统逻辑、生成。   思必驰在某些单项技术上已远超过同行,在对话方面,以及整体链路系统的定制速度、效率的综合实力上,也是相对会有一定的优势。总结来讲,思必驰在智能语音和对话技术供应商的角度变得更加专业,在规模化拓展的能力上也变得更强了。    Q: 您认为从智能家居、汽车到金融、医疗、工业等行业,语音交互技术最理想的落地行业是哪些?在落地过程中最大的挑战又会是什么?    俞凯: 语音是个赋能型技术,我认为并不存在某一个最理想的行业。比如,IoT 的落地并不是因为语音技术成熟,而是对人机对话的刚需。此外还有泛智能设备,金融、政务、医疗、教育等垂直领域的认知信息服务,都会跟对话交互结合在一起。   目前解决方案一方面会采取私有化的部署方式,另一方面,会在不影响响数据安全和隐私的情况下,跨不同的域进行机器学习或推理,比方说联邦学习,就是最典型的一类概念。    Q: 在语音交互技术的总体研究进展上,您认为过去 5 年比较有代表性的研究成果有哪些?    俞凯: 最有代表性的是,抗噪语音识别识别率的提升方面,出现了一系列新形态的识别的网络和准则。比如思必驰做了极深的卷积神经网络(VDCNN),以解决单通道收集的语音,通过语音分离来解决“鸡尾酒会效应”,以及端到端的语音识别的架构等。   二是效率方面。以端到端架构和神经网络模型的压缩两项技术为代表,使得语音识别的效率大幅提升。例如,训练一个超大的语音识别系统,如果用N-gram 训练,之前要大概占 10G,现在大概用 200MB 就可以了,甚至可以更小;再比如唤醒模型的训练,过去计算可能需要 1 秒,经过神经网络的压缩、系数化等工程的实现,就会变到只有 100 毫秒。   三是语音合成方面,最大的进展是序列的、端到端的语义合成。以 Tacotron、FastSpeech 等结构为代表,将序列到序列的深度学习引入,形成极高质量的语音合成,人基本听不出语音合成和人之间的差别,尤其在韵律效果上得到了极大的改善。   四是自然语言处理方面。预训练、无监督数据训练模型的出现,使得语义理解得到了极大的提升。   五是统计对话管理,或称为数据驱动的决策系统。从感知到认知的变化,比如利用强化学习在对话管理里,变得更加成熟。    Q: 目前多模态也是智能语音技术落地的探索方向之一,想要实现理想状态下的多模态交互,您认为有哪些问题需要解决?    俞凯: 多模态最大的问题有这么几类:   一是语义空间不统一。现在基本是单模态+融合模块,真正意义上应该是跨模态,即在单模态处理的同时,用到其他模态的信息。   二是各个模态不同的数据集还不够丰富。在研究界和企业界还没有海量的量级,这个海量指的是企业级在万小时以上,研究级在千小时以上。   三是要弄明白多模态究竟能用来解决什么任务,很多情况下是在封闭的场景中,而且这个场景不泛化。这就导致多模态现在研究的任务还不够清晰,缺乏一个像传统语音识别或合成这样的典型任务。   当然,这个问题出现的本质还是成本太高,如果多模态能够将语音识别率精度提高,有人愿意买单,这样数据就来了,场景也来了。这个场景闭环已经有一些趋势,比如车载就是一个比较典型的场景,还有一些特定场景,如地铁售票机等。    Q: 人工智能现在进入新阶段了,市场和企业更加追求算法落地。您既作为思必驰的首席科学家,又同样是联合创始人的身份。(您或者您带领的实验室)取得了哪些成绩?    俞凯: 联合实验室最大的优势,就是把企业的技术问题和诉求与持续的基础创新,在高校里面的持续技术创新比较紧密地绑定在一起,在解决企业最核心的技术问题的同时,指导企业的思考和研究方向。   大规模可定制,从长远看再过两三年会有新的变化,已经在联合实验室里预演了。   思必驰-上海交大智能人机交互联合实验室,就是这样一个深度绑定的实验室。一是研究的问题关联度比较高,二是有明确的知识产权的保护,相关技术成果和知识产权由思必驰所有并转化,同时又能允许学术研究者做论文发表并聚焦于前沿的技术探索。   实验室和企业在研究方向上是完全一样的,只是说本身节奏不同,实验室更为前瞻性一点,所以面临的技术风险也会更大。    Q: 最近一年以来,我们看到的现实情况是,国内外很多 AI 领域的专家离开企业,重新回归学术研究、教学讲堂,您认为当下人工智能产业发展遇到瓶颈了吗?    俞凯: 并没有。专家们回到学校,本质上可能会有这些原因:学校和企业在研发上面是有着不同节奏的,而有些企业里的研发和产品部门是割裂的;同时,企业对学术专家的期望值也很高且缺乏耐心,希望专家能在短期内对企业有所实质性的贡献。这时,学者们就更倾向于回到学校自己去探索,要么是自己出来创业。    Q: 在人才培养方面,您认为当下国内语音/人工智能技术的培养模式,跟您当年那个时代相比有哪些不同吗?    俞凯: 我们目前模式的优势是在于交大比较好的支持和思必驰发展历史过程中形成的超紧密的联合。这不是一般的联合实验室,而是将一个学术的研究方向与企业的核心问题紧密结合在一起,形成了一个极小角度的合力,这样一种比较有效的组织方式。这种组织方式既依赖于制度如知识产权,也依赖于人。    Q: 学生/研究员们选择专业、择业,就您的观察看,他们最为关注的是什么?    俞凯: 人工智能近些年比较火,大家都想学,可能也正因如此,会有一种略微浮躁的气氛。人才的职业取向也无非三种:高薪酬,或许有时不一定与所能贡献的价值相匹配;认定语音是潜力行业,并希望落地成为事业的;还有一种是认为不一定长久,但更希望在研究方面有所突破,专心搞科学研究的人。
来源:博客园
发布时间:2020-08-24 15:30:00
摘要:2015年,美国官方解密了一系列有关本·拉登的文件,其中最引人瞩目的,是美国国家情报总监办公室(The Office of the Director of National Intelligence)在其官网上列出的“本·拉登的书架”。 曝光的这份阅读清单涉及书籍和其他材料400余种。其中包含了已解密的书信等文档103份、公开发表的美国政府文件75份、英文书籍39册、恐怖组织发表的材料35份、与法国有关的材料19份、媒体文章33篇、其他宗教文档11份、智库或其他研究40种、软件或技术手册30份,及一些零散资料。 在本文中,我们将学习如何分析PDF文档,并且利用AlchemyAPI来进行实体抽取分析,看看本·拉登在这些信件中最常提到的10个实体是什么。 什么是AlchemyAPI? AlchemyAPI是IBM旗下的一家公司,具有 深度学习 的 自然语言处理 和图片识别技术,可利用 人工智能 分析理解网页、文档、电子邮件、微博等形式的内容。它还将同Google 一样的 神经网络 分析技术应用其中。 AlchemyAPI目前共提供了12个 文本分析 功能:实体抽取(entitiy extraction),情感分析,关键字抓取,概念标识,关系提取,分类识别,作者提取,语言识别,文本提取,微格式分析,订阅内容识别,数据连接等。 接下来,我们开始进行准备工作。 本文中的代码大部分来自 automatingosint ,我对源代码进行更新。目前的脚本支持 Python 3。 安装依赖包 由于美国ODNI公开的本·拉登信件都是PDF格式的,因此我们首先必须要安装能够处理PDF文档的Python包。这里,我使用的是PyPDF2。我们通过 pip 包管理器进行安装: pip install pypdf2 另外,你肯定不想一封一封地手动103封书信吧?!省时省力的办法就是写个脚本把这些文档都爬取下来。由于要访问网页和解析网页,我们选择使用两个常用的第三方库:requests和BeautifulSoup 4: pip install requests beautifulsoup4 获取免费AlchemyAPI Key AlchemyAPI是IBM旗下的一家公司,具有深度学习的自然语言处理和图片识别技术,可利用 人工智能 分析理解网页、文档、电子邮件、微博等形式的内容。它还将同Google 一样的神经网络分析技术应用其中。AlchemyAPI目前共提供了12个文本分析功能:实体抽取(entitiy extraction),情感分析,关键字抓取,概念标识,关系提取,分类识别,作者提取,语言识别,文本提取,微格式分析,订阅内容识别,数据连接等。 AlchemyAPI有一个免费的基础服务包,每天的事务处理上限为1000次。在本文中,我们将使用他们的实体抽取服务来执行文本分析。 获取免费AlchemyAPI Key非常简单,只需要 填写一个表单 即可,输入自己的邮箱地址。 申请处理完成之后,你就可以在邮箱中看到发送给你的API Key了。 安装Alchemy Python SDK 获得API Key之后,我们可以通过AlchemyAPI提供的Python SDK和HTTP REST接口调用其提供的文本分析服务。在本文中,我们选择安装SDK的方式。 PyPI上之前有AlchemyAPI包,但是后来移除了下载包,因此我们不能使用pip来安装,只能通过Git克隆Python SDK的代码库或是直接下载代码库: git clone https://github.com/AlchemyAPI/alchemyapi_python.git 接下来,我们要把申请到的API Key与SDK关联起来。打开终端,进入SDK文件夹,然后按下面的示例执行alchemyapi.py文件: cd alchemyapi_pythonpython alchemyapi.py YOUR_API_KEY # 将YOUR_API_KEY替换成你收到的Key 为确保SDK正常安装,可以按照提示运行example.py查看演示程序: python example.py 如果最后出现了下图的文字,就证明SDK安装正确,API Key也可以使用。 下载文档 然后就到了怎么自动将103份PDF文档下载到本地了。 我们可以写一个简单的Python脚本来完成这项工作,但是我选择把它封装在download_bld_documents这个函数里,因为我想把所有的代码都放在一个脚本里,这样大家就可以直接运行这个脚本,等待一段时间,就可以看到最后的结果了。 这个函数写的比较简单,但是已经能够满足我们的需求了。 def download_bld_documents () : """Download Bin Laden's Declassified documents from ODNI.""" import os import time import requests from bs4 import BeautifulSoup # 创建一个名为“pdfs”的文件夹,用于保存所有下载的PDF文档。 try : os . mkdir ( "pdfs" ) except : pass # 获取ODNI网站上有关本·拉登书架的网页, # 将其交给Beautiful Soup ,以进行HTML解析。 response = requests . get ( "http://www.dni.gov/index.php/resources/bin-laden-bookshelfstart=1" ) if response . status_code == 200 : html = BeautifulSoup ( response . content ) link_list = [] # 从网页中第54个超链接开始,我们遍历所有的文档链接, # 仅保留那些我们所需要的链接:即含有“pdf”但不包含“ Arabic ” # 字样的链接。我们将满足要求的链接保存到列表 ` link_list ` 中。 for i in html . findAll ( "a" )[ 54 : ] : if "pdf" in i [ 'href' ] and "Arabic" not in i . text : link_list . append ( "http://www.odni.gov%s" % i['href']) # 接下来,我们遍历列表中所有的元素, # 从原链接中获取PDF的文件名, #然后从ODNI网站下载相应的文档。 for i in link_list: response = requests . get ( i ) file_name = i . split ( "/" )[ ::- 1 ][ 0 ] fd = open ( "pdfs/%s" % file_name, "wb") fd . write ( response . content ) fd . close () time . sleep ( 1 ) 由于文件数量比较多,因此在最终执行脚本时,耗费在文件下载的时间可能会比较长。如果你从ODNI网站下载的速度非常慢,那么可以前往我的百度网盘下载,但是在最终执行时要对脚本做修改。只需要执行下文中的函数即可。 处理文档 下面,我们就可以正式对下载的PDF文档进行分析了。我们将要利用Alchemy API提供的强大工具,对这些PDF文档进行实体抽取(entitiy extraction)分析。通过实体分析,我们可以了解本·拉登在这些信件和文件中,谈到最多的人、地方或东西是什么。 所以,我们要一一打开这些PDF文件,从文档中提取所有的文本,然后将其提交至Alchemy进行分析处理。在处理每一个文档时,我们可以得到其中的实体数据,最后将所有文档的分析数据结合在一起,就可以得到出现频率最高的实体了。 我们将这部分代码封装在process_documents函数中: def process_documents (): """Process downloaded documents using AlchemyAPI.""" # 导入所需要的模块,包括我们安装的PyPDF2和AlchemyAPI。 import PyPDF2 import glob import time from collections import Counter from alchemyapi import AlchemyAPI alchemyapi = AlchemyAPI () # 初始化AlchemyAPI。 file_list = glob . glob ( "pdfs/*.pdf" ) # 通过`glob`模块获取我们下载的所有PDF文件的文件名。 entities = {} # 我们要使用`entities`字典来保存每个PDF文档的分析结果。 # 下面的for循环将遍历所有的PDF文件 for pdf_file in file_list : # read in the PDF print ( "[*] Parsing %s " % pdf_file ) # 初始化一个PyPDF2对象,用于保存从PDF文档中提取的文本数据 pdf_obj = PyPDF2 . PdfFileReader ( open ( pdf_file , "rb" )) # 创建一个空字符串,用于后续构建这个PDF的全部文本数据 full_text = "" # 从每页中提取文本数据 for page in pdf_obj . pages : full_text += page . extractText () # 接下来我们使用Alchemy API进行实体抽取 print ( "[*] Sending %d bytes to the Alchemy API" % len ( full_text )) # 调用AlchemyAPI,并明确我们提交的是文本数据(第一个参数) # 然后传入需要分析的文本,第三个参数代表禁用情感分析功能, # 因为本文中我们只关注频率最的实体。 response = alchemyapi . entities ( 'text' , full_text , { 'sentiment' : 0 }) if response [ 'status' ] == 'OK' : # 遍历返回的全部实体数据。 # Alchemy返回的每个实体中,都包含有`count`数据, # 我们要确保在`entities`字典中,将所有相同实体的count相加 for entity in response [ 'entities' ]: # add each entity to our master list if entity [ 'text' ] in entities : entities [ entity [ 'text' ]] += int ( entity [ 'count' ]) else : entities [ entity [ 'text' ]] = int ( entity [ 'count' ]) print ( "[*] Retrieved %d entities from %s " % ( len ( entities ), pdf_file )) else : print ( "[!] Error receiving Alchemy response: %s " % response [ 'statusInfo' ]) time . sleep ( 1 ) # 上面的循环执行结束,我们可以统计最常见的实体, # 并把相关的结果打印出来了! entity_counter = Counter ( entities ) top_entities = entity_counter . most_common () # 接下来就开始打印本·拉登提到次数最多的实体吧! for top_entity in top_entities [ 0 : 10 ]: # most_common returns a tuple (entity,count) print ( " %s => %d " % ( top_entity [ 0 ], top_entity [ 1 ])) 上面函数的最后,我们使用了Counter类来加载entities字典,并且很容易地就得出了最常见的实体。 快速执行脚本 最后执行脚本时,一定要注意:要把脚本放在alchemyapi_python这个文件夹里。这是因为AlchemyAPI SDK并没有在Python的PATH上。 为了让大家少复制粘贴,我已经把相关的操作写在一个bash脚本里。大家下载脚本后 修改API KEY 即可。 curl https://raw.githubusercontent.com/bingjin/funscripts/master/laden/bld.sh --output bld.shsh bld.sh 上图就是正在执行的脚本。想不想看看最终的分析结果? 我直接告诉你们就太没趣了,大家可以运行脚本自己看,等待的同时可以品尝一杯咖啡。当然,剧透也是有的: 伊斯兰教先知穆罕默德居然才排第七! 你分析的结果是怎样的,留言告诉大家本·拉登提到次数最多的三个实体吧! 结语 本文中仅使用了AlchemyAPI的实体提取功能,其他诸如关键词分析、情感分析、图像分析等功能都没有涉及。大家可以在本文的基础上,进一步发挥自己的想象力,看看还能从本·拉登的书架中得到什么信息。 本文为专栏文章,来自:编程派,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/8320.html 。
来源:数据分析网
发布时间:2016-02-21 17:11:00
美国科学家11日宣布,他们去年9月首次探测到引力波。这一发现印证了物理学大师爱因斯坦100年前的预言。宣布这一发现的,是激光干涉引力波天文台(LIGO)的负责人。 这个机构诞生于上世纪90年代,进行引力波观测已经有近30年。那么观测到的引力波数据的量应该很大,科学家如何对这些数据进行分析?有没有用到 Python 编程语言? 答案是肯定的 。笔者在Github上发现了一个专门用于分析引力波数据的Python包: GWPY 。据维护者介绍,GWPY的代码来自LIGO和另一个名叫Virgo的机构,维护者将这两个机构科学家的Python代码整理,最终的产品就是GWPY这个用户友好的Python包。 在具体介绍GWPY之前,先给和笔者一样的小白简单科普一下引力波和LIGO的相关知识。 什么是引力波? 上图是两个黑洞所产生的引力波的3-D模拟图(NASA)。 首先,什么是引力波?在物理学上,引力波是爱因斯坦广义相对论所预言的一种以光速传播的时空波动,如同石头丢进水里产生的波纹一样,引力波被视为宇宙中的“时空涟漪”。通常引力波的产生非常困难,地球围绕太阳以每秒30千米的速度前进,发出的引力波功率仅为200瓦,还不如家用电饭煲功率大。宇宙中大质量天体的加速、碰撞和合并等事件才可以形成强大的引力波,但能产生这种较强引力波的波源距离地球都十分遥远,传播到地球时变得非常微弱。 下面分享两个优秀的视频,很好地解释了引力波及背后的原理。第一个来自LIGO,第二个则是比较通俗的漫画式讲解。 LIGO科学家的解释: http://v.qq.com/boke/page/g/0/0/g0184mxwie0.html 漫画式通俗解释: http://v.qq.com/page/j/x/u/j0184qlilxu.html LIGO是什么? 激光干涉引力波观测站( Laser Interferometer Gravitational-Wave Observatory)LIGO是加州理工学院(Caltech)和麻省理工学院(MIT)的合作实验室,现在也有其他的大学参与。实验资金来源于美国国家科学基金会。LIGO是用来寻找宇宙中的引力波,从而可以验证黑洞的存在和检验广义相对论。 LIGO主要有两个观测点,位于路易斯安那Livingston Parish的LIGO Livingston观测点,和华盛顿 Hanford的LIGO Hanford观测点。除此之外,在加州Passadena 的Caltech校园中还有LIGO 40m Prototype 。 LIGO是如何探测引力波的? 视频:LIGO是如何探测引力波的? GWPY:LIGO用它分析引力波数据? 接下来是本文的重头戏。我们一起来学习如何GWPY分析引力波数据。下面的介绍及示例均来自GWPY的 官方文档 。 安装 很简单, pip install gwpy 就可以完成安装。 不过安装的过程可能会比较长,因为gwpy使用的依赖包比较多,包括numpy、 scipy、 cycler、matplotlib、astropy等。 面向对象编程 GWPY是一个面向对象编程的Python包,也就是说,数据对象是这个包的核心关注点。每一个数据对象都体现为一个类实例,包含了其属性和包含的数据。 如果想创建一个新的类实例,建议使用标准的构建器(constructor)。举个例子,我们可以使用一个数据数组,生成一个TimeSeries对象: >>> from gwpy.timeseries import TimeSeries >>> mydata = TimeSeries ([ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 ], sample_rate = 1 , epoch = 0 ) 或者从在线数据服务器上下载: >>> >>> from gwpy.timeseries import TimeSeries >>> mydata = TimeSeries . fetch ( 'H1:LDAS-STRAIN' , 964656015 , 964656615 ) 核心数据对象 据介绍,GWPY提供了4种核心数据对象,分别代表引力波探测器所产生的四种标准数据: TimeSeries(时间序列数据) Spectrum(光谱数据) Spectrogram(光谱图) DataQualityFlag 引力波 数据可视化 我们知道,将引力波探测器收集的 数据可视化 ,对于理解引力波的特性、研究引力波信号来说非常有帮助。 gwpy.plotter 模块中提供了一些plot类,可以直观地展示相应的数据类型。 GWPY的核心数据对象里,大部分都内置有一个 plot() 方法,可以让研究人员快速对某个数据集进行可视化展示。举个例子: >>> from gwpy.timeseries import TimeSeries >>> data = TimeSeries . fetch ( 'H1:LDAS-STRAIN' , 968654552 , 968654562 ) >>> plot = data . plot () >>> plot . show () GWPY:利用公开的LIGO数据进行绘图 我们接下来利用LIGO公开的一些引力波时间序列数据进行绘图。我们可以直接在线加载这些数据。首先导入我们需要的模块: >>> >>> from urllib2 import urlopen >>> from numpy import asarray >>> from gwpy.timeseries import TimeSeries 然后,下载数据,保存为文本字符串: >>>>>> data = urlopen('http://www.ligo.org/science/GW100916/L-strain_hp30-968654552-10.txt').read() 现在,我们可以对文本进行解析,补充必要的元数据之后,就可以生成一个TimeSeries: >>>>>> ts = TimeSeries(asarray(data.splitlines(), dtype=float),>>> epoch=968654552, sample_rate=16384, unit='strain') 最后,我们就可以绘图了: >>>>>> plot = ts.plot()>>> plot.set_title('LIGO Livingston Observatory data for GW100916')>>> plot.set_ylabel('Gravitational-wave strain amplitude')>>> plot.show() 本文为专栏文章,来自:编程派,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/8310.html 。
来源:数据分析网
发布时间:2016-02-21 16:58:00
图片来源@视觉中国   文数娱梦工厂,作者蟹老板李周忆   当媒体们再一次拨打第一弹的联系电话时,手机那头只剩下了“您拨打的电话已停机”的讯息。   距离 8 月 12 号爆出“第一弹创始人王整在内的 22 人因涉嫌侵犯著作权罪被批捕”的消息已经过去一周多时间了,然而外界对于整个事件的来龙去脉依然一头雾水。   第一弹,这个曾经提出过“赶A(站)超B(站)”的 ACG 老牌社区,从 2014 年诞生至今先后获得过 5 轮融资,在最高峰时第一弹的估值曾高达 6.3 亿,并在 2017 下半年时险些被字节跳动全资收购。   但通过上海静安区人民检察院公布的信息,人们会发现,第一弹团队批捕的原因却是——盗版影视 APP 侵犯著作权案。其中,16 名犯罪嫌疑人以涉嫌侵犯著作权罪批捕,6 名犯罪嫌疑人以涉嫌侵犯著作权罪、帮助信息网络犯罪活动罪双罪名批捕。通过盗版影视收取会员费 992 万余元,收取广告费 2426 万余元,合计非法获利 3418 万余元。   令外界至今仍感到困惑的是:这个曾经主打 ACG 而颇有名望的二次元社区,到底是出于何种原因,一步步沦为了海外剧的盗播社区?在盗版的不归之路上一路狂奔,越走越偏。   “曾经的第一弹是一个以番剧讨论、cosplay 等二次元内容为主打的 ACG 社区。直到 2017 下半年,被B站驱赶的字幕组找到了王整,当时上传了一部泰剧,后台的数据变得非常好看,每次剧一更新就有新用户来,而且新用户的留存率还非常稳定。”第一弹的一位前高层C君(化名)向数娱梦工厂透露。   通过对第一弹多名离职的前管理层人士采访,一个更加真实的第一弹终于浮出水面。这个曾经让字节跳动都想收购的正经二次元生意,到头来却败给了盗版海外剧的诱惑,实在令人唏嘘不已。    4 年 5 次融资,第一弹原本手握一副好牌   和任何人谈起第一弹,总有一个绕不过去的人物——王整。   作为第一弹的创始人、董事长、法人和第一大股东,王整对于这家企业的影响不言而喻,而熟悉王整的人对他的评价却极其分裂。   作为一个资深“次元宅”,王整在大学期间就与两位同班同学创办过一个二手二次元手办交易网站,也因为这段经历,他对于“宅物”所组成的二次元社区有了初步的理解。   2013 年毕业后,王整先后在 IBM 和惠锁屏任职,但仍心心念念一件事——做一个 ACG 相关内容的社区。在随后的一次媒体采访中,王整曾表示,自己想要做一款 95 后、00 后一代人使用的产品,这是他创立“第一弹”的初衷。   2014 年,他叫上大学时代的两个伙伴,一起创立了二次元社区“第一弹”,一个围绕 ACG 文化,以用户 UGC 为核心,交流、分享、吐槽的二次元社区平台。APP 主要分为“社区”和“宅物”两块。“社区”提供了分类搜索,类型上包括番剧、趣图、鬼畜、漫画、cos、古风等类别;“宅物”里主要是用户对自己二次元物品的图文分享,包括手办、抱枕、玩具、鼠标垫等。   在加入第一弹前,C君正是这家企业的早期投资人,他至今还记得初见王整时的模样:“当时就是他和几个同学凑一起,都挺朴素的,全是码农,执行力也很强。王整天天打地铺,在他们租的地方,工作睡觉都在一起。最早看上他们,主要是看重他们干活能力不错,在前期没拿投资的情况下,就在出租屋里,把第一弹的 app 做出来了,还有小几万日活。”   当时的王整等人依靠贴大字报、发传单、在 QQ 群宣传等最原始的方法,让第一弹在短时间内积累了可观的用户数量,也由此受到了资本的青睐。   第一弹很快迎来了第一笔投资款,种子轮的投资机构为天天投;2015 年 9 月由联创永宣领投,天天投跟投的 500 万天使轮到账;2016 年 6 月北极光创投以 1500 万入股了第一弹的A轮;2017 年 4 月游族网络投资 3500 万在B轮进入;2017 年 12 月,第一弹的B+ 轮到账,投资方为襄禾资本、华创资本、光大控股、和光艺(北京)投资。   C 君告诉数娱梦工厂,外界盛传的游族以 5000 万元投资第一弹并不准确,实际金额在 3500 万。而最后一轮的到账时间是在 2017 年的圣诞节,那轮投资人打给第一弹 1.3 亿。   而第一弹每一轮的估值分别为:种子轮 800 万、天使轮 2000 万、A轮 6000 万、B轮 1.5 亿   B+ 轮 6.3 亿。   有了资本的加持,第一弹早早开启了加速跑。成立仅一年时间后,2015 年的第一弹就拥有了 230 万的用户,当时的日活数可以达到 40 万上下。   几乎是在同一时间维度,猎豹在美国成功上市,陈睿功成身退加入了B站。彼时的“小破站”还没有远赴大洋彼岸 IPO,B站也远不是现今二次元平台霸主的地位。ACG 江湖秩序未定,这也给了王整有过赶A超B的念头。   王整曾自信地表示:第一弹的优势在于包括视频但不仅限于视频,B站以视频为主,受环境流量限制不能随时使用。而第一弹兼具了内容及渠道双重属性,在未来会发展成一个二次元的生态链。通过打造源源不断的内容 IP,衍生出商业价值,再将 IP 内容直接孵化成游戏,而宅物板块可以集交易、分享于一身。   与B站在二次元游戏的发迹如出一辙,“第一弹一开始的模式也是想做 ACG 社区,然后基于社区做 ACG 游戏的发行。所以在A轮之后就开始着手引进游戏方面的高管,当时明日方舟的小伙伴还为此做了人才方面的推荐。” C 君表示。   然而第一弹的游戏变现之路却走的便不顺畅。想要引入的第一款游戏名为《零界点》,结果还没等上线,作为 CP 方的研发公司先出现了内讧,导致游戏胎死腹中,项目不了了之。   根据第一弹多位前高层的描述,在 2017 年游戏业务正式上线前,早年的第一弹收入模式十分单一,主要依靠广告和电商两个板块。   其中广告业务主要是收集一些 QQ 空间为主的渠道资源,并整合二次利用后对外出售广告投放,每个月的广告收入约为 10~30 万元不等。而电商业务则更小,当时在第一弹的 App 内有设置了一个电商板块,和几家动漫淘宝店进行合作,第一弹只管渠道,不管发货,每月电商收入差不多在 10 万元左右。   2017 年,第一弹的全年营收大约在 400~500 万之间。但即便是这般的商业化能力却依然吸引了包括游族、光大、爱奇艺、华创等大量资本的青睐。C君告诉数娱梦工厂:“当时投资人给的估值主要依据第一弹的日活数,简单讲就是以 100 美金乘以日活来计算。”   在 2017 年的最后一轮融资时,第一弹的用户日活数恰好近 100 万大关,最终拿到了 6.3 亿的估值。而谁也没有料想到,这竟成为了第一弹最后的一餐盛宴。    双面第一弹,王整的红与黑   “羡慕啊,我们也想卖身。”   2018 年初,一条重磅消息在二次元圈迅速蔓延,字节跳动完成对二次元垂直社区“半次元”全资收购,引起了大量同行的关注与羡慕。但其实,字节跳动挑选收购目标时,当初的第一顺位并不是“半次元”而是第一弹。   “当时我陪着王整一起去的北京,到了字节跳动总部但是没有见到张一鸣。对方一位负责人提出要收购,但王整不同意,他只想被入股。”在接受数娱梦工厂采访时,前第一弹运营负责人J君(化名)依然对这段谈判经历记忆犹新。   王整拒绝字节跳动收购的原因主要有两方面:1、2017 年底的B+ 轮时,第一弹的估值已经被抬到了 6.3 亿,而字节跳动开出的收购价为 5 亿,有一定缩水。2、交易方式上字节跳动提出以置换自身股权+部分现金的方式,也并不合王整的口味,后者更希望以全现金的方式完成套现。   “当时王整贪心,不肯要。”一位第一弹的前高层评价此事时充满了遗憾。如果当时卖给了字节跳动,王整和第一弹团队其他人的命运轨迹此时将截然不同,有时财富自由和锒铛入狱,仅仅一念之差。   谈崩之后的字节跳动转手找到了半次元,后者作价仅为 2 亿。自此第一弹和字节跳动的交易彻底宣告流产,也有 ACG 业内人士对数娱梦工厂表示,尽管第一弹当时体量相对半次元更大,但是前者的 UGC 内容并不突出,平台已经进入了瓶颈期。   在当时第一弹官网上,出现了不少用户上传盗版动画的情况,其中不乏一些已经被国内其他视频网站购买过版权的新番。但由于是用户自行上传的 UGC 行为,平台方往往可以将自身撇得一干二净。而王整也对这种打擦边球的行为“睁一只眼闭一只眼”,并由此获得了大量用户和流量,这也为后来第一弹彻底转向盗版海外剧网站,埋下了伏笔。   王整拒绝字节跳动的底气或许也有游戏业务的原因,2017 年下半年,第一弹独家代理发行的第二款游戏《牧羊人之心》正式宣告上线,这是一款由 YAMAYURI GAMES 研发的魔物娘养成游戏。   《牧羊人之心》为第一弹挣到了不少钱,据内部人士透露,这款游戏的版权金不超过 300 万,但首月的流水就贡献了 2500 万左右。自此,游戏业务迅速占据了第一弹的主要收入来源。游戏、广告、电商的营收占比变成了7:2:1 的结构。   但第一弹的内部分歧也变得越来越大,一位第一弹的前游戏负责人S君(化名)告诉数娱梦工厂:“老王(王整)其实对游戏不太懂,他以为《牧羊人之心》的用户贡献主要来自第一弹,但实际上大部分都是我们从站外引来的。”   因为内部分歧和其他一些人际矛盾,分管游戏业务的高层被王整赶走。此后虽然第一弹又代理了第三款名为《宝石研物语》的二次元手游,却以亏损告终。   而第一弹的更多问题也开始逐渐暴露出来。此前为了新增用户和流量,第一弹甚至通过阴阳渠道搞起了色情内容。   据S君介绍,所谓阴阳渠道,就是在应用宝、苹果商店这些“阳渠道”下载的是第一弹的正规 APP,看到的是正常社区内容。而第一弹同时又在盗版小说网站、色情网站布设了“阴渠道”,那些渠道下载后的第一弹能看色情内容、小黄片、小黄漫,甚至还存在聊骚、招嫖等内容。   “王整提出超A赶B的口号,曾经一度在日活数上和A站旗鼓相当。但第一弹的数据中有不小的水分。它的许多流量是虚构的,是来自阴阳渠道,靠色情内容引进来的新增用户,其实这些用户并不能算是第一弹的真正用户。相当于游戏行业里流行的马甲包,但第一弹的马甲包就是各种各样的黄色小软件,通过这些把流量和用户导入到后台数据,看似获得了很多用户,数据特别好看,但其实很多是假的,也骗了很多投资人。”一位已离职的第一弹前高层坦言表示。    致命的转型   第一弹的变味是从 2017 年B站严打字幕组开始的。   由于B站没有海外剧版权,各家字幕组上传的影视资源不得不面临下架整改,而其中大部分字幕组就选择了第一弹作为自己的“第二战场”。   而当时的王整则选择了来者不拒的姿态,第一弹强势补位,吸引大批海外字幕组入驻,成为日剧迷、泰剧迷、韩剧迷等海外剧迷聚集地。   C 君回忆说:“B站严打字幕组以后,就有字幕组来第一弹放视频了。最开始是泰剧,然后数据就非常好看,用户留存非常稳定。当时一些老员工并不认同王整的做法,也对字幕组进行了抵触,当时的第一弹没有给字幕组的作品以官方首页的推荐,也没有做追番表,不做任何推送。”   虽然当时的第一弹已经踩上了“红线”,但每次一有版权方投诉过来时,还能第一时间将盗版视频下架。而且当时还没有设立看盗版剧的付费会员和广告位,相当于尚未触及到非法获利的核心区域。   2018 年初,随着最后一批反对王整的老臣从第一弹离开,这家 ACG 社区再也找不回当年的“初心”,在盗版的路上一路狂飙,越走越远。   一名第一弹的前员工在与数娱梦工厂聊起:为什么第一弹会放着好好的二次元不做,而干起了通过盗版来卖会员、卖广告的行为时?有很大原因来自于一些人对王整的误导。“老王后来招一些在我们之前同事看来很不正经的人。在他们的怂恿下,第一弹开始做阴阳渠道、涉黄以此来获得更好看的用户数据,和字幕组合作做盗版剧社区来牟利。”   但这些第一弹的老员工们已没有了“清君侧”的机会。在增长数据的诱惑下,王整选择了与魔鬼做场交易。   字幕组提供的盗版海外剧是一种相当低成本的引流模式,在不费任何版权金的情况下,积累起了上百万的日活,就连第一弹的公众号(弹弹妹)都因此获得了 252 万的粉丝,头条报价达每次 8 万。而这只是第一弹因盗版盈利中的冰山一角。   据“某企业信息查询平台”显示,自 2018 年 12 月以来,第一弹 APP 的实际运营方——上海斯干网络科技有限公司面临 21 起因影视版权问题引发的诉讼。   但令外界感到费解的是,既然已经有如此大量的投诉和诉讼发生,为什么作为董事长的王整依然没有踩下刹车键?作为一家已经经历了 5 轮融资,估值高达 6.3 亿的企业而言,不应该也不可能如此没有风控意识和法律常识。   “曾有人向王整推荐过一位有上层资源的人物,可能王整觉得靠此人能摆平外部的投诉和监管,这也是后来第一弹敢肆无忌惮做盗版的原因。”一位已离职的第一弹高层透露。   明天和制裁哪个先到?对于王整而言,已经有了答案。人生没有如果,失去了初心的第一弹还没来得及闪耀就已化作了尘埃。
来源:博客园
发布时间:2020-08-24 15:17:00
  图片来源@视觉中国   文丨一千二百字(ID:word1200)   拼多多二季报出来后,网上各投资者论坛上激烈的讨论迅速分化成鲜明的两派,一边认为 GMV 增速放缓了,股价下挫,拼多多威力不再;另一边继续看好,新增活跃买家数领先京东和手机淘宝,百亿补贴效果依然明显。总之,这只股票在成交量与争论性方面保持着很高的热度。   外界对拼多多这半年的增长有一个疑问,二季度是疫情后的恢复期,国内在线零售的大盘也从一季度的低靡中迅速恢复,反映在天猫和京东都是二季度 GMV 同比增速高于一季度,怎么到了拼多多这里就反了?无论是从 LTM 连续 12 个月的 GMV,还是按照单季度推算出的 GMV 看,都是一季度时增长更强劲。   国家统计局数据,7 月份销售额仍是同比负增长。在线零售已恢复到同比 20% 左右水平   答案其实没有那么玄妙。   我的分析是,这是拼多多管理层策略调整的结果。去年 Q2 季拼多多开始百亿补贴,以 iPhone 等高客单价商品拉动 GMV 与用户数,到今年 Q2 正好是一年。但在今年 Q2,百亿补贴的重点方向指向了更低客单价、更高复购率的生活用品上,比如快消品和农产品,这些类目所撬动的 GMV 显然是不如数码类商品的。相比,今年 Q1 疫情开始时的补贴力度不减反增,站在当时看,那是从 2Q19 开启百亿补贴后,除 4Q19 电商大促季之外其市场营销花费最高的一季。   我们这里只能尝试分析一下管理层这样调整的意图。今年 Q2 季的 6.18 大促,天猫和京东打得异常激烈,围绕数码家电类目重点投入资源和补贴。拼多多虽也参与了 6.18 大促,但这种造节聚单不是他的传统优势,管理层可能也为避其锋芒,选择将流量与补贴资金重点投向生活用品和农产品 SKU,以增强用户黏性。   进一步看,拼多多花了两个季度,让其年度活跃买家数量从 5.85 亿增加到 6.83 亿,也就是半年时间拉新近 1 亿用户,这个增幅属于其历史上很大的。目前这些新用户对平台人均消费力 ARPU 的贡献还没释放,导致 2Q20 季度单用户年度花费的环比涨幅并不高,1857 元的平均消费能力与同行相比仍有较明显差距。也就是说,眼下拼多多的任务仍是进一步增强用户信任感,提升他们的复购率与客单价。这是一个比较长期的目标。   这就牵涉到两个问题,一是百亿补贴作为“指挥棒”的效果确实是立竿见影的;二是营销策略为何这样调整,接下来的 Q3、Q4 季百亿补贴还在吗,羊毛还能继续薅吗?我想这是很多消费者关心的问题。    费用结构出现调整   值得注意的是,补贴策略调整背后暗藏着费用结构的变化。按照剔除相应人员股权激励支出的 Non-GAAP 准则看,二季度拼多多的营销费用率(营销费/收入)为 73%,这是 4Q17 以来最低的一季,当时他还没有上市。与前几个季度连续瞄着毛利、甚至是总收入去投放市场和补贴的力度相比,现在的市场策略偏温和。由此“节省”的开支流向了哪里?研发费用。这个我们后面一部分再细说。   拼多多各季度营销费用率   但如果看营销投入的绝对数额,二季度是 88.6 亿(Non-GAAP),基本上是与 4Q19 大促季的 90.4 亿(Non-GAAP)持平的,为历史上的单季度第二高。绝对值没减而百分比下降,主要和收入增长有关。   拼多多二季度的收入同比增速(67%)是高于一季度的(44%),这是因为商家在一季度疫情期间握紧了钱袋子,减少了广告投放,以搜索广告为货币化方式的拼多多自然受到影响。进入二季度,商家被压抑的投放需求集中释放出来,从而推高了平台收入。体现在拼多多的 take rate 货币化率从一季度的 2.8% 涨到二季度的 2.9%,与去年水平持平。   那么,在整体毛利率同比持平、环比改善,以及利息收入增加、投资的公允价值上升等综合因素下,拼多多二季度 Non-GAAP 准则下的归属股东净亏损收窄到-7700 万,去年同期是亏损 4.1 亿,上一季度是亏损 31.7 亿。   拼多多 Non-GAAP 会计准则下各季度的股东净利润   但我并不认为拼多多现在到了向市场讲述盈利能力的时候。主要考虑:用户数仍有明显上升空间,从身边情况看,即便是下沉市场仍有一批消费者尚未进入拼多多体系;对品牌商的渗透率还不够,SKU 需要进一步丰富化;需要建立起一两个具备强势的行业竞争力的品类,农产品目前看是最有希望的。   所以,管理层在分析师会议上也给出了下半年的市场营销计划,仍然会继续提高补贴,同时要盯紧 ROI 投入产出比,采取一个比较谨慎(prudent)的市场策略。这也说明,盈利还不是他现在重点考虑的。    建立农业预测体系   上面提到,拼多多研发费用增长明显。与营销费用季节性投放规律不同,其研发费是逐季度上涨的,没有季节规律。2Q20 季研发费支出 12.7 亿(Non-GAAP),如果把工程师的股权激励加进去是 16.6 亿,研发费用率为 14%,看上半年整体的话是 17%,这在互联网公司中已经算很高的了,特别是他所处的电商并不是一个主要以研发推动的高科技领域。   这里有一个逻辑。随着用户基数与商家规模的增长,平台需要依靠技术让它的推荐算法更精准,让消费者更快找到需要的商品,这样商家投放搜索广告的 ROI 就更有效,竞价就会提升,结果就是给平台带去更多收入。   至于新的研发投入方向,管理层在分析师会议上透露了三点:建立农业预测体系、C2M 数据库、物流计划。特别是第一个,结合其继续加大对农业价值链条的投资力度看,拼多多是想把农产品上行做出一套标准化,做成竞争优势品类的。   与服装、美妆、3C 家电比,农产品的在线渗透率要低很多,正是因为难做才增长空间大。如果把消费者对在线农产品、生鲜商品的需求简单按照“是否即时需求”“贵还是便宜”两条坐标轴划分成一个四象限矩阵,像每日优鲜、盒马、叮咚买菜等各有对应象限归属,拼多多农产品过去占据的是“非即时-便宜”象限,但从近期的多多买菜等新业态举动看,他想进入“即时-便宜”象限,最相似的对手可能是美团买菜。社区团购竞争会升级,拼多多在“非即时-便宜”场景下累计的农产品供应链经验,能多大程度上让社区团购场景受益,需要继续关注。   综上,应该说拼多多的策略是有自己的节奏感的,从上市初期大力度投放品牌广告、做综艺冠名获取知名度与信任,到一年前大手笔调整营销结构,砍掉一部分品牌广告,将更多钱花在补贴上,再到近期调整费用结构,每一步都有他清晰的业务诉求,“进化力”不容小觑。当然,市场随时在变化,拼多多也在做出应对,有进攻、有妥协,但始终是强用户视角的,用户留存仍是观察这个平台接下来表现的重点之一。
来源:博客园
发布时间:2020-08-24 15:08:00
众所周知,当我们利用 R语言 处理大型数据集时,for循环语句的运算效率非常低。有许多种方法可以提升你的代码运算效率,但或许你更想了解运算效率能得到多大的提升。本文将介绍几种适用于 大数据 领域的方法,包括简单的逻辑调整设计、并行处理和Rcpp的运用,利用这些方法你可以轻松地处理1亿行以上的数据集。 让我们尝试提升往数据框中添加一个新变量过程(该过程中包含循环和判断语句)的运算效率。下面的代码输出原始数据框: # Create the data frame col1 <- runif (12^5, 0, 2) col2 <- rnorm (12^5, 0, 2) col3 <- rpois (12^5, 3) col4 <- rchisq (12^5, 2) df <- data.frame (col1, col2, col3, col4) 逐行判断该数据框(df)的总和是否大于4,如果该条件满足,则对应的新变量数值为’greaterthan4’,否则赋值为’lesserthan4’。 本文中所有的计算都在配置了2.6Ghz处理器和8GB内存的MAC OS X中运行。 1.向量化处理和预设数据库结构 循环运算前,记得预先设置好数据结构和输出变量的长度和类型,千万别在循环过程中渐进性地增加数据长度。接下来,我们将探究向量化处理是如何提高处理数据的运算速度。 2.将条件语句的判断条件移至循环外 将条件判断语句移至循环外可以提升代码的运算速度,接下来本文将利用包含100,000行数据至1,000,000行数据的数据集进行测试: 3.只在条件语句为真时执行循环过程 另一种优化方法是预先将输出变量赋值为条件语句不满足时的取值,然后只在条件语句为真时执行循环过程。此时,运算速度的提升程度取决于条件状态中真值的比例。 本部分的测试将和case(2)部分进行比较,和预想的结果一致,该方法确实提升了运算效率。 4.尽可能地使用 ifelse()语句 利用ifelse()语句可以使你的代码更加简便。ifelse()的句法格式类似于if()函数,但其运算速度却有了巨大的提升。即使是在没有预设数据结构且没有简化条件语句的情况下,其运算效率仍高于上述的两种方法。 5.使用 which()语句 利用which()语句来筛选数据集,我们可以达到Rcpp三分之一的运算速率。 6.利用apply族函数来替代for循环语句 本部分将利用apply()函数来计算上文所提到的案例,并将其与向量化的循环语句进行对比。该方法的运算效率优于原始方法,但劣于ifelse()和将条件语句置于循环外端的方法。该方法非常有用,但是当你面对复杂的情形时,你需要灵活运用该函数。 7.利用compiler包中的字节码编译函数cmpfun() 这可能不是说明字节码编译有效性的最好例子,但是对于更复杂的函数而言,字节码编译将会表现地十分优异,因此我们应当了解下该函数。 8.利用Rcpp 截至目前,我们已经测试了好几种提升运算效率的方法,其中最佳的方法是利用ifelse()函数。如果我们将数据量增大十倍,运算效率将会变成啥样的呢接下来我们将利用Rcpp来实现该运算过程,并将其与ifelse()进行比较。 下面是利用C++语言编写的函数代码,将其保存为“MyFunc.cpp”并利用sourceCpp进行调用。 9.利用并行运算 并行运算的代码: 10.尽早地移除变量并恢复内存容量 在进行冗长的循环计算前,尽早地将不需要的变量移除掉。在每次循环迭代运算结束时利用gc()函数恢复内存也可以提升运算速率。 11.利用内存较小的数据结构 data.table()是一个很好的例子,因为它可以减少数据的内存,这有助于加快运算速率。 总结 方法:速度, nrow(df)/time_taken = n 行每秒 原始方法:1X, 856.2255行每秒(正则化为1) 向量化方法:738X, 631578行每秒 只考虑真值情况:1002X,857142.9行每秒 ifelse:1752X,1500000行每秒 which:8806X,7540364行每秒 Rcpp:13476X,11538462行每秒 原文作者:Selva Prabhakaran 原文链接:http://datascienceplus.com/strategies-to-speedup-r-code/ 译者:fibears 本文为专栏文章,来自:数据工匠,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/9062.html 。
来源:数据分析网
发布时间:2016-02-16 17:20:00
最近, Analysis with Programming 加入了 Planet Python 。作为该网站的首批特约博客,我这里来分享一下如何通过Python来开始 数据分析 。具体内容如下: 数据导入——导入本地的或者web端的CSV文件; 数据变换; 数据统计描述; 假设检验——单样本t检验; 可视化; 创建自定义函数。 数据导入 这是很关键的一步,为了后续的分析我们首先需要导入数据。通常来说,数据是CSV格式,就算不是,至少也可以转换成CSV格式。在Python中,我们的操作如下: 1 2 3 4 5 6 7 8 import pandas as pd # Reading data locally df = pd . read_csv ( ‘/Users/al-ahmadgaidasaad/Documents/d.csv’ ) # Reading data from web data_url = “https://raw.githubusercontent.com/alstat/Analysis-with-Programming/master/2014/Python/Numerical-Descriptions-of-the-Data/data.csv” df = pd . read_csv ( data_url ) 为了读取本地CSV文件,我们需要pandas这个数据分析库中的相应模块。其中的read_csv函数能够读取本地和web数据。 数据变换 既然在工作空间有了数据,接下来就是数据变换。统计学家和科学家们通常会在这一步移除分析中的非必要数据。我们先看看数据: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 # Head of the data print df . head ( ) # OUTPUT Abra Apayao Benguet Ifugao Kalinga 0 1243 2934 148 3300 10553 1 4158 9235 4287 8063 35257 2 1787 1922 1955 1074 4544 3 17152 14501 3536 19607 31687 4 1266 2385 2530 3315 8520 # Tail of the data print df . tail ( ) # OUTPUT Abra Apayao Benguet Ifugao Kalinga 74 2505 20878 3519 19737 16513 75 60303 40065 7062 19422 61808 76 6311 6756 3561 15910 23349 77 13345 38902 2583 11096 68663 78 2623 18264 3745 16787 16900 对R语言程序员来说,上述操作等价于通过print(head(df))来打印数据的前6行,以及通过print(tail(df))来打印数据的后6行。当然Python中,默认打印是5行,而R则是6行。因此R的代码head(df, n = 10),在Python中就是df.head(n = 10),打印数据尾部也是同样道理。 在R语言中,数据列和行的名字通过colnames和rownames来分别进行提取。在Python中,我们则使用columns和index属性来提取,如下: 1 2 3 4 5 6 7 8 9 10 11 # Extracting column names print df . columns # OUTPUT Index ( [ u ‘Abra’ , u ‘Apayao’ , u ‘Benguet’ , u ‘Ifugao’ , u ‘Kalinga’ ] , dtype = ‘object’ ) # Extracting row names or the index print df . index # OUTPUT Int64Index ( [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , 63 , 64 , 65 , 66 , 67 , 68 , 69 , 70 , 71 , 72 , 73 , 74 , 75 , 76 , 77 , 78 ] , dtype = ‘int64’ ) 数据转置使用T方法, 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 # Transpose data print df . T # OUTPUT 0 1 2 3 4 5 6 7 8 9 Abra 1243 4158 1787 17152 1266 5576 927 21540 1039 5424 Apayao 2934 9235 1922 14501 2385 7452 1099 17038 1382 10588 Benguet 148 4287 1955 3536 2530 771 2796 2463 2592 1064 Ifugao 3300 8063 1074 19607 3315 13134 5134 14226 6842 13828 Kalinga 10553 35257 4544 31687 8520 28252 3106 36238 4973 40140 . . . 69 70 71 72 73 74 75 76 77 Abra . . . 12763 2470 59094 6209 13316 2505 60303 6311 13345 Apayao . . . 37625 19532 35126 6335 38613 20878 40065 6756 38902 Benguet . . . 2354 4045 5987 3530 2585 3519 7062 3561 2583 Ifugao . . . 9838 17125 18940 15560 7746 19737 19422 15910 11096 Kalinga . . . 65782 15279 52437 24385 66148 16513 61808 23349 68663 78 Abra 2623 Apayao 18264 Benguet 3745 Ifugao 16787 Kalinga 16900 Other transformations such as sort can be done using < code > sort < / code > attribute . Now let ‘ s extract a specific column . In Python , we do it using either < code > iloc < / code > or < code > ix < / code > attributes , but < code > ix < / code > is more robust and thus I prefer it . Assuming we want the head of the first column of the data , we have 其他变换,例如排序就是用sort属性。现在我们提取特定的某列数据。Python中,可以使用iloc或者ix属性。但是我更喜欢用ix,因为它更稳定一些。假设我们需数据第一列的前5行,我们有: 1 2 3 4 5 6 7 8 9 print df . ix [ : , 0 ] . head ( ) # OUTPUT 0 1243 1 4158 2 1787 3 17152 4 1266 Name : Abra , dtype : int64 顺便提一下,Python的索引是从0开始而非1。为了取出从11到20行的前3列数据,我们有: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 print df . ix [ 10 : 20 , 0 : 3 ] # OUTPUT Abra Apayao Benguet 10 981 1311 2560 11 27366 15093 3039 12 1100 1701 2382 13 7212 11001 1088 14 1048 1427 2847 15 25679 15661 2942 16 1055 2191 2119 17 5437 6461 734 18 1029 1183 2302 19 23710 12222 2598 20 1091 2343 2654 上述命令相当于 df.ix[10:20, ['Abra', 'Apayao', 'Benguet']] 。 为了舍弃数据中的列,这里是列1(Apayao)和列2(Benguet),我们使用drop属性,如下: 1 2 3 4 5 6 7 8 9 print df . drop ( df . columns [ [ 1 , 2 ] ] , axis = 1 ) . head ( ) # OUTPUT Abra Ifugao Kalinga 0 1243 3300 10553 1 4158 8063 35257 2 1787 1074 4544 3 17152 19607 31687 4 1266 3315 8520 axis 参数告诉函数到底舍弃列还是行。如果 axis 等于0,那么就舍弃行。 统计描述 下一步就是通过 describe 属性,对数据的统计特性进行描述: 1 2 3 4 5 6 7 8 9 10 11 12 print df . describe ( ) # OUTPUT Abra Apayao Benguet Ifugao Kalinga count 79.000000 79.000000 79.000000 79.000000 79.000000 mean 12874.379747 16860.645570 3237.392405 12414.620253 30446.417722 std 16746.466945 15448.153794 1588.536429 5034.282019 22245.707692 min 927.000000 401.000000 148.000000 1074.000000 2346.000000 25 % 1524.000000 3435.500000 2328.000000 8205.000000 8601.500000 50 % 5790.000000 10588.000000 3202.000000 13044.000000 24494.000000 75 % 13330.500000 33289.000000 3918.500000 16099.500000 52510.500000 max 60303.000000 54625.000000 8813.000000 21031.000000 68663.000000 假设检验 Python有一个很好的统计推断包。那就是scipy里面的stats。ttest_1samp实现了单样本t检验。因此,如果我们想检验数据Abra列的稻谷产量均值,通过零假设,这里我们假定总体稻谷产量均值为15000,我们有: 1 2 3 4 5 6 7 from scipy import stats as ss # Perform one sample t-test using 1500 as the true mean print ss . ttest_1samp ( a = df . ix [ : , ‘Abra’ ] , popmean = 15000 ) # OUTPUT ( – 1.1281738488299586 , 0.26270472069109496 ) 返回下述值组成的元祖: t : 浮点或数组类型 t统计量 prob : 浮点或数组类型 two-tailed p-value 双侧概率值 通过上面的输出,看到p值是0.267远大于α等于0.05,因此没有充分的证据说平均稻谷产量不是150000。将这个检验应用到所有的变量,同样假设均值为15000,我们有: 1 2 3 4 5 6 print ss . ttest_1samp ( a = df , popmean = 15000 ) # OUTPUT ( array ( [ – 1.12817385 , 1.07053437 , – 65.81425599 , – 4.564575 , 6.17156198 ] ) , array ( [ 2.62704721e – 01 , 2.87680340e – 01 , 4.15643528e – 70 , 1.83764399e – 05 , 2.82461897e – 08 ] ) ) 第一个数组是t统计量,第二个数组则是相应的p值。 可视化 Python中有许多可视化模块,最流行的当属matpalotlib库。稍加提及,我们也可选择bokeh和seaborn模块。之前的博文中,我已经说明了matplotlib库中的盒须图模块功能。 1 2 3 # Import the module for plotting import matplotlib . pyplot as plt plt . show ( df . plot ( kind = ‘box’ ) ) 现在,我们可以用pandas模块中集成R的ggplot主题来美化图表。要使用ggplot,我们只需要在上述代码中多加一行 1 2 3 import matplotlib . pyplot as plt pd . options . display . mpl_style = ‘default’ # Sets the plotting display theme to ggplot2 df . plot ( kind = ‘box’ ) 这样我们就得到如下图表: 比matplotlib.pyplot主题简洁太多。但是在本博文中,我更愿意引入seaborn模块,该模块是一个统计 数据可视化 库。因此我们有: 1 2 3 4 # Import the seaborn library import seaborn as sns # Do the boxplot plt . show ( sns . boxplot ( df , widths = 0.5 , color = “pastel” ) ) 多性感的盒式图,继续往下看。 1 plt . show ( sns . violinplot ( df , widths = 0.5 , color = “pastel” ) ) 1 plt . show ( sns . distplot ( df . ix [ : , 2 ] , rug = True , bins = 15 ) ) 1 2 with sns . axes_style ( “white” ) : plt . show ( sns . jointplot ( df . ix [ : , 1 ] , df . ix [ : , 2 ] , kind = “kde” ) ) 1 plt . show ( sns . lmplot ( “Benguet” , “Ifugao” , df ) ) 创建自定义函数 在Python中,我们使用def函数来实现一个自定义函数。例如,如果我们要定义一个两数相加的函数,如下即可: 1 2 3 4 5 6 7 def add_2int ( x , y ) : return x + y print add_2int ( 2 , 2 ) # OUTPUT 4 顺便说一下,Python中的缩进是很重要的。通过缩进来定义函数作用域,就像在R语言中使用大括号{…}一样。这有一个我们之前博文的例子: 1.产生10个正态分布样本,其中 和 2.基于95%的置信度,计算 和 3.重复100次 4.计算出置信区间包含真实均值的百分比 Python中,程序如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 import numpy as np import scipy . stats as ss def case ( n = 10 , mu = 3 , sigma = np . sqrt ( 5 ) , p = 0.025 , rep = 100 ) : m = np . zeros ( ( rep , 4 ) ) for i in range ( rep ) : norm = np . random . normal ( loc = mu , scale = sigma , size = n ) xbar = np . mean ( norm ) low = xbar – ss . norm . ppf ( q = 1 – p ) * ( sigma / np . sqrt ( n ) ) up = xbar + ss . norm . ppf ( q = 1 – p ) * ( sigma / np . sqrt ( n ) ) if ( mu > low ) & ( mu < up ) : rem = 1 else : rem = 0 m [ i , : ] = [ xbar , low , up , rem ] inside = np . sum ( m [ : , 3 ] ) per = inside / rep desc = “There are “ + str ( inside ) + ” confidence intervals that contain “ “the true mean (“ + str ( mu ) + “), that is “ + str ( per ) + ” percent of the total CIs” return { “Matrix” : m , “Decision” : desc } 上述代码读起来很简单,但是循环的时候就很慢了。下面针对上述代码进行了改进。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 import numpy as np import scipy . stats as ss def case2 ( n = 10 , mu = 3 , sigma = np . sqrt ( 5 ) , p = 0.025 , rep = 100 ) : scaled_crit = ss . norm . ppf ( q = 1 – p ) * ( sigma / np . sqrt ( n ) ) norm = np . random . normal ( loc = mu , scale = sigma , size = ( rep , n ) ) xbar = norm . mean ( 1 ) low = xbar – scaled_crit up = xbar + scaled_crit rem = ( mu > low ) & ( mu < up ) m = np . c_ [ xbar , low , up , rem ] inside = np . sum ( m [ : , 3 ] ) per = inside / rep desc = “There are “ + str ( inside ) + ” confidence intervals that contain “ “the true mean (“ + str ( mu ) + “), that is “ + str ( per ) + ” percent of the total CIs” return { “Matrix” : m , “Decision” : desc } 本文由 伯乐在线 – Den 翻译。英文出处: alstatr.blogspot.ca 。 本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「 我们 」留言处理。
来源:数据分析网
发布时间:2016-02-15 20:12:00
  8 月 24 日,支付宝 iOS 端整机 10.2.0 版本,首页“付钱”“收钱”合并,并新增“出行”功能,无论是公交、地铁、火车、单车还是网约车都更加方便。   与此同时,花呗金也得到升级,做任务赚取花呗金,可抵扣花呗还款额。   据了解,100 花呗金=1 元花呗还款,花呗金具有一定的有效期,是从领取时开始一直到第二年的 12 月 31 日,只要用户在还款时的花呗金数大于1,就可以选择花呗金用于还款时的抵扣。   此外,花呗金还能用来兑换各种权益,如明星来电、不同金额的分期优惠券等。   今年,支付宝平台国内用户量突破 9 亿,小程序数量突破 200 万,“数字市民中心”已服务超过 6 亿用户,覆盖全国 337 城,有超过 5.5 万项政务民生服务。“数字景区”覆盖全国超过 1000 个核心景区,“数字酒店”助力全国超过 20000 家酒店完成了数字化升级。   支付宝本次更新内容如下:   1、首页“付钱”“收钱”合并,使用更方便。   2、首页新增“出行”,搭公交、乘地铁、坐火车、骑单车、网约车,出行更便捷。   3、花呗金升级,做任务赚花呗金,抵扣花呗还款额,会花能省,持家小能手就是你。
来源:博客园
发布时间:2020-08-24 15:00:00
  熟悉特斯拉的朋友都知道,其车辆在硬件配置上都相同,只不过有些功能被软件锁定,无法使用。如果车主以后想使用的话,需要进行付费升级。   不过,特斯拉的有些升级费用并不菲,如 Model 3 最近的 Acceleration Boost 升级套件,百公里加速成绩由 4.4 秒提升到 3.9 秒,价格就高达 2000 美元(约合人民币 1.38 万元)。   为此,有人就动起了“歪脑筋”,通过别的方法破解特斯拉的限制,从而实现免费升级。有人不仅这么想,还真这么干了。   据了解,加拿大企业 Ingenext,之前推出了两款黑客软件,可以帮助车主解锁那些官方锁定的功能。   其中"Boost 50"用户只需要花 1100 美元(约合人民币 7600 元),就能解锁跟官方 Acceleration Boost 相同的性能,同时还附带一个漂移模式,简直是“物美价廉”。   不过,这些私自“解锁”的用户,没能使用多久,就被特斯拉官方发现了。   有 Ingenext 用户反映称,自己的车机系统更新到 2020.32.2 之后,屏幕上出现了这样的通知:“已检测到了不兼容的车辆改装,这可能会导致车辆潜在的损坏或关闭风险”。   但是对此,Ingenext 的创始人就显得坦然自信多了,其对用户说道:“特斯拉通过软件升级修补了之前的漏洞,建议用户暂时先不要更新,我们会在未来的1-2 周内开发出新的补丁程序,让用户可以毫无问题地继续更新。”   很显然,特斯拉的造车理念及运营模式决定着,黑客们不会停止破解特斯拉车辆的行为,因为这其中的利益巨大。显而易见,特斯拉和黑客之间的“交流”,暂时还不会结束。
来源:博客园
发布时间:2020-08-24 14:53:00
利用 机器学习 可以很方便的做情感分析。本篇文章将介绍在 R语言 中如何利用机器学习方法来做情感分析。在R语言中,由 Timothy P.Jurka 开发的情感分析以及更一般的 文本挖掘 包已经得到了很好的发展。你可以查看下 sentiment包 以及梦幻般的RTextTools包。实际上,Timothy还写了一个针对低内存下多元Logistic回归(也称最大熵)的R包 maxtent 。 然而, RTextTools 包中不包含朴素贝叶斯方法。 e1071 包可以很好的执行朴素贝叶斯方法。e1071是TU Wien(维也纳科技大学)统计系的一门课程。这个包的主要开发者是 David Meyer 。 我们仍然有必要了解 文本分析 方面的知识。用R语言来处理文本分析已经是公认的事实(详见 R语言中的自然语言处理 )。 tm包 算是其中成功的一部分:它是R语言在文本挖掘应用中的一个框架。它在文本清洗(词干提取,删除停用词等)以及将文本转换为词条-文档矩阵(dtm)方面做得很好。 这里 是对它的一个介绍。文本分析最重要的部分就是得到每个文档的特征向量,其中词语特征最重要的。当然,你也可以将单个词语特征扩展为双词组,三连词,n-连词等。在本篇文章,我们以单个词语特征为例做演示。 注意,在R中用 ngram 包来处理n-连词。在过去, Rweka 包提供了函数来处理它,感兴趣的可以查看这个 案例 。现在,你可以设置 RTextTools 包中 create_matrix 函数的参数 ngramLength 来实现它。 第一步是读取数据: library(RTextTools) library(e1071) pos_tweets = rbind( c('I love this car', 'positive'), c('This view is amazing', 'positive'), c('I feel great this morning', 'positive'), c('I am so excited about the concert', 'positive'), c('He is my best friend', 'positive') ) neg_tweets = rbind( c('I do not like this car', 'negative'), c('This view is horrible', 'negative'), c('I feel tired this morning', 'negative'), c('I am not looking forward to the concert', 'negative'), c('He is my enemy', 'negative') ) test_tweets = rbind( c('feel happy this morning', 'positive'), c('larry friend', 'positive'), c('not like that man', 'negative'), c('house not great', 'negative'), c('your song annoying', 'negative') ) tweets = rbind(pos_tweets, neg_tweets, test_tweets) 创建词条-文档矩阵: # build dtm matrix= create_matrix(tweets[,1], language="english", removeStopwords=FALSE, removeNumbers=TRUE, stemWords=FALSE) 现在,我们可以用这个数据集来训练朴素贝叶斯模型。注意, e1071 要求响应变量是数值型或因子型的。我们用下面的方法将字符串型数据转换成因子型: # train the model mat = as.matrix(matrix) classifier = naiveBayes(mat[1:10,], as.factor(tweets[1:10,2]) ) 测试结果准确度: # test the validity predicted = predict(classifier, mat[11:15,]); predicted table(tweets[11:15, 2], predicted) recall_accuracy(tweets[11:15, 2], predicted) 显然,这个结果跟python得到的结果是相同的( 这篇文章 是用python得到的结果)。 其它机器学习方法怎样呢? 下面我们使用 RTextTools 包来处理它。 首先,指定相应的数据: # build the data to specify response variable, training set, testing set. container = create_container(matrix, as.numeric(as.factor(tweets[,2])), trainSize=1:10, testSize=11:15,virgin=FALSE) 其次,用多种机器学习算法训练模型: models = train_models(container, algorithms=c("MAXENT" , "SVM", "RF", "BAGGING", "TREE")) 现在,我们可以使用训练过的模型做测试集分类: results = classify_models(container, models) 准确性如何呢? # accuracy table table(as.numeric(as.factor(tweets[11:15, 2])), results[,"FORESTS_LABEL"]) table(as.numeric(as.factor(tweets[11:15, 2])), results[,"MAXENTROPY_LABEL"]) # recall accuracy recall_accuracy(as.numeric(as.factor(tweets[11:15, 2])), results[,"FORESTS_LABEL"]) recall_accuracy(as.numeric(as.factor(tweets[11:15, 2])), results[,"MAXENTROPY_LABEL"]) recall_accuracy(as.numeric(as.factor(tweets[11:15, 2])), results[,"TREE_LABEL"]) recall_accuracy(as.numeric(as.factor(tweets[11:15, 2])), results[,"BAGGING_LABEL"]) recall_accuracy(as.numeric(as.factor(tweets[11:15, 2])), results[,"SVM_LABEL"]) 得到模型的结果摘要(特别是结果的有效性): # model summary analytics = create_analytics(container, results) summary(analytics) head(analytics@document_summary) analytics@ensemble_summar 结果的交叉验证: N=4 set.seed(2014) cross_validate(container,N,"MAXENT") cross_validate(container,N,"TREE") cross_validate(container,N,"SVM") cross_validate(container,N,"RF") 结果可在 我的Rpub页面 找到。可以看到, maxent 的准确性跟朴素贝叶斯是一样的,其它方法的结果准确性更差。这是可以理解的,因为我们给的是一个非常小的数据集。扩大训练集后,利用更复杂的方法我们对推文做的情感分析可以得到一个更好的结果。示例演示如下: 推文情感分析 数据来自 victornep 。victorneo展示的是用python对推文做情感分析。这里,我们用R来处理它: 读取数据: ################### "load data" ################### setwd("D:/Twitter-Sentimental-Analysis-master/") happy = readLines("./happy.txt") sad = readLines("./sad.txt") happy_test = readLines("./happy_test.txt") sad_test = readLines("./sad_test.txt") tweet = c(happy, sad) tweet_test= c(happy_test, sad_test) tweet_all = c(tweet, tweet_test) sentiment = c(rep("happy", length(happy) ), rep("sad", length(sad))) sentiment_test = c(rep("happy", length(happy_test) ), rep("sad", length(sad_test))) sentiment_all = as.factor(c(sentiment, sentiment_test)) library(RTextTools) 首先,尝试下朴素贝叶斯 # naive bayes mat= create_matrix(tweet_all, language="english", removeStopwords=FALSE, removeNumbers=TRUE, stemWords=FALSE, tm::weightTfIdf) mat = as.matrix(mat) classifier = naiveBayes(mat[1:160,], as.factor(sentiment_all[1:160])) predicted = predict(classifier, mat[161:180,]); predicted table(sentiment_test, predicted) recall_accuracy(sentiment_test, predicted) 然后,尝试其他方法: # the other methods mat= create_matrix(tweet_all, language="english", removeStopwords=FALSE, removeNumbers=TRUE, stemWords=FALSE, tm::weightTfIdf) container = create_container(mat, as.numeric(sentiment_all), trainSize=1:160, testSize=161:180,virgin=FALSE) #可以设置removeSparseTerms models = train_models(container, algorithms=c("MAXENT", "SVM", #"GLMNET", "BOOSTING", "SLDA","BAGGING", "RF", # "NNET", "TREE" )) # test the model results = classify_models(container, models) table(as.numeric(as.numeric(sentiment_all[161:180])), results[,"FORESTS_LABEL"]) recall_accuracy(as.numeric(as.numeric(sentiment_all[161:180])), results[,"FORESTS_LABEL"]) 这里,我们也希望得到正式的测试结果。包括: analytics@algorithm_summary: 包括精确度,召回率,准确率,F-scores的摘要 analytics@label_summary: 类标签摘要 analytics@document_summary: 所有数据和得分的原摘要 analytics@ensemble_summary: 所有 精确度/覆盖度 比值的摘要 现在让我们看看结果: # formal tests analytics = create_analytics(container, results) summary(analytics) head(analytics@algorithm_summary) head(analytics@label_summary) head(analytics@document_summary) analytics@ensemble_summary # Ensemble Agreement # Cross Validation N=3 cross_SVM = cross_validate(container,N,"SVM") cross_GLMNET = cross_validate(container,N,"GLMNET") cross_MAXENT = cross_validate(container,N,"MAXENT") 与朴素贝叶斯方法相比,其它算法的结果更好,召回精度高于0.95。结果可在 Rpub 查看 注: 对上述得到的四个测试结果所代表的意义可以参考这篇文章 R之文本分类 本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「 我们 」留言处理。
来源:数据分析网
发布时间:2016-02-14 20:00:00
引言 数据处理是建立预测模型时不可避免的一步。一个稳健的预测模型不是仅仅依靠机器学习算法就可以建立的,相反,它还需要依靠一定的方法,这些方法帮助人们理解商业问题,了解潜在数据集,进行必要的数据处理工作并提取出有用的商业信息。 在这些建模阶段里,大多数时间通常都被花在了解潜在数据集和进行必要数据处理上。这也是这篇文章的焦点——谈一谈R中可提高数据处理效率的包。 什么是数据处理? 如果你不清楚这个术语的含义,让我来给你解释一下它。数据处理是和数据探索一起使用的一个没有严格定义的术语。它包括用可获得的变量集“操纵”数据,以提高数据的准确性和精度。 事实上,数据收集的过程会有很多的漏洞。有各种各样不可控的因素会导致数据不精确,比如被调查者的精神状况,个人偏见,数据的读数差异或错误等。为了降低不精确程度,我们运用数据处理来(最大)可能性的增加数据精度。 这一阶段有时也被称为数据整理或数据清洗。 处理数据的不同方式 数据处理方式没有对错之分,只要你能理解数据并采取正确的方法处理数据。但通常人们在尝试进行数据处理时一般会用到以下几个宽泛的方法: 通常来说,R的初学者觉得用R内置的基础函数处理数据就很舒服。这个作为第一步很好,但是通常重复度高且耗时,因此是一个相对低效的解决问题方法。 使用专门的数据处理包。如今CRAN有超过7000个可供使用的包,这些包不过是一些事先写好的常用代码集合。他们可以帮你更快地完成重复性 工作,减少编程差错并从专业人士写的代码中得到帮助(通过R的开源系统),使你的代码运行起来更加高效。这通常是数据处理中最常用的方法。 使用机器学习算法进行数据处理工作。你可以使用基于树的改进算法来处理缺失值和异常值。尽管这个方法无疑更省时,但通常它们会让你觉得对数据的理解不够,并想要找到更好的方法来认识数据。 因此,通常情况下,事实上都是使用包来进行数据处理。在这篇文章中,我将介绍几个使得R的数据处理更方便的包。 这篇文章最适宜于 R语言 的初学者。你可以这样安装一个包: 软件包的清单 为了理解更清楚,我会通过一些常见的指令来示范如何使用它们。下面是这篇文章要讨论的几个R包: dplyr data.table ggplot2 reshape2 readr tidyr lubridate 注:我知道ggplot2是一个用来画图的包,但是,它通常会帮助人们进行 数据可视化 并相应地进行处理数据工作。因此我把它加进了这个单子里。对所有包,我只写了有关数据处理的常用命令。 dplyr包 这个包是Hadley Wickham创建和维护的。它包括了(几乎)全部可以用来加快数据处理进程的内容。它最有名的是数据探索和数据转换功能。它的链式语法让它使用起来很方便。它包括5个主要的数据处理指令: 过滤——集于某一条件过滤数据 选择——选出数据集中感兴趣的列 排列——升序或降序排列数据集中的某一个值域 变换——从已有变量生成新的变量 概括(通过group_by)——提供常用的操作分析,如最小值、最大值、均值等 只需要关注这些指令便可以完成很好的数据探索工作。让我们一起逐一了解一下这些指令。我用到了两个R中内置的数据集mtcars和iris. data.table包 这个包让你可以更快地完成数据集的数据处理工作。放弃选取行或列子集的传统方法,用这个包进行数据处理。用最少的代码,你可以做最多的事。相比使用data.frame,data.table可以帮助你减少运算时间。你一定会对这个包的简洁性感到震惊。 一个数据表格包含三部分,即DT[i, j, by]。你可以理解为我们告诉R用i来选出行的子集,并计算通过by来分组的j。大多数时候,by是用于类别变量的。在下面的代码中,我用了两个数据集(airquality和iris)。 ggplot2包 ggplot包展示了一个全新的色彩与图案世界。如果你是一个富有创意的人,你会非常喜欢这个包。但是如果你是想了解如何开始使用这个包,请依据下面的代码。你至少需要学会画这三个图的方法:散点图,条形图和直方图。 这三个图表涵盖了除了地图外几乎所有的数据展示类别。ggplot有丰富的自定义特征使你的数据可视化变得更好。当和其他诸如 cowplot,gridExtra包一起使用时,它会变得更强大。事实上,它有很多特色指令。因此,你必须专注于几个指令并且做到精通。在下面的代码中 我也展示了在同一个窗口中比较不同图表的方法。它需要gridExtra包来配合,所以你要先安装这个包。我用了R内置的数据集。 reshape2包 正如这个包的名字所表示的含义,这个包对于重塑数据格式很有用。我们都知道数据会有很多不同的表现格式。因此,我们需要根据需要“驯服”它们以为 己用。通常,在R中重塑数据格式非常无聊和麻烦。R基础函数中有一个Aggregation函数,用来缩减并重新排列数据为更短小的格式,但是会大大减少 数据包含的信息量。Aggregation包括tapply,by和aggregate基础函数。reshape包会克服这些问题。在这里我们试着把有一 样值的特征合并在一起。它有两个函数,即melt和cast。 melt: 这个函数把数据从宽格式转化为长格式。这是一种把多个类别列“融合”为一行的结构重组。我们来通过代码理解它是怎么运行的。 Cast: 这个函数把数据从长格式转换为宽格式。它始于融合后的数据,然后把数据重新构造为长格式。它就是melt函数的反向操作。它包括两个函数,即,dcast 和acast。dcast返回数据框作为输出结果。acast返回向量/矩阵/数组作为输出结果。让我们通过下面的代码来看看怎么用它们。 readr包 正如这个包的名字所暗示的,readr用来把不同格式的数据读入R中,通过比传统方法快十倍的速度。在此,字符型变量不会被转化为因子型变量(所 以不再有stringAsFactors = FALSE命令)。这个包可以代替传统的R基础函数read.csv()和read.table()。它可以用来读入以下格式的数据: 分隔符文件:read_delim(),read_csv(),read_tsv()和read_csv2() 固定宽度文件:read_fwf()和read_table() 网络日志文件:read_log() 如果数据载入时间超过5秒,函数还会显示进度条。你可以通过命令它为FALSE来禁止进度条出现。我们来一起看一下下面的代码。 你也可以利用以下的代码定义数据集中每列变量的格式: 然而,如果我们忽视不重要的变量,那么该函数会自动定义这些变量的格式。所以上述代码也可以写成以下形式: 备注:readr包中含有很多有用的函数。所以你可以考虑利用write_csv函数来导出数据,这个函数的运算效率高于write.csv函数。 tidyr包 这个包可以让你的数据看上去“整洁”。它主要用四个函数来完成这个任务。毋庸赘言,当你发现自己在数据探索阶段卡壳的时候,你可以(和dplyr包一起)随时使用这些函数。这两个包形成了一个实力强大的组合。它们很好学,代码容易些,应用便捷。这四个函数是: gather()——它把多列放在一起,然后转化为key:value对。这个函数会把宽格式的数据转化为长格式。它是reshape包中melt函数的一个替代。 spread()——它的功能和gather相反,把key:value对转化成不同的列。 separate()——它会把一列拆分为多列 unite()——它的功能和separate相反,把多列合并为一列 我们一起来通过下面的代码更仔细地了解如何使用他们: 函数separate最适用于有时间变量的数据集。由于列中包含了很多信息,因此把它们拆分开来并分别使用它们很有必要。使用以下的代码,我把一个列拆分成了日期,月份和年。 lubridate包 Lubridate包可以减少在R中操作时间变量的痛苦。此包的内置函数提供了很好的解析日期与时间的便利方法。这个包常用于包含时间数据的数据集。在此我展示了Lubridate包中的三个函数。 这三个函数是update,duration和date extraction。作为一个初学者,了解这三个函数足以让你成为处理时间变量的专家。尽管R有内置函数来处理日期,这个包的处理方法会更快。让我们一起来通过以下代码了解这些函数是如何运用的: 注:这些包最佳的使用方法不是分开单独使用,而是把它们用在一起。你可以很容易地同dplyr一起使用这个包,在dplyr中你可以比较方便地选择一个数据变量并通过链式命令提取出有用的数据。 结语: 这些包不仅能帮助你提升数据处理水平,还能助你更深入地探索R。现在我们已经看到了,这些包让在R中写代码变得更容易。你不再需要写长串的代码,相反,代码变得更短,可以处理的任务变得更多。 每个包都有多线处理任务的功能。因此,我建议你们掌握那些常用的重要函数。同时,当你熟悉了如何使用它们时,你就能进行更深入地挖掘和探索。我开 始也犯了这个错误,我试着研究ggplot2中所有的特征函数,结果最后一头雾水。我建议你们在阅读文章的同时能试着练习写这些代码。这会有助于你更自信 地使用这些包。 在这篇文章中,我介绍了可以让数据探索变得更方便快捷的7个包的使用方法。R因其令人赞叹的统计功能而闻名于世,同时,时时更新的包也让它成为数据科学家最爱使用的工具。 本文为专栏文章,来自:数据工匠,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/7298.html 。
来源:数据分析网
发布时间:2016-02-04 21:35:00
本系列文章内容翻译自O’reilly出版社的 25 Recipes for Getting Started with R 一书。 R入门25招 第1招: 下载和安装 R入门25招 第2招: 获取函数的帮助 R入门25招 第3招: 查看R的文档 R入门25招 第4招: 在网上搜索帮助信息 R入门25招 第5招: 读取表格数据文件 R入门25招 第6招: 读取CSV文件 R入门25招 第7招: 创建向量 R入门25招 第8招: 计算基本统计量 R入门25招 第9招: 用列数据初始化数据框 R入门25招 第10招: 根据位置从数据框中选择列 R入门25招 第11招: 根据名称选择数据框中的列 R入门25招 第12招: 均值置信区间 R入门25招 第13招: 比例的置信区间 R入门25招 第14招: 比较两组样本的均值 R入门25招 第15招: 检验相关性的显著性 R入门25招 第16招: 画散点图 R入门25招 第17招: 画柱状图 R入门25招 第18招: 画箱图 R入门25招 第19招: 画直方图 R入门25招 第20招: 简单的线性回归 R入门25招 第21招: 多元线性回归 R入门25招 第22招: 计算回归统计量 R入门25招 第23招: 检查线性回归 R入门25招 第24招: 预测新的值 R入门25招 第25招: 访问包中的函数 —— 数据分析 网整理自Gossip Coder博客 本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「 我们 」留言处理。
来源:数据分析网
发布时间:2016-02-01 15:00:00
  谈及互联网行业,尤其是国内的互联网行业,可能相当一部分习惯于贴上高薪、快节奏、加班文化等标签,虽然存在言过其实的成分,但也并非无中生有。   那么国外比如互联网滥觞之地硅谷,工作风气怎样呢?   日前,认证博主@互联网分析师于斌分享了硅谷谷歌程序员的一天,作者 .Air 自曝 8 点半起床,9 点 15 开车或者坐班车去公司,9 点 30 抵达后吃早饭。   10 点到达工位,“发邮件、做今天计划、看文档。早上一般不会写代码,除非有紧急任务。”   接着在 11 点 30 开始看食堂菜单,决定午饭。    下午是写代码的主要时间,大致从 12 点 30 开始,到 16 点 30 左右同事们就可以陆续离开了 ,作者也会在 17 点前回家,晚餐也可以在食堂吃。   作者还表示,他们几乎不加班,而且因为疫情关系今年都不会去公司了。   对于爆料的真实性,华为前专家吴醒峰博士指出“这个帖应该是靠谱的。上次去硅谷开会,专门去了一趟谷歌园区,在 mountain view 那边。谷歌的程序员比较轻松,搜索等业务用了 10%(也许不到)的人撑起了 90% 的盈利,所以整体压力不大。”他还爆料“以前谷歌的人是允许有 25% 的精力投注在与本项目完全无关的事情上的,你可以想见得到这种宽松。”   对此,有网友表示羡慕、自觉柠檬(算了),也有表示不具可比性,找到自己舒服的工作节奏即可。
来源:博客园
发布时间:2020-08-24 14:35:00
刚开始学习 Python 语言的时候,并不是很理解为什么Python列表的索引值是从0开始的,不过却很喜欢列表切片的语法,非常简单、优雅。而最近在翻阅Python之父Guido老爹的Google+发文时,看到了他自己对这个问题的解释。 下面是Guido老爹的回答。 最近有人在Twitter上问我,为什么Python中的索引从0开始(0-based indexing),还提供了一篇关于这个话题的 文章链接 (文章写的很有趣)。我记得自己就这个问题思考过很久;Python的祖先之一ABC语言,使用的索引是从1开始的(1-based indexing),而对Python语言有巨大影响的另一门语言,C语言的索引则是从0开始的。我最早学习的几种编程语言(Algol, Fortran, Pascal)中的索引方式,有的是1-based的,有的是从定义的某个变量开始(variable-based indexing)。而我决定在Python中使用0-based索引方式的一个原因,就是切片语法(slice notation)。 让我们来先看看切片的用法。可能最常见的用法,就是“取前n位元素”或“从第i位索引起,取后n位元素”(前一种用法,实际上是i==起始位的特殊用法)。如果这两种用法实现时可以不在表达式中出现难看的 +1 或 -1 ,那将会非常的优雅。 使用0-based的索引方式、半开区间切片和缺省匹配区间的话(Python最终采用这样的方式),上面两种情形的切片语法就变得非常漂亮: a[:n] 和 a[i:i+n] ,前者是a[0:n]的缩略写法。 如果使用1-based的索引方式,那么,想让 a[:n] 表达“取前n个元素”的意思,你要么使用闭合区间切片语法,要么在切片语法中使用切片起始位和切片长度作为切片参数。半开区间切片语法如果和1-based的索引方式结合起来,则会变得不优雅。而使用闭合区间切片语法的话,为了从第i位索引开始取后n个元素,你就得把表达式写成 a[i:i+n-1] 。这样看来,1-based的索引方式,与切片起始位+长度的语法形式配合使用会不会更合适?这样你可以写成 a[i:n] 。事实上,ABC语言就是这样做的——它发明了一个独特的语法,你可以把表达式写成 a@i|n 。(参看http://homepages.cwi.nl/~steven/abc/qr.html#EXPRESSIONS。) 但是, index:length 这种方式在其它情况下适用吗?说实话,这点我有些记不清了,但我想我是被半开区间语法的优雅迷住了。特别是当两个切片操作位置邻接时,第一个切片操作的终点索引值是第二个切片的起点索引值时,太漂亮了,无法舍弃。例如,你想将一个字符串以i,j两个位置切成三部分,这三部分的表达式将会是 a[:i] , a[i:j] 和 a[j:] 。 这就是为什么Python索引方式是从零开始的。 原文链接:https://plus.google.com/115212051037621986145/posts/YTUxbXYZyfi 相关链接:http://c2.com/cgi/wikiZeroAndOneBasedIndexes 本文为专栏文章,来自:编程派,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/6797.html 。
来源:数据分析网
发布时间:2016-01-27 23:06:00
本文授权转载自知乎回答-何明科,作者:何明科系一面网络技术有限公司创始人。作者现身说法,用自己的创业历程举例说明:有钱很重要,有趣更重要。 第零步:原点, 大数据 与价值 大概一年多以前,和几个小伙伴均认同一个趋势:觉得通过技术手段获取网上越来越丰富的数据,并基于这些数据做分析及可视化,必能产生有价值的结果,帮助大家改善生活。(大数据被叫烂了,所以用低调的方式来解释我们的初心) 第一步:开工,为基金服务 恰巧和几个基金的朋友(包括对冲基金和 VC/PE 基金)聊到这个趋势,他们非常认同这个观点并愿意付费,认为可以用这种实时且定量的方式来跟踪一些上市公司或者私有公司旗下的产品,来确定谁是有价值的投资目标。于是立马获得订单并促使我们开干,因为考虑到 Python 灵活及各类爬虫库的优势,最终选用 Python 来做数据获取的主体架构;也有新潮的小伙伴使用 Go,同时用 Go 搭建了一个很酷的框架来制造分布式的智能爬虫,应对各种反爬策略。抓取数据主要来自于如下网站: 各应用商店:获取 App 的下载量及评论 大众点评及美团网:餐饮及各类线下门店消费及评价情况 汽车之家及易车:汽车的相关数据 58 及搜房;房屋租售数据 新浪微博:用户的各种发言及舆论 财经数据:雪球及各类财经网站 宏观数据网站:天气、12306 火车、机票网站 最初的产品纯粹是为基金服务。下图是在各个维度找出最有价值的 App,各种量级范围内在 30 天 /7 天增长最快及评价最好榜单。(顺便吹一下牛,我们这个榜单很早就发现小红书 App 的快速增长趋势以及在年轻人中的极佳口碑) 下图是对某个 App 的下载量跟踪,帮着基金做尽职调查。 下图是某上市公司的门店变化情况,帮着基金跟踪 TA 的增长情况。 下图是国内各个机场的实时流量,帮着基金跟踪国内出行的实时情况,或许能从一个侧面反映经济是否正在走入下行通道。 第二步:扩展思路,开源和分享 为基金服务,虽然给钱爽快,但是也让方向越走越窄。首先,基金希望信息是独享的和封闭的,投资就是投资人之间的零和博弈,公开的信息就迅速会一钱不值,基金最在乎的就是信息的独享及提前量,所以各个基金都希望我们呈现的数据及分析结果能够独家。这样迅速让我们的方向收窄以及工作的趣味性降低,其次,毕竟对于基金而言,能分析的投资对象及方向是非常有限的。而且现阶段,大部分对冲基金里面的分析员的 数据分析 能力其实很弱:这些分析员里面能用 VBA 或者能在 Excel 里面使用矩阵及向量乘法的人几乎可以惊为天人;能写 offset 函数的人,就应该直接提拔了;大部分人停留在一个个数网页找数据的阶段。所以和他们起来十分费劲,除了提供一些粗暴的数据,并不能产生太有价值的结果。 在这段迷茫期,本来充满激情的数据分析工作,让大家味如爵蜡,感觉自己变成了一个外包公司。不过互联网大法好,做技术做互联网的核心思路是分享和开源,我们很快回归到这一点。并且这一点最终让我们做出了改变。有些分析虽然基金不买单,但是对一般的老百姓、对一般的媒体是有价值的,于是我们试着把这些数据分析及结果写出来,发布到知乎上供大家参考。 知乎是个好平台,坚持创作好内容迟早就会被发掘出来。很快一篇用数据分析黄焖鸡米饭为什么火遍全国的回答( 黄焖鸡米饭是怎么火起来的?-何明科的回答 )被知乎日报采用了。 这次被 “宠幸” 让团队兴奋不已,从而坚定了决心,彻底调整了整个思路,回到初心:不以解决基金关注的问题为核心,而以解决用户最关注的生活问题为核心。坚持以数据说话的套路,创作了许多点赞很多的文章并多次被知乎日报采用,并专注在如下的领域: 汽车。比如: 一年当中买车的最佳时间为何时? – 何明科的回答 , 什么样的车可以被称为神车? – 何明科的回答 餐饮。比如: 为什么麦当劳和肯德基都开始注重现磨咖啡的推广,其优势与星巴克等传统咖啡行业相比在哪里? – 何明科的回答 消费品。比如:口罩( http://zhuanlan.zhihu.com/hemingke/20391296 ),尿不湿( http://zhuanlan.zhihu.com/hemingke/20385894 ) 招聘。比如:互联网人士年底怎么找工作( http://zhuanlan.zhihu.com/hemingke/20450600 ) 房地产,这个虐心的行业。比如:深圳的房地产走势( http://zhuanlan.zhihu.com/hemingke/20135185 ) 投融资。比如:用 Python 抓取投资条款的数据并做 NLP 以及数据分析:( http://zhuanlan.zhihu.com/hemingke/20514731 ) 还共享了一些和屌丝青年生活最相关的分析及数据。下图是深圳市早晨高峰时段某类人群出行的热点图,通过热点分析,试图找出这类人群的居住和上班的聚集区。 下图反映了在各时间段在深圳科技园附近下车的人群密度。 写这些报告,团队没有挣到一分钱,但是整个成就感和满意度大大上升。同时,在 Python 及各种技术上的积累也提高颇多,数据量级的积累也越发丰富,数据相关的各项技术也在不断加强。同时,顺势扩大了数据源:京东、淘宝等数据也纳入囊中。 第三步:扩展客户 在知乎上写这些报告,除了收获知名度,还收获意外之喜,一些知名品牌的消费品公司、汽车公司及互联网公司,主动找我们做一些数据抓取及分析。整个团队没有一个 BD,也从来不请客户吃饭。于是我们顺势做了如下的网站以及一个成熟的 Dashboard 框架(开发数据监控的 Dashboard 超有效率),目前主要监控和分析母婴、白酒、汽车及房地产四大行业,都是一些愿意花钱进行深度了解用户以及行业趋势的公司。收入自动上门,很开心! 下图是抓取汽车之家的数据,做出 BBA(奔驰宝马奥迪)这三大豪华品牌的交叉关注度,帮助品牌及 4A 公司了解他们用户的忠诚度以及品牌之间迁移的难度。 下图是抓取新浪微博的数据,分析广东白酒的消费场所 下图是抓取新浪微博的数据,分析广东白酒和各类食品的相关度。 除去为以上的品牌合作,我们数据风的文章也越来越受欢迎,曾经一周上了四次知乎日报。另外也有越来越多的知名媒体及出版社找到我们,虽然告知他们我们不写软文而只坚持按照数据结果来发表文章,他们依然表示欢迎。原来非五毛独立立场的数据风也能被媒体喜欢。自此,我们不断成为易车首页经常推荐的专栏。 第四步:尝试功能化平台化产品 降低与高大上基金的合作强度,转而与更接地气的各类品牌合作,让我们团队更贴近客户、更贴近真实需求。于是基于这些需求,我们开始尝试将之前在数据方面的积累给产品化,特别是能做出一些平台级的产品,于是我们开发出两款产品:第一款:选址应用选址是现在许多公司头疼的难题,以前完全是拍脑袋。因此我们开发出这样一套工具,帮助公司能够更理性更多维度得选址。下图,我们抓取多个数据源并完成拼接,根据用户的快递地址,勾画出某时尚品牌用户的住址,帮助其选址在北京开门店。 下图,我们抓取多个数据源并完成拼接,根据大型超市及便利店与某类型餐馆在广州地区的重合情况,帮助某饮料品牌选定最应该进入的零售店面。 第二款: 数据可视化 我们在工作中也深刻觉得以前制作图表和展示数据的方式太 low、太繁琐,我们希望去改变这个现状,于是开发了一套基于 Web 来制作图表的工具文图。远有 Excel/Powerpoint 对标,近有 Tableau 对标。下图是文图丰富的案例库及模板库。 下图是使用界面及图表类型。 下一步的工作:与微信的整合,一键生成适合于微信传播的截图以及公众号格式文章,便于在社交媒体的传播收集更多数据,目前已经覆盖 40 多家网站,涵盖衣食住行等多个方面将数据 SaaS 化和开源,便于各类公司及用户使用。(咨询投行等 Professional Service 人士一定会懂的,你们每年不知道要重复多少遍更新各类宏观微观的经济和行业数据,现在只需要调用 KPI)最后,希望有一天它能部分替代已经在江湖上混迹二三十年的 PowerPoint 及 Excel。 第五步:…… 不可知的未来才是最有趣的。借用并篡改我们投资人的一句话:technology is fun, data is cool and science is sexy。初心未变,希望用数据用技术帮助更多的人生活得更美好。 从文中,大家可以看到一个创业小团队艰辛的摸索过程。从一开始的一个想法,希望通过技术和科学改变世界,到碰巧能赚钱,到因为赚钱快而迷失了方向,到最后回归初心,做自己最喜欢的事情。 本文为专栏文章,来自:数据冰山,内容观点不代表本站立场,如若转载请联系专栏作者,本文链接:https://www.afenxi.com/7135.html 。
来源:数据分析网
发布时间:2016-01-26 13:01:00
  电动自行车因为出行成本低、便捷、实用,在全国范围内受到消费者的喜爱。不过,同时因为电动自行车的行驶速度快,安全防护措施不足。   因此,不少地区对于电动自行车的行驶速度也做出了严格限制规定。而苏州更是开出了首张电动自行车的超速罚单,这也引起了不少网友的讨论。   据媒体报道,近期,江苏太仓对于电动自行车施行了新的安全管理方式,交警部门试点使用专业测速设备,对车速超过超过 15km/h的电动自行车进行监测,并于 8 月 20 日开出首张罚单。   据了解,在交警执勤过程中,一辆电动车在道路上飞速驶来,测速设备提示超速通过。交警将其拦下后,告知这位电动车驾驶员当前你的行驶速度超过了 15km/h,按照规定需要进行处罚,并对其开出了 20 元的超速罚单。   对此,网上有不少网友认为,电动车行驶速度不能超过 15km/h,虽然安全性保障足够,但是这样的速度未免太低了,而按照自己的通勤距离来看,平时半小时的路程,如今的骑一个小时。   还有网友认为,“电动自行车有没有驾照,只罚款不扣分,对于电动车限速的实际作用不是太大”、“这个速度,连自行车都撵不上”、“外卖小哥还工不工作了,这个速度肯定一堆差评”。   可以看出,不少网友对于电动车超速 15km/h就罚款的做法,不能完全理解。对此,你怎么看呢?
来源:博客园
发布时间:2020-08-24 14:21:00
在 数据分析 领域,最热门的莫过于 Python 和R语言,此前有一篇文章 《别老扯什么Hadoop了,你的数据根本不够大》 指出:只有在超过5TB数据量的规模下,Hadoop才是一个合理的技术选择。这次拿到近亿条日志数据,千万级数据已经是关系型数据库的查询分析瓶颈,之前使用过Hadoop对大量文本进行分类,这次决定采用Python来处理数据: 硬件环境 CPU:3.5 GHz Intel Core i7 内存:32 GB HDDR 3 1600 MHz 硬盘:3 TB Fusion Drive 数据分析工具 Python:2.7.6 Pandas:0.15.0 IPython notebook:2.0.0 源数据如下表所示: Table Size Desc ServiceLogs ServiceCodes 98,706,832 rows x 14 columns 286 rows × 8 columns 8.77 GB 20 KB 交易日志数据,每个交易会话可以有多条交易 交易分类的字典表 数据读取 启动IPython notebook,加载pylab环境: 1 ipython notebook — pylab = inline Pandas提供了IO工具可以将大文件分块读取,测试了一下性能,完整加载9800万条数据也只需要263秒左右,还是相当不错了。 1 2 3 4 5 6 import pandas as pd reader = pd . read_csv ( ‘data/servicelogs’ , iterator = True ) try : df = reader . get_chunk ( 100000000 ) except StopIteration : print “Iteration is stopped.” 1百万条 1千万条 1亿条 ServiceLogs 1 s 17 s 263 s 使用不同分块大小来读取再调用 pandas.concat 连接DataFrame,chunkSize设置在1000万条左右速度优化比较明显。 1 2 3 4 5 6 7 8 9 10 11 loop = True chunkSize = 100000 chunks = [ ] while loop : try : chunk = reader . get_chunk ( chunkSize ) chunks . append ( chunk ) except StopIteration : loop = False print “Iteration is stopped.” df = pd . concat ( chunks , ignore_index = True ) 下面是统计数据,Read Time是数据读取时间,Total Time是读取和Pandas进行concat操作的时间,根据数据总量来看,对5~50个DataFrame对象进行合并,性能表现比较好。 Chunk Size Read Time (s) Total Time (s) Performance 100,000 224.418173 261.358521 200,000 232.076794 256.674154 1,000,000 213.128481 234.934142 √√ 2,000,000 208.410618 230.006299 √√√ 5,000,000 209.460829 230.939319 √√√ 10,000,000 207.082081 228.135672 √√√√ 20,000,000 209.628596 230.775713 √√√ 50,000,000 222.910643 242.405967 100,000,000 263.574246 263.574246 如果使用Spark提供的Python Shell,同样编写Pandas加载数据,时间会短25秒左右,看来Spark对Python的内存使用都有优化。 数据清洗 Pandas提供了 DataFrame.describe 方法查看数据摘要,包括数据查看(默认共输出首尾60行数据)和行列统计。由于源数据通常包含一些空值甚至空列,会影响数据分析的时间和效率,在预览了数据摘要后,需要对这些无效数据进行处理。 首先调用 DataFrame.isnull() 方法查看数据表中哪些为空值,与它相反的方法是 DataFrame.notnull() ,Pandas会将表中所有数据进行null计算,以True/False作为结果进行填充,如下图所示: Pandas的非空计算速度很快,9800万数据也只需要28.7秒。得到初步信息之后,可以对表中空列进行移除操作。尝试了按列名依次计算获取非空列,和 DataFrame.dropna() 两种方式,时间分别为367.0秒和345.3秒,但检查时发现 dropna() 之后所有的行都没有了,查了Pandas手册,原来不加参数的情况下, dropna() 会移除所有包含空值的行。如果只想移除全部为空值的列,需要加上 axis 和 how 两个参数: 1 df . dropna ( axis = 1 , how = ‘all’ ) 共移除了14列中的6列,时间也只消耗了85.9秒。 接下来是处理剩余行中的空值,经过测试,在 DataFrame.replace() 中使用空字符串,要比默认的空值NaN节省一些空间;但对整个CSV文件来说,空列只是多存了一个“,”,所以移除的9800万 x 6列也只省下了200M的空间。进一步的数据清洗还是在移除无用数据和合并上。 对数据列的丢弃,除无效值和需求规定之外,一些表自身的冗余列也需要在这个环节清理,比如说表中的流水号是某两个字段拼接、类型描述等,通过对这些数据的丢弃,新的数据文件大小为4.73GB,足足减少了4.04G! 数据处理 使用 DataFrame.dtypes 可以查看每列的数据类型,Pandas默认可以读出int和float64,其它的都处理为object,需要转换格式的一般为日期时间。DataFrame.astype() 方法可对整个DataFrame或某一列进行数据格式转换,支持Python和NumPy的数据类型。 1 df [ ‘Name’ ] = df [ ‘Name’ ] . astype ( np . datetime64 ) 对数据聚合,我测试了 DataFrame.groupby 和 DataFrame.pivot_table 以及 pandas.merge ,groupby 9800万行 x 3列的时间为99秒,连接表为26秒,生成透视表的速度更快,仅需5秒。 1 2 3 df . groupby ( [ ‘NO’ , ‘TIME’ , ‘SVID’ ] ) . count ( ) # 分组 fullData = pd . merge ( df , trancodeData ) [ [ ‘NO’ , ‘SVID’ , ‘TIME’ , ‘CLASS’ , ‘TYPE’ ] ] # 连接 actions = fullData . pivot_table ( ‘SVID’ , columns = ‘TYPE’ , aggfunc = ‘count’ ) # 透视表 根据透视表生成的交易/查询比例饼图: 将日志时间加入透视表并输出每天的交易/查询比例图: 1 2 total_actions = fullData . pivot_table ( ‘SVID’ , index = ‘TIME’ , columns = ‘TYPE’ , aggfunc = ‘count’ ) total_actions . plot ( subplots = False , figsize = ( 18 , 6 ) , kind = ‘area’ ) 除此之外,Pandas提供的DataFrame查询统计功能速度表现也非常优秀,7秒以内就可以查询生成所有类型为交易的数据子表: 1 tranData = fullData [ fullData [ ‘Type’ ] == ‘Transaction’ ] 该子表的大小为 [10250666 rows x 5 columns]。在此已经完成了数据处理的一些基本场景。实验结果足以说明,在非“>5TB”数据的情况下,Python的表现已经能让擅长使用统计分析语言的数据分析师游刃有余。 作者:陈加兴@rcfans_ 来源:http://www.justinablog.com/archives/1357 本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「 我们 」留言处理。
来源:数据分析网
发布时间:2016-01-24 19:13:00
  据外媒报道称,俄罗斯宇航员 Ivan Vagner 目前正在国际空间站上执行任务,其在太空拍摄极光时,居然看到了所谓的 UFO,这引起了广泛用户的关注。    在昨日更新的官方推文中,分享了一段在国际空间站上拍摄的延时摄影,展示了地球上非创壮观的极光景象。不过在 Ivan Vagner 分享的视频中还捕捉到了其他一些东西,他称之为“太空访客”。   从放出的图片看,你可以短暂地看到地平线上有五道非常明亮的光,它们似乎出现了,又迅速消失。这些几乎呈直线排列的灯光,极有可能是 SpaceX 在 8 月 18 日发射的星链卫星。   虽然这些光看起来肯定像我们看到的其他 Starlink 卫星的图像,但 Vagner 想知道它们是流星还是卫星,我们当然认为是后者。这位宇航员确实把这些物体告诉了俄罗斯航天局,航天局的官员转发了这段视频,称这是一个有趣而神秘的东西。
来源:博客园
发布时间:2020-08-24 14:15:00
摘要:本文意在创建一个得分图,该图同时描绘了从场上不同位置投篮得分的百分比和投篮次数,这和 Austin Clemen 个人网站上的帖子 http://www.austinclemens.com/shotcharts/ 类似 。 为了实现这个得分图,笔者参考了 Savvas Tjortjoglou 的帖子 http://savvastjortjoglou.com/nba-shot-sharts.html 。这篇帖子很棒,但是他只描述了从不同位置投篮的次数。而笔者对在不同位置的投篮次数和进球百分比都很感兴趣,所以还需要进一步的工作,在原有基础上添加些东西,下面是实现过程。 #import some libraries and tell ipython we want inline figures rather than interactive figures. %matplotlib inline import matplotlib.pyplot as plt, pandas as pd, numpy as np, matplotlib as mpl 首先,我们需要获得每个球员的投篮数据。利用 Savvas Tjortjoglou 贴出的代码,笔者从 NBA.com 网站 API 上获取了数据。在此不会贴出这个函数的结果。如果你感兴趣,推荐你去看看 Savvas Tjortjoglou 的博客。 def aqcuire_shootingData(PlayerID,Season): import requests shot_chart_url = 'http://stats.nba.com/stats/shotchartdetailCFID=33&CFPARAMS='+Season+'&ContextFilter=' '&ContextMeasure=FGA&DateFrom=&DateTo=&GameID=&GameSegment=&LastNGames=0&LeagueID=' '00&Location=&MeasureType=Base&Month=0&OpponentTeamID=0&Outcome=&PaceAdjust=' 'N&PerMode=PerGame&Period=0&PlayerID='+PlayerID+'&PlusMinus=N&Position=&Rank=' 'N&RookieYear=&Season='+Season+'&SeasonSegment=&SeasonType=Regular+Season&TeamID=' '0&VsConference=&VsDivision=&mode=Advanced&showDetails=0&showShots=1&showZones=0' response = requests.get(shot_chart_url) headers = response.json()['resultSets'][0]['headers'] shots = response.json()['resultSets'][0]['rowSet'] shot_df = pd.DataFrame(shots, columns=headers) return shot_df 接下来,我们需要绘制一个包含得分图的篮球场图。该篮球场图例必须使用与NBA.com API 相同的坐标系统。例如,3分位置的投篮距篮筐必须为 X 单位,上篮距离篮筐则是 Y 单位。同样,笔者再次使用了 Savvas Tjortjoglou 的代码(哈哈,否则的话,搞明白 NBA.com 网站的坐标系统肯定会耗费不少的时间)。 def draw_court(ax=None, color='black', lw=2, outer_lines=False): from matplotlib.patches import Circle, Rectangle, Arc if ax is None: ax = plt.gca() hoop = Circle((0, 0), radius=7.5, linewidth=lw, color=color, fill=False) backboard = Rectangle((-30, -7.5), 60, -1, linewidth=lw, color=color) outer_box = Rectangle((-80, -47.5), 160, 190, linewidth=lw, color=color, fill=False) inner_box = Rectangle((-60, -47.5), 120, 190, linewidth=lw, color=color, fill=False) top_free_throw = Arc((0, 142.5), 120, 120, theta1=0, theta2=180, linewidth=lw, color=color, fill=False) bottom_free_throw = Arc((0, 142.5), 120, 120, theta1=180, theta2=0, linewidth=lw, color=color, linestyle='dashed') restricted = Arc((0, 0), 80, 80, theta1=0, theta2=180, linewidth=lw, color=color) corner_three_a = Rectangle((-220, -47.5), 0, 140, linewidth=lw, color=color) corner_three_b = Rectangle((220, -47.5), 0, 140, linewidth=lw, color=color) three_arc = Arc((0, 0), 475, 475, theta1=22, theta2=158, linewidth=lw, color=color) center_outer_arc = Arc((0, 422.5), 120, 120, theta1=180, theta2=0, linewidth=lw, color=color) center_inner_arc = Arc((0, 422.5), 40, 40, theta1=180, theta2=0, linewidth=lw, color=color) court_elements = [hoop, backboard, outer_box, inner_box, top_free_throw, bottom_free_throw, restricted, corner_three_a, corner_three_b, three_arc, center_outer_arc, center_inner_arc] if outer_lines: outer_lines = Rectangle((-250, -47.5), 500, 470, linewidth=lw, color=color, fill=False) court_elements.append(outer_lines) for element in court_elements: ax.add_patch(element) ax.set_xticklabels([]) ax.set_yticklabels([]) ax.set_xticks([]) ax.set_yticks([]) return ax 我想创造一个不同位置的投篮百分比数组,因此决定利用 matplot 的 Hexbin 函数 http://matplotlib.org/api/pyplot_api.html 将投篮位置均匀地分组到六边形中。该函数会对每个六边形中每一个位置的投篮次数进行计数。 六边形是均匀的分布在 XY 网格中。「gridsize」变量控制六边形的数目。「extent」变量控制第一个和最后一个六边形的绘制位置(一般来说第一个六边形的位置基于第一个投篮的位置)。 计算命中率则需要对每个六边形中投篮的次数和投篮得分次数进行计数,因此笔者对同一位置的投篮和得分数分别运行 hexbin 函数。然后,只需用每个位置的进球数除以投篮数。 def find_shootingPcts(shot_df, gridNum): x = shot_df.LOC_X[shot_df['LOC_Y']<425.1] #i want to make sure to only include shots I can draw y = shot_df.LOC_Y[shot_df['LOC_Y']<425.1] x_made = shot_df.LOC_X[(shot_df['SHOT_MADE_FLAG']==1) & (shot_df['LOC_Y']<425.1)] y_made = shot_df.LOC_Y[(shot_df['SHOT_MADE_FLAG']==1) & (shot_df['LOC_Y']<425.1)] #compute number of shots made and taken from each hexbin location hb_shot = plt.hexbin(x, y, gridsize=gridNum, extent=(-250,250,425,-50)); plt.close() #don't want to show this figure! hb_made = plt.hexbin(x_made, y_made, gridsize=gridNum, extent=(-250,250,425,-50),cmap=plt.cm.Reds); plt.close() #compute shooting percentage ShootingPctLocs = hb_made.get_array() / hb_shot.get_array() ShootingPctLocs[np.isnan(ShootingPctLocs)] = 0 #makes 0/0s=0 return (ShootingPctLocs, hb_shot) 笔者非常喜欢 Savvas Tjortjoglou 在他的得分图中加入了球员头像的做法,因此也顺道用了他的这部分代码。球员照片会出现在得分图的右下角。 def acquire_playerPic(PlayerID, zoom, offset=(250,400)): from matplotlib import offsetbox as osb import urllib pic = urllib.urlretrieve("http://stats.nba.com/media/players/230x185/"+PlayerID+".png",PlayerID+".png") player_pic = plt.imread(pic[0]) img = osb.OffsetImage(player_pic, zoom) #img.set_offset(offset) img = osb.AnnotationBbox(img, offset,xycoords='data',pad=0.0, box_alignment=(1,0), frameon=False) return img 笔者想用连续的颜色图来描述投篮进球百分比,红圈越多代表着更高的进球百分比。虽然「红」颜色图示效果不错,但是它会将0%的投篮进球百分比显示为白色 http://matplotlib.org/users/colormaps.html ,而这样显示就会不明显,所以笔者用淡粉红色代表0%的命中率,因此对红颜色图做了下面的修改。 #cmap = plt.cm.Reds #cdict = cmap._segmentdata cdict = { 'blue': [(0.0, 0.6313725709915161, 0.6313725709915161), (0.25, 0.4470588266849518, 0.4470588266849518), (0.5, 0.29019609093666077, 0.29019609093666077), (0.75, 0.11372549086809158, 0.11372549086809158), (1.0, 0.05098039284348488, 0.05098039284348488)], 'green': [(0.0, 0.7333333492279053, 0.7333333492279053), (0.25, 0.572549045085907, 0.572549045085907), (0.5, 0.4156862795352936, 0.4156862795352936), (0.75, 0.0941176488995552, 0.0941176488995552), (1.0, 0.0, 0.0)], 'red': [(0.0, 0.9882352948188782, 0.9882352948188782), (0.25, 0.9882352948188782, 0.9882352948188782), (0.5, 0.9843137264251709, 0.9843137264251709), (0.75, 0.7960784435272217, 0.7960784435272217), (1.0, 0.40392157435417175, 0.40392157435417175)] } mymap = mpl.colors.LinearSegmentedColormap('my_colormap', cdict, 1024) 好了,现在需要做的就是将它们合并到一块儿。下面所示的较大函数会利用上文描述的函数来创建一个描述投篮命中率的得分图,百分比由红圈表示(红色越深 = 更高的命中率),投篮次数则由圆圈的大小决定(圆圈越大 = 投篮次数越多)。需要注意的是,圆圈在交叠之前都能增大。一旦圆圈开始交叠,就无法继续增大。 在这个函数中,计算了每个位置的投篮进球百分比和投篮次数。然后画出在该位置投篮的次数(圆圈大小)和进球百分比(圆圈颜色深浅)。 def shooting_plot(shot_df, plot_size=(12,8),gridNum=30): from matplotlib.patches import Circle x = shot_df.LOC_X[shot_df['LOC_Y']<425.1] y = shot_df.LOC_Y[shot_df['LOC_Y']<425.1] #compute shooting percentage and # of shots (ShootingPctLocs, shotNumber) = find_shootingPcts(shot_df, gridNum) #draw figure and court fig = plt.figure(figsize=plot_size)#(12,7) cmap = mymap #my modified colormap ax = plt.axes([0.1, 0.1, 0.8, 0.8]) #where to place the plot within the figure draw_court(outer_lines=False) plt.xlim(-250,250) plt.ylim(400, -25) #draw player image zoom = np.float(plot_size[0])/(12.0*2) #how much to zoom the player's pic. I have this hackily dependent on figure size img = acquire_playerPic(PlayerID, zoom) ax.add_artist(img) #draw circles for i, shots in enumerate(ShootingPctLocs): restricted = Circle(shotNumber.get_offsets()[i], radius=shotNumber.get_array()[i], color=cmap(shots),alpha=0.8, fill=True) if restricted.radius > 240/gridNum: restricted.radius=240/gridNum ax.add_patch(restricted) #draw color bar ax2 = fig.add_axes([0.92, 0.1, 0.02, 0.8]) cb = mpl.colorbar.ColorbarBase(ax2,cmap=cmap, orientation='vertical') cb.set_label('Shooting %') cb.set_ticks([0.0, 0.25, 0.5, 0.75, 1.0]) cb.set_ticklabels(['0%','25%', '50%','75%', '100%']) plt.show() return ax 好了,大功告成!因为笔者是森林狼队的粉丝,在下面用几分钟跑出了森林狼队前六甲的得分图。 PlayerID = '203952' #andrew wiggins shot_df = aqcuire_shootingData(PlayerID,'2015-16') ax = shooting_plot(shot_df, plot_size=(12,8)); PlayerID = '1626157' #karl anthony towns shot_df = aqcuire_shootingData(PlayerID,'2015-16') ax = shooting_plot(shot_df, plot_size=(12,8)); PlayerID = '203897' #zach lavine shot_df = aqcuire_shootingData(PlayerID,'2015-16') ax = shooting_plot(shot_df, plot_size=(12,8)); PlayerID = '203476' #gorgui deing shot_df = aqcuire_shootingData(PlayerID,'2015-16') ax = shooting_plot(shot_df, plot_size=(12,8)); PlayerID = '2755' #kevin martin shot_df = aqcuire_shootingData(PlayerID,'2015-16') ax = shooting_plot(shot_df, plot_size=(12,8)); PlayerID = '201937' #ricky rubio shot_df = aqcuire_shootingData(PlayerID,'2015-16') ax = shooting_plot(shot_df, plot_size=(12,8)); 使用 hexbin 函数也是有隐患的,第一它并没有解释由于三分线而导致的非线性特性(一些 hexbin 函数同时包括了2分和3分的投篮)。它很好的限定了一些窗口来进行3分投篮,但如果没有这个位置的硬编码就没有办法做到这一点。此外 hexbin 方法的一个优点与是可以很容易地改变窗口的数量,但不确定是否可以同样灵活的处理2分投篮和3分投篮。 另外一个隐患在于此图将所有投篮都一视同仁,这相当不公平。在禁区投篮命中40%和三分线后的投篮命中40%可是大不相同。Austin Clemens 的解决办法是将命中率与联赛平均分关联。也许过几天笔者也会实现与之类似的功能。 原文 Creating NBA Shot Charts 作者 Dan Vatterott ,本文由 OneAPM 工程师编译整理。 本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「 我们 」留言处理。
来源:数据分析网
发布时间:2016-01-20 22:48:00