Datawhale
Datawhale模块汇聚了国内领先的开源学习社区的优质教育资源,专注于数据科学、机器学习和人工智能领域的系统化学习体系构建。该模块系统性地整理了Datawhale社区的核心学习内容,涵盖LLM大语言模型、Multi-Agent多智能体系统、NLP自然语言处理、强化学习、数据挖掘、图深度学习、推荐系统、YOLO目标检测、计算机视觉等多个AI核心领域的完整教程体系。
技术栈包括从理论基础到实践应用的完整学习路径,提供丰富的开源教材、实战项目、代码示例和学习指南,详细介绍了LLM系列课程的技术架构、Multi-Agent协作机制、NLP核心算法、强化学习经典案例、数据挖掘实用技巧、图深度学习应用等核心知识点。
内容还包含面试经验分享和自动化办公等实用技能培训,配套Jupyter Notebook、Python代码库、数据集资源等学习材料。通过开源的方式聚合优质学习者,共同完成高质量内容的创作与传播,形成了完整的AI学习生态体系,帮助学习者在开放协作的环境中快速提升AI技术能力和职业竞争力。
- DATAWHALE - 一个热爱学习的社区
- Datawhale
- Datawhale算法资料汇总!
- 数据竞赛Baseline & Topline分享
- 编程、数据结构与算法
- LeetCode 算法笔记(Leetcode-Notes)
- 深度学习教程
- 深度学习入门课、资深课、特色课、学术案例、产业实践案例、深度学习知识百科及面试题库The course, case and knowledge of Deep Learning and AI
- PyTorch入门教程,在线阅读地址:https://datawhalechina.github.io/thorough-pytorch/
- 李宏毅深度学习教程LeeDL-Tutorial
- 统计学习方法(第二版)习题解答
0.LLM系列
简介
这些项目主要由 Datawhale 社区发起,旨在为中文学习者和开发者提供全面、系统的大语言模型(LLM)学习与实践教程。它们涵盖了从LLM的基础原理、底层机制到实际的应用开发、模型部署和高效微调等多个维度,致力于降低LLM的学习和使用门槛,赋能更多人掌握大模型技术。核心功能
- 理论学习与实践指导:提供从零开始的LLM原理、架构基础和训练过程的系统性教程。
- 开源模型部署与应用:针对国内外主流开源LLM(如LLaMA、ChatGLM、InternLM等)提供环境配置、本地部署、命令行调用、在线Demo部署及LangChain框架集成等全流程指导。
- 高效模型微调:详细讲解全参数微调、LoRA、ptuning等高效微调方法,并提供实践案例。
- 应用开发实践:指导开发者进行Prompt Engineering、RAG(检索增强生成)开发,以及基于LLM API构建实际应用。
- 多模态大模型支持:部分项目涵盖多模态大模型(MLLM)的微调与部署。
技术原理
- 大语言模型(LLM):核心基于Transformer等深度学习架构,通过大规模语料训练获得强大的语言理解和生成能力。
- 高效微调技术:包括 LoRA (Low-Rank Adaptation)、Ptuning 等参数高效微调方法,以及全量微调,以适应特定任务或领域。
- 检索增强生成(RAG):结合外部知识库进行信息检索,再利用LLM生成回答,提高生成内容的准确性和时效性。
- 提示工程(Prompt Engineering):通过精心设计的输入指令(Prompt)来引导LLM生成期望的输出。
- 多模态融合:涉及处理和理解文本、图像、音频等多种模态数据,如MLLM。
- 模型部署与推理优化:利用如 FastAPI、vLLM 等技术实现模型的快速部署和高效推理。
应用场景
- LLM初学者入门:为对LLM感兴趣但缺乏经验的个人提供系统学习路径。
- 开发者工具链构建:指导开发者集成LLM到现有应用中,或开发全新的LLM驱动应用。
- 个性化大模型定制:通过微调技术,帮助用户根据特定需求和数据集,打造领域专属或个性化的LLM。
- 领域知识问答系统:结合RAG技术,构建基于私有知识库的智能问答系统。
- 智能体(Agent)开发:用于开发具备规划、工具使用和自我修正能力的AI Agent。
- 教育与研究:作为AI/NLP领域的教学资源和研究实践平台。
- 跨模态应用:开发涉及文本、图像、音频等多模态交互的应用。
- datawhalechina/happy-llm: 📚 从零开始的大语言模型原理与实践教程
- !self-llm: 《开源大模型食用指南》含训练
- 蝴蝶🦋书datawhalechina/hugging-llm: HuggingLLM, Hugging Future.
- datawhalechina/llm-cookbook: 面向开发者的 LLM 入门教程,吴恩达大模型系列课程中文版
- 开源大模型食用指南需要先学习环境配置,然后再学习模型的部署使用,最后再学习微调。因为环境配置是基础,模型的部署使用是基础,微调是进阶。初学者可以选择Qwen3,InternLM3,MiniCPM4等模型优先学习。
- 如果有同学在学习本课程之后,想要自己动手开发大模型应用。同学们可以参考 Datawhale 的 动手学大模型应用开发 课程,该项目是一个面向小白开发者的大模型应用开发教程LLM Universe,旨在基于阿里云服务器,结合个人知识库助手项目,向同学们完整的呈现大模型应用开发流程。
- 希望了解大模型的模型构成,以及从零手写RAG、Agent和Eval等任务,可以学习Datawhale的另一个项目Tiny-Universe,大模型是当下深度学习领域的热点,但现有的大部分大模型教程只在于教给大家如何调用api完成大模型的应用,而很少有人能够从原理层面讲清楚模型结构、RAG、Agent 以及 Eval。所以该仓库会提供全部手写,不采用调用api的形式,完成大模型的 RAG 、 Agent 、Eval 任务。
- 进阶学习推荐 :如果您在学习完本项目后,希望更深入地理解大语言模型的核心原理,并渴望亲手从零开始训练属于自己的大模型,强烈推荐关注 Datawhale 的另一个开源项目—— Happy-LLM 从零开始的大语言模型原理与实践教程 。该项目将带您深入探索大模型的底层机制,掌握完整的训练流程。
- 考虑到有同学希望在学习本项目之前,希望学习大模型的理论部分,如果想要进一步深入学习 LLM 的理论基础,并在理论的基础上进一步认识、应用 LLM,可以参考 Datawhale 的 so-large-llm课程。
0.Multi-Agent
简介
《Handy-Multi-Agent》是一套专为期望深入了解并实践多智能体系统的开发者设计的实用指南。该教程基于领先的多智能体框架 CAMEL-AI(NeruIPS'2023),旨在从最基本的单个智能体开发开始,逐步引导读者构建和应用复杂的Multi Agent系统,并侧重于实践和动手构建智能体应用。核心功能
- 多智能体系统构建指导:提供从单智能体到复杂多智能体应用的完整实践路径。
- CAMEL框架掌握:详细讲解CAMEL框架的使用方法,帮助用户理解智能体的基本概念。
- 核心组件实践:涵盖智能体的构成组件,如模型(Models)、消息(Messages)、提示工程(Prompt Engineering)、记忆(Memory)和工具(Tools)的应用。
- RAG应用开发:指导在CAMEL框架下构建检索增强生成(RAG)应用,包括向量数据库、知识库搭建与评估。
- 数据合成:介绍CAMEL框架特有的数据合成功能。
技术原理
《Handy-Multi-Agent》教程的核心技术原理是基于 CAMEL-AI (Communicative Agents for "Mind" Exploration of Large Language Models) 框架。该框架支持构建复杂的智能体社会(Agent Society)和工作队伍(Workforce)。其技术实现涉及:- 大型语言模型(LLM)驱动:智能体通过LLM进行决策、生成内容和交互。
- 模块化智能体设计:智能体由模型、消息、记忆和工具等核心组件构成,实现高度可配置和扩展性。
- 提示工程(Prompt Engineering):通过精心设计的提示词引导智能体行为和输出。
- 检索增强生成(RAG)机制:结合向量数据库技术,实现知识检索与内容生成,包括知识库的构建与管理,以及Graph RAG等高级应用。
- 多智能体协作与交互:通过角色扮演、任务分配和消息传递机制,实现智能体之间的协同工作。
应用场景
- 多智能体系统开发与研究:作为学习和实践多智能体技术、深入理解LLM在多智能体系统中应用的教学资源。
- 智能应用原型构建:快速搭建基于智能体的各类复杂应用原型,例如用户意图识别、信息检索、攻略生成等。
- RAG应用部署:构建和优化具有知识增强能力的智能应用,如智能问答系统、智能客服等。
- 自动化任务处理:利用多智能体协作完成复杂任务,如旅游信息检索与攻略生成、反馈优化等。
- 数据生成与增强:利用CAMEL的数据合成能力,为AI模型训练提供高质量合成数据。
- datawhalechina/handy-multi-agent: This is a multi agent tutorial based on the CAMEL framework, aimed at understanding how to build an Agent Society from the ground up!
- Handy Multi-Agent Tutorial-飞书
- Handy Multi Agent 教程
0.NLP
简介
Hands-Dirty-NLP是由Datawhale中国推出的一个开源项目或课程,旨在帮助具备一定机器学习基础但对自然语言处理(NLP)领域尚未入门或经验尚浅的学习者。该项目通过提供实际代码示例,侧重于展示各种NLP模型背后的设计思想和技术演变,避免了繁琐的公式推导,致力于让学习者通过动手实践来深入理解和应用NLP技术,实现“既知树木也知森林”的全面掌握。核心功能
该项目涵盖了NLP领域的核心任务和技术,主要包括:- 文本表示 (Text Representation):介绍如何将文本数据转换为可供机器学习模型处理的数值形式,可能涉及词嵌入(如Word2Vec, GloVe)及预训练模型(如ELMo, BERT)。
- 序列标注 (Sequence Labeling):处理序列数据中每个元素的分类问题,例如命名实体识别(NER)、词性标注(POS Tagging)等。
- 分类任务 (Classification Tasks):解决文本分类问题,如情感分析、垃圾邮件检测、主题分类等。
- 文本匹配 (Text Matching):研究文本之间的语义相似度或关系,应用于问答系统、信息检索、复述识别等。
- 生成任务 (Generative Tasks):涉及生成自然语言文本,如文本摘要、机器翻译、对话生成等。
- 阅读理解 (Reading Comprehension):使机器能够理解给定文本并回答相关问题,通常涉及抽取式或生成式问答。
技术原理
Hands-Dirty-NLP旨在通过代码实践揭示NLP模型的深层原理,主要涉及的技术原理包括:- 分布式表示 (Distributed Representation):通过词向量或句向量等方法将离散的词汇映射到连续的低维向量空间,捕捉词汇间的语义关系。
- 深度学习模型 (Deep Learning Models):运用循环神经网络(RNN,如LSTM、GRU)、卷积神经网络(CNN)以及更先进的Transformer架构处理序列数据和进行特征提取。
- 预训练语言模型 (Pre-trained Language Models, PLMs):重点介绍并应用如ELMo等基于大规模语料库预训练的模型,利用其强大的语言理解能力进行下游任务微调。
- 注意力机制 (Attention Mechanism):在序列模型中引入注意力,使模型能够聚焦于输入序列中重要的部分,尤其在长序列处理和序列到序列任务中发挥关键作用。
- 序列到序列学习 (Sequence-to-Sequence, Seq2Seq):基于编码器-解码器架构,实现从一个序列到另一个序列的映射,广泛应用于生成任务。
应用场景
该项目所教授的NLP技术可广泛应用于以下场景:- 智能客服与问答系统:通过文本匹配和阅读理解技术,实现智能问答、知识库检索。
- 舆情分析与情感监控:利用文本分类进行情感分析,追踪社交媒体上的用户情绪和品牌声誉。
- 机器翻译与跨语言交流:通过生成任务实现不同语言间的自动翻译。
- 智能推荐系统:结合用户评论或商品描述的文本表示进行个性化推荐。
- 信息抽取与知识图谱构建:利用序列标注和阅读理解从非结构化文本中抽取实体、关系和事件。
- 内容创作辅助:如自动摘要、文章生成、对话机器人等,辅助人类进行文本创作和交流。
- datawhalechina/hands-dirty-nlp: 本课程面对具有一定机器学习基础,但尚未入门的NLPer或经验尚浅的NLPer,尽力避免陷入繁琐枯燥的公式讲解中,力求用代码展示每个模型背后的设计思想,同时也会带大家梳理每个模块下的技术演变,做到既知树木也知森林。
1.强化学习+蘑菇书
简介
Datawhale China 强化学习系列项目旨在为强化学习初学者、研究人员和实践者提供全面的学习资源和实践工具。主要包括《Easy RL》强化学习教程(“蘑菇书”)、JoyRL 强化学习框架以及强化学习论文集等,致力于降低强化学习的学习门槛,促进理论与实践的结合。核心功能
- Easy RL (强化学习教程): 提供系统化的强化学习理论知识、经典算法解析、以及Jupyter Notebook形式的算法实现示例,方便读者在线阅读和动手实践。
- JoyRL (强化学习框架): 一个基于 PyTorch 和 Ray 的并行强化学习库,简化了强化学习算法的实现和测试过程,通过超参数配置即可训练和测试算法,支持包括 RLHF 在内的多种前沿算法。
- 强化学习论文集 (RL-Papers): 整理、总结并解读强化学习领域的经典论文,涵盖DQN、策略梯度、模仿学习、分布式强化学习、多任务强化学习、探索策略等多个方向。
技术原理
- 算法实现: 涵盖Q-learning, Sarsa, DQN (包括Double DQN, Dueling DQN, NoisyDQN, CategoricalDQN), DDPG, TD3, A2C/A3C, PPO, SoftQ等多种经典和前沿强化学习算法。
- 框架与库: JoyRL 采用 PyTorch 作为深度学习框架,并结合 Ray 进行并行化处理,以提高训练效率和可扩展性。Jupyter Notebooks 提供算法代码实现,便于用户理解和运行。
- 理论基础: 项目内容建立在广泛的强化学习经典理论和最新研究成果之上,涉及值函数方法、策略梯度方法、Actor-Critic架构、探索-利用平衡、分布式训练等核心概念。
应用场景
- 强化学习入门与学习: 初学者可以通过《Easy RL》教程系统学习强化学习基础知识和算法原理。
- 研究与开发: 研究人员和开发者可以利用 JoyRL 框架快速实现、训练和测试各种强化学习算法,进行新算法验证或现有算法改进。
- 教学与培训: 作为强化学习领域的教学材料,为相关课程和培训提供理论支撑和实践案例。
- 学术交流与资源共享: 强化学习论文集为研究者提供了便捷的论文查阅和学习途径,促进学术社区内的知识共享。
- 特定领域应用: 强化学习算法的应用探索,例如在游戏AI、机器人控制、推荐系统、金融交易、资源管理等领域。
- 蘑菇书EasyRL电子书籍
- datawhalechina/easy-rl: 强化学习中文教程,在线阅读地址:https://datawhalechina.github.io/easy-rl/
- 经典强化学习论文解读
- 蘑菇书全部代码
- 线上代码:datawhalechina/joyrl
- 离线代码
- 强化学习和强化学习论文
1.数据挖掘机器学习
简介
Datawhale是一个专注于机器学习和数据挖掘领域的开源社区,致力于通过组织组队学习活动和提供高质量的学习资源,帮助学习者系统性地掌握相关理论知识并提升实践技能。其中,“南瓜书”(Pumpkin Book)项目作为其重要组成部分,专门对周志华教授的经典著作《机器学习》(俗称“西瓜书”)中较为复杂的数学公式进行了详细的推导与解析,旨在扫清学习者在理解机器学习原理时的数学障碍。核心功能
- 结构化组队学习: 提供有组织、有计划的数据挖掘和机器学习学习路径,涵盖从基础概念到高级应用的多个主题,如数据分析实践、预测模型等。
- 机器学习公式深度解析: 针对《机器学习》(西瓜书)中的关键算法和模型,提供详尽的数学公式推导过程,帮助学习者彻底理解其内在机理。
- 学习资源整合: 汇总并分享与数据科学、机器学习和数据挖掘相关的开源资料、代码实现和学习笔记,方便学习者查阅和实践。
- 实践项目指导: 结合理论知识,提供实际案例和项目练习,引导学习者将所学应用于实际问题解决中。
技术原理
- 统计学习理论: 涵盖监督学习、无监督学习、半监督学习等核心范畴,涉及判别模型与生成模型的构建原理。
- 优化算法: 阐释梯度下降、牛顿法、拟牛顿法、EM算法等在机器学习模型参数优化中的应用与数学推导。
- 概率图模型: 涉及贝叶斯网络、隐马尔可夫模型等在数据建模和推断中的数学基础与结构。
- 线性代数与矩阵运算: 支撑向量机、主成分分析等算法中向量空间、特征值分解、矩阵分解等数学工具的运用。
- 数据挖掘技术: 运用分类、聚类、关联规则、回归分析等方法对大规模数据集进行模式发现和知识提取。
应用场景
- 个人学习与进阶: 适用于对机器学习和数据挖掘感兴趣的初学者、学生及希望深入理解理论细节的从业者。
- 学术研究辅助: 为科研人员提供机器学习算法的严谨数学推导,有助于论文撰写和理论验证。
- 数据科学教育: 可作为高校计算机科学、人工智能、数据科学等专业课程的参考资料和辅助教材。
- 工程实践能力提升: 帮助开发者和数据科学家将扎实的理论基础应用于实际的数据分析、预测建模和智能系统开发中。
- datawhalechina/team-learning-data-mining: 主要存储Datawhale组队学习中“数据挖掘/机器学习”方向的资料。
- 南瓜书PumpkinBook
1.图深度学习
简介
《图深度学习》(又称“葡萄书”)是一个旨在帮助读者无痛入门图深度学习的在线教程。该教程综合了京东团队的《图深度学习从理论到实践》、密西根州立大学汤继良老师团队的《图深度学习》以及斯坦福大学CS224W图机器学习课程的精华内容。它不仅涵盖了深度学习和图的基础知识,还深入探讨了经典的图神经网络模型,并提供了理论与实践相结合的全面指导。核心功能
- 知识整合与系统学习: 整合多方权威资源,提供一套系统化的图深度学习学习路径。
- 理论知识讲解: 详细介绍图基础知识、深度学习基础及各类经典图神经网络模型。
- 实践指导: 结合开源图框架,如NetworkX、DGL和PyG,提供实践代码和操作指导。
- 降低学习门槛: 旨在帮助初学者快速掌握图深度学习的核心概念和应用。
技术原理
该教程主要围绕图深度学习(Graph Deep Learning, GDL)领域展开,其核心在于将深度学习技术应用于图结构数据。涉及的关键技术原理包括:- 图理论基础: 理解图的结构、表示、遍历等基本概念。
- 深度学习基础: 神经网络、卷积神经网络(CNN)、循环神经网络(RNN)等基础模型的原理。
- 图神经网络(Graph Neural Networks, GNNs): 核心技术,通过节点特征聚合、信息传递和更新机制,学习图结构数据中的表示,涵盖图卷积网络(GCN)、图注意力网络(GAT)等。
- 图嵌入(Graph Embedding): 将图中的节点或结构映射到低维向量空间,以便于下游任务处理。
- 基于消息传递范式(Message Passing Paradigm): GNNs的一种通用框架,通过迭代地聚合邻居信息来更新节点表示。
应用场景
图深度学习技术在多个领域具有广泛的应用潜力,本教程所涵盖的知识可应用于:- 社交网络分析: 用户关系预测、社区发现、谣言检测等。
- 推荐系统: 基于用户-物品交互图的个性化推荐。
- 生物信息学: 蛋白质结构预测、药物发现、基因网络分析等。
- 化学分子领域: 分子性质预测、材料设计等。
- 交通网络: 交通流量预测、路径规划等。
- 知识图谱: 实体关系抽取、知识推理、问答系统等。
- 计算机视觉: 场景图生成、点云处理等。
- 图神经网络GNN葡萄书(正在成长版)
1.推荐系统
简介
Fun-Rec 是由 Datawhale 社区发起并维护的一个开源推荐系统入门教程项目。该项目旨在帮助具有机器学习基础的学习者系统地入门推荐算法领域,提供从基础理论到实战应用,再到面试准备的完整学习路径。核心功能
- 推荐系统学习体系化: 提供从推荐系统概述到核心算法、实战项目及面试经验的全方位学习内容。
- 算法基础讲解: 深入讲解各类推荐算法的基础理论与实现原理。
- 实战指导: 包含实际项目案例和数据竞赛(如天池竞赛)指导,提升动手能力。
- 面试准备: 汇总推荐算法相关面试常见问题及解答,助力求职。
- 技术栈覆盖: 涉及机器学习、深度学习、TensorFlow等主流技术。
技术原理
Fun-Rec 项目主要涵盖以下技术原理:- 机器学习 (Machine Learning): 作为推荐系统的基础,涉及各类监督学习、无监督学习等算法。
- 深度学习 (Deep Learning): 利用神经网络模型处理复杂的用户行为数据和物品特征,如协同过滤的深度学习实现、序列推荐等。
- 推荐算法 (Recommendation Algorithms): 包括但不限于协同过滤(User-based, Item-based)、矩阵分解(SVD, FunkSVD)、因子分解机(FM, FFM)、深度学习推荐模型(如DeepFM, NCF, DIN等)。
- 算法工程 (Algorithm Engineering): 涉及推荐系统的特征工程、模型训练与优化、离线评估与在线A/B测试等实践环节。
- TensorFlow: 作为主要的深度学习框架,用于实现和训练推荐模型。
应用场景
- 推荐算法初学者入门: 适合对推荐系统感兴趣但缺乏系统知识的学习者。
- 准备推荐算法工程师岗位: 为有志于从事推荐算法相关工作的求职者提供理论与实践指导及面试准备。
- 提升机器学习实战能力: 通过推荐系统项目实践,提升数据处理、模型构建和优化能力。
- 参与数据科学竞赛: 为参与天池等数据竞赛的选手提供推荐系统方向的参考和方法。
- 高校教学与研究: 可作为推荐系统相关课程的辅助教材或研究参考资料。
- datawhalechina/fun-rec: 推荐系统入门教程,在线阅读地址:https://datawhalechina.github.io/fun-rec/
1.yolo
简介
YOLO Master是一个由Datawhale中国开源数据科学社区推出的综合性教育资源库,旨在提供对YOLO(You Only Look Once)系列目标检测模型的深入理解。该项目通过介绍YOLO各版本模型的结构和改进,帮助学习者掌握YOLO模型的发展脉络,并促进其在各自应用领域的创新与实践。核心功能
- YOLO模型概览: 系统性介绍YOLO系列模型的演进,涵盖从早期版本到最新版本的关键特性。
- 模型结构解析: 详细阐述不同YOLO模型的网络架构、组成部分及其设计理念。
- 技术改进分析: 深入探讨YOLO模型在速度、精度、小目标检测等方面的各项改进技术。
- 学习资源提供: 作为教育项目,为学习者提供学习YOLO模型所需的理论知识和实践指导。
技术原理
YOLO系列模型是基于深度学习的单阶段(One-Stage)目标检测算法,其核心原理在于将目标检测任务视为一个回归问题。- 端到端检测: YOLO模型直接在输入图像上预测边界框和类别概率,省去了候选区域生成步骤,实现了端到端的检测。
- 网格系统: 将输入图像划分为S×S的网格,每个网格负责预测中心落在该网格内的目标。
- 多任务回归: 每个网格预测多个边界框(包括边界框的中心坐标、宽度、高度)及其置信度(表示包含目标的可能性以及预测框的准确度),同时预测每个边界框所属类别的条件概率。
- 非极大值抑制(NMS): 用于去除重叠的冗余边界框,只保留最具代表性的检测结果。
- Anchor Box机制: 后期版本引入Anchor Box,预设不同尺寸和比例的候选框,以提高模型对多尺度目标的检测能力。
应用场景
YOLO系列模型以其卓越的实时性表现,广泛应用于多种需要快速目标检测的场景:- 自动驾驶: 实时识别道路上的车辆、行人、交通标志等,辅助车辆进行环境感知和决策。
- 视频监控: 实时监测异常行为、入侵检测、人流统计等,提升安防系统的智能化水平。
- 工业检测: 在生产线上进行产品缺陷检测、零部件识别、计数等,提高生产效率和质量控制。
- 机器人视觉: 帮助机器人识别和定位操作对象,实现抓取、避障等功能。
- 零售分析: 分析顾客行为、商品摆放、库存管理等,优化店铺运营。
- 医疗影像分析: 辅助医生在医学影像中快速定位病灶或异常区域。
- datawhalechina/yolo-master: yolo master 本课程主要对yolo系列模型进行介绍,包括各版本模型的结构,进行的改进等,旨在帮助学习者们可以了解和掌握主要yolo模型的发展脉络,以期在各自的应用领域可以进一步创新并在自己的任务上达到较好的效果。
2.CV
简介
DatawhaleChina 提供的两个开源项目,一个是 OpenMMLab 系列新手入门教程,特别是从 MMDetection 库切入,旨在帮助初学者快速掌握 OpenMMLab 深度学习框架的使用;另一个是 Datawhale 组队学习中计算机视觉(CV)方向的资料集合,主要用于学习和梳理图像处理算法。这两个项目共同致力于降低深度学习和计算机视觉领域的学习门槛,促进相关知识的传播与实践。核心功能
- OpenMMLab 教程: 提供系统的 OpenMMLab 库(如 MMDetection)使用指南,涵盖配置安装、数据集准备、模型训练、结果展示等,并计划扩展至模型优化与部署(通过 MMDeploy)。
- 计算机视觉组队学习: 存储和组织计算机视觉方向的专业学习资料,包含图像处理基础算法的学习内容,辅助学习者通过实践掌握计算机视觉技术。
技术原理
- OpenMMLab 教程: 基于 OpenMMLab 深度学习框架的模块化设计和配置系统。其核心在于通过
config文件高效管理模型架构、训练参数、数据集配置等,实现灵活的模型构建、训练和评估。教程深入讲解了如何利用 MMDetection 进行目标检测等任务,并涉及深度学习模型的训练优化和推理部署技术。 - 计算机视觉组队学习: 专注于计算机视觉领域的基础理论和算法实现。内容可能涵盖经典的图像处理算法(如滤波、边缘检测、特征提取等)以及使用计算机视觉库(如 OpenCV)进行图像操作与分析。对于更高级的应用,可能涉及卷积神经网络(CNN)等深度学习模型在图像分类、目标检测、图像分割等任务中的原理与应用。
应用场景
- 深度学习入门与实践: 适用于希望快速入门 OpenMMLab 框架、掌握 MMDetection 等下游库使用、进行深度学习模型开发与部署的科研人员、工程师和学生。
- 计算机视觉技能提升: 适合有一定编程基础,希望系统学习计算机视觉算法,并掌握 OpenCV 等工具进行图像处理和分析的开发者和学习者。
- 团队学习与协作: 作为 Datawhale 组队学习项目的一部分,为参与者提供结构化的学习路径和实践指导,促进知识共享与共同进步。
- openmmlab-tutorial: OpenMMLab 开源库官方文档且能够自主上手实验,自由选择阅读更深层的知识。
- datawhalechina/team-learning-cv: 主要存储Datawhale组队学习中“计算机视觉”方向的资料。
3.面经
简介
Datawhale 的 Daily Interview 项目是一个由 Datawhale 成员整理、旨在帮助面试者高效准备技术面试的资源集合。它专注于人工智能算法及相关技术领域,如机器学习、计算机视觉、自然语言处理、推荐系统和开发等。该项目致力于提供结构化、精炼的面试准备材料,以解决现有面经零散、信息过载导致面试者备考压力大等问题,从而提升面试表现。核心功能
- 面试知识点整合: 系统性地收集和整理机器学习、CV、NLP、推荐算法、开发等领域的面试高频知识点。
- 精炼问答: 提供经过筛选和提炼的面试问题与解答,避免冗余信息。
- 学习路径指引: 为面试者提供清晰的学习和复习路径,帮助其有针对性地准备面试。
- 减轻备考压力: 通过集中且条理化的内容,降低面试者在海量信息中迷失的焦虑感。
技术原理
该项目本身并非一个技术系统,而是技术知识的集合。其“技术原理”体现在对面试考点内容的组织与提炼上,主要涉及:- 领域知识结构化: 将分散的计算机科学与人工智能领域的知识(如深度学习框架、算法复杂度、数据结构、特定模型原理等)进行归类和体系化。
- 核心概念解析: 侧重于对各技术领域(如统计学习、神经网络、强化学习、分布式系统等)的核心概念、算法流程、性能优化等进行深入浅出的解释。
- 问题导向学习: 以面试问题为导向,串联相关理论知识和实践经验,强调解决实际问题的思路。
- 算法与模型分析: 深入分析常见机器学习、深度学习算法的数学原理、适用场景、优缺点及变种。
应用场景
- AI/算法工程师面试准备: 适用于机器学习、计算机视觉、自然语言处理、推荐系统、数据挖掘等方向的AI/算法工程师岗位的面试备考。
- 软件开发工程师面试辅助: 对于涉及算法、数据结构和系统设计等技术点的软件开发岗位面试,提供参考。
- 技术知识体系回顾: 帮助相关领域的技术人员系统回顾和巩固基础及进阶知识。
- 高校学生求职指导: 为计算机相关专业的学生提供求职面试的知识准备和策略指导。
- datawhalechina/daily-interview: Datawhale成员整理的面经,内容包括机器学习,CV,NLP,推荐,开发等,欢迎大家star
3.自动化办公
简介
该项目是Datawhale团队学习计划的一部分,旨在教授如何利用Python进行办公自动化。它涵盖了通过编程提高日常办公效率的多种方法和工具,是为学习者提供实践性自动化解决方案的开源教程。核心功能
- 文件处理自动化: 实现对文件和文件夹的自动化操作,包括但不限于文件的查找、移动、复制、重命名以及批量处理。
- 邮件自动化: 自动化发送、接收、管理电子邮件,如定时发送报告、批量通知等。
- 网络爬虫: 开发原创爬虫项目,用于自动化获取网络数据,如从网页抓取信息。
- 企业协作工具集成: 支持通过Python操作如钉钉等企业协作平台,实现消息发送、日程管理等自动化功能。
技术原理
该办公自动化解决方案主要基于Python编程语言及其丰富的第三方库。- 文件系统操作: 利用Python的
os模块和shutil模块进行文件和目录的高效管理。 - 电子邮件协议: 运用
smtplib和email等库实现SMTP、POP3、IMAP等邮件协议的交互,完成邮件的发送与接收。 - 网络请求与解析: 爬虫部分通常涉及
requests库进行HTTP请求,结合BeautifulSoup或lxml等解析库对HTML/XML内容进行结构化提取。 - API交互: 对于钉钉等企业协作工具,通过调用其开放API接口,利用
requests库发送JSON格式的请求,实现业务逻辑的自动化。 - 数据结构与算法: 在处理文件、数据解析和流程控制中,应用基础的数据结构(如列表、字典)和算法(如遍历、查找、排序)来优化自动化脚本的效率和健壮性。
应用场景
- 日常办公效率提升: 自动化重复性工作,如文件归档、报告生成、数据汇总等。
- 数据采集与分析: 定期从网站获取业务数据,进行自动化清洗、整理和初步分析。
- 信息通知与分发: 自动化发送会议通知、项目进展报告、营销邮件等。
- 企业内部流程自动化: 结合钉钉等平台,实现考勤提醒、会议通知、审批流程触发等自动化。
- 个人生产力工具开发: 帮助个人用户定制开发专属的自动化工具,解决特定场景下的重复操作。
- datawhalechina/office-automation: python自动化办公