[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-Yorko--mlcourse.ai":3,"tool-Yorko--mlcourse.ai":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",160784,2,"2026-04-19T11:32:54",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",109154,"2026-04-18T11:18:24",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":77,"owner_location":78,"owner_email":79,"owner_twitter":80,"owner_website":81,"owner_url":82,"languages":83,"stars":96,"forks":97,"last_commit_at":98,"license":99,"difficulty_score":32,"env_os":100,"env_gpu":100,"env_ram":100,"env_deps":101,"category_tags":112,"github_topics":114,"view_count":32,"oss_zip_url":79,"oss_zip_packed_at":79,"status":17,"created_at":127,"updated_at":128,"faqs":129,"releases":163},9779,"Yorko\u002Fmlcourse.ai","mlcourse.ai","Open Machine Learning Course","mlcourse.ai 是由 OpenDataScience 社区发起、前谷歌云 GenAI 专家 Yury Kashnitsky 主导的一门开源机器学习课程。它旨在解决初学者在掌握机器学习时面临的“理论枯燥”与“实践脱节”两大痛点，通过精心设计的教学路径，帮助学习者从零构建扎实的知识体系。\n\n这门课程非常适合希望系统入门或进阶的开发者、数据科学家及高校学生。其最大的技术亮点在于实现了数学理论与工程实践的完美平衡：课程既包含严谨的数学公式推导讲座，又提供了大量基于真实场景的编程作业和 Kaggle 竞赛实战。内容涵盖从 Pandas 数据处理到梯度提升树（Gradient Boosting）等核心算法的全流程，甚至引导用户从头实现随机梯度下降分类器等复杂算法。\n\n目前，mlcourse.ai 采用灵活的自学模式，将学习过程规划为十周的渐进式旅程，每周明确指引阅读材料、视频讲座及对应的练习任务。除了完全免费开放的核心课程内容外，它还提供了可选的付费“_bonus_ 作业包”，包含更具挑战性的非演示版题目及详细解答，以支持社区的持续运营。无论你是想夯实数学基础，还是渴望在 Kaggle 比","mlcourse.ai 是由 OpenDataScience 社区发起、前谷歌云 GenAI 专家 Yury Kashnitsky 主导的一门开源机器学习课程。它旨在解决初学者在掌握机器学习时面临的“理论枯燥”与“实践脱节”两大痛点，通过精心设计的教学路径，帮助学习者从零构建扎实的知识体系。\n\n这门课程非常适合希望系统入门或进阶的开发者、数据科学家及高校学生。其最大的技术亮点在于实现了数学理论与工程实践的完美平衡：课程既包含严谨的数学公式推导讲座，又提供了大量基于真实场景的编程作业和 Kaggle 竞赛实战。内容涵盖从 Pandas 数据处理到梯度提升树（Gradient Boosting）等核心算法的全流程，甚至引导用户从头实现随机梯度下降分类器等复杂算法。\n\n目前，mlcourse.ai 采用灵活的自学模式，将学习过程规划为十周的渐进式旅程，每周明确指引阅读材料、视频讲座及对应的练习任务。除了完全免费开放的核心课程内容外，它还提供了可选的付费“_bonus_ 作业包”，包含更具挑战性的非演示版题目及详细解答，以支持社区的持续运营。无论你是想夯实数学基础，还是渴望在 Kaggle 比赛中提升排名，mlcourse.ai 都能提供一条清晰且高效的成长路径。","\u003Cdiv align=\"center\">\n\n![ODS stickers](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FYorko_mlcourse.ai_readme_b6ed3277b846.jpg)\n\n**[mlcourse.ai](https:\u002F\u002Fmlcourse.ai) – Open Machine Learning Course**\n\n[![License: CC BY-NC-SA 4.0](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-CC%20BY--NC--SA%204.0-green)](https:\u002F\u002Fcreativecommons.org\u002Flicenses\u002Fby-nc-sa\u002F4.0\u002F)\n[![Donate](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fsupport-patreon-red)](https:\u002F\u002Fwww.patreon.com\u002Fods_mlcourse)\n[![Donate](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fsupport-ko--fi-red)](https:\u002F\u002Fko-fi.com\u002Fmlcourse_ai)\n\n\u003C\u002Fdiv>\n\n[mlcourse.ai](https:\u002F\u002Fmlcourse.ai) is an open Machine Learning course by [OpenDataScience (ods.ai)](https:\u002F\u002Fods.ai\u002F), led by [Yury Kashnitsky (yorko)](https:\u002F\u002Fyorko.github.io\u002F), now Staff GenAI specialist at Google Cloud. Having both a Ph.D. degree in applied math and a Kaggle Competitions Master tier, Yury aimed at designing an ML course with a perfect balance between theory and practice. Thus, the course meets you with math formulae in lectures, and a lot of practice in the form of assignments and Kaggle Inclass competitions. Currently, the course is in a **self-paced mode**. Here, we guide you through the self-paced [mlcourse.ai](https:\u002F\u002Fmlcourse.ai).\n\n### Bonus assignments\n\nAdditionally, you can purchase a **Bonus Assignments pack** with the best non-demo versions of [mlcourse.ai](https:\u002F\u002Fmlcourse.ai\u002F) assignments. Select the [\"Bonus Assignments\" tier](https:\u002F\u002Fwww.patreon.com\u002Fods_mlcourse) on Patreon or a [similar tier](https:\u002F\u002Fboosty.to\u002Fods_mlcourse\u002Fpurchase\u002F1142055?ssource=DIRECT&share=subscription_link) on Boosty (rus).\n\n\u003Cdiv class=\"row\">\n  \u003Cdiv class=\"col-md-8\" markdown=\"1\">\n  \u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fwww.patreon.com\u002Fods_mlcourse\">\n         \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FYorko_mlcourse.ai_readme_0d241bce588d.png\">\n  \u003C\u002Fa>\n  &nbsp;&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fboosty.to\u002Fods_mlcourse\">\n         \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FYorko_mlcourse.ai_readme_7bbe3fb832ed.png\" width=200px%>\n  \u003C\u002Fa>\n  \u003C\u002Fp>\n\n\u003C\u002Fdiv>\n\n  \u003Cdiv class=\"col-md-4\" markdown=\"1\">\n  \u003Cdetails>\n  \u003Csummary>Details of the deal\u003C\u002Fsummary>\n\nmlcourse.ai is still in self-paced mode but we offer you Bonus Assignments with solutions for a contribution of $17\u002Fmonth. The idea is that you pay for ~1-5 months while studying the course materials, but a single contribution is still fine and opens your access to the bonus pack.\n\nNote: the first payment is charged at the moment of joining the Tier Patreon, and the next payment is charged on the 1st day of the next month, thus it's better to purchase the pack in the 1st half of the month.\n\nmlcourse.ai is never supposed to go fully monetized (it's created in the wonderful open ODS.ai community and will remain open and free) but it'd help to cover some operational costs, and Yury also put in quite some effort into assembling all the best assignments into one pack. Please note that unlike the rest of the course content, Bonus Assignments are copyrighted. Informally, Yury's fine if you share the pack with 2-3 friends but public sharing of the Bonus Assignments pack is prohibited.\n\u003C\u002Fdetails>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cbr>\n\nThe bonus pack contains 10 assignments, in some of them you are challenged to beat a baseline in a Kaggle competition under thorough guidance ([\"Alice\"](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic04\u002Fbonus_assignment04_alice_baselines.html) and [\"Medium\"](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic06\u002Fbonus_assignment06.html)) or implement an algorithm from scratch -- efficient stochastic gradient descent [classifier](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic08\u002Fbonus_assignment08.html) and [gradient boosting](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic10\u002Fbonus_assignment10.html).\n\n### Self-paced passing\nYou are guided through 10 weeks of [mlcourse.ai](https:\u002F\u002Fmlcourse.ai). For each week, from Pandas to Gradient Boosting, instructions are given on which articles to read, lectures to watch, and what assignments to accomplish.\n\n### Articles\nThis is the list of published articles on medium.com [:uk:](https:\u002F\u002Fmedium.com\u002Fopen-machine-learning-course), habr.com [:ru:](https:\u002F\u002Fhabr.com\u002Fcompany\u002Fods\u002Fblog\u002F344044\u002F). Notebooks in Chinese :cn: are also mentioned, and links to Kaggle Notebooks (in English) are provided. Icons are clickable.\n\n1. Exploratory Data Analysis with Pandas [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic01\u002Ftopic01_pandas_data_analysis.html)  [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F322626\u002F) [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic01-%E4%BD%BF%E7%94%A8-Pandas-%E8%BF%9B%E8%A1%8C%E6%95%B0%E6%8D%AE%E6%8E%A2%E7%B4%A2.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-1-exploratory-data-analysis-with-pandas)\n2. Visual Data Analysis with Python [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic02\u002Ftopic02_visual_data_analysis.html)  [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F323210\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic02-Python-%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96%E5%88%86%E6%9E%90.ipynb), Kaggle Notebooks: [part1](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-2-visual-data-analysis-in-python), [part2](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-2-part-2-seaborn-and-plotly)\n3. Classification, Decision Trees and k Nearest Neighbors [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic03\u002Ftopic03_decision_trees_kNN.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F322534\u002F) [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic03-%E5%86%B3%E7%AD%96%E6%A0%91%E5%92%8C-K-%E8%BF%91%E9%82%BB%E5%88%86%E7%B1%BB.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-3-decision-trees-and-knn)\n4. Linear Classification and Regression [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic04\u002Ftopic4_linear_models_part1_mse_likelihood_bias_variance.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F323890\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic04-%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92%E5%92%8C%E7%BA%BF%E6%80%A7%E5%88%86%E7%B1%BB%E5%99%A8.ipynb), Kaggle Notebooks: [part1](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-1-ols), [part2](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-2-classification), [part3](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-3-regularization), [part4](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-4-more-of-logit), [part5](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-5-validation)\n5. Bagging and Random Forest [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic05\u002Ftopic5_part1_bagging.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F324402\u002F) [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic05-%E9%9B%86%E6%88%90%E5%AD%A6%E4%B9%A0%E5%92%8C%E9%9A%8F%E6%9C%BA%E6%A3%AE%E6%9E%97%E6%96%B9%E6%B3%95.ipynb), Kaggle Notebooks: [part1](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-5-ensembles-part-1-bagging), [part2](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-5-ensembles-part-2-random-forest), [part3](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-5-ensembles-part-3-feature-importance)\n6. Feature Engineering and Feature Selection [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic06\u002Ftopic6_feature_engineering_feature_selection.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F325422\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic06-%E7%89%B9%E5%BE%81%E5%B7%A5%E7%A8%8B%E5%92%8C%E7%89%B9%E5%BE%81%E9%80%89%E6%8B%A9.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-6-feature-engineering-and-feature-selection)\n7. Unsupervised Learning: Principal Component Analysis and Clustering [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic07\u002Ftopic7_pca_clustering.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F325654\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic07-%E4%B8%BB%E6%88%90%E5%88%86%E5%88%86%E6%9E%90%E5%92%8C%E8%81%9A%E7%B1%BB.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-7-unsupervised-learning-pca-and-clustering)\n8. Vowpal Wabbit: Learning with Gigabytes of Data [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic08\u002Ftopic08_sgd_hashing_vowpal_wabbit.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F326418\u002F) [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic08-%E9%9A%8F%E6%9C%BA%E6%A2%AF%E5%BA%A6%E4%B8%8B%E9%99%8D%E5%92%8C%E7%8B%AC%E7%83%AD%E7%BC%96%E7%A0%81.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-8-online-learning-and-vowpal-wabbit)\n9. Time Series Analysis with Python, part 1 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic09\u002Ftopic9_part1_time_series_python.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F327242\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic09-%E6%97%B6%E9%97%B4%E5%BA%8F%E5%88%97%E5%A4%84%E7%90%86%E4%B8%8E%E5%BA%94%E7%94%A8.ipynb). Predicting future with Facebook Prophet, part 2 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic09\u002Ftopic9_part2_facebook_prophet.html), [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic09-%E6%97%B6%E9%97%B4%E5%BA%8F%E5%88%97%E5%A4%84%E7%90%86%E4%B8%8E%E5%BA%94%E7%94%A8.ipynb) Kaggle Notebooks: [part1](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-9-part-1-time-series-analysis-in-python), [part2](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-9-part-2-time-series-with-facebook-prophet)\n10. Gradient Boosting [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic10\u002Ftopic10_gradient_boosting.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F327250\u002F), [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic05-%E9%9B%86%E6%88%90%E5%AD%A6%E4%B9%A0%E5%92%8C%E9%9A%8F%E6%9C%BA%E6%A3%AE%E6%9E%97%E6%96%B9%E6%B3%95.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-10-gradient-boosting)\n\n### Lectures\nVideo lectures are uploaded to [this](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=QKTuw4PNOsU&list=PLVlY_7IJCMJeRfZ68eVfEcu-UcN9BbwiX) YouTube playlist.\nIntroduction, [video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=DrohHdQa8u8), [slides](https:\u002F\u002Fwww.slideshare.net\u002Ffestline\u002Fmlcourseai-fall2019-live-session-0)\n\n1. Exploratory data analysis with Pandas, [video](https:\u002F\u002Fyoutu.be\u002FfwWCw_cE5aI)\n2. Visualization, main plots for EDA, [video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=WNoQTNOME5g)\n3. Decision trees: [theory](https:\u002F\u002Fyoutu.be\u002FH4XlBTPv5rQ) and [practical part](https:\u002F\u002Fyoutu.be\u002FRrVYO6Td9Js)\n4. Logistic regression: [theoretical foundations](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=l3jiw-N544s), [practical part](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=7o0SWgY89i8) (baselines in the \"Alice\" competition)\n5. Ensembles and Random Forest – [part 1](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=neXJL-AqI_c). Classification metrics – [part 2](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=aBOMYqGUlWQ). Example of a business task, predicting a customer payment – [part 3](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=FmKU-1LZGoE)\n6. Linear regression and regularization - [theory](https:\u002F\u002Fyoutu.be\u002Fne-MfRfYs_c), LASSO & Ridge, LTV prediction - [practice](https:\u002F\u002Fyoutu.be\u002FB8yIaIEMyIc)\n7. Unsupervised learning - [Principal Component Analysis](https:\u002F\u002Fyoutu.be\u002F-AswHf7h0I4) and [Clustering](https:\u002F\u002Fyoutu.be\u002FeVplCo-w4XE)\n8. Stochastic Gradient Descent for classification and regression - [part 1](https:\u002F\u002Fyoutu.be\u002FEUSXbdzaQE8), part 2 TBA\n9. Time series analysis with Python (ARIMA, Prophet) - [video](https:\u002F\u002Fyoutu.be\u002F_9lBwXnbOd8)\n10. Gradient boosting: basic ideas - [part 1](https:\u002F\u002Fyoutu.be\u002Fg0ZOtzZqdqk), key ideas behind Xgboost, LightGBM, and CatBoost + practice - [part 2](https:\u002F\u002Fyoutu.be\u002FV5158Oug4W8)\n\n### Assignments\n\nThe following are demo-assignments. Additionally, within the [\"Bonus Assignments\" tier](https:\u002F\u002Fwww.patreon.com\u002Fods_mlcourse) you can get access to non-demo assignments.\n\n1. Exploratory data analysis with Pandas, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment01_pandas_uci_adult.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-1-pandas-and-uci-adult-dataset), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa1-demo-pandas-and-uci-adult-dataset-solution)\n2. Analyzing cardiovascular disease data, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment02_analyzing_cardiovascular_desease_data.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-2-analyzing-cardiovascular-data), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa2-demo-analyzing-cardiovascular-data-solution)\n3. Decision trees with a toy task and the UCI Adult dataset, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment03_decision_trees.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-3-decision-trees), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa3-demo-decision-trees-solution)\n4. Sarcasm detection, [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa4-demo-sarcasm-detection-with-logit), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa4-demo-sarcasm-detection-with-logit-solution). Linear Regression as an optimization problem, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment04_linreg_optimization.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-4-linear-regression-as-optimization)\n5. Logistic Regression and Random Forest in the credit scoring problem, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment05_logit_rf_credit_scoring.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-5-logit-and-rf-for-credit-scoring), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa5-demo-logit-and-rf-for-credit-scoring-sol)\n6. Exploring OLS, Lasso and Random Forest in a regression task, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment06_regression_wine.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-6-linear-models-and-rf-for-regression), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa6-demo-regression-solution)\n7. Unsupervised learning, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment07_unsupervised_learning.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-7-unupervised-learning), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa7-demo-unsupervised-learning-solution)\n8. Implementing online regressor, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment08_implement_sgd_regressor.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-8-implementing-online-regressor), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa8-demo-implementing-online-regressor-solution)\n9. Time series analysis, [nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment09_time_series.ipynb?flush_cache=true), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-9-time-series-analysis), [solution](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa9-demo-time-series-analysis-solution)\n10. Beating baseline in a competition, [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-10-gradient-boosting-and-flight-delays)\n\n### Kaggle competitions\n\n1. Catch Me If You Can: Intruder Detection through Webpage Session Tracking. [Kaggle Inclass](https:\u002F\u002Fwww.kaggle.com\u002Fc\u002Fcatch-me-if-you-can-intruder-detection-through-webpage-session-tracking2)\n2. Predicting popularity of a Medium article. [Kaggle Inclass](https:\u002F\u002Fwww.kaggle.com\u002Fc\u002Fhow-good-is-your-medium-article)\n3. DotA 2 winner prediction. [Kaggle Inclass](https:\u002F\u002Fwww.kaggle.com\u002Fc\u002Fmlcourse-dota2-win-prediction)\n\n### Building course material as a Jupyter Book\n\nWe are using [Jupyter Book v1](https:\u002F\u002Fjupyterbook.org\u002Fv1\u002Fstart\u002Fbuild.html) to build the book. \n\n1. Install [uv](https:\u002F\u002Fgithub.com\u002Fastral-sh\u002Fuv) for dependency management: `pip install uv`;\n1. Run `uv sync` to install project dependencies, or `uv lock --upgrade` to update them;\n1. Run `uv run jb build mlcourse_ai_jupyter_book` (_note: this works with Jupyter Book v1_) – this will take a while, the output is found in the [mlcourse_ai_jupyter_book\u002F_build](mlcourse_ai_jupyter_book\u002F_build) folder. Namely, [mlcourse_ai_jupyter_book\u002F_build\u002Fhtml\u002Findex.html](mlcourse_ai_jupyter_book\u002F_build\u002Fhtml\u002Findex.html) is what gets rendered at the [mlcourse.ai](https:\u002F\u002Fmlcourse.ai) main page. \n\nThis will show the path to your local file with the course material, e.g. `file:\u002F\u002F\u002FUsers\u002Fnickname\u002FDocuments\u002Fmlcourse.ai\u002Fmlcourse_ai_jupyter_book\u002F_build\u002Fhtml\u002Findex.html`. You can open it in your browser to see the course material locally.\n\n### Citing mlcourse.ai\n\nIf you happen to cite [mlcourse.ai](https:\u002F\u002Fmlcourse.ai) in your work, you can use this BibTeX record:\n\n```\n@misc{mlcourse_ai,\n    author = {Kashnitsky, Yury},\n    title = {mlcourse.ai – Open Machine Learning Course},\n    year = {2020},\n    publisher = {GitHub},\n    journal = {GitHub repository},\n    howpublished = {\\url{https:\u002F\u002Fgithub.com\u002FYorko\u002Fmlcourse.ai}},\n}\n```\n","\u003Cdiv align=\"center\">\n\n![ODS贴纸](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FYorko_mlcourse.ai_readme_b6ed3277b846.jpg)\n\n**[mlcourse.ai](https:\u002F\u002Fmlcourse.ai) – 开放式机器学习课程**\n\n[![许可证：CC BY-NC-SA 4.0](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-CC%20BY--NC--SA%204.0-green)](https:\u002F\u002Fcreativecommons.org\u002Flicenses\u002Fby-nc-sa\u002F4.0\u002F)\n[![捐赠](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fsupport-patreon-red)](https:\u002F\u002Fwww.patreon.com\u002Fods_mlcourse)\n[![捐赠](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fsupport-ko--fi-red)](https:\u002F\u002Fko-fi.com\u002Fmlcourse_ai)\n\n\u003C\u002Fdiv>\n\n[mlcourse.ai](https:\u002F\u002Fmlcourse.ai) 是由 [OpenDataScience (ods.ai)](https:\u002F\u002Fods.ai\u002F) 主办的开放式机器学习课程，由 [Yury Kashnitsky (yorko)](https:\u002F\u002Fyorko.github.io\u002F) 领导，他目前是 Google Cloud 的 GenAI 专家。Yury 同时拥有应用数学博士学位和 Kaggle 竞赛大师称号，他的目标是设计一门理论与实践完美平衡的机器学习课程。因此，课程在讲座中会涉及数学公式，同时通过作业和 Kaggle Inclass 比赛提供大量实践机会。目前，该课程采用 **自定进度模式**。在这里，我们将引导你完成 [mlcourse.ai](https:\u002F\u002Fmlcourse.ai) 的自定进度学习。\n\n### 奖励作业\n\n此外，你还可以购买包含 [mlcourse.ai](https:\u002F\u002Fmlcourse.ai) 最佳非演示版本作业的 **奖励作业包**。在 Patreon 上选择“奖励作业”等级，或在 Boosty（俄语平台）上选择 [类似等级](https:\u002F\u002Fboosty.to\u002Fods_mlcourse\u002Fpurchase\u002F1142055?ssource=DIRECT&share=subscription_link)。\n\n\u003Cdiv class=\"row\">\n  \u003Cdiv class=\"col-md-8\" markdown=\"1\">\n  \u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fwww.patreon.com\u002Fods_mlcourse\">\n         \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FYorko_mlcourse.ai_readme_0d241bce588d.png\">\n  \u003C\u002Fa>\n  &nbsp;&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fboosty.to\u002Fods_mlcourse\">\n         \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FYorko_mlcourse.ai_readme_7bbe3fb832ed.png\" width=200px%>\n  \u003C\u002Fa>\n  \u003C\u002Fp>\n\n\u003C\u002Fdiv>\n\n  \u003Cdiv class=\"col-md-4\" markdown=\"1\">\n  \u003Cdetails>\n  \u003Csummary>交易详情\u003C\u002Fsummary>\n\nmlcourse.ai 目前仍处于自定进度模式，但我们提供附带解答的奖励作业，只需每月支付 17 美元即可获得。建议你在学习课程内容的同时，持续支付 1 至 5 个月；当然，一次性支付也是可以的，同样能解锁奖励作业包的访问权限。\n\n注意：首次付款将在加入 Patreon 等级时扣除，后续付款则会在下个月的第一天自动扣款，因此最好在每月的前半个月内购买此包。\n\nmlcourse.ai 从未计划完全商业化（它诞生于优秀的开放 ODS.ai 社区，并将始终保持开放和免费），但这一举措有助于覆盖部分运营成本。此外，Yury 也付出了大量心血，将所有优质作业整合成一个包。请注意，与课程的其他内容不同，奖励作业受版权保护。非正式地说，Yury 允许你与 2–3 位朋友分享该包，但严禁公开传播奖励作业包。\n\u003C\u002Fdetails>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cbr>\n\n奖励作业包包含 10 份作业，其中一些要求你在详细指导下在 Kaggle 比赛中击败基线模型（例如“Alice”[https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic04\u002Fbonus_assignment04_alice_baselines.html] 和 “Medium”[https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic06\u002Fbonus_assignment06.html]），或者从头实现算法——高效的随机梯度下降分类器 [https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic08\u002Fbonus_assignment08.html] 和 梯度提升树 [https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic10\u002Fbonus_assignment10.html]。\n\n### 自定进度学习\n我们将引导你完成 [mlcourse.ai](https:\u002F\u002Fmlcourse.ai) 的 10 周学习。针对每一周的内容，从 Pandas 到梯度提升，都会提供详细的指导，包括需要阅读的文章、观看的讲座以及要完成的作业。\n\n### 文章\n这是在 medium.com [:uk:](https:\u002F\u002Fmedium.com\u002Fopen-machine-learning-course) 和 habr.com [:ru:](https:\u002F\u002Fhabr.com\u002Fcompany\u002Fods\u002Fblog\u002F344044\u002F) 上发表的文章列表。同时也提到了中文版的笔记本 [:cn:]，并提供了 Kaggle 笔记本（英文）的链接。图标可点击。\n\n1. 使用 Pandas 进行探索性数据分析 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic01\u002Ftopic01_pandas_data_analysis.html)  [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F322626\u002F) [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic01-%E4%BD%BF%E7%94%A8-Pandas-%E8%BF%9B%E8%A1%8C%E6%95%B0%E6%8D%AE%E6%8E%A2%E7%B4%A2.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-1-exploratory-data-analysis-with-pandas)\n2. 使用 Python 进行数据可视化分析 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic02\u002Ftopic02_visual_data_analysis.html)  [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F323210\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic02-Python-%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96%E5%88%86%E6%9E%90.ipynb), Kaggle 笔记本：[part1](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-2-visual-data-analysis-in-python), [part2](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-2-part-2-seaborn-and-plotly)\n3. 分类、决策树与 k 最近邻 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic03\u002Ftopic03_decision_trees_kNN.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F322534\u002F) [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic03-%E5%86%B3%E7%AD%96%E6%A0%91%E5%92%8C-K-%E8%BF%91%E9%82%BB%E5%88%86%E7%B1%BB.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-3-decision-trees-and-knn)\n4. 线性分类与回归 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic04\u002Ftopic4_linear_models_part1_mse_likelihood_bias_variance.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F323890\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic04-%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92%E5%92%8C%E7%BA%BF%E6%80%A7%E5%88%86%E7%B1%BB%E5%99%A8.ipynb), Kaggle 笔记本：[part1](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-1-ols), [part2](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-2-classification), [part3](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-3-regularization), [part4](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-4-more-of-logit), [part5](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-4-linear-models-part-5-validation)\n5. 装袋法与随机森林 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic05\u002Ftopic5_part1_bagging.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F324402\u002F) [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic05-%E9%9B%86%E6%88%90%E5%AD%A6%E4%B9%A0%E5%92%8C%E9%9A%8F%E6%9C%BA%E6%A3%AE%E6%9E%97%E6%96%B9%E6%B3%95.ipynb), Kaggle 笔记本：[part1](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-5-ensembles-part-1-bagging), [part2](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-5-ensembles-part-2-random-forest), [part3](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-5-ensembles-part-3-feature-importance)\n6. 特征工程与特征选择 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic06\u002Ftopic6_feature_engineering_feature_selection.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F325422\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic06-%E7%89%B9%E5%BE%81%E5%B7%A5%E7%A8%8B%E5%92%8C%E7%89%B9%E5%BE%81%E9%80%89%E6%8B%A9.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-6-feature-engineering-and-feature-selection)\n7. 无监督学习：主成分分析与聚类 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic07\u002Ftopic7_pca_clustering.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F325654\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic07-%E4%B8%BB%E6%88%90%E5%88%86%E5%88%86%E6%9E%90%E5%92%8C%E8%81%9A%E7%B1%BB.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-7-unsupervised-learning-pca-and-clustering)\n8. Vowpal Wabbit：处理 GB 级数据的学习 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic08\u002Ftopic08_sgd_hashing_vowpal_wabbit.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F326418\u002F) [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic08-%E9%9A%8F%E6%9C%BA%E6%A2%AF%E5%BA%A6%E4%B8%8B%E9%99%8D%E5%92%8C%E7%8B%AC%E7%83%AD%E7%BC%96%E7%A0%81.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-8-online-learning-and-vowpal-wabbit)\n9. 使用 Python 进行时间序列分析，第 1 部分 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic09\u002Ftopic9_part1_time_series_python.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F327242\u002F) [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic09-%E6%97%B6%E9%97%B4%E5%BA%8F%E5%88%97%E5%A4%84%E7%90%86%E4%B8%8E%E5%BA%94%E7%94%A8.ipynb)。使用 Facebook Prophet 预测未来，第 2 部分 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic09\u002Ftopic9_part2_facebook_prophet.html), [:cn:](http:\u002F\u002Fnbviewer.ipython.org\u002Furls\u002Fraw.github.com\u002FYorko\u002Fmlcourse.ai\u002Fmain\u002Fjupyter_chinese\u002Ftopic09-%E6%97%B6%E9%97%B4%E5%BA%8F%E5%88%97%E5%A4%84%E7%90%86%E4%B8%8E%E5%BA%94%E7%94%A8.ipynb) Kaggle 笔记本：[part1](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-9-part-1-time-series-analysis-in-python), [part2](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-9-part-2-time-series-with-facebook-prophet)\n10. 梯度提升 [:uk:](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic10\u002Ftopic10_gradient_boosting.html) [:ru:](https:\u002F\u002Fhabrahabr.ru\u002Fcompany\u002Fods\u002Fblog\u002F327250\u002F), [:cn:](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic05-%E9%9B%86%E6%88%90%E5%AD%A6%E4%B9%A0%E5%92%8C%E9%9A%8F%E6%9C%BA%E6%A3%AE%E6%9E%97%E6%96%B9%E6%B3%95.ipynb), [Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Ftopic-10-gradient-boosting)\n\n### 讲座\n视频讲座已上传至此 [YouTube 播放列表](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=QKTuw4PNOsU&list=PLVlY_7IJCMJeRfZ68eVfEcu-UcN9BbwiX)。\n\n简介，[视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=DrohHdQa8u8)，[幻灯片](https:\u002F\u002Fwww.slideshare.net\u002Ffestline\u002Fmlcourseai-fall2019-live-session-0)\n\n1. 使用 Pandas 进行探索性数据分析，[视频](https:\u002F\u002Fyoutu.be\u002FfwWCw_cE5aI)\n2. 可视化：EDA 的主要图表，[视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=WNoQTNOME5g)\n3. 决策树：[理论部分](https:\u002F\u002Fyoutu.be\u002FH4XlBTPv5rQ) 和 [实践部分](https:\u002F\u002Fyoutu.be\u002FRrVYO6Td9Js)\n4. 逻辑回归：[理论基础](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=l3jiw-N544s)，[实践部分](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=7o0SWgY89i8)（“Alice”竞赛中的基线模型）\n5. 集成学习与随机森林——[第一部分](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=neXJL-AqI_c)。分类指标——[第二部分](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=aBOMYqGUlWQ)。一个商业任务示例：预测客户付款——[第三部分](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=FmKU-1LZGoE)\n6. 线性回归与正则化——[理论部分](https:\u002F\u002Fyoutu.be\u002Fne-MfRfYs_c)，LASSO & Ridge，LTV 预测——[实践部分](https:\u002F\u002Fyoutu.be\u002FB8yIaIEMyIc)\n7. 无监督学习——[主成分分析](https:\u002F\u002Fyoutu.be\u002F-AswHf7h0I4) 和 [聚类](https:\u002F\u002Fyoutu.be\u002FeVplCo-w4XE)\n8. 用于分类和回归的随机梯度下降——[第一部分](https:\u002F\u002Fyoutu.be\u002FEUSXbdzaQE8)，第二部分待定\n9. 使用 Python 进行时间序列分析（ARIMA、Prophet）——[视频](https:\u002F\u002Fyoutu.be\u002F_9lBwXnbOd8)\n10. 梯度提升：基本思想——[第一部分](https:\u002F\u002Fyoutu.be\u002Fg0ZOtzZqdqk)，XGBoost、LightGBM 和 CatBoost 背后的关键理念 + 实践——[第二部分](https:\u002F\u002Fyoutu.be\u002FV5158Oug4W8)\n\n### 作业\n\n以下为演示作业。此外，在 [“Bonus Assignments”层级](https:\u002F\u002Fwww.patreon.com\u002Fods_mlcourse) 中，您还可以获取非演示作业。\n\n1. 使用 Pandas 进行探索性数据分析，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment01_pandas_uci_adult.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-1-pandas-and-uci-adult-dataset)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa1-demo-pandas-and-uci-adult-dataset-solution)\n2. 分析心血管疾病数据，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment02_analyzing_cardiovascular_desease_data.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-2-analyzing-cardiovascular-data)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa2-demo-analyzing-cardiovascular-data-solution)\n3. 使用玩具任务和 UCI Adult 数据集构建决策树，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment03_decision_trees.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-3-decision-trees)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa3-demo-decision-trees-solution)\n4. 讽刺检测，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa4-demo-sarcasm-detection-with-logit)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa4-demo-sarcasm-detection-with-logit-solution)。线性回归作为优化问题，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment04_linreg_optimization.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-4-linear-regression-as-optimization)\n5. 信用评分问题中的逻辑回归和随机森林，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment05_logit_rf_credit_scoring.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-5-logit-and-rf-for-credit-scoring)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa5-demo-logit-and-rf-for-credit-scoring-sol)\n6. 在回归任务中探索 OLS、Lasso 和随机森林，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment06_regression_wine.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-6-linear-models-and-rf-for-regression)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa6-demo-regression-solution)\n7. 无监督学习，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment07_unsupervised_learning.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-7-unupervised-learning)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa7-demo-unsupervised-learning-solution)\n8. 实现在线回归器，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment08_implement_sgd_regressor.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-8-implementing-online-regressor)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa8-demo-implementing-online-regressor-solution)\n9. 时间序列分析，[nbviewer](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_english\u002Fassignments_demo\u002Fassignment09_time_series.ipynb?flush_cache=true)，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-9-time-series-analysis)，[解答](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fa9-demo-time-series-analysis-solution)\n10. 在竞赛中超越基线，[Kaggle Notebook](https:\u002F\u002Fwww.kaggle.com\u002Fkashnitsky\u002Fassignment-10-gradient-boosting-and-flight-delays)\n\n### Kaggle 竞赛\n\n1. 捉我若能：通过网页会话追踪进行入侵者检测。[Kaggle Inclass](https:\u002F\u002Fwww.kaggle.com\u002Fc\u002Fcatch-me-if-you-can-intruder-detection-through-webpage-session-tracking2)\n2. 预测 Medium 文章的受欢迎程度。[Kaggle Inclass](https:\u002F\u002Fwww.kaggle.com\u002Fc\u002Fhow-good-is-your-medium-article)\n3. DotA 2 胜利预测。[Kaggle Inclass](https:\u002F\u002Fwww.kaggle.com\u002Fc\u002Fmlcourse-dota2-win-prediction)\n\n### 使用 Jupyter Book 构建课程材料\n\n我们正在使用 [Jupyter Book v1](https:\u002F\u002Fjupyterbook.org\u002Fv1\u002Fstart\u002Fbuild.html) 来构建本书。\n\n1. 安装用于依赖管理的 [uv](https:\u002F\u002Fgithub.com\u002Fastral-sh\u002Fuv)：`pip install uv`；\n2. 运行 `uv sync` 以安装项目依赖，或运行 `uv lock --upgrade` 来更新它们；\n3. 运行 `uv run jb build mlcourse_ai_jupyter_book`（注意：此命令适用于 Jupyter Book v1）——这将需要一些时间，生成的输出位于 [mlcourse_ai_jupyter_book\u002F_build](mlcourse_ai_jupyter_book\u002F_build) 文件夹中。其中，[mlcourse_ai_jupyter_book\u002F_build\u002Fhtml\u002Findex.html](mlcourse_ai_jupyter_book\u002F_build\u002Fhtml\u002Findex.html) 就是 [mlcourse.ai](https:\u002F\u002Fmlcourse.ai) 主页上所展示的内容。\n\n执行后会显示您本地课程材料文件的路径，例如 `file:\u002F\u002F\u002FUsers\u002Fnickname\u002FDocuments\u002Fmlcourse.ai\u002Fmlcourse_ai_jupyter_book\u002F_build\u002Fhtml\u002Findex.html`。您可以在浏览器中打开该文件，以在本地查看课程内容。\n\n### 引用 mlcourse.ai\n\n如果您在自己的工作中引用了 [mlcourse.ai](https:\u002F\u002Fmlcourse.ai)，可以使用以下 BibTeX 记录：\n\n```\n@misc{mlcourse_ai,\n    author = {Kashnitsky, Yury},\n    title = {mlcourse.ai – 开放式机器学习课程},\n    year = {2020},\n    publisher = {GitHub},\n    journal = {GitHub 仓库},\n    howpublished = {\\url{https:\u002F\u002Fgithub.com\u002FYorko\u002Fmlcourse.ai}},\n}\n```","# mlcourse.ai 快速上手指南\n\n**mlcourse.ai** 是由 OpenDataScience (ods.ai) 社区发起的开源机器学习课程，由 Google Cloud 专家 Yury Kashnitsky 主导。课程旨在平衡理论与实践，涵盖从 Pandas 数据分析到梯度提升（Gradient Boosting）的完整机器学习流程。本课程采用**自定进度（self-paced）**模式，提供英文、俄文及中文学习资料。\n\n## 环境准备\n\n在开始学习之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Windows、macOS 或 Linux 均可。\n*   **Python 版本**：推荐 Python 3.8 及以上版本。\n*   **核心依赖库**：\n    *   `pandas`, `numpy`, `scikit-learn`, `matplotlib`, `seaborn`\n    *   `jupyter` (用于运行笔记本)\n    *   `xgboost`, `lightgbm`, `catboost` (进阶章节需要)\n    *   `prophet` (时间序列章节需要)\n*   **账号准备**：\n    *   **Kaggle 账号**：课程包含大量 Kaggle Inclass 竞赛和 Notebook 练习，建议提前注册。\n    *   **GitHub 账号**：用于克隆课程代码仓库。\n\n> **提示**：如果您不想在本地配置环境，可以直接使用课程提供的 **Kaggle Notebooks** 链接在线运行代码，无需安装任何依赖。\n\n## 安装步骤\n\n### 方案一：本地环境搭建（推荐国内用户使用镜像源）\n\n1.  **克隆课程仓库**\n    打开终端，执行以下命令获取最新课程资料（包含中文 Notebook）：\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002FYorko\u002Fmlcourse.ai.git\n    cd mlcourse.ai\n    ```\n\n2.  **创建虚拟环境**\n    建议使用 `conda` 或 `venv` 隔离环境。\n    ```bash\n    python -m venv mlcourse_env\n    # Windows:\n    mlcourse_env\\Scripts\\activate\n    # macOS\u002FLinux:\n    source mlcourse_env\u002Fbin\u002Factivate\n    ```\n\n3.  **安装依赖包**\n    为确保下载速度，推荐使用国内镜像源（如清华源或阿里源）安装核心库：\n    ```bash\n    pip install -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple jupyter pandas numpy scikit-learn matplotlib seaborn xgboost lightgbm catboost\n    ```\n    *注：时间序列部分所需的 `prophet` 库安装较复杂，如遇问题可暂时跳过，或使用 Kaggle 在线环境学习该章节。*\n\n### 方案二：在线免安装（最快捷）\n\n直接访问课程提供的 Kaggle Notebook 链接进行学习，无需本地安装。\n*   访问 [mlcourse.ai 官网文章列表](https:\u002F\u002Fmlcourse.ai\u002Fbook)，点击每章对应的 **Kaggle Notebook** 链接。\n*   点击 \"Copy and Edit\" 即可在浏览器中直接运行代码。\n\n## 基本使用\n\n课程共分为 10 周（10 个主题），从基础数据分析到高级集成学习。以下是启动学习的标准流程：\n\n### 1. 启动 Jupyter Notebook\n进入课程目录并启动服务：\n```bash\ncd jupyter_english # 或 jupyter_chinese (如果有本地中文笔记)\njupyter notebook\n```\n浏览器将自动打开，您可以看到按主题分类的文件夹。\n\n### 2. 学习路径示例（以第一周为例）\n*   **阅读理论**：访问 [Topic 1: Exploratory Data Analysis with Pandas](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic01\u002Ftopic01_pandas_data_analysis.html)。\n    *   中文笔记地址：[使用 Pandas 进行数据探索](https:\u002F\u002Fnbviewer.jupyter.org\u002Fgithub\u002FYorko\u002Fmlcourse.ai\u002Fblob\u002Fmain\u002Fjupyter_chinese\u002Ftopic01-%E4%BD%BF%E7%94%A8-Pandas-%E8%BF%9B%E8%A1%8C%E6%95%B0%E6%8D%AE%E6%99%BA%E7%B4%A2.ipynb)\n*   **观看视频**：访问 YouTube 播放列表中的 [Lecture 1](https:\u002F\u002Fyoutu.be\u002FfwWCw_cE5aI)。\n*   **动手实践**：\n    1.  在本地或 Kaggle 打开 `assignment01_pandas_uci_adult.ipynb`。\n    2.  按照注释指引，使用 Pandas 加载 `adult.data` 数据集。\n    3.  完成数据清洗、可视化及简单的统计推断任务。\n\n### 3. 进阶挑战（可选）\n完成基础演示作业后，可参与课程配套的 Kaggle 竞赛（如 \"Alice\" 或 \"Medium\" 项目），尝试超越基准线（Baseline）。\n*   若需获取带详细解答的**非演示版作业（Bonus Assignments）**，可通过 Patreon 或 Boosty 支持作者以获得访问权限。\n\n### 4. 后续主题概览\n按顺序完成以下模块的学习：\n1.  Pandas 数据探索\n2.  Python 数据可视化\n3.  决策树与 KNN 分类\n4.  线性分类与回归\n5.  Bagging 与随机森林\n6.  特征工程与选择\n7.  无监督学习 (PCA & 聚类)\n8.  大规模数据处理 (Vowpal Wabbit \u002F SGD)\n9.  时间序列分析\n10. 梯度提升 (Gradient Boosting)","一名刚转行数据科学的工程师试图独立掌握机器学习核心算法，却在碎片化的网络资源中迷失方向，难以将数学理论与代码实战有效结合。\n\n### 没有 mlcourse.ai 时\n- **理论脱离实践**：看了大量数学公式推导，却不知道如何用 Python 实现，面对 Kaggle 比赛无从下手。\n- **学习路径混乱**：网上教程质量参差不齐，从 Pandas 基础到梯度提升树的进阶路线缺乏系统规划，容易半途而废。\n- **缺乏深度挑战**：只能运行现成的演示代码，无法亲手从零编写随机梯度下降或梯度 boosting 算法，对底层逻辑理解浮于表面。\n- **反馈机制缺失**：遇到模型效果不佳时，没有权威的基线对比和详细解析，难以判断是数据问题还是算法实现错误。\n\n### 使用 mlcourse.ai 后\n- **知行合一**：课程完美平衡理论与实战，每讲完数学原理立刻通过 Jupyter 作业和 Kaggle 内部赛进行验证，如\"Alice\"和\"Medium\"项目。\n- **路径清晰明确**：跟随由 Google Cloud 专家 Yury Kashnitsky 设计的 10 周自学计划，按部就班地从数据处理进阶到复杂模型构建。\n- **硬核编码训练**：通过付费奖励作业包，挑战从零手写高效分类器和梯度提升算法，真正吃透算法内核而非仅调用库函数。\n- **权威指导反馈**：获得详细的基线解决方案和逐步指导，能精准定位优化空间，在竞争中不断突破性能瓶颈。\n\nmlcourse.ai 通过“数学公式 + 硬核代码 + 竞赛实战”的闭环模式，帮助学习者跨越从理论认知到工程落地的巨大鸿沟。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FYorko_mlcourse.ai_06cdc449.png","Yorko","Yury Kashnitsky","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FYorko_7d03e70e.jpg","Staff GenAI Fields Solution Architect @ Google Cloud, Amsterdam","Google Cloud","Amsterdam",null,"ykashnitsky","https:\u002F\u002Fyorko.github.io","https:\u002F\u002Fgithub.com\u002FYorko",[84,88,92],{"name":85,"color":86,"percentage":87},"Python","#3572A5",93.3,{"name":89,"color":90,"percentage":91},"HTML","#e34c26",6.7,{"name":93,"color":94,"percentage":95},"Makefile","#427819",0,10557,5716,"2026-04-18T14:12:07","NOASSERTION","未说明",{"notes":102,"python":100,"dependencies":103},"这是一个自进度的机器学习课程，主要基于 Jupyter Notebook 运行。内容涵盖从 Pandas 数据分析到梯度提升等多个主题。部分作业涉及 Kaggle 竞赛，需自行注册账号参与。课程提供英文、俄文和中文版本的笔记。Bonus Assignments（额外作业包）需付费获取，包含更深入的实战项目和解决方案。",[104,105,106,107,108,109,110,111],"pandas","scikit-learn","matplotlib","seaborn","plotly","jupyter","vowpalwabbit","prophet",[14,113,16],"其他",[115,116,117,104,118,119,120,106,107,108,105,121,122,123,124,125,126],"machine-learning","data-analysis","data-science","algorithms","numpy","scipy","kaggle-inclass","vowpal-wabbit","python","ipynb","docker","math","2026-03-27T02:49:30.150509","2026-04-20T07:17:59.021457",[130,135,140,145,149,153,158],{"id":131,"question_zh":132,"answer_zh":133,"source_url":134},43914,"为什么 Jupyter Notebook 在 nbviewer、GitHub 或 Binder 上无法渲染？","这通常是因为 Notebook 文件开头存在多余的字符（例如多余的 'i'）或格式错误。维护者已修复了相关文件。如果遇到问题，请检查原始文件的开头是否有异常字符，或者尝试重新拉取最新的仓库代码。有时在浏览器中能正常打开但本地无法打开，更新文件或清除缓存后通常可解决。","https:\u002F\u002Fgithub.com\u002FYorko\u002Fmlcourse.ai\u002Fissues\u002F347",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},43915,"在本地运行 Notebook 时图片无法显示怎么办？","图片无法渲染通常是因为启动 Jupyter Notebook 的目录路径不正确。请确保你从包含图像文件夹的正确根目录启动 Notebook 服务器，而不是从子目录启动。图像路径是相对路径，如果启动位置不对，会导致找不到图片资源。验证图片文件确实存在于代码引用的路径下，并从正确的位置运行 `jupyter notebook` 命令即可解决。","https:\u002F\u002Fgithub.com\u002FYorko\u002Fmlcourse.ai\u002Fissues\u002F661",{"id":141,"question_zh":142,"answer_zh":143,"source_url":144},43916,"使用 Anaconda 运行时遇到 'AttributeError: NoneType object has no attribute split' 错误如何解决？","该错误通常是由于 `threadpoolctl` 库版本过旧导致的。解决方法是升级该库到最新版本（如 3.2 或更高）。请在终端执行以下命令：\n`pip install threadpoolctl --upgrade`\n升级后重新运行代码即可修复该问题，特别是在使用 sklearn 的 KMeans 或其他依赖线程控制的算法时。","https:\u002F\u002Fgithub.com\u002FYorko\u002Fmlcourse.ai\u002Fissues\u002F754",{"id":146,"question_zh":147,"answer_zh":148,"source_url":144},43917,"如何处理测试集中的缺失值填充？","在预处理数据时，测试集中的缺失值应该使用训练集中计算出的统计量进行填充，而不是直接使用测试集自身的统计量。例如，如果使用众数填充，代码应如下所示：\n`data_test[c].fillna(data_train[c].mode()[0], inplace=True)`\n这样可以防止数据泄露，确保模型评估的准确性。",{"id":150,"question_zh":151,"answer_zh":152,"source_url":144},43918,"VarianceThreshold 处理后数据形状没有变化是正常的吗？","不正常，如果设置了阈值（例如 0.7），`VarianceThreshold` 应该会剔除低方差的特征，从而改变数据的形状（列数减少）。如果形状未变，可能是因为所有特征的方差都高于阈值，或者代码未正确应用变换。请注意，该操作确实会丢弃特征，可以通过检查 `.shape` 属性确认是否少了一列或多列。",{"id":154,"question_zh":155,"answer_zh":156,"source_url":157},43919,"俄语版本的 Notebook 中发现拼写错误或代码问题还会修复吗？","维护者表示，由于同时维护两个语言版本的课程工作量巨大，俄语版本的 Notebook 不再进行主动维护。虽然小的拼写错误（typos）可能会被批量修复，但不会进行重大更改（如重构为 Jupyter-book 版本或修复已弃用库的代码）。建议用户主要参考英语版本的课程材料以获取最新内容和修复。","https:\u002F\u002Fgithub.com\u002FYorko\u002Fmlcourse.ai\u002Fissues\u002F716",{"id":159,"question_zh":160,"answer_zh":161,"source_url":162},43920,"如何停止接收 GitHub Issue 的邮件通知？","你可以调整 GitHub 的 \"Watching\"（关注）和 \"Notification\"（通知）设置来管理邮件。具体步骤如下：\n1. 访问仓库页面，点击右上角的 \"Watch\" 按钮，选择 \"Not watching\" 或 \"Ignoring\"。\n2. 如果只是不想接收特定 Issue 的通知，可以在该 Issue 页面右侧点击 \"Unsubscribe\" 或使用 \"Mute this thread\" 功能。\n详细指南可参考 GitHub 官方帮助文档：https:\u002F\u002Fhelp.github.com\u002Farticles\u002Fwatching-and-unwatching-repositories\u002F","https:\u002F\u002Fgithub.com\u002FYorko\u002Fmlcourse.ai\u002Fissues\u002F370",[164],{"id":165,"version":166,"summary_zh":167,"released_at":168},351362,"v1.0.0","## 网站  \n网站 [mlcourse.ai](https:\u002F\u002Fmlcourse.ai) 已经完全重新设计。\n\n现在，所有课程材料都以 [Jupyter Book](https:\u002F\u002Fjupyterbook.org\u002Fintro.html) 的形式发布——这是一种可执行的电子书，包含 Markdown 文本、代码、图片、图表等内容。这种内容形式的一大优势在于，它确实是一本带有可执行内容的书：你所看到的页面并非静态的，而是会在每次构建书籍时通过运行所有 Python 代码来更新。我们在此处更详细地介绍了 Jupyter Book：[这里](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Fprereqs\u002Fsoftware_devops.html#jupyter-book)。\n\n## 先修要求  \n\n[先修要求](https:\u002F\u002Fmlcourse.ai\u002Fprerequisites) 部分已更新，新增了 Python 和数学课程，以及本课程中会用到的工具：git、bash、Docker、Jupyter Notebook 等。\n\n## 主要内容  \n\n课程共包含 10 个主题，从使用 Pandas 进行探索性数据分析到梯度提升算法。对于每个主题，都有一个入门部分（[此处为示例](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic01\u002Ftopic01_intro.html#topic01-intro)，以主题 1 为例），列出了在自主学习模式下完成该主题时需要阅读的文章、观看的讲座以及需要完成的练习。\n\n## 奖励作业  \n\n此外，如果你选择 [“奖励作业”等级](https:\u002F\u002Fwww.patreon.com\u002Fods_mlcourse)，还可以购买包含 mlcourse.ai 最佳非演示版本作业的奖励作业包。该奖励包共包含 10 份作业；其中一些任务要求你在详尽的指导下，在 Kaggle 比赛中击败基准模型（例如 [“Alice”](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic04\u002Fbonus_assignment04_alice_baselines.html#bonus04) 和 [“Medium”](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic06\u002Fbonus_assignment06.html#bonus06)），或者从头实现一种算法——高效的随机梯度下降分类器（[此处](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic08\u002Fbonus_assignment08.html#bonus08)）和梯度提升算法（[此处](https:\u002F\u002Fmlcourse.ai\u002Fbook\u002Ftopic10\u002Fbonus_assignment10.html#bonus10)）。","2022-01-16T00:25:56"]