❶ 怎么通俗地理解张量
对Gradle通俗的理解:
软件开发讲究代码复用,通过复用可以使工程更易维护,代码量更少..... 开发者可以通过继承,组合,函数模块等实现不同程度上的代码复用.但不知你有没有想过,软件开发也是一种工程作业,绝不仅仅是写代码,还涉及到工程的各种管理(依赖,打包,部署,发布,各种渠道的差异管理.....),你每天都在build,clean,签名,打包,发布,有没有想过这种过程,也可以像代码一样被描述出来, 也可以被复用.
❷ kaggle哪些竞赛 机器学习
Kaggle比赛是一个学习数据科学和时间的非常的方式,我自己通过Kaggle学习到了很多数据科学的概念和思想,在我学习编程之后的几个月就开始了Kaggle比赛,最近还赢得了几个比赛。
要在Kaggle比赛中取得好成绩不仅仅是要求知道一些机器学习算法,而且要有一个准确的思维模式,好学,花大量的时间探索数据。
❸ 华为天才少年计划的内容是什么
华为天才少年计划的内容
首先,对于华为的博士招聘,还是要区分开的,一为天才少年,二为优秀博士。这两个“名词”的定义是根据博士生在面试时候的表现及学术能力的体现来判定的。
先来说下华为针对“天才少年”的面试流程:
流程详情:
1.初步沟通:有专门负责“天才少年”的招聘顾问,联系项目顾问成员进行项目的初步沟通,了解项目的安排及业务的基本信息,进行兴趣点及方向的匹配,方向非常重要,一定要咨询清楚;
2.投递简历:经过与项目顾问成员的沟通和辅导,准备简历,发送至项目负责人;
3.项目负责人:统一对接各业务线HR和业务部门,链接各个业务单元,给予反馈;
4. 各业务的HR:联系应聘者,安排部门沟通,双选的过程把控;
5.专家团队:首先以博士招聘的要求来评估,在过程中如果发现这个人才非常优秀且吻合课题方向,会发起天才计划挑战课题,评估挑战课题成果。
6.总裁:最后一步,也是最重要的一步。如果你们没有见到部门的最高负责人,或者华为的BG总裁,有可能,你只是优博,不是天才少年。
至于定级(只供参考):这里最重要的就是论文,参考价值最大的就是一作和顶刊一作
15级:起步3-4篇
16级:5-8篇
17级:8篇保底....如果有低于8篇定17级的,可以自己偷乐一下了
18级:天才少年对标的就是18级,但是第一年进入多数是以“18待定”存在的,第二年正式转为18,所以,自己可以自己估摸一下。
关于薪酬:
这个比较公开,就不过多描述了,什么级别对应什么样的薪酬,大家心里会有些谱了,唯一参考的就是股票,这个大部分人,第一年是没有股票的,如果你有,说明你几乎已经顶薪+超赞的年薪包了。另外有些同学会纠结签字费只有第一年,这个情况不用过多的担心,因为第二年,普遍情况下签字费会转化为股票。
华为内部的风格:
1000多号的科学家,还是比较实事求是,不喜欢傲娇的类型,有创业经历的也是死穴,有同学可能发现投了简历就没有音讯了,以上的文字可以仔细品一下。
对于华为来讲,他们不缺聪明人,只缺聪明,又能接地气,愿意苦心研究的人。
如果你想博士一毕业就做管理,不要来华为;
如果你想博士一毕业就做战略规划,去那几大咨询公司吧,你要相信你做几年之后,华为会跪着来招你(=。=对不起,但是就是这个道理)
如果你想博士一毕业就想要400多万的年薪,不要来华为,没有前例,哈哈哈,社招是有很大的可能性的。
最后,附上对天才少年的要求:
1.QS100、USNEWS TOP30的海外院校,中国优先C9,211和985的院校起步,研究领域专业专注,如果过程中多次换专业...论文和兴趣方向不吻合的同学,过的概率不大;
2.国际顶刊论文发表数量及引用量丰富者;
3.研究方向有出色及丰富的商业化成果;
4.有ACM-ICPC、Kaggle、IOI、KDD、黑客大赛等知名赛事名次者优先;
5.学历大部分是博士,本科和硕士有非常丰富赛事经验和靠前的名次,可以试试。
❹ 如何用Python和机器学习炒股赚钱
如何用Python和机器学习炒股赚钱?(图片太多未贴,可以去找原文)
我终于跑赢了标准普尔 500 指数 10 个百分点!听起来可能不是很多,但是当我们处理的是大量流动性很高的资本时,对冲基金的利润就相当可观。更激进的做法还能得到更高的回报。
这一切都始于我阅读了 Gur Huberman 的一篇题为《Contagious Speculation and a Cure for Cancer: A Non-Event that Made Stock Prices Soar》的论文。该研究描述了一件发生在 1998 年的涉及到一家上市公司 EntreMed(当时股票代码是 ENMD)的事件:
“星期天《纽约时报》上发表的一篇关于癌症治疗新药开发潜力的文章导致 EntreMed 的股价从周五收盘时的 12.063 飙升至 85,在周一收盘时接近 52。在接下来的三周,它的收盘价都在 30 以上。这股投资热情也让其它生物科技股得到了溢价。但是,这个癌症研究方面的可能突破在至少五个月前就已经被 Nature 期刊和各种流行的报纸报道过了,其中甚至包括《泰晤士报》!因此,仅仅是热情的公众关注就能引发股价的持续上涨,即便实际上并没有出现真正的新信息。”
在研究者给出的许多有见地的观察中,其中有一个总结很突出:
“(股价)运动可能会集中于有一些共同之处的股票上,但这些共同之处不一定要是经济基础。”
我就想,能不能基于通常所用的指标之外的其它指标来划分股票。我开始在数据库里面挖掘,几周之后我发现了一个,其包含了一个分数,描述了股票和元素周期表中的元素之间的“已知和隐藏关系”的强度。
我有计算基因组学的背景,这让我想起了基因和它们的细胞信号网络之间的关系是如何地不为人所知。但是,当我们分析数据时,我们又会开始看到我们之前可能无法预测的新关系和相关性。
选择出的涉及细胞可塑性、生长和分化的信号通路的基因的表达模式
和基因一样,股票也会受到一个巨型网络的影响,其中各个因素之间都有或强或弱的隐藏关系。其中一些影响和关系是可以预测的。
我的一个目标是创建长的和短的股票聚类,我称之为“篮子聚类(basket clusters)”,我可以将其用于对冲或单纯地从中获利。这需要使用一个无监督机器学习方法来创建股票的聚类,从而使这些聚类之间有或强或弱的关系。这些聚类将会翻倍作为我的公司可以交易的股票的“篮子(basket)”。
首先我下载了一个数据集:http://54.174.116.134/recommend/datasets/supercolumns-elements-08.html,这个数据集基于元素周期表中的元素和上市公司之间的关系。
然后我使用了 Python 和一些常用的机器学习工具——scikit-learn、numpy、pandas、matplotlib 和 seaborn,我开始了解我正在处理的数据集的分布形状。为此我参考了一个题为《Principal Component Analysis with KMeans visuals》的 Kaggle Kernel:https://www.kaggle.com/arthurtok/principal-component-analysis-with-kmeans-visuals
importnumpy asnp
importpandas aspd
fromsklearn.decomposition
importPCA
fromsklearn.cluster
importKMeans
importmatplotlib.pyplot asplt
importseaborn assbnp.seterr(divide= 'ignore', invalid= 'ignore')
# Quick way to test just a few column features
# stocks = pd.read_csv('supercolumns-elements-nasdaq-nyse-otcbb-general-UPDATE-2017-03-01.csv', usecols=range(1,16))
stocks = pd.read_csv( 'supercolumns-elements-nasdaq-nyse-otcbb-general-UPDATE-2017-03-01.csv')print(stocks.head())str_list = []
forcolname, colvalue instocks.iteritems():
iftype(colvalue[ 1]) == str: str_list.append(colname)
# Get to the numeric columns by inversion
num_list = stocks.columns.difference(str_list)stocks_num = stocks[num_list]print(stocks_num.head())
输出:简单看看前面 5 行:
概念特征的皮尔逊相关性(Pearson Correlation)。在这里案例中,是指来自元素周期表的矿物和元素:
stocks_num = stocks_num.fillna(value= 0, axis= 1)X = stocks_num.values
fromsklearn.preprocessing importStandardScalerX_std = StandardScaler().fit_transform(X)f, ax = plt.subplots(figsize=( 12, 10))plt.title( 'Pearson Correlation of Concept Features (Elements & Minerals)')
# Draw the heatmap using seaborn
sb.heatmap(stocks_num.astype(float).corr(),linewidths= 0.25,vmax= 1.0, square= True, cmap= "YlGnBu", linecolor= 'black', annot= True)sb.plt.show()
输出:(这个可视化例子是在前 16 个样本上运行得到的)。看到元素周期表中的元素和上市公司关联起来真的很有意思。在某种程度时,我想使用这些数据基于公司与相关元素或材料的相关性来预测其可能做出的突破。
测量“已解释方差(Explained Variance)”和主成分分析(PCA)
已解释方差=总方差-残差方差(explained variance = total variance - resial variance)。应该值得关注的 PCA 投射组件的数量可以通过已解释方差度量(Explained Variance Measure)来引导。Sebastian Raschka 的关于 PCA 的文章对此进行了很好的描述,参阅:http://sebastianraschka.com/Articles/2015_pca_in_3_steps.html
# Calculating Eigenvectors and eigenvalues of Cov matirx
mean_vec = np.mean(X_std, axis= 0)cov_mat = np.cov(X_std.T)eig_vals, eig_vecs = np.linalg.eig(cov_mat)
# Create a list of (eigenvalue, eigenvector) tuples
eig_pairs = [ (np.abs(eig_vals[i]),eig_vecs[:,i]) fori inrange(len(eig_vals))]
# Sort from high to low
eig_pairs.sort(key = lambdax: x[ 0], reverse= True)
# Calculation of Explained Variance from the eigenvaluestot = sum(eig_vals)var_exp = [(i/tot)* 100fori insorted(eig_vals, reverse= True)] cum_var_exp = np.cumsum(var_exp)
# Cumulative explained variance# Variances plot
max_cols = len(stocks.columns) - 1plt.figure(figsize=( 10, 5))plt.bar(range(max_cols), var_exp, alpha= 0.3333, align= 'center', label= 'indivial explained variance', color = 'g')plt.step(range(max_cols), cum_var_exp, where= 'mid',label= 'cumulative explained variance')plt.ylabel( 'Explained variance ratio')plt.xlabel( 'Principal components')plt.legend(loc= 'best')plt.show()
输出:
从这个图表中我们可以看到大量方差都来自于预测主成分的前 85%。这是个很高的数字,所以让我们从低端的开始,先只建模少数几个主成分。更多有关分析主成分合理数量的信息可参阅:http://setosa.io/ev/principal-component-analysis
使用 scikit-learn 的 PCA 模块,让我们设 n_components = 9。代码的第二行调用了 fit_transform 方法,其可以使用标准化的电影数据 X_std 来拟合 PCA 模型并在该数据集上应用降维(dimensionality rection)。
pca = PCA(n_components= 9)x_9d = pca.fit_transform(X_std)plt.figure(figsize = ( 9, 7))plt.scatter(x_9d[:, 0],x_9d[:, 1], c= 'goldenrod',alpha= 0.5)plt.ylim( -10, 30)plt.show()
输出:
这里我们甚至没有真正观察到聚类的些微轮廓,所以我们很可能应该继续调节 n_component 的值直到我们得到我们想要的结果。这就是数据科学与艺术(data science and art)中的“艺术”部分。
现在,我们来试试 K-均值,看看我们能不能在下一章节可视化任何明显的聚类。
K-均值聚类(K-Means Clustering)
我们将使用 PCA 投射数据来实现一个简单的 K-均值。使用 scikit-learn 的 KMeans() 调用和 fit_predict 方法,我们可以计算聚类中心并为第一和第三个 PCA 投射预测聚类索引(以便了解我们是否可以观察到任何合适的聚类)。然后我们可以定义我们自己的配色方案并绘制散点图,代码如下所示:
# Set a 3 KMeans clustering
kmeans = KMeans(n_clusters= 3)
# Compute cluster centers and predict cluster indices
X_clustered = kmeans.fit_predict(x_9d) # Define our own color map
LABEL_COLOR_MAP = { 0: 'r', 1: 'g', 2: 'b'}label_color = [LABEL_COLOR_MAP[l] forl inX_clustered]
# Plot the scatter digram
plt.figure(figsize = ( 7, 7))plt.scatter(x_9d[:, 0],x_9d[:, 2], c= label_color, alpha= 0.5)plt.show()
输出:
这个 K-均值散点图看起来更有希望,好像我们简单的聚类模型假设就是正确的一样。我们可以通过这种颜色可视化方案观察到 3 个可区分开的聚类。
当然,聚类和可视化数据集的方法还有很多,参考:https://goo.gl/kGy3ra使用 seaborn 方便的 pairplot 函数,我可以以成对的方式在数据框中自动绘制所有的特征。我们可以一个对一个地 pairplot 前面 3 个投射并可视化:
# Create a temp dataframe from our PCA projection data "x_9d"
df = pd.DataFrame(x_9d)df = df[[ 0, 1, 2]]df[ 'X_cluster'] = X_clustered
# Call Seaborn's pairplot to visualize our KMeans clustering on the PCA projected data
sb.pairplot(df, hue= 'X_cluster', palette= 'Dark2', diag_kind= 'kde', size= 1.85)sb.plt.show()
输出:
构建篮子聚类(Basket Clusters)
你应该自己决定如何微调你的聚类。这方面没有什么万灵药,具体的方法取决于你操作的环境。在这个案例中是由隐藏关系所定义的股票和金融市场。
一旦你的聚类使你满意了,你就可以设置分数阈值来控制特定的股票是否有资格进入一个聚类,然后你可以为一个给定的聚类提取股票,将它们作为篮子进行交易或使用这些篮子作为信号。你可以使用这种方法做的事情很大程度就看你自己的创造力以及你在使用深度学习变体来进行优化的水平,从而基于聚类或数据点的概念优化每个聚类的回报,比如 short interest 或 short float(公开市场中的可用股份)。
你可以注意到了这些聚类被用作篮子交易的方式一些有趣特征。有时候标准普尔和一般市场会存在差异。这可以提供本质上基于“信息套利(information arbitrage)”的套利机会。一些聚类则和谷歌搜索趋势相关。
看到聚类和材料及它们的供应链相关确实很有意思,正如这篇文章说的一样:https://www.fairphone.com/en/2017/05/04/zooming-in-10-materials-and-their-supply-chains/
我仅仅使用该数据集操作了 Cobalt(钴)、Copper(铜)、Gallium(镓)和 Graphene(石墨烯)这几个列标签,只是为了看我是否可能发现从事这一领域或受到这一领域的风险的上市公司之间是否有任何隐藏的联系。这些篮子和标准普尔的回报进行了比较。
通过使用历史价格数据(可直接在 Quantopian、Numerai、Quandl 或 Yahoo Finance 使用),然后你可以汇总价格数据来生成预计收益,其可使用 HighCharts 进行可视化:
我从该聚类中获得的回报超过了标准普尔相当一部分,这意味着你每年的收益可以比标准普尔还多 10%(标准普尔近一年来的涨幅为 16%)。我还见过更加激进的方法可以净挣超过 70%。现在我必须承认我还做了一些其它的事情,但因为我工作的本质,我必须将那些事情保持黑箱。但从我目前观察到的情况来看,至少围绕这种方法探索和包装新的量化模型可以证明是非常值得的,而其唯一的缺点是它是一种不同类型的信号,你可以将其输入其它系统的流程中。
生成卖空篮子聚类(short basket clusters)可能比生成买空篮子聚类(long basket clusters)更有利可图。这种方法值得再写一篇文章,最好是在下一个黑天鹅事件之前。
如果你使用机器学习,就可能在具有已知和隐藏关系的上市公司的寄生、共生和共情关系之上抢占先机,这是很有趣而且可以盈利的。最后,一个人的盈利能力似乎完全关乎他在生成这些类别的数据时想出特征标签(即概念(concept))的强大组合的能力。
我在这类模型上的下一次迭代应该会包含一个用于自动生成特征组合或独特列表的单独算法。也许会基于近乎实时的事件,这可能会影响那些具有只有配备了无监督学习算法的人类才能预测的隐藏关系的股票组。
❺ 数据分析师养成攻略
数据分析师养成攻略
可能大家都会疑惑,数据分析师具体是干什么的?简而言之,就是分析数据的。数据分析师的工作职责:是在具体问题下,分析数据从而了解现状,后给出解决问题的相应对策。本人是数据分析小白一枚,对数据分析师这一岗位关注蛮多。因此想大胆地回答几个常见问题:招聘大量数据分析工作人员的行业公司有哪些?数据分析工作主要分为哪几类?以及如何学习数据分析?最后还要推荐一些学习资料给小伙们。
招聘大量数据分析工作人员的行业公司有哪些?
数据分析可以说是互联网经济下的产物。互联网企业最需要数据分析人才。正所谓“巧妇难为无米之炊”,互联网企业大量的数据是进行数据分析工作的基础,工作薪酬也普遍较高。互联网各类企业包括电商、金融、出行、O2O、新闻资讯,都需要数据分析人才。举例子:电商有网易考拉海购、京东、淘宝;金融呢有51信用卡、微贷网;出行有滴滴打车、曹操专车;020有美团、饿了吗;新闻资讯有今日头条。
数据分析工作主要分为哪几类?
数据挖掘工作到底是什么?可以参考这两个网站:第一个是阿里云天池大赛,第二个是国外Kaggle数据挖掘大赛网页。网络搜索关键词可到达网页。
想去到薪资较高的数据挖掘岗位,比如大型电商平台,BAT,滴滴等自学是不大可能的。因为数据挖掘挺难学的,而且自学很难被认可。需要去读个计算机研究生或者数学系研究生。个人觉得计算机研究生更好。
那跟数据分析相关的工作,要求不那么高的,同时薪资也相对低的,也有。
你如果有比较好的文案能力,可以寻找像房地产分析,股票证券分析之类的工作。这类工作的特点为有固定的分析模板,需要写文案。
你如果不具备较好的文案能力,像服装企业的商品专员,像销售部门的销售助理,像快递行业的快递分析这类的岗位,你可以留意一下,需要较好的EXCEL操作能力和平常的沟通能力和执行能力。
如何学习数据分析?
数据分析的学习,可以分为两方面:一是所从事行业的商业知识,二是分析的技术手段。举一个便利店例子,便利店店主知道天气和每日客流量之间的相互作用关系,天气好,客人会多,店内的熟食商品就应该多准备一点。这就是所从事行业的商业知识的范畴。而且店主还把每日的天气、销售量、客流量等记录在册,通过手工计算或脑内思考进行数据分析。后者就属于数据分析的技术手段。明显,店主的技术手段比较落后。
❻ 怎么在git上获取kaggle比赛中的共享代码
可以以个人或者组队的形式参加比赛。组队人数一般没有限制,但需要在 Merger Deadline 前完成组队。为了能参与到比赛中,需要在 Entry Deadline 前进行至少一次有效提交。最简单地,可以直接提交官方提供的 Sample Submission。关于组队,建议先单独个人进行数据探索和模型构建,以个人身份进行比赛,在比赛后期(譬如离比赛结束还有 2~3 周)再进行组队,以充分发挥组队的效果(类似于模型集成,模型差异性越大,越有可能有助于效果的提升,超越单模型的效果)。当然也可以一开始就组好队,方便分工协作,讨论问题和碰撞火花。
Kaggle 对比赛的公正性相当重视。在比赛中,每个人只允许使用一个账号进行提交。在比赛结束后 1~2 周内,Kaggle 会对使用多账号提交的 Cheater 进行剔除(一般会对 Top 100 的队伍进行 Cheater Detection)。在被剔除者的 Kaggle 个人页面上,该比赛的成绩也会被删除,相当于该选手从没参加过这个比赛。此外,队伍之间也不能私自分享代码或者数据,除非在论坛上面公开发布。
❼ Kaggle如何入门
在学习过深度学习的基础知识之后,参与实践是继续提高自己的最好途径。
在每个竞赛的“Overview”选项卡上,可以看到关于比赛及其数据集的一些信息、提交有效结果的评估标准(每个竞赛都略有不同),以及该竞赛的 FAQ。在“Data”(数据)选项卡上,你可以看到数据的简要说明。
需要的是这三个文件:train.csv、test.csv 和 data_description.txt,请将它们放在你可以快速访问的文件夹里。“Discussions”(讨论)选项卡就像竞赛的专属论坛,在流行的竞赛中,这些讨论中经常包含非常有价值的信息,因为竞赛条款有时会要求参与者必须在讨论版上公开他们所使用的任何信息。
数据泄露是很难避免和处理的,偶尔也会发生在竞赛中。一方面,充分利用数据才能得到更高的分数赢得竞赛;但另一方面,结合了数据泄露的模型通常对于实践来说是无用的,所以也不被竞赛支持。勤奋的参与者经常会在讨论版上分享数据泄露以帮助竞赛环境变得更好。
相关信息
Kaggle是由联合创始人、首席执行官安东尼·高德布卢姆2010年在墨尔本创立的,主要为开发商和数据科学家提供举办机器学习竞赛、托管数据库、编写和分享代码的平台。该平台已经吸引了80万名数据科学家的关注,这些用户资源或许正是吸引谷歌的主要因素。
Kaggle公司是由联合创始人兼首席执行官AnthonyGoldbloom2010年在墨尔本创立的,主要是为开发商和数据科学家提供举办机器学习竞赛、托管数据库、编写和分享代码的平台。这一平台已经吸引了许多科学家和开发者的关注,他们也纷纷入驻这一平台。
❽ 如何让数据流动起来,让数据拥抱数据
围墙里的大数据注定成为死数据。大数据需要开放式创新,从数据的开放、共享和交易,到价值提取能力的开放,再到基础处理和分析平台的开放,让数据如同血液在数据社会的躯体中长流,滋润数据经济,让更多的长尾企业和数据思维创新者产生多姿多彩的化学作用,才能创造大数据的黄金时代。
我的大数据研究轨迹
我做了4-5年的移动架构和Java虚拟机,4-5年的众核架构和并行编程系统,最近4-5年也在追时髦,先是投入物联网,最近几年一直在做大数据。我们团队的大数据研究轨迹如下图所示:
2010-2012年,主要关注数据和机器的关系:水平扩展、容错、一致性、软硬件协同设计,同时厘清各种计算模式,从批处理(MapRece)到流处理、Big SQL/ad hoc query、图计算、机器学习等等。事实上,我们的团队只是英特尔大数据研发力量的一部分,上海的团队是英特尔Hadoop发行版的主力军,现在英特尔成了Cloudera的最大股东,自己不做发行版了,但是平台优化、开源支持和垂直领域的解决方案仍然是英特尔大数据研发的重心。
从2013年开始关注数据与人的关系:对于数据科学家怎么做好分布式机器学习、特征工程与非监督学习,对于领域专家来说怎么做好交互式分析工具,对于终端用户怎么做好交互式可视化工具。英特尔研究院在美国卡内基梅隆大学支持的科研中心做了GraphLab、Stale Synchronous Parallelism,在MIT的科研中心做了交互式可视化和SciDB上的大数据分析,而中国主要做了Spark SQL和MLlib(机器学习库),现在也涉及到深度学习算法和基础设施。
2014年重点分析数据和数据的关系:我们原来的工作重心是开源,后来发现开源只是开放式创新的一个部分,做大数据的开放式创新还要做数据的开放、大数据基础设施的开放以及价值提取能力的开放。
数据的暗黑之海与外部效应
下面是一张非常有意思的图,黄色部分是化石级的,即没有联网、没有数字化的数据,而绝大多数的数据是在这片海里面。只有海平面的这些数据(有人把它称作Surface Web)才是真正大家能访问到的数据,爬虫能爬到、搜索引擎能检索到的数据,而绝大多数的数据是在暗黑之海里面(相应地叫做Dark Web),据说这一部分占数据总量的85%以上,它们在一些孤岛里面,在一些企业、政府里面躺在地板上睡大觉。
数据之于数据社会,就如同水之于城市或者血液之于身体一样。城市因为河流而诞生也受其滋养,血液一旦停滞身体也就危在旦夕。所以,对于号称数据化生存的社会来说,我们一定要让数据流动起来,不然这个社会将会丧失诸多重要功能。
所以,我们希望数据能够像“金风玉露一相逢”那样产生化学作用。马化腾先生提出了一个internet+的概念,英特尔也有一个大数据X,相当于大数据乘以各行各业。如下图所示,乘法效应之外,数据有个非常奇妙的效应叫做外部效应(externality),比如这个数据对我没用但对TA很有用,所谓我之毒药彼之蜜糖。
比如,金融数据和电商数据碰撞在一起,就产生了像小微贷款那样的互联网金融;电信数据和政府数据相遇,可以产生人口统计学方面的价值,帮助城市规划人们居住、工作、娱乐的场所;金融数据和医学数据在一起,麦肯锡列举了很多应用,比如可以发现骗保;物流数据和电商数据凑在一块,可以了解各个经济子领域的运行情况;物流数据和金融数据产生供应链金融,而金融数据和农业数据也能发生一些化学作用。比如Google analytics出来的几个人,利用美国开放气象数据,在每一块农田上建立微气象模型,可以预测灾害,帮助农民保险和理赔。
所以,要走数据开放之路,让不同领域的数据真正流动起来、融合起来,才能释放大数据的价值。
三个关于开放的概念
1、数据开放
首先是狭义的数据开放。数据开放的主体是政府和科研机构,把非涉密的政府数据及科研数据开放出来。现在也有一些企业愿意开放数据,像Netflix和一些电信运营商,来帮助他们的数据价值化,建构生态系统。但是数据开放不等于信息公开。首先,数据不等于信息,信息是从数据里面提炼出来的东西。我们希望,首先要开放原始的数据(raw data),其次,它是一种主动和免费的开放,我们现在经常听说要申请信息公开,那是被动的开放。
Tim Berners Lee提出了数据开放的五星标准,以保证数据质量:一星是开放授权的格式,比如说PDF;其次是结构化,把数据从文件变成了像excel这样的表;三星是开放格式,如CSV;四星是能够通过URI找到每一个数据项;五星代表能够和其它数据链接,形成一个开放的数据图谱。
现在主流的数据开放门户,像data.dov或data.gov.uk,都是基于开源软件。英特尔在MIT的大数据科研中心也做了一种形态,叫Datahub:吉祥物很有趣,一半是大象,代表数据库技术,一半是章鱼,取自github的吉祥物章鱼猫。它提供更多的功能比如易管理性,提供结构化数据服务和访问控制,对数据共享进行管理,同时可以在原地做可视化和分析。
广义的数据开放还有数据的共享及交易,比如点对点进行数据共享或在多边平台上做数据交易。马克思说生产资料所有制是经济的基础,但是现在大家可以发现,生产资料的租赁制变成了一种主流(参考《Lean Startup》),在数据的场景下,我不一定拥有数据,甚至不用整个数据集,但可以租赁。租赁的过程中要保证数据的权利。
首先,我可以做到数据给你用,但不可以给你看见。姚期智老先生82年提出“millionaires’ dilemma(百万富翁的窘境)”,两个百万富翁比富谁都不愿意说出自己有多少钱,这就是典型的“可用但不可见”场景。在实际生活中的例子很多,比如美国国土安全部有恐怖分子名单(数据1),航空公司有乘客飞行记录(数据2),国土安全部向航空公司要乘客飞行记录,航空公司不给,因为涉及隐私,他反过来向国土安全部要恐怖分子名单,也不行,因为是国家机密。双方都有发现恐怖分子的意愿,但都不愿给出数据,有没有办法让数据1和数据2放一起扫一下,但又保障数据安全呢?
其次,在数据使用过程中要有审计,万一那个扫描程序偷偷把数据藏起来送回去怎么办?再者,需要数据定价机制,双方数据的价值一定不对等,产生的洞察对各方的用途也不一样,因此要有个定价机制,比大锅饭式的数据共享更有激励性。
从点对点的共享,走到多边的数据交易,从一对多的数据服务到多对多的数据市场,再到数据交易所。如果说现在的数据市场更多是对数据集进行买卖的话,那么数据交易所就是一个基于市场进行价值发现和定价的,像股票交易所那样的、小批量、高频率的数据交易。
我们支持了不少研究来实现刚才所说的这些功能,比如说可用而不可见。案例一是通过加密数据库CryptDB/Monomi实现,在数据拥有方甲方这边的数据库是完全加密的,这事实上也防止了现在出现的很多数据泄露问题,大家已经听到,比如说某互联网服务提供商的员工偷偷把数据拿出来卖,你的数据一旦加密了他拿出来也没用。其次,这个加密数据库可以运行乙方的普通SQL程序,因为它采用了同态加密技术和洋葱加密法,SQL的一些语义在密文上也可以执行。
针对“百万富翁的窘境”,我们做了另一种可用但不可见的技术,叫做数据咖啡馆。大家知道咖啡馆是让人和人进行思想碰撞的地方,这个数据咖啡馆就是让数据和数据能够碰撞而产生新的价值。
比如两个电商,一个是卖衣服的,一个是卖化妆品的,他们对于客户的洞察都是相对有限的,如果两边的数据放在一起做一次分析,那么就能够获得全面的用户画像。再如,癌症是一类长尾病症,有太多的基因突变,每个研究机构的基因组样本都相对有限,这在某种程度上解释了为什么过去50年癌症的治愈率仅仅提升了8%。那么,多个研究机构的数据在咖啡馆碰一碰,也能够加速癌症的研究。
在咖啡馆的底层是多方安全计算的技术,基于英特尔和伯克利的一个联合研究。在上面是安全、可信的Spark,基于“data lineage”的使用审计,根据各方数据对结果的贡献进行定价。
2、大数据基础设施的开放
现在有的是有大数据思维的人,但他们很捉急,玩不起、玩不会大数据,他不懂怎么存储、怎么处理这些大数据,这就需要云计算。基础设施的开放还是传统的Platform as a Service,比如Amazon AWS里有MapRece,Google有Big Query。这些大数据的基础处理和分析平台可以降低数据思维者的门槛,释放他们的创造力。
比如decide.com,每天爬几十万的数据,对价格信息(结构化的和非结构化的)进行分析,然后告诉你买什么牌子、什么时候买最好。只有四个PhD搞算法,其他的靠AWS。另一家公司Prismatic,也利用了AWS,这是一家做个性化阅读推荐的,我专门研究过它的计算图、存储和高性能库,用LISP的一个变种Clojure写的非常漂亮,真正做技术的只有三个学生。
所以当这些基础设施社会化以后,大数据思维者的春天很快就要到来。
3、价值提取能力的开放
现在的模式一般是一大一小或一对多。比如Tesco和Dunnhumby,后者刚开始是很小的公司,找到Tesco给它做客户忠诚度计划,一做就做了几十年,这样的长期战略合作优于短期的数据分析服务,决策更注重长期性。当然,Dunnhumby现在已经不是小公司了,也为其他大公司提供数据分析服务。再如沃尔玛和另外一家小公司合作,做数据分析,最后他把这家小公司买下来了,成了它的Walmart Labs。
一对多的模式,典型的是Palantir——Peter Thiel和斯坦福的几个教授成立的公司,目前还是私有的,但估值近百亿了,它很擅长给各类政府和金融机构提供数据价值提取服务。真正把这种能力开放的是Kaggle,它的双边,一边是10多万的分析师,另一边是需求方企业,企业在Kaggle上发标,分析师竞标,获得业务。这可能是真正解决长尾公司价值提取能力的办法。当然,如果能和我们的数据咖啡馆结合,就更好了。
❾ 数据挖掘工程师一般都做什么
数据挖掘,从字面上理解,就是在数据中找到有用的东西,哪些东西有用就要看具体的业务目标了。最简单的就是统计应用了,比如电商数据,如淘宝统计过哪个省购买泳衣最多、哪个省的女生胸罩最大等,进一步,可以基于用户的浏览、点击、收藏、购买等行为推断用户的年龄、性别、购买能力、爱好等能表示一个人的画像,就相当于用这些挖掘出来的属性来刻画一个人,这些还是最简单的东西,更深层次的比如预测(股票预测),但是比较难。
数据挖掘往往与机器学习离不开。比如分类、聚类、关联规则挖掘、个性化推荐、预测、神经网络、深度学习等。
数据挖掘 = 业务知识 + 自然语言处理技术( NLP ) + 计算机视觉技术( CV ) + 机器学习 / 深度学习( ML/DL )
( 1 )其中业务知识具体指的是个性化推荐,计算广告,搜索,互联网金融等; NLP , CV 分别是处理文本,图像视频数据的领域技术,可以理解为是将非结构化数据提取转换成结构化数据;最后的ml/dl 技术则是属于模型学习理论;
( 2 )在选择岗位时,各个公司都没有一套标准的称呼,但是所做的事情无非 2 个大方向,一种是主要钻研某个领域的技术,比如自然语言处理工程师,计算机视觉工程师,机器学习工程师等;一种是将各种领域技术应用到业务场景中去解决业务需求,比如数据挖掘工程师,推荐系统工程师等;具体的称呼不重要,重要的是平时的工作内容;
PS :在互联网行业,数据挖掘相关技术应用比较成功的主要是推荐以及计算广告领域,而其中涉及到的数据主要也是文本,所以 NLP 技术相对来讲比较重要,至于 CV 技术主要还是在人工智能领域(无人车,人脸识别等)应用较多,本人了解有限,相关的描述会较少;
数据挖掘岗位需要具备的3 种基本能力
1. 工程能力
( 1 )编程基础:需要掌握一大一小两门语言,大的指 C++ 或者 Java ,小的指 Python 或者 shell 脚本;需要掌握基本的数据库语言;
建议: MySQL + python + C++ ;语言只是一种工具,看看语法就好;
推荐书籍:《 C++ primer plus 》
( 2 )开发平台: Linux ;
建议:掌握常见的命令,掌握 Linux 下的源码编译原理;
推荐书籍:《 Linux 私房菜》
( 3 )数据结构与算法分析基础:掌握常见的数据结构以及操作(线性表,队,列,字符串,树,图等),掌握常见的计算机算法(排序算法,查找算法,动态规划,递归等);
建议:多敲代码,多上 OJ 平台刷题;
推荐书籍:《大话数据结构》《剑指 offer 》
( 4 )海量数据处理平台: Hadoop ( mr 计算模型, java 开发)或者 Spark ( rdd 计算模型, scala开发),重点推荐后者;
建议:主要是会使用,有精力的话可以看看源码了解集群调度机制之类的;
推荐书籍:《大数据 spark 企业级实战》
2. 算法能力
( 1 )数学基础:概率论,数理统计,线性代数,随机过程,最优化理论
建议:这些是必须要了解的,即使没法做到基础扎实,起码也要掌握每门学科的理论体系,涉及到相应知识点时通过查阅资料可以做到无障碍理解;
( 2 )机器学习 / 深度学习:掌握 常见的机器学习模型(线性回归,逻辑回归, SVM ,感知机;决策树,随机森林, GBDT , XGBoost ;贝叶斯, KNN , K-means , EM 等);掌握常见的机器学习理论(过拟合问题,交叉验证问题,模型选择问题,模型融合问题等);掌握常见的深度学习模型( CNN ,RNN 等);
建议:这里的掌握指的是能够熟悉推导公式并能知道模型的适用场景;
推荐书籍:《统计学习方法》《机器学习》《机器学习实战》《 UFLDL 》
( 3 )自然语言处理:掌握常见的方法( tf-idf , word2vec , LDA );
3. 业务经验
( 1 )了解推荐以及计算广告相关知识;
推荐书籍:《推荐系统实践》《计算广告》
( 2 )通过参加数据挖掘竞赛熟悉相关业务场景,常见的比赛有 Kaggle ,阿里天池, datacastle 等。
想要学习数据挖掘的话可以看一下这篇文章《AI时代就业指南:数据挖掘入门与求职》
❿ 应聘数据挖掘 kaggle有用吗
论文的特点就是以写人、叙事、写景、状物为主要内容;通过描述人物、时间及状物、写景来表达一定的中心。正因为论文写的是生活中的见闻,所以一定要表达出作者对于生活的真切感受。