2025讲书课专栏
文章平均质量分 85
精选经典实用技术书籍,通过7-10讲快速掌握一本大部头的技术精华,理清技术脉络,掌握主要知识体系和内容,为大家节省学习时间,快速跟上最新技术的热点。目前特价9.9,超过100订阅恢复原价29.9
earthzhang2021
清华计算机博士,20年互联网技术研究和系统研发经验
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
《高性能MySQL》第6讲:查询性能优化
本文深入探讨MySQL查询性能优化的关键技巧。通过类比烹饪过程,分析了查询性能的三大瓶颈:网络传输、CPU计算和I/O操作。重点讲解了如何优化数据访问(避免请求不需要的数据)、重构查询方式(切分复杂查询、分解关联查询)以及利用查询优化器的特性。文章提供了大量实用案例,包括COUNT()优化、LIMIT分页技巧、用户自定义变量应用等,并分享了队列表设计、地理位置计算等实际场景解决方案。最后总结出优化三原则:避免不必要查询、减少数据扫描和合理使用索引。原创 2025-11-02 14:49:53 · 359 阅读 · 0 评论 -
《高性能MySQL》第5讲:创建高性能的索引
本文深入讲解了MySQL索引的核心原理与优化策略。索引作为数据库的"目录",能大幅提升查询效率。文章首先介绍索引的基本概念,将其比作字典检索方式,解释了索引如何减少数据扫描量、避免排序和优化I/O。重点阐述了高性能索引策略,包括:避免在索引列使用表达式、合理使用前缀索引、多列索引的列顺序选择、聚簇索引特性、覆盖索引优势等。还提供了索引维护方法和实际案例分析,强调索引设计需遵循减少单行访问、顺序访问优先、多用覆盖索引三大原则。最后指出,合理的索引设计需结合具体查询模式,才能实现最佳性能提升原创 2025-10-08 10:08:51 · 470 阅读 · 0 评论 -
《高性能MySQL》第4讲:Schema与数据类型优化
本文介绍了MySQL数据库Schema设计和数据类型选择的优化技巧。主要内容包括:1)数据类型选择原则(使用最小类型、避免NULL等);2)常见数据类型(整数、实数、字符串、日期)的适用场景;3)Schema设计陷阱(过多列、过度关联等);4)范式与反范式的权衡;5)缓存表和汇总表的应用;6)ALTERTABLE操作的优化方法。文章强调通过合理选择数据类型、平衡范式设计及使用优化技术,可以显著提升MySQL性能。最后提供了IP地址存储、主键选择等实用小技巧。原创 2025-10-01 20:55:18 · 160 阅读 · 0 评论 -
《高性能MySQL》第3讲:服务器性能剖析
本文介绍了服务器性能剖析的方法与工具。主要内容包括:1. 性能优化应以响应时间为核心指标,而非单纯关注CPU利用率;2. 应用程序性能剖析可使用xhprof等工具,通过采样分析找出耗时操作;3. MySQL查询剖析包括服务器负载分析(慢查询日志)和单条查询剖析(SHOW PROFILE);4. 间歇性问题可通过监控系统状态、进程列表等方法诊断;5. 还介绍了strace等系统级剖析工具。性能优化需要持续测量、分析和调整,才能有效提升系统性能。原创 2025-09-07 15:55:50 · 329 阅读 · 0 评论 -
《高性能MySQL》MySQL基准测试
基准测试是MySQL性能优化和系统规划中不可或缺的一部分。通过基准测试,我们可以了解系统在不同负载下的表现,发现系统的瓶颈,并规划未来的业务增长。无论是使用集成式测试还是单组件式测试,选择合适的工具和方法都非常重要。关键点总结基准测试工具:sysbench、mysqlslap、http_load、TPC-C等工具可以帮助我们模拟不同的工作负载。测试数据:确保测试数据接近真实场景,避免使用均匀分布的数据。测试结果分析:通过吞吐量、响应时间等指标,评估系统的性能。原创 2025-05-03 06:38:26 · 356 阅读 · 0 评论 -
《高性能MySQL》第1讲:MySQL架构
这种情况下,InnoDB是一个更好的选择,因为它支持事务,可以确保数据的一致性。这两个操作必须在一个事务中完成,如果其中一个操作失败,整个事务必须回滚,确保数据的一致性。MySQL从最初的3.23版本发展到现在的8.0版本,经历了多次重大的改进和优化。事务A只能读取在T1之前提交的数据,而事务B只能读取在T2之前提交的数据。MySQL 5.0引入了视图和存储过程,MySQL 5.1引入了分区和基于行的复制,MySQL 5.5将InnoDB作为默认存储引擎,MySQL 5.6对查询优化器进行了重大改进。原创 2025-05-03 06:34:03 · 114 阅读 · 0 评论 -
《Python机器学习基础教程》第7讲:模型评估与改进:让模型更靠谱
今天,我们学习了模型评估和改进,包括准确率、精确率、召回率、F1分数、交叉验证和网格搜索。模型评估就像是给模型打分,交叉验证可以更全面地评估模型的性能,网格搜索可以找到最优的模型参数。如果模型的性能不够好,我们可以尝试更复杂的模型,比如随机森林或者梯度提升树。模型评估和改进是机器学习里非常重要的一部分,它能帮助我们找到更好的模型。比如,你可以用交叉验证和网格搜索优化房价预测模型,让模型更准确地预测房价。原创 2025-03-31 08:49:20 · 212 阅读 · 0 评论 -
《Python机器学习基础教程》第6讲:特征工程:让数据更有用
1. 特征工程:给数据“化妆”想象一下,你手里有一堆照片,你想用这些照片训练一个模型,让模型能识别照片里的人是不是在笑。但是,这些照片有的很暗,有的很亮,有的是黑白的,有的是彩色的。如果直接用这些照片训练模型,效果可能不会很好。这时候,就需要特征工程来帮忙了。特征工程的核心任务是提取数据中的有用信息,去掉无用信息。比如,你可以把照片的亮度调整到一致,或者把照片转换成灰度图,这样模型就能更容易地学习到照片里的特征。2. 处理分类变量:让机器理解“类别”原创 2025-03-31 08:46:24 · 92 阅读 · 0 评论 -
《Python机器学习基础教程》第5讲:聚类算法:让计算机帮我们分组
今天,我们学习了聚类算法,包括k均值聚类、凝聚聚类和DBSCAN。k均值聚类是最简单的聚类算法,适合把数据分成规则的簇;凝聚聚类可以发现数据的层次结构;DBSCAN可以发现复杂形状的簇和噪声点。聚类算法就像是给数据做“分类”,帮助我们发现数据里的不同群体。比如,你可以用聚类算法分析客户数据,把客户分成不同的群体,然后针对每个群体制定不同的营销策略。原创 2025-03-29 06:16:02 · 109 阅读 · 0 评论 -
《Python机器学习基础教程》第4讲:无监督学习与降维技术
本讲介绍了无监督学习中的降维技术,包括PCA、NMF和t-SNE。PCA可以找到数据中最“重要”的方向,NMF可以提取非负的成分,t-SNE可以保留数据的局部结构。这些技术不仅能简化数据,还能帮助我们更好地理解数据。降维技术就像是给复杂的数据做“压缩”,让数据变得更简单,更容易分析。比如,你可以用PCA来简化高维数据,用NMF来提取有意义的成分,用t-SNE来可视化复杂的数据。原创 2025-03-29 06:13:23 · 219 阅读 · 0 评论 -
《Python机器学习基础教程》第3讲:回归算法与模型优化
今天,我们学习了回归算法,包括线性回归、岭回归和Lasso回归。我们还学习了怎么用网格搜索和交叉验证来优化模型。通过波士顿房价数据集的实践,我们看到了这些算法的实际效果。回归算法就像是用一条直线来预测数值,但有时候这条直线可能会太复杂,导致过拟合。这时候,我们需要用正则化来给模型加点“魔法”,让它变得更鲁棒。网格搜索和交叉验证则是优化模型的好帮手,它们能帮我们找到最好的模型参数,评估模型的性能。原创 2025-03-24 14:35:35 · 278 阅读 · 0 评论 -
《Python机器学习基础教程》第2讲:监督学习与分类算法
k近邻算法也是类似的,它会看一个点周围的“邻居”,然后根据这些邻居的类别来决定这个点的类别。这就需要模型评估了。比如,你可以用k-NN来判断一个新客户是不是潜在的优质客户,用逻辑回归来预测一个病人是否患有某种疾病,或者用决策树来判断一个邮件是不是垃圾邮件。决策树的优点是容易理解,模型可以可视化,但缺点是很容易过拟合,也就是说,它可能会把训练数据学得太好了,导致在新的数据上表现不好。具体来说,k-NN算法会找到离目标点最近的k个点(这些点就是“邻居”),然后看这些邻居中哪个类别最多,就把目标点归为那个类别。原创 2025-03-24 14:32:40 · 264 阅读 · 0 评论 -
《Python机器学习基础教程》第1讲:机器学习入门与Python基础
我们需要先检查数据有没有错误,有没有缺失值,然后可能还需要把数据标准化(让所有特征的数值范围差不多),这样才能让模型更好地学习。今天,我们开启了机器学习的大门,了解了它是什么,以及监督学习和无监督学习的区别。我们可以看到,每行数据代表一朵鸢尾花,有4个特征(花瓣长度、宽度,花萼长度、宽度)和一个目标值(花的种类)。数据就像是机器学习的“食材”,但很多时候,这些食材并不完美。有的数据可能有错误,有的可能缺失,还有的可能格式不对。下一讲,我们会深入到监督学习的世界,学习分类算法,看看怎么用机器学习来预测类别。原创 2025-03-22 06:27:01 · 321 阅读 · 0 评论 -
《Python深度学习》第七讲:生成式深度学习
在深度学习的世界里,生成式模型是一种非常有趣且富有创造力的技术。它们能够生成全新的内容,比如文本、图像、音乐等,甚至可以创造出从未见过的虚拟世界。这一讲,我们将深入探讨生成式深度学习的核心技术,包括 LSTM 文本生成、DeepDream、神经风格迁移、变分自编码器(VAE)和生成式对抗网络(GAN)。这些技术不仅展示了深度学习的强大能力,还为创意和艺术带来了新的可能性。原创 2025-03-22 06:18:12 · 406 阅读 · 0 评论 -
《Python深度学习》第六讲:高级深度学习最佳实践
函数式 API 允许你直接操作张量,把层当作函数来使用。你可以通过这种方式构建复杂的网络结构,比如多输入、多输出的模型。这里,Input定义了输入张量的形状,是层的函数形式,最终通过Model将输入和输出张量组合成一个模型。TensorBoard 是一个基于浏览器的可视化工具,可以帮助我们监控模型的训练过程。在训练模型时,使用 TensorBoard 回调函数来记录日志。通过浏览器访问,你可以看到模型的训练指标、激活直方图等信息。原创 2025-03-18 09:08:29 · 266 阅读 · 0 评论 -
《Python深度学习》第五讲:文本处理中的深度学习
在这一讲中,我们详细探讨了深度学习在文本处理中的应用。从文本的预处理、向量化到复杂的模型构建,我们通过具体的代码和例子,了解了如何使用深度学习技术来处理和生成文本数据。无论是文本分类、情感分析还是文本生成,深度学习都为我们提供了强大的工具。原创 2025-03-18 09:05:28 · 282 阅读 · 0 评论 -
《Python深度学习》第四讲:计算机视觉中的深度学习
CNN是一种专门用于处理图像数据的神经网络。它的灵感来源于人类视觉系统的工作方式。想象一下,当你看到一张照片时,你的大脑会先识别出照片中的边缘、纹理等基本特征,然后逐步组合这些特征,最终识别出照片中的物体。CNN的工作原理也是类似的,它通过多层的卷积操作来逐步提取图像的特征。原创 2025-03-16 09:55:13 · 651 阅读 · 0 评论 -
《Python深度学习》第三讲:神经网络
Keras是一个非常友好的深度学习框架,它就像是一个乐高积木套装,你可以用它轻松地搭建出复杂的神经网络。Keras背后有强大的后端支持,比如TensorFlow,它负责处理底层的数学运算。原创 2025-03-16 09:49:48 · 471 阅读 · 0 评论 -
《Python深度学习》第二讲:深度学习的数学基础
矩阵是一个2维张量,它是一个数字的网格。我们加载了MNIST数据集,对数据进行了预处理,构建了一个包含两个Dense层的神经网络,编译了网络,训练了网络,并在测试集上评估了模型的性能。我们用的是MNIST数据集,这是一个很经典的数据集,包含60,000张训练图片和10,000张测试图片,每张图片都是一个28×28的灰度图像。比如,你可以将一个2D张量和一个1D张量相加,广播会自动将1D张量扩展到2D张量的形状,然后进行逐元素运算。在MNIST数据集中,每张图片是一个28×28的灰度图像,它是一个2维张量。原创 2025-03-16 09:44:57 · 524 阅读 · 0 评论 -
《Python深度学习》第一讲:深度学习基础
想象一下,你有一堆积木,你可以用一层积木搭一个简单的房子,但如果用多层积木,就能搭出更复杂的城堡。比如,第一层可能学习简单的线条,第二层学习形状,第三层学习更复杂的物体。首先,我们加载MNIST数据集,这是一个包含60,000张训练图片和10,000张测试图片的数据集,每张图片都是一个28×28的灰度图像。现在,我们每天都在产生海量的数据,比如社交媒体上的图片、视频,还有各种传感器收集的数据。比如,Keras是一个非常友好的深度学习框架,它就像是一套乐高积木,你可以轻松地搭建出复杂的神经网络。原创 2025-03-14 08:47:09 · 414 阅读 · 0 评论 -
《Python深度学习》知识体系拆解
通过电影评论分类、新闻分类和房价预测等任务,说明神经网络在不同类型问题中的应用。通过系统学习本书,读者可以掌握深度学习的基础理论和实践技能,解决实际问题。通过温度预测、情感分析等任务,展示这些模型在自然语言处理中的应用。展示如何通过这些模型生成图像、文本等,探索深度学习的创造性应用。讨论过拟合和欠拟合问题,展示如何通过正则化等方法解决这些问题。通过猫狗分类等实际任务,展示CNN在图像分类中的应用。张量、张量运算、梯度下降等数学概念是深度学习的核心。介绍机器学习的常见任务(分类、回归等)和评估方法。原创 2025-03-14 06:15:49 · 106 阅读 · 0 评论
分享