字节的面试算是体验最好的,泪目了。
内推投递。
1小时30分
4.1. 介绍数据、模型、介绍LRP的流程。
4.2. 是否有除了GNN外提取特征的方法(在你们的数据上)。
5.1. 介绍预训练的策略。
5.2. 如何判断预训练任务有效?为什么就选了这两个?
6.1. 介绍Deepwalk。
6.2. 介绍KMeans的流程。KMeans中初始聚类中心的初始化策略?是否尝试过除欧式距离外的距离评估方式?
6.3. 是否有尝试过其他的非基于随机游走的方法?如果使用,你觉得对你们的项目有什么提高?
7.1. 多头自注意力机制全流程。为什么缩放点积注意力需要处理特征维度?
7.2. 介绍LayerNorm。LayerNorm的位置区别。
7.3. 介绍FFN层。
7.4. 有哪些位置编码?区别?
(1)在原始Transformer论文中使用的是正余弦位置编码(不可学习)
(2)Bert、GPT中使用的是可学习位置编码。
(3)大模型常用的旋转位置编码Rotary。
做题:
设计一个增加、删除、随机获取一个元素都为O(1)的算法。添加的数满足:(1)正整数、无重复。
两个哈希表,一个线性表。两个哈希表分别记录:
(1)记录目前存在的数。
(2)记录该数在线性表的位置。位置 -> 元素。
线性表用于随机获取元素。
(1)随机获取元素,时间复杂度为O(1)。
(2)删除元素,通过与末尾元素互换,时间复杂度为O(1)。
反问:
搜索、大模型应用。
算法、数据结构扎实。对技术有追求、最好对我们的业务有了解、不了解也没有关系。
1小时10分左右
做题:
给定长度为m
的不重复的字符集合a = {'a', 'b', 'c', 'd'}
,以及长度为n
的字符串b = "tbabcdskpo"
。
定义“好子数组”为 字符串b
中的一个子数组满足,长度为m
且子数组的字符不重复。求第一个“好子数组”的起始下表。
解:滑动窗口 + 哈希表 经典滑动窗口,而且窗口长度还是固定的。
反问:
工作时间何如? 早上10点半,晚上9点半
流程如何? 3面技术面+HR面
10分钟后收到通过。。
没过,回答的比较烂,从我看来主要是两个方面,一个方面是个人项目还不够了解,知其然而不知其所以然,另一方面是具体业务的场景没有经验,回答比较直接。
50分钟
2.1 项目的难点在哪?
2.2 GNN做需要多少的内存?
3.1 为什么要用Transformer?
3.2 之前的没有类似的研究做这个吗?
3.3 和GNN的预训练模型做过对比吗?
做题:
完美洗牌算法:设计一个算法将一组扑克牌打乱。******************
#番茄小说##字节##复盘面经#