Blog
Page 16 - Showing 5 of 87 posts
本文探讨了B树和B+树在数据结构中的应用,特别是在处理大量数据和进行高效查询时的优势。首先,文章指出平衡二叉树虽然简单但不适合处理海量数据,因为其高度限制导致磁盘IO次数增多。接着,B树通过在每个节点内部排序来提高读取速度,而B+树则通过将数据存放在叶子节点中并使用链表连接所有叶子节点来减少磁盘IO次数,同时保证查询速度的稳定性。最后,文章提供了参考资料链接,供有兴趣深入了解的读者参考。
本文讨论了在大规模通用数据集上训练的LLM模型微调方法,特别是如何通过适配器(Adapter)、前缀(Prefix)和引导词(Prompt)等方法来适应特定任务。特别介绍了微软提出的低秩自适应(LoRA)技术,该方法通过分解更新量矩阵为两个低秩矩阵的乘积来减少运算量,并取得了与全量微调相近的效果。文章还探讨了LoRA的具体原理、应用以及面临的挑战。
本文记录了作者尝试将荣耀20手机从鸿蒙系统降级到Magic系统并最终导致设备变砖的整个过程。文章详细描述了刷机前的准备工作、使用的工具和软件,以及在降级过程中遇到的具体问题和挑战。尽管作者投入了大量的时间和金钱,但最终由于操作失误导致手机无法正常使用。
本文介绍了手写多头注意力(MHA)的实现。文章首先定义了MultiHeadAttention类,该类用于处理多维输入数据并生成输出。在实现过程中,作者详细描述了如何通过线性变换、Scaled Dot-Product Attention和Softmax操作来构建注意力机制。实验结果表明,使用einsum表示法可以简化代码编写,提高可读性。
Adam优化方法显存占用情况。一般来说,Adam用到的信息更多,所以需要的内存占用更大。曾有个实验,Optimizer选择SGD的时候,Batch Size能选择20,但是换成Adam时候,Batch Size只能选择2。Adam的自适应体现之处在于指数平滑,缓解了梯度方向剧变,使收敛路径更平滑一点。