人工智能

机器学习 机器学习是近20多年兴起的一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动”学习”的算法。机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学习算法中涉及了大量的统计学理论,机器学习与统计推断学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

工业界未来需要什么样的机器学习人才?老生常谈,能将模型应用于专业领域的人,也就是跨领域让机器学习落地的人。有人会问现在我们不就需要这样的人吗?答案是肯定的,我们需要并将长期需要这样的人才,现阶段的机器学习落地还存在各种各样的困难。这样的需求不会是昙花一现,这就跟web开发是一个道理,从火热到降温也经过了十年的周期。一个领域的发展有特定的周期,机器学习的门槛比web开发高而且正属于朝阳期,所以大家致力于成为”专精特定领域”的机器学习专家并不过时。什么是特定领域的机器学习专家?举个例子,我以前曾回答”人工智能是否会替代财务工作者”时提到我曾在某个公司研究如何用机器学习自动化一部分审计工作,但遇到的最大困难是我自己对审计的了解有限,而其他审计师对我的工作不是非常支持导致进展缓慢。所以如果你有足够的机器学习知识,并对特定领域有良好的理解,在职场供求中你肯定可以站在优势的那一边。以我的另一个回答为例「反欺诈(Fraud Detection)中所用到的机器学习模型有哪些?」,特定领域的知识帮助我们更好的解释机器学习模型的结果,得到老板和客户的认可,这才是算法落了地。能写代码、构建模型的人千千万,但理解自己在做什么,并从中结合自己的领域知识提供商业价值的人少之又少。所以调侃一句,哪个方向的机器学习人才最紧缺?答:每个领域都需要专精的机器学习人才,你对特定领域的理解就是你的武器。

机器学习三剑客 numpy pandas matplotlib

机器学习常用库 sklern

深度学习

tensorflow pytorch

混合式移动App开发

  1. 原生应用(Native App)使用相应移动平台特有的开发工具和语言进行开发。当今最流行的两大移动端平台Android和i0S各有自己的一套独立的开发模式。基于Android平台的Java语言开发基于iOS平台的Obective-C语言/Swift语言开发优点1. 执行速度快,界面流畅,动态效果出色2. 性能稳定,对网络的依赖性小3. 用户体验趋于完美,用户留存率高4. 可以非常方便地调用操作系统提供的各种功能及终端硬件设备,如读取本地通讯录、推送通知提醒、调用摄像头等缺点1、Android和iOS上的应用需要单独开发、维护,开发成本很高。周期长,价格高。

  2. 升级更新繁琐,每个系统要单独更新,程序猿完成工作后,开发者要重新上传,然后审核,用户才能更新。IOS的审核至少需要一周,所以对于产品运营,无疑会加大时间投入。

  3. 分发成本高。应用原生开发适用于无需经常更新程序框架的APP。除此之外,游戏类的APP由于要大量加载显卡及动画效果,也通常采用原生模式进行开发。

混合开发(Hybrid App)Hybrid App是混合开发模式,这种模式将Native App与Web App进行混合开发,

一部分基本界面用手机系统的原生语言开发。另一部分功能界面用Web技术开发移动端网页,利用原生语言中的WebView进行显示网页,

这部分功能能在不升级APP的情况下动态更新,且在iOS或Android的App上同时运行。

混合开发根据侧重点分为三种方案:Web架构为重、编译转换、Native架构为重。这里有种极端情况是只包了原生的壳,里面其实是H5网页,大家要有所了解。

Hybrid App结合了Native App和Web App两种开发模式,把这两种开发模式的优点和缺点折中互补。总体费用在原生开发和HTML5开发模式之间。开发周期也在两者之间。简而言之,中庸之选,在Native APP和Web APP两者之间。

短视频

随着5G网络的普及,短视频将会有更大的市场空间,短视频行业的春天真正到来了。在4G的时代,受限于网络传输速度和上网的费用,大家一般是在WiFi环境下看视频,当然少数土豪除外。但是进入5G时代以后,网络传输速度大幅提升,上网的资费也会调整到更加合理的空间,这样完全可以在手机上随时随地看视频。这样一来,短视频会有更大的发展空间。并且,会有更多的机构和工作室开始制作短视频。当然,短视频的竞争也会理加激烈.

大数据

按照马云的说法,现在已经从IT时代进入了DT时代,这个地方的DT强调的就是大数据。目前大数据的应用非常广泛,从资讯分发到视频娱乐,大数据无处不在。目前大数据已经成为了热门投资方向之一,在资本的大力支持下,大数据产业快速发展,预计到2020年中国大数据产业规模或超过万亿。在重视数据的今天,大数据行业必定会成为2019年的创业风口。

新零售

新零售可以说是互联网对传统零售行业的重构。2018年腾讯和阿里在新零售领域展开了一场千亿大战,各大商超也都被迫卷入了这场战争。具体来说,目前形成了两大阵营,”腾讯+京东+永辉+沃尔玛+家乐福+步步高”对抗”阿里+苏宁+高鑫+新华都+联华”。在这场大战中,永辉的超级物种和阿里的盒马鲜生成为了双方的先锋。相信在巨头的牵引之下,越来越多的企业会展开新零售方面的业务。所以,在2019年,新零售也会继续是创业的风口。

SaaS系统

SaaS,Software as a service,软件即服务。软件很好理解,可是软件为什么是服务呢?如果说”软件即工具”,我倒是很能理解。微信是通讯工具、朋友圈是社交工具、钉钉是企业内协同工具、淘宝是做生意的工具、当年的陌陌是XX的工具。明明是个工具,怎么可能是服务呢?服务可以大体分为两种。一种是餐厅服务生提供的这类服务,是由于社会化分工导致的”专业技能输出服务”。澡堂大叔给你搓澡、技师给你按摩、医生给你看病,都属于这类服务。另一种服务是”经验知识传授服务”。这类服务在个人场景上比较少,在企业上比较多。各类咨询公司就在向企业提供这种服务。企业挖角同行大牛,其实也是希望这些人能够将自己积累起来的各种经验用在自己的企业上,帮助企业解决问题。软件即服务,这里的服务指的就是上述的第二类服务。

微服务

RPC框架好处

http接口是在接口不多、系统与系统交互较少的情况下,解决信息孤岛初期常使用的一种通信手段;

优点就是简单、直接、开发方便。

如果是一个大型的网站,内部子系统较多、接口非常多的情况下,RPC框架的好处就显示出来了:

首先就是长链接,不必每次通信都要像http一样去3次握手什么的,减少了网络开销;

其次就是RPC框架一般都有注册中心,有丰富的监控管理;发布、下线接口、动态扩展等,对调用方来说是无感知、统一化的操作。

最后是安全性。

rpc是一种概念,http也是rpc实现的一种方式。

论复杂度,dubbo/hessian用起来是超级简单的。

至于为什么用dubbo/hessian,有几点:

一是调用简单,真正提供了类似于调用本地方法一样调用接口的功能 。

二是参数返回值简单明了 参数和返回值都是直接定义在jar包里的,不需要二次解析。

三是 轻量,没有多余的信息。

四是便于管理,基于dubbo的注册中心。

RPC能解耦服务

RPC:远程过程调用。RPC的核心并不在于使用什么协议。RPC的目的是让你在本地调用远程的方法,而对你来说这个调用是透明的,你并不知道这个调用的方法是部署哪里。

通过RPC能解耦服务,这才是使用RPC的真正目的。RPC的原理主要用到了动态代理模式,至于http协议,只是传输协议而已。简单的实现可以参考spring remoting,复杂的实现可以参考dubbo。

rpc=socket + 动态代理

服务器通讯原理就是一台socket服务器A,另一台socket客户端B,现在如果要通讯的话直接以流方式写入或读出。这样能实现通讯,但有个问题。如何知道更多信息?

比如需要发送流大小,编码,Ip等。这样就有了协议,协议就是规范,就是发送的流中携带了很多的内容。那回到刚刚的问题。发送的内容就是文本类型,客户端就得序列化,那么常用的就有json,xml之类,如果想把内容变得更小,那就有二进制了。把文本变成二进制传递。

说到 rpc 与http接口,不要太复杂了。rpc 协议更简单内容更小,那么来说效率是要高一点

rpc 是什么?就是socket 加动态代理。

总结

学技术应该是知其然知其所以然,我们得明白什么场景,或者什么业务需要它,它能解决其他技术不能解决或者不方便解决的问题。

RPC是一个软件结构概念,是构建分布式应用的理论基础。就好比为啥你家可以用到发电厂发出来的电?是因为电是可以传输的。至于用铜线还是用铁丝还是其他种类的导线,也就是用http还是用其他协议的问题了。这个要看什么场景,对性能要求怎么样。

在java中的最基本的就是RMI技术,它是java原生的应用层分布式技术。我们可以肯定的是在传输性能方面,RMI的性能是优于HTTP的。

那为啥很少用到这个技术?那是因为用这个有很多局限性,首先它要保证传输的两端都要要用java实现,且两边需要有相同的对象类型和代理接口,不需要容器,但是加大了编程的难度,在应用内部的各个子系统之间还是会看到他的身影,比如EJB就是基于rmi技术的。

这就与目前的bs架构的软件大相径庭。用http必须要服务端位于http容器里面,这样减少了网络传输方面的开发,只需要关注业务开发即可。所以在架构一个软件的时候,不能一定根据需求选定技术。

聚合支付

聚合支付其实聚合的是一种支付能力(支付宝支付、微信支付、百度钱包、UnionPay……),将这些收款能力聚合在一起,统一打包提供给电商网站或线下商家,帮助这些商家更好的完成收款,适应消费者线上线下消费支付需求。

微信支付和支付宝支付本身也是属于第三方支付,那么基于微信、支付宝等非银行支付通道来提供服务的可以称之为第四方支付,如果同时提供微信支付、支付宝支付两种或以上支付方式的也称为聚合支付。实际来讲,拥有技术与服务集成能力的第四方支付都是以聚合支付的方式来为商户服务,这更符合市场需求。那么第四方聚合支付可以提供哪些服务呢?可以包括但不限于支付通道服务、集合对账服务、技术对接服务、差错处理服务、金融服务引导、会员账户服务、作业流程软件服务、运行维护服务以及终端提供与维护等服务内容,以此减少商户接入、维护支付结算服务时面临的成本支出,提高商户支付结算系统运行效率,并相应收取增值收益的支付服务。

社区团购

所谓社区团购,是指以小区为单位的辐射圈,在辐射圈内的消费者通过团购平台预定商品,平台按量采购直销,其中省去的成本则是商品的差价。

社区团购有什么特点?这种零售方式特点很明显:

1、小众群体服务好;2、以销定采零库存;3、集中订货成本低。

这么好的销售方式之前怎么就没人想到呢?倒不是没人想到,只是之前还没火,几年前也有网络团购,但由于行业暴露出商品歧视、服务歧视、霸王条款等问题,沉默了一段时间,但在不久之前”拼多多”就以上市当天351亿美元的市值出现在我们面前,拼多多的成功很大原因是时机刚好在市场价格透明、物流系统成熟。很多新事物的产生都是市场需求、时机刚好。

__ __