AI算法在云音乐搜索的应用
作者:王新欣
整理:AIFounder
AI算法在云音乐搜索的应用
一、云音乐介绍
1.1 关于云音乐
1.2 云音乐-内容
分为几大模块
分别为歌曲、UGC歌单、评论、社区Mlog、视频、直播
1.3 云音乐-搜索
1 用户需求仅仅是一首歌曲?
2 如何理解用户并匹配?
3 如何给用户更好的资源?
4 如何给业务赋能?
1.4 云音乐搜索框架概览
基于以上的内容,本文会着重介绍两大模块
1 Query的理解
2 排序模型
二、Query理解体系 - 搜索的基石
2.1 Query理解体系的演进
2.1.1 意图识别:深度学习对意图识别的完善
为什么做意图识别?不同意图,对应不同的域,召回的内容相关与否,直接影响用户体验云音乐query意图占比 6月份为例,当时,依然有51%的query意图不明
云音乐的Query量千万级别,人工标注耗时耗力 ,如何快速扩展?需要借助技术来实现
2.1.2 意图识别 - 扩展样本
举例:
2.1.3 意图识别 - 在线识别
线上预测:TextCnn , Fasttext, LSTM, RCNN, C-LSTM , XLNet +TextCNN ,Bert +ABSA
使用:Fasttext.
优点:鲁棒性更强,速度快,精度高。
2.1.4 使用异质图网络HGAT做意图识别
步骤:
1、通过用户行为,异质图构建
2、使用Bert进行初始化
3、使用邻居节点表示当前节点
4、节点分类
2.1.5 Tag类示例
2.2 相关性计算、匹配
2.2 传统相关性匹配
特点:
1)纯字面匹配 - 无法得到语义层面的信息
2)引擎侧可以支持一定模糊度 - 但泛化能力较差,人工经验多
3)经常会出现召回的内容差的情况
4)排序侧,人工设计特征:字段、匹配度等
2.3 基于点击的相关性演进
2.3.2 基于点击的相关性—Graph Embedding
Graph Embedding简述
目标:节点以低维稠密向量的形式进行表达
认为:图中相似,映射到低维度空间相似
图中每个圆圈代表一个节点
音乐搜索场景的应用
query和item抽象为图中的节点,通过用户行为连接
应用:
2.3.2 Graph Embedding —Node2vec
那该怎么控制走向呢?
游走结果示例:
2.3.2 Graph Embedding —Node2vec
基于边的权重进行随机游走
一、过程 对每个节点n有 Repeat 1 以n0为初始点,根据边的权重选择一个与之连接的节点neighbor1 加入walk中
2 以walk队列中最后的那个作为起始,持续1的动作
3 根据指定条件终止
二、权重计算 (共同决定:希望walk节点内聚,相关性高 ) α: 控制广度、深度优先的偏执系数 α
w:实现差异化的节点与节点之间的权重w
深、广度作用:
深度优先:防止walk掉头,促使walk走向更远的地方 广度优先:促进游走不断的回头,去访问上一步结点的其他邻居结点(云音乐)
2.3.2 Graph Embedding —Node2vec
使用word2vec训练节点向量
总结
1、假设节点、query分布一致,符合模型 理论基础,适合Emb计算
2、转成word2vec计算embedding,获取 相关性
3、霍夫曼树层次softmax的分类树,减少 分类的所需的资源
4、与DeepWalk相比,因为边的权重控制, 模型受离群点影响小,更具内聚性
2.3.2 Graph Embedding —Node2vec
3 表征:基于深度模型的语义表征
2.3.1 基于深度模型的语义表征
2.3.2 基于深度模型的语义表征
2.3.3 基于深度模型的语义表征
示例 :
三、内容体系
3.1 排序模型演进
3.2排序模型—深度时序模型
一、背景:1 时序模型特点:刻画 “事件”演进,理解用户兴趣变更;将NLP“时序” 学习,迁移到CTR;不同模型刻画程度不同 2 类似商品,用户的听歌时序,也是在不断演进的 二、优化几点Tip: 1 从用户的角度出发,可以建多条不同兴趣的队列,也可以给业务建 兴趣队列 2 时间的选取上可以进行细分 3 将时间分桶,进行位置“表征”
第一版,点击率1%,收藏率1.5%提升。
3.3 排序模型—联合学习
背景:1 某场景的体验优化,同时要兼顾业务A的产出 2 效果与业务在一个空间下,差异性:多了一个业务侧的用 户画像、Item画像 3 同样是CTR到CVR的转化,典型的CVR样本稀疏
历程:
样本采取上的改进:
模型改造:
具有区分度:
3.4排序模型—多资源排序
背景:
1 云音乐内容类型多,用户不同意图、不同时刻,对内容的 需求不同,需要让用户偏好的资源排在首屏、第二屏
2 多内容,具有区分度,又有关联性。内容彼此比较有难度
3 综合页的内容排序具有流量分配的作用。提高效能的同时 也能为业务赋能
多内容排序实例
3.5 排序模型—多资源排序(BST-MVDNN)
问题:
用户行为序列是否需要区分不同资源类型?
用户行为序列是否需要区分不同的消费类型?
Transformer Layer Position Embedding表达?
不同模块特征表达, User-Model共享?
3.6排序模型—多资源排序(BST-MVDNN)
实践:
1 User-Model的共享,采用MV-DNN
2 Position Embedding采用logtime的离散化embedding表达
3 序列:用户搜下下的资源消费行为序列+全站消费序列、中长期序列表达
4 采用统一的序列建模,保证资源序列的完整性
四、思考
内循环(算法体系)带动外循环(业务体系)
4.1 内循环带动外循环
4.2 内循环
4.3 外循环
AI算法在云音乐搜索的应用相关推荐
- 音乐雷达 shazam算法_shazam等音乐搜索应用程序的工作背后,创建您自己的音乐搜索应用程序...
音乐雷达 shazam算法 Ever wondered how your favorite music searching app works?. Well, this is the correct ...
- 预测《权游》角色生死,AI算法魔力何在?
早在2016年,<权力的游戏>第六季播出之前,慕尼黑工业大学(TUM)的学生就开发了一款AI应用程序,来预测剧中人物的存活情况. 近两年之后,<权力的游戏>第八季,也就是最后一 ...
- 阅面携手英特尔发布“繁星”的背后,是AI算法“端”和“云”之争
随着端算力的提升,云主要的作用一定会回归它的本质,就是存储. 今年11月,阅面科技与英特尔发布"繁星"系列产品,集成了传感器.ISP,并在Intel Movidius芯片100 G ...
- 腾讯AI Lab「云深」与成都先导合作「AI+药物」,发布骨架跃迁新算法
感谢阅读腾讯AI Lab微信号第131篇文章.本文将介绍腾讯AI Lab「云深」联合成都先导发布骨架跃迁新算法,实验合成7个有效化合物. 腾讯AI Lab「云深」平台在药物发现 AI 算法研究领域取得 ...
- (只此一篇便绝b能懂的)五子棋AI算法原理,博弈树、极大极小搜索、αβ剪枝
我在最近撰写五子棋AI程序设计报告时,翻阅了很多的资料博客,但却发现大佬们的博客,没有一篇是能让我只看它就能理解全部的AI算法.在看了众多博客后,我终于对博弈树.极大极小搜索.αβ剪枝恍然大悟,其实这 ...
- 象棋ai算法(极小-极大值搜索、负极大值函数、Alpha-Beta剪枝算法、渴望算法)
ai的思考过程是怎样的?自然就是遍历所有的可能,找出相对最好的一种着法.我们首先要实现这个功能,之后再优化算法,使得效率更高. 本文介绍的算法: 极小-极大值搜索 负极大值函数 Alpha-Beta剪 ...
- python算法教程百度云_如何用免费GPU学习AI算法?这篇算法资源大集锦别错过
飞桨开发者投稿 上一次写了篇薅GPU百度AI Studio计算资源的文章,收到很多AI算法初学者私信,问我能不能补充一些AI Studio的学习资源.有求必应向来是我的风格,于是我加入了AI Stud ...
- 近200万奖金!仅限在校生!DIGIX全球校园AI算法大赛来了
Datawhale赛事 主办方:江苏省人工智能学会.华为 2021 DIGIX全球校园AI算法精英大赛由江苏省人工智能学会.华为终端云服务.华为南京研究所共同举办.大赛自2019年启动以来,将AI理论 ...
- 艰难就业季,2020 AI算法岗春招汇总 面经大全来了!!!
关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 受疫情影响,很多家企业纷纷推迟复工.但是,今年的春招并没有因此耽搁,很多企业纷纷发 ...
最新文章
- 自动换行的draw2d标签
- 如何从机器学习数据中获取更多收益 1
- 什么是真正的架构设计?
- 指令寻址方式与数据寻址方式
- flume简介(大数据技术)
- 在阿里淘系6个月能有哪些收获成长?
- Android RecyclerView(九)滑动监听综述
- difftime C语言,C语言中difftime函数如何使用time_t*
- 数据结构(C++)—— 向量(Vector)
- [转载] 20个常用Python库及200个第三方库
- 大话西游版《我叫小沈阳》
- 计算机专业初试,2019初试-计算机专业基础综合-考试大纲
- 扫描无法传送到计算机,文件无法从复印机扫描到电脑?可能是以下操作您没有注意到...
- Xuxiang Qi--Deep Learning based Semantic Labelling of 3D Point Cloud in Visual SLAM
- html地图导航代码例子,js 实现百度地图导航例子
- CC++:计算某年某月的1号是星期几
- keep怎么生成运动轨迹_KEEP的另类使用技巧——旅行记录
- 锵锵三人行:AWS,下个路口见
- CF1284E·New Year and Castle Construction
- 常见安全产品系统默认口令