MLSys
Learning Roadmap
AI-Infra: ML System学习计划
Machine Learning Engineering Open Book
对大规模机器学习和MLsys感兴趣,学习路线是什么? - Sunt的回答 - 知乎
重点看这个:ML system 入坑指南 - Fazzie的文章 - 知乎
重点看这个:ML system 入坑指南
机器学习系统研究到底能做点啥 - 魏嘉的文章 - 知乎
我的MLsys学习与秋招之路——写在 AI Infra 大基建的黄金时代 - MisakiQAQ的文章 - 知乎
Course
MIT6.5940 TinyML and Efficient Deep Learning Computing
UCB CS294-162 Machine Learning Systems
CMU10-414/714 Deep Learning Systems
CMU15-884: Machine Learning Systems
Book
《机器学习系统:设计和实现》
方向综述
MLsys各方向综述
目前围绕AI的软件工程领 ...
TinyML: Pruning
Over parameterization helps with optimization and after the optimization we can prune them away. (redundency is helpful for us to get away from local minimum)
Diffusion for Empathetic Response Generation
为DIFFUSEMP寻找创新点可以从以下几个方面入手,结合当前的研究趋势和技术发展,提出改进或扩展的方向:
噪声调度,引入更多控制信号(情感原因、心理技能)
依据
引入更多细粒度的控制信号(如情感原因分析、心理技能、常识知识)作为DIFFUSEMP的改进方向,确实有理论依据和研究支持。以下是对这些方向的详细分析和依据:
1. 情感原因分析(Emotion Cause Analysis)
• 理论依据:
◦ 情感原因分析是情感计算(Affective Computing)和自然语言处理(NLP)中的重要研究方向。情感原因指的是引发某种情感的具体事件或因素。例如,用户说“我很难过,因为我的宠物去世了”,其中“宠物去世”就是情感原因。
◦ 研究表明,理解情感原因对于生成更具针对性和共情性的回应至关重要。例如,Zhang et al. (2021) 提出了情感原因提取任务,并将其应用于对话系统中,显著提升了回应的质量。
• 研究支持:
◦ 在情感对话生成领域,情感原因分析已被证明可以提高模型的共情能力。 ...
Diffusion for NLP
攻略
Diffusion Forcing: Next-token Prediction Meets Full-Sequence Diffusion 2024年了diffusion还有什么可做的? - ACER的回答 - 知乎
Diffusion LLM 会不会是未来? - YSUN LIN的文章 - 知乎
diffusion-nlp-paper-arxiv
Diffusion 在NLP方向相关工作追踪(持续更新) - Snail的文章 - 知乎
扩散模型(DM)在自然语言处理(NLP)领域相比大语言模型(LLM)有什么优势? - Zephyr的回答 - 知乎
思路
基于Diffusion的对话模型确实是一个热门方向,但创新确实需要大量工程和理论工作。你提到的Diffusion Forcing和ICML 2024的最佳论文提供了新的思路,以下是一些可能的方向:
1. Diffusion Forcing
核心思想:通过外部信号引导生成过程,提升生成质量。
创新方向:
对话中的情感控制:利用情感标签作为引导信号,生成符合特定情感的回复。
主题一致性 ...
中文NLP
中文分词
在谣言监测任务中,分词策略的选择需要结合任务特点和模型类型。以下是针对不同场景的推荐方案:
1. 基于规则/传统机器学习的方法
推荐:词语级分词
• 工具示例:
• jieba(中文分词)
• LTP(哈工大分词工具)
• HanLP(支持多任务)
• 优势:
• 保留完整词语的语义(如"疫苗"、"副作用"等关键词可直接作为特征)
• 适合与TF-IDF、TextRank等传统特征提取方法结合
• 适用场景:
• 基于关键词匹配的快速过滤
• 小规模数据集上的分类模型(如SVM、随机森林)
2. 基于深度学习/预训练模型的方法
推荐:子词切分(Subword Tokenization)
• 工具示例:
• BERT Tokenizer(WordPiece)
• GPT Tokenizer(BPE)
• SentencePiece(通用子词切分)
• 优势:
• 解决未登录词问题(如新造词"奥密克戎"会被自动拆分为子词)
• 兼容多语言混合文本(如中英文混杂的社交媒体内容)
• 更适合Transform ...
强制刷新页面:Ctrl + F5(清除缓存刷新)。
Web相关问题
客户端发送HTTP请求到服务器后发生了什么?
当客户端(浏览器)发送一个请求到服务器时,服务器会创建一个 request 和 response 对象
这些对象包含了请求的所有信息(headers, parameters等)和响应的所有信息
Forward的工作原理?
当执行 forward 时,服务器不会向客户端发送任何响应
相反,服务器会在内部将请求转发给另一个资源(JSP、Servlet 等)
这个转发过程完全在服务器内部进行,客户端完全不知道这个过程
只有最终处理完请求后,服务器才会将响应发送给客户端
客户端请求 -> Servlet A | v forward 到 Servlet B | v Servlet B 处理请求 | v 返回响应给客户端
与 ...
Linux使用技巧
Linux: 后台运行进程
在 Linux 中,将当前进程放到后台运行并确保在关闭终端后仍持续运行,可以通过以下步骤实现:
方法 1:使用 nohup + &(推荐)
启动时直接后台运行
在命令前加 nohup,末尾加 &:
nohup your_command > output.log 2>&1 &
• nohup:忽略挂断信号(SIGHUP),防止终端关闭时进程被终止。
• > output.log:将标准输出重定向到文件(默认会输出到 nohup.out)。
• 2>&1:将错误输出合并到标准输出。
• &:让进程在后台运行。
查看后台进程
jobs -l # 查看当前终端的后台任务ps aux | grep your_command # 全局查找进程
关闭终端后仍运行
进程会脱离当前终端,由 init 进程(PID=1)接管,即使关闭终端也不会终止。
方法 2:使用 disown(针对已运行的进程)
如果进程已在前台运行:
按 Ctrl + Z 暂停进 ...
C/C++
Dynamic Array and Static Array
在C和Java中,判断一个数组是动态数组还是静态数组的方式有所不同,因为两者的内存管理机制和语法规则不同。以下是具体的判断方法:
C语言
在C语言中,数组的存储方式决定了它是静态数组还是动态数组。
1. 静态数组
静态数组的大小在编译时确定,并且分配在栈(stack)或全局/静态存储区。
判断方法:
如果数组的大小是固定的(例如 int arr[10];),并且没有使用动态内存分配函数(如 malloc、calloc 等),那么它是静态数组。
如果数组是全局变量或静态局部变量(例如 static int arr[10];),它也是静态数组。
示例:
int arr[10]; // 静态数组,大小在编译时确定static int arr2[20]; // 静态数组,存储在静态存储区
2. 动态数组
动态数组的大小在运行时确定,并且分配在堆(heap)上。
判断方法:
如果数组是通过动态内存分配函数(如 malloc、calloc、realloc)创建的,那么它是动态数组。
动态数组的大小 ...
计组简答题107题
冯.诺依曼主要三个思想是什么?(3分)
答:
①采用二进制
②存储程序和数据
③硬件有五大部分:输入设备、输出设备、存储器、运算器和控制器
计算机硬件由哪5部分组成?(5分)
答:输入设备、输出设备、存储器、运算器和控制器。
VLSI中文的意思是什么?(2分)
答:超大规模集成电路(VLSI,Very Large Scale Integration)
列举出三个计算机应用领域?(3分)
答:①科学技术计算 ②数据信息处理 ③计算机控制 ④计算机辅助技术 ⑤家庭电脑化
计算机系统分哪两大系统?(2分)
答:硬件系统、软件系统
计算机内部信息包括哪两大信息?(2分)
答:
①控制信息,即操作命令,其发源地为控制器
②数据流,它受控制信息的控制,从一部件流向另一部件,边流动边加工处理、
计算机性能主要包括哪三个主要性能?(3分)
答:
①基本字长:参与运算的数的基本长度,用二进制数位的长短来衡量,取决寄存器、加法器、数据总线等部件的位数。
②主存容量:可以用字节,有的用字长,K、M、G、T。
③运算速度:是每秒能执行的指令条数来表示,单位是条/ ...