- 博客(27)
- 收藏
- 关注
原创 【手撕机器学习 04】手撕线性回归:从“蒙眼下山”彻底理解梯度下降
摘要:本文通过生动比喻和代码实践,深入浅出地讲解了机器学习中的核心算法——线性回归与梯度下降。文章将梯度下降比作“蒙眼下山”游戏,形象地解释了参数优化的五个关键要素。随后,通过“智能生产线”的比喻,详细解析了损失函数、梯度的数学原理及其实际意义。最后,作者带领读者用NumPy一步步实现线性回归算法,并通过可视化展示模型的训练过程。全文以通俗易懂的语言和直观的代码示例,帮助读者理解机器学习中最基础却最重要的优化方法。
2025-10-01 17:17:23
1072
原创 【手撕机器学习 03】从“生数据”到“黄金特征”:机器学习项目中价值最高的一步
摘要:本文介绍了机器学习项目中数据预处理与特征工程的核心技术。数据预处理包括处理缺失值、类别特征编码(推荐独热编码)和特征缩放(常用标准化)。特征工程则通过特征创造和特征提取从原始数据中提炼更有价值的信息。最后强调必须划分训练集与测试集以客观评估模型性能。掌握这些数据准备技巧是提升模型效果的关键,通常占项目70%以上的时间。文章使用Python代码演示了完整流程,为后续模型训练做好准备。
2025-09-30 10:03:20
823
2
原创 【手撕机器学习 02】手撕算法的基石:精通NumPy与Pandas向量化思维
在上一篇构建了机器学习的世界观后,本文将为你锻造亲手实现算法的“神兵利器”——NumPy与Pandas。即把循环操作,转换成对整个数据集合(数组或矩阵)的“一次性”操作。它允许Numpy在执行算术运算时,自动“扩展”较小数组的形状。而机器学习的本质,就是。是一个二维的、带标签的数据结构,就像一个Excel表格。时,你就已经为手撕所有机器学习算法,做好了最充分的准备。让我们来看一个简单的任务:将两个列表的对应元素相加。线性代数中大量的矩阵乘法,都对矩阵的形状有严格要求。(带标签的表格数据)的“超级总成”。
2025-09-27 16:02:21
1190
原创 【手撕机器学习 01】别再当“调包侠”了!一张图带你秒懂算法“世界观”
本文是《手撕机器学习》系列的开篇,我们将直击“调包侠”的痛点,并为你呈现一张清晰的机器学习“世界地图”。你将清楚地知道,我们正在学习的这个算法,属于哪个门派,擅长解决哪类问题,它在整个知识体系中扮演着怎样的角色。读完本文,你已经拥有了一张清晰的机器学习“世界地图”,并明白了本系列的独特价值。我们将用“人话”翻译公式,用代码“手撕”算法,让你真正洞穿“黑箱”的底层智慧。这个大门派下,根据我们想预测的“答案”的类型,又可以分为两大核心任务。那个由算法学习出来的“模型”,就是我们接下来要手撕的“武功秘籍”。
2025-09-27 10:13:59
315
原创 【Python精讲 完结】技术栈梳理:从Python开发者到专家的进阶之路
恭喜你坚持到了最后!通过这个系列,你已经从零开始,系统地掌握了Python的核心语法、编程思想、常用工具和实战项目。本文将为你梳理我们所学的全部技术栈,形成一个完整的知识体系。更重要的是,我们将为你指明前方的道路——从一个合格的Python开发者,到某个领域的专家,你应该学习什么,以及如何继续学习。
2025-09-25 09:05:43
468
原创 【Python精讲 16】实战项目演练(二):用Flask/FastAPI发布你的第一个Web API
本文介绍如何使用FastAPI框架快速搭建一个简单的Web API,实现城市信息查询功能。通过创建FastAPI实例、定义路由和处理函数,开发者可以轻松构建一个具备欢迎页面、城市列表查询和特定城市ID查询功能的API。文章详细展示了代码实现过程,包括数据模拟、错误处理和交互式首页设计,并提供了API文档自动生成功能,适合初学者快速上手后端开发。安装FastAPI和uvicorn后,运行命令即可启动服务,让本地脚本通过网络提供数据服务。
2025-09-25 09:02:12
792
原创 【Python精讲 15】实战项目演练(一):用Requests+BeautifulSoup构建豆瓣电影爬虫
本文详细介绍如何用Python爬取豆瓣电影Top250数据。通过requests库构建带重试策略的会话,BeautifulSoup解析HTML结构,csv保存数据,并加入time随机延时模拟真实访问。文章从分析网页结构开始,逐步实现爬虫功能,包括处理翻页、解析电影信息、应对反爬机制等。最终将排名、片名、评分等7项数据保存为CSV文件,完整演示了网络爬虫的实战流程。
2025-09-25 08:58:16
1844
原创 【Python精讲 14】网络编程从入门到实战:底层Socket与上层Requests库详解
本文从两个层面介绍Python网络编程:底层使用socket模块实现TCP通信,展示服务器/客户端基础模型;上层使用requests库简化HTTP交互。通过对比"打电话"(socket)和"刷App"(requests)的隐喻,阐明网络通信原理与高效开发实践。文章包含socket建立TCP连接的完整代码示例,以及requests发送GET/POST请求的典型用法,帮助开发者既掌握网络底层机制,又能快速实现现代Web API交互。
2025-09-24 09:36:28
1297
原创 【Python精讲 13】并发编程终极指南:线程、进程与协程,从原理到选择
本文是Python并发编程的终极指南,通过咖啡店的生动比喻,深入解析多线程、多进程和协程三种并发技术。多线程适合I/O密集型任务,但受GIL限制;多进程能真正并行处理CPU密集型任务;协程则在高并发I/O场景下效率最优。文章对比了三者的特性、优缺点及适用场景,并提供了代码示例。最后给出决策流程:CPU密集型选多进程,高并发I/O选协程,普通I/O选多线程,帮助开发者根据需求选择最佳方案。理解这些并发技术是Python进阶的必修课。
2025-09-24 09:34:04
802
原创 【Python精讲 12】数据格式化与解析:精通JSON、CSV与正则表达式(re)
程序很少孤立存在,它们需要与外部世界交换数据。本文将带你精通三种最重要的数据格式及其处理方式:JSON(现代Web API的通用语言)、CSV(电子表格和数据分析的基础)以及正则表达式(文本处理的瑞士军刀)。学完本篇,你将能轻松地解析和生成这些通用数据格式,为你的爬虫、数据分析或Web应用打下坚实的数据基础。
2025-09-23 10:18:51
713
原创 【Python精讲 11】程序的健壮性:异常处理(try)与文件IO(with open)最佳实践
本文介绍了如何编写健壮的Python程序,重点讲解了异常处理和文件操作两大核心技能。异常处理部分详解了try-except-finally机制,包括捕获特定异常、主动抛出异常等方法,为程序提供"安全气囊"。文件操作部分强调使用with语句管理资源,详细说明了文件读写模式(r/w/a)及编码设置的最佳实践,并展示了如何结合异常处理实现可靠的文件操作。最后通过一个完整的"读取-处理-写入"案例,演示了如何将异常处理与文件操作完美结合,提升程序的稳定性和可靠性。
2025-09-23 09:27:17
1038
原创 【Python精讲 10】大师级代码:推导式、迭代器与生成器(yield)核心指南
本文将介绍Python中三大高效编程特性:推导式(列表/字典/集合)、迭代器和生成器。推导式能用一行代码替代传统循环创建新容器;迭代器通过惰性计算节省内存;生成器则通过yield关键字或生成器表达式创建迭代器,特别适合处理大数据场景。这些工具不仅能提升代码简洁性和可读性,还能优化程序性能,是编写Pythonic代码的关键技巧。文章通过具体示例对比传统方法与新特性的差异,并给出不同场景下的最佳实践建议。
2025-09-23 09:25:04
1070
原创 【Python精讲 09】告别`ImportError`:一文彻底掌握Python模块与包导入体系
一文搞定Python模块与包导入!本文以sys.path为核心,用最直白的方式讲解了各种目录结构下的import方法,帮你彻底解决ModuleNotFoundError,并掌握if __name__ == '__main__'的正确用法。
2025-09-22 09:27:49
771
原创 【Python精讲 08】面向对象(OOP)一篇通:类、继承、封装与多态核心精讲
本文系统介绍了面向对象编程(OOP)的核心概念。从类与对象的区别讲起,通过宠物店的例子说明OOP将数据和行为封装成对象实体的优势。重点讲解了构造方法__init__和self关键字的作用,以及属性与方法的定义。深入剖析了OOP三大支柱:继承实现代码复用、封装保护数据安全、多态提供统一接口。最后总结OOP通过类与对象、继承、封装和多态等机制,使代码更结构化、可维护和可扩展。文章为后续模块与包的内容做了铺垫。
2025-09-22 09:05:38
859
原创 【Python精讲 07】进阶神技:Lambda、高阶函数与装饰器从入门到实战
本文介绍了Python函数式编程的三个进阶技巧:Lambda表达式用于创建匿名单行函数,简化临时函数定义;高阶函数(如sorted、map、filter)可接收函数作为参数,实现灵活的数据处理;装饰器通过@语法在不修改原函数的情况下为其添加额外功能。这些技巧能让代码更简洁、优雅且易于扩展,是提升Python编程水平的关键。掌握这些方法后,开发者可以写出更具表现力的Pythonic代码。
2025-09-22 09:02:27
1029
原创 【Conda 绝技】告别C盘爆红!将虚拟环境直接装在项目目录,打包迁移一气呵成!
还在为 Conda 环境默认安装在 C 盘导致系统盘爆红而烦恼吗?还在为项目迁移、打包部署时“环境找不到”而头疼吗?本文为你带来一个颠覆性的 Conda 使用技巧:将虚拟环境直接创建在项目根目录下!本文将通过三分钟实战教程,带你彻底解决空间占用和项目迁移两大痛点,并提供 VSCode/PyCharm 的无缝适配方案,让你的 Python 开发流程从此变得清爽高效!
2025-09-21 09:42:25
1397
原创 【Python精讲 06】函数即力量:从参数、返回值到作用域,全面掌握Python函数
本文介绍了Python函数的核心概念,包括定义、调用、参数类型、返回值和变量作用域。函数通过def关键字定义,实现代码封装和复用。参数包括位置参数、关键字参数、默认参数以及可变参数*args和**kwargs,使函数更加灵活。return语句用于返回计算结果,而变量作用域分为局部和全局作用域,影响变量的可访问性。掌握这些概念有助于编写结构化、可维护的代码。
2025-09-21 09:04:02
1207
原创 【Python精讲 05】深入细节:彻底搞懂运算符、is与==、以及深浅拷贝的陷阱
本文深入解析Python中容易被忽视的关键细节:1)区分is(身份比较)与==(值比较),强调仅用is判断None;2)揭示可变对象的拷贝陷阱,对比浅拷贝(仅复制第一层)和深拷贝(完全独立克隆)的区别;3)梳理Python运算符体系。掌握这些概念能有效避免隐蔽Bug,提升代码质量。文章通过具体示例展示了小整数缓存、列表引用共享等现象,为后续深入学习函数等主题奠定基础。
2025-09-21 08:28:26
620
原创 【Python精讲 04】逻辑的艺术:精通if条件判断与for/while循环控制
本文介绍了Python中两大核心逻辑结构:条件判断和循环控制。通过if-elif-else语句,程序可以基于不同条件执行不同代码;利用for和while循环,程序能高效处理重复任务。文章还讲解了循环控制技巧break和continue的使用方法。这些结构赋予程序决策能力和重复执行能力,是编程的基础要素。掌握这些内容后,读者将能够编写具有动态逻辑的智能脚本。
2025-09-21 08:12:25
873
原创 【Python精讲 03】Python核心容器:一篇通关序列(List, Tuple)、映射(Dict)与集合(Set)
本文全面解析Python四大核心数据容器:列表(List)、元组(Tuple)、字典(Dict)和集合(Set)。列表作为可变序列适合动态数据存储;元组作为不可变序列适用于固定数据;字典通过键值对实现高效查询;集合则用于去重和关系运算。文章详细介绍了各容器的特性、语法和常见操作,并通过实例展示其应用场景,帮助读者根据需求选择合适的数据结构。掌握这些容器是构建Python程序的重要基础。
2025-09-20 21:21:17
766
原创 【Python精讲 02】编程第一课:彻底掌握Python变量、数字、字符串与布尔值
摘要:本文是Python编程基础入门课,详细讲解了四种核心数据类型:变量(动态存储容器)、数字(int/float数学运算)、字符串(文本处理及切片操作)和布尔值(True/False逻辑判断)。重点涵盖变量命名规范、数字运算符、字符串索引/切片/f-string格式化、布尔运算等实用技巧,为后续学习数据结构打下基础。通过清晰示例演示Python的动态类型特性,帮助新手快速掌握编程基础要素。
2025-09-20 21:17:34
1134
原创 【Python精讲 01】Python环境与运行:一文搞定Anaconda、VS Code与Jupyter的安装和使用
本文是《Python极速入门:从零到一,只讲干货》系列的开篇,详细介绍了Python开发环境的搭建。主要内容包括:Anaconda的安装步骤及其优势(集成Python和常用库、环境隔离等);VS Code编辑器的安装与Python插件配置方法;三种Python代码运行方式:脚本文件执行、交互式解释器测试以及Jupyter Notebook的使用。通过本指南,读者可以快速搭建专业高效的Python开发环境,为后续学习奠定基础。
2025-09-20 21:13:05
749
原创 Python 多维列表切片:和一维列表一样简单!
Python多维列表切片与一维列表的核心规则完全一致,关键在于理解[:n]的双重含义:数量角度表示"前n个元素",位置角度表示"索引0到n-1"。对于多维列表,只需从外层到内层逐层应用这个规则,例如二维列表先切行再切列。原生列表不支持NumPy的逗号分隔切片语法,必须通过列表推导式逐层处理。掌握[:n]的双重理解方式,就能轻松应对任意维度的列表切片操作。
2025-09-19 20:53:52
729
原创 【保姆级教程】Anaconda 从 C 盘彻底迁移到非系统盘(附避坑指南 + 实操截图)
针对 Anaconda 占用 C 盘空间、重装怕丢环境的痛点,本文提供 Windows 下从 C 盘到非系统盘的完整迁移方案。以 “备份→卸载→重装→恢复” 为核心,含 2 种环境备份方式、卸载残留技巧、安装避坑点及路径优化,附实操命令与问题解决,30 分钟完成迁移,无需复杂技术,适合受 Anaconda 存储问题困扰的 Python 开发者。
2025-09-19 10:33:13
1840
原创 Kinect2.0-Python调用-PyKinect2
Kinect2.0-Python调用-PyKinect2一.环境1.win102.python3.8.53.Kinect2.0SDK4.opencv4.5.15.vscode二.调试步骤1.安装Kinect2.0SDK 正常安装即可2.安装python版本为3.8.5的anaconda3.安装OpenCV 下载opencv_python-4.5.1.48-cp38-cp38-win_amd64.whl和opencv_contrib_python-4.5.1.48-cp38
2021-04-15 10:46:50
5730
10
原创 pytorch深度学习(一)pytorch安装
Pytorch深度学习(一)Pytorch安装1 Pytorch介绍Pytorch是由Torch7团队开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。 能够在强大是GPU加速基础上实现张量和动态神经网络。1.1 Pytorch提供了两种高层面的功能(1) 使用强大的GPU加速的Tensor计算(类似numpy)(2) 构建于基于autograd系统的深度神经网络1.2 使用Pytorch的原因(1)作为numpy的替代,以便使用强大的GPU加速;(2)将其作为
2021-04-05 14:03:47
754
原创 机器学习之朴素贝叶斯算法原理+Python实现
朴素贝叶斯1.简介 贝叶斯分类算法是统计学中的一种概率分类方法,朴素贝叶斯分类是贝叶斯分类中最简单的一种。其分类原理就是利用贝叶斯公式根据某特征的先验概率计算出其后验概率,然后选择具有最大后验概率作为该特征所属的类。 之所以称之为“朴素”,是因为贝叶斯分类只做最原始、最简单的假设:所有的特征之间是相对独立的。2.数学基础2.1相对独立 假设X有x1,x2,…xn个特征,P(x) = P(x1)P(x2)…P(xn)2.2条件概率假设有A,B两个事件,在B事件发生的条件下,A事件发生的概
2020-11-09 14:48:44
49250
14
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅