
综合排名
0
网站活跃度
资金持有量
交易对
0
注册地
-
关注人数
0
建立有效执行加密货币经济的最先进机器学习技术
介绍
在Coinbase中,我们将机器学习用于各种用例,从防止欺诈和使用户安全到策展和个性化内容或检测身份是否匹配。
机器学习项目与其他类型的软件工程之间的关键区别之一是,在实际尝试原型之前很难预测机器学习模型的影响。这就是为什么获取初始原型并具有快速迭代周期对于机器学习项目至关重要的原因。
考虑到这一点,我们着手建立一套机器学习模型,以平衡快速迭代周期与新的最新实践之间的权衡。在此博客文章中,我们将详细介绍为使公司中的任何人都能快速构建高性能ML模型而构建的ML系统: ,和。
EasyML支持在表格数据上构建模型,例如,由多种类型的功能组成的数据,例如数字(用户在网站上的年龄),分类(用户所在的城市)或日期(最后交易日期)-“电子表格数据”。 Seq2Win支持构建使用顺序数据(例如前端用户事件序列)的模型。 EasyBlend使我们能够将多个模型组合在一起。综上所述,这三个框架可在短短几个小时内用于构建全新用例的机器学习模型。
这就是它们如何组合在一起的方式:
EasyML
ML模型框架的关键是EasyML。 EasyML是一个AutoML框架,专门用于使用表格数据快速构建用于任务的高性能模型,例如,从SQL查询或CSV文件返回数据的模型(例如,风险模型,个性化模型,新闻排名等)。今天,我们在Coinbase生产中使用的几乎所有ML模型都继承自EasyML。
这就是使用EasyML进行模型开发的样子:
- 要素类型推导-要素会根据类型自动分类:数字,分类或日期。
- 特征处理-根据特征类型应用转换:存储桶化,日期之间的差异,特定于日期的特征(例如星期几/小时)等。利用所有可用资源并行进行处理。
- 模型训练-EasyML支持各种建模方法,并结合了最佳实践。目前支持线性模型,梯度提升树和深度学习模型。 EasyML还支持开箱即用的多GPU训练。
- 模型说明-可解释性是我们关键模型的首要考虑,因此EasyML提供了全局功能的重要性以及通过SHAPley值进行的每个样本分析。
EasyML开发工作流程具有以下战略优势:
- 可以将大多数ML模型的培训和服务工作流程统一为一个程序包,以确保更好的测试和性能。
- 通过从EasyML继承并编写少于20行的自定义Python代码,可以更快地开发模型并降低复杂性。
- EasyML在功能处理,模型训练或可解释性方面的改进将自动被所有使用它的模型继承。
这是来自Kaggle的Titanic数据集的EasyML实例:
Seq2Win
作为EasyML的补充,Seq2Win使用基于Transformer架构的最先进的深度学习模型来处理一系列用户事件(例如,前端和后端事件)。通过基于用户的最近事件获取用户打算做什么的实时脉冲,可以实现真正的用户意图建模。
这是Seq2Win的工作方式:
给定一系列用户事件以及这些事件的相关时间戳序列,我们将这两个序列都转换为分类(对于事件而言是微不足道的,对于连续时间戳的差异使用存储桶化)。然后,我们剩下两个类别的序列,可以将它们视为标记序列(以使用最著名的Transformers的NLP模型)。我们为事件和桶式时间戳差异创建嵌入,将它们添加到一起,然后将其与学习的位置嵌入相结合。然后,该总和是第一编码器层的输入。
就Transformer架构而言,我们使用256表示序列长度,使用8头和4编码器层(无解码器层)关注多头。
Seq2Win的战略优势是其基础数据源(用户事件)与任何特定域都不相关。 Coinbase的ML团队已将其用作成功的子模型,用于预防欺诈以及为用户提供个性化的资产购买体验,代表了两个不同的业务领域。在短期内,为了释放模型的全部功能,ML团队计划针对Coinbase上所有用户的事件对Seq2Win进行预培训,并使用最新的Transformer架构。
轻松混搭
EasyBlend的建立是为了使ML工程师能够轻松组合表格化EasyML模型和序列Seq2Win模型,因为这两种模型在体系结构和输入功能方面都不同。 EasyBlend可以在引擎盖下训练多种类型的模型,并通过使用线性混合来组合其结果。可以将其视为两层方法,其中需要组合的模型位于第一层,而Blender模型位于第二层。
具体来说,对于给定的数据集,EasyBlend首先拆分为It,在其上训练模型并为其评分,然后在上一步中的模型分数上训练blender模型(通常是线性模型,例如Linear或Logistic回归),然后在(也具有上一步的模型得分)。
最终结果是将不同模型组合在一起的一种快速简便的方法,同时还使最终结果易于解释,因为搅拌器模型是线性的。
影响力
通过EasyML,Seq2Win和EasyBlend扮演关键的贡献者角色,我们推动了更高的净收入和更低的欺诈率,同时大大减少了用户的摩擦。在机器学习方面,我们在许多模型中都实现了+ 10%的ROC-AUC收益。
最终,我们实现了一个快速的迭代周期,团队中的每个人以及公司中认识Python的其他人都可以组装培训和验证数据集,并且可以在数分钟内(而不是之前的几天)构建初始ML模型。 。
结论
通过拥有这些构建块,Coinbase的ML工程师可以快速构建最新模型,而不会牺牲性能或迭代速度。这带来了有意义的业务影响,机器学习工程师的更高生产率以及更快的迭代时间。展望未来,我们很高兴通过预训练Seq2Win并使用Graph Neural Networks处理区块链数据来改进这些构建基块。
通过对密码的有效执行来构建最先进的机器学习技术……最初发表在Medium上的Coinbase博客上,人们在其中通过突出并响应这个故事来继续对话。