学习笔记之机器学习(Machine Learning)
机器学* - 维基百科,自由的百科全书
- https://zh.wikipedia.org/wiki/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0
- 机器学*是人工智能的一个分支。人工智能的研究历史有着一条从以“推理”为重点,到以“知识”为重点,再到以“学*”为重点的自然、清晰的脉络。显然,机器学*是实现人工智能的一个途径,即以机器学*为手段解决人工智能中的问题。机器学*在*30多年已发展为一门多领域交叉学科,涉及概率论、统计学、逼*论、凸分析、计算复杂性理论等多门学科。机器学*理论主要是设计和分析一些让计算机可以自动“学*”的算法。机器学*算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学*算法中涉及了大量的统计学理论,机器学*与推断统计学联系尤为密切,也被称为统计学*理论。算法设计方面,机器学*理论关注可以实现的,行之有效的学*算法。很多推论问题属于无程序可循难度,所以部分的机器学*研究是开发容易处理的*似算法。
- 机器学*已广泛应用于数据挖掘、计算机视觉、自然语言处理、生物特征识别、搜索引擎、医学诊断、检测信用卡欺诈、证券市场分析、DNA序列测序、语音和手写识别、战略游戏和机器人等领域。
Machine Learning with Python: Machine Learning Course
- https://www.python-course.eu/machine_learning.php
学*笔记之Machine Learning Crash Course | Google Developers - 浩然119 - 博客园
- https://www.cnblogs.com/pegasus923/p/10508444.html
- Google's fast-paced, practical introduction to machine learning
学*笔记之机器学*实战 - 浩然119 - 博客园
- https://www.cnblogs.com/pegasus923/p/9612584.html
学*笔记之scikit-learn - 浩然119 - 博客园
- https://www.cnblogs.com/pegasus923/p/9997485.html
学*笔记之Model selection and evaluation - 浩然119 - 博客园
- https://www.cnblogs.com/pegasus923/p/10469919.html
学*笔记之k-nearest neighbors algorithm (k-NN) - 浩然119 - 博客园
- https://www.cnblogs.com/pegasus923/p/10417872.html
学*笔记之Naive Bayes Classifier - 浩然119 - 博客园
- https://www.cnblogs.com/pegasus923/p/10470230.html
动画版机器学*过程 How Machines Learn ? - 机器学*算法与Python学*
- https://mp.weixin.qq.com/s/2cq8rThKzbXe0aGQSas3iQ
- https://www.youtube.com/watch?v=R9OHn5ZF4Uo
小白必看的机器学*入门知识 - GitChat精品课
- https://mp.weixin.qq.com/s/lca91XpLikWzBg_r2EKctA
- 一、为什么最*几年人工智能再次火爆?
- 计算能力的提升
- 更加优化的算法
- 大数据时代的到来
- 二、人工智能、机器学*以及深度学*是什么样的关系?
- 机器学*是人工智能的子领域,而深度学*又是机器学*的一个分支
- 三、机器学*的特点
- 四、机器学*的对象
- 五、机器学*的分类
- 严格意义上的机器学*算法应该分为四大类:有监督学*、无监督学*、半监督学*、强化学*。
- 六、机器学*的要素
- 数据和特征决定了机器学*算法的上界,而模型和算法只是逼*这个上界而已。
- 因此,我对机器学*算法要素总结为:特征、模型、策略和算法。
- 七、机器学*建模过程
- 模型的求解
- 八、经验风险与结构风险
- 实际上在真正的常见算法的实现过程中使用的原则是——结构风险最小化(Structral Risk Minimization SRM)。
- 经验风险最小化
- 结构风险最小化
学*笔记之三张图读懂机器学* :基本概念、五大流派与九种常见算法 - 超级数学建模 - 浩然119 - 博客园
- https://www.cnblogs.com/pegasus923/p/10394671.html
图解数据分析师最常用的10个机器学*算法 - 人工智能与大数据技术
- https://mp.weixin.qq.com/s/vyZ68aiCoqWC5pfA3bPBfA
- https://www.kdnuggets.com/2018/02/tour-top-10-algorithms-machine-learning-newbies.html
- 1-线性回归
- 2-逻辑回归
- 3-线性判别分析
- 4-分类和回归树
- 5-朴素贝叶斯
- 6-K*邻
- 7-学*矢量量化
- 8-支持向量机
- 9-bagging和随机森林
- 10-Boosting和AdaBoost
机器学*课程Top5(含吴恩达和哥伦比亚大学等课程)- Python二三事与机器学*算法
- https://mp.weixin.qq.com/s/wc0gZVawMIodt4cmLRS1Lw
- https://medium.com/@LearnDataSci/top-5-machine-learning-courses-for-2019-8a259572686e
- 吴恩达《机器学*》课程:https://www.learndatasci.com/out/coursera-machine-learning/
- 吴恩达《深度学*专项课程》:https://www.learndatasci.com/out/coursera-deep-learning-specialization/
- SAEED AGHABOZORGI 主讲的 Machine Learning with Python 课程:https://www.learndatasci.com/out/coursera-ibm-machine-learning-python/
- Advanced Machine Learning 专项课程:https://www.learndatasci.com/out/coursera-advanced-machine-learning-specialization/
- 哥伦比亚大学的 Machine Learning 课程:https://www.learndatasci.com/out/edx-columbia-machine-learning/
机器学*成才之路 - 机器之心
- https://mp.weixin.qq.com/s/kMu6g86L0-NX5YZMhpEk9g
- https://github.com/clone95/Machine-Learning-Study-Path-March-2019
简单理解梯度下降及线性回归 - AI遇见机器学*
- https://mp.weixin.qq.com/s/WKH4rUG4Rb0LWMszt3cqnQ
深入理解简单线性回归算法的原理
- https://mp.weixin.qq.com/s/FoGjgTnBTu6rlLjSrr0OJw
机器学*备忘录,源自Stanford - CS229 - 机器学*算法与Python学*
- https://mp.weixin.qq.com/s/vZ_vtBD9joz-i-lAq-PcCw
- https://github.com/afshinea/stanford-cs-229-machine-learning
初学者的机器学*入门实战教程
- https://mp.weixin.qq.com/s/tMScCB209dxL6gp1VQZvxg
- 这是一篇手把手教你使用 Python 实现机器学*算法,并在数值型数据和图像数据集上运行模型的入门教程,当你看完本文后,你应当可以开始你的机器学*之旅了!
学*路径丨机器学*入门
- https://mp.weixin.qq.com/s/9sNTlp-pATFtsHitoAI8Mw
- https://developer.ibm.com/cn/blog/2019/learning-path-machine-learning-for-developers/
K-means 算法实现二维数据聚类
- https://mp.weixin.qq.com/s/AhPdofty4VlbRXIwRDXNBQ
数据科学中必须熟知的5种聚类算法
使用 Python 实现机器学*特征选择的 4 种方法
机器学*算法优缺点对比及选择(汇总篇)
- https://mp.weixin.qq.com/s/1UvAIAs3luijzd0zJ4Kf0A
PageRank、最小生成树:ML开发者应该了解的五种图算法
MATH
《统计学*方法》的Python 3.6所有复现代码下载 - Python二三事与机器学*算法
- https://mp.weixin.qq.com/s/7ef6R63-z1MskWreSVfTaQ
- https://github.com/fengdu78/lihang-code
- 《统计学*方法》可以说是机器学*的入门宝典,许多机器学*培训班、互联网企业的面试、笔试题目,很多都参考这本书。本站根据网上资料用Python复现了课程内容,并提供本书的代码实现、课件下载。
- 《统计学*方法》,作者李航,本书全面系统地介绍了统计学*的主要方法,特别是监督学*方法,包括感知机、k*邻法、朴素贝叶斯法、决策树、逻辑斯谛回归与支持向量机、提升方法、EM算法、隐马尔可夫模型和条件随机场等。除第1章概论和最后一章总结外,每章介绍一种方法。叙述从具体问题或实例入手,由浅入深,阐明思路,给出必要的数学推导,便于读者掌握统计学*方法的实质,学会运用。
来学*一下概率论基本知识,它能让防止你的模型过拟合 - Python二三事与机器学*算法
- https://mp.weixin.qq.com/s/Pg8TUOUlwUdxbh4ZCG-7wQ
- https://towardsdatascience.com/probability-theory-for-deep-learning-9551b9255cf0
机器学*算法中的概率方法 - 机器学*算法与自然语言处理
- https://mp.weixin.qq.com/s/y6EwGHlKk1XjaasuuRzb5w
机器学*的13种概率分布
- https://mp.weixin.qq.com/s/DN5bhVxnR-APzHCvXvILWQ
- https://mp.weixin.qq.com/s/GdKo-hTwWtqAsjZXXCGiew
- https://github.com/graykode/distribution-is-all-you-need
干货|机器学*基础之EM算法学*
机器学* - 最大似然估计 - LeetCode力扣
- https://mp.weixin.qq.com/s/Ez_n5HoDl0jmf_BiYVeOog
简单理解损失函数及正则化 - AI遇见机器学*
- https://mp.weixin.qq.com/s/FsR4B_slYc7dNzex3_6vPw
如何选择合适的损失函数
19种损失函数,你能认识几个?
- https://mp.weixin.qq.com/s/nQE-3G0u4rTVVcysZ8smbw
- https://blog.csdn.net/shanglianlm/article/details/85019768
学点基本功:机器学*常用损失函数小结
简单理解逻辑回归基础
一文读懂线性回归、岭回归和Lasso回归
机器学*梯度下降法,最通俗易懂的解释
可视化深入理解损失函数与梯度下降
对比理解不同概率估计和模型损失函数
线性代数知识汇总
BEST PRACTICE
干货|解决机器学*&深度学*任务的一般流程及必要步骤
机器学*与深度学*核心知识点总结
常用机器学*实践技巧 - Python中文社区
- https://mp.weixin.qq.com/s/zvhnUiDEvMKiSu3Q_fY7BQ
- 我们知道在机器学*的实践中有很多技巧是可以通用和流程化的,在这里我们通过一个简单的数据集来演示在数据的使用和处理过程中常用的实践技巧,内容主要包含了:
- 数据预览
- 数据可视化
- 查找最优模型
- Pipeline的使用
- 模型调节
- 当我们拿到数据的时候,首先需要对我们的数据有一个大致的了解,比如数据的分布,数据类型,数据维度等等,只有当我们对自己的数据结构有一个大体的印象之后,才能进一步进行深入的数据分析。
- 通过箱型图我们很容易能够发现数据中隐藏的异常值。
- 通过条形图我们可以很清楚的看到数据的分布结构,是否为存在正态分布等等。
- 密度图让我们知道数据值大小的密度分布情况。
- 通过特征相关图我们能够知道哪些特征是存在明显的相关性的。
- 其实这个热力图和之前的特征相关图非常相似的,区别是热力图更加一目了然,将结果进行了量化。
- 当我们一开始不知道使用什么模型来进行预测的时候,一个最简单的思路就是使用默认参数的多个模型开始我们的尝试。如基于决策树的集成模型、SVM、逻辑回归等等进一轮训练和预测,然后选取最好的模型进行调优。
- 接着说我们的模型调节,也可以说是模型调优,假如我们获取到了最好的模型之后想要进一步提升模型的泛化能力,这是需要进行参数的调节,一个通用的方法就是网格搜索,网格搜索可以对模型参数进行批量调节,从而达到进一步提升模型的泛化性能的目的。
- 最后要说一下在机器学*的实践中其实还有两个非常重要的步骤,那就是特征工程和模型融合,它们对最后模型泛化能力提升的极限有着最为紧密的联系,但是这两部分内容又不是三言两语能够讲清楚的,还需要自己大量的探索和经验的累积才能最后把握住“火候”。
汇总 | 机器学*算法优缺点 & 如何选择 - 机器学*算法与Python学*
- https://mp.weixin.qq.com/s/g3nLEOmRHe6iAY9_E3zpGw
- 机器学*算法太多了,分类、回归、聚类、推荐、图像识别领域等等,要想找到一个合适算法真的不容易,所以在实际应用中,我们一般都是采用启发式学*方式来实验。通常最开始我们都会选择大家普遍认同的算法,诸如SVM,GBDT,Adaboost,现在深度学*很火热,神经网络也是一个不错的选择。
- 假如你在乎精度(accuracy)的话,最好的方法就是通过交叉验证(cross-validation)对各个算法一个个地进行测试,进行比较,然后调整参数确保每个算法达到最优解,最后选择最好的一个。但是如果你只是在寻找一个“足够好”的算法来解决你的问题,或者这里有些技巧可以参考,下面来分析下各个算法的优缺点,基于算法的优缺点,更易于我们去选择它。
- 1.天下没有免费的午餐
- 2. 偏差&方差
- 3. 常见算法优缺点
- 3.1 朴素贝叶斯
- 3.2 Logistic Regression(逻辑回归)
- 3.3 线性回归
- 3.4 最*邻算法——KNN
- 3.5 决策树
- 3.5.1 ID3、C4.5算法
- 3.5.2 CART分类与回归树
- 3.6 Adaboosting
- 3.7 SVM支持向量机
- 3.8 人工神经网络的优缺点
- 3.9 K-Means聚类
- 3.10 EM最大期望算法
- 3.11 集成算法(AdaBoost算法)
- 3.12 排序算法(PageRank)
- 3.13 关联规则算法(Apriori算法)
- 4. 算法选择参考
-
1. 首当其冲应该选择的就是逻辑回归,如果它的效果不怎么样,那么可以将它的结果作为基准来参考,在基础上与其他算法进行比较;
-
2. 然后试试决策树(随机森林)看看是否可以大幅度提升你的模型性能。即便最后你并没有把它当做为最终模型,你也可以使用随机森林来移除噪声变量,做特征选择;
-
3. 如果特征的数量和观测样本特别多,那么当资源和时间充足时(这个前提很重要),使用SVM不失为一种选择。
-
通常情况下:【GBDT>=SVM>=RF>=Adaboost>=Other…】,现在深度学*很热门,很多领域都用到,它是以神经网络为基础的,目前笔者自己也在学*,只是理论知识不扎实,理解的不够深入,这里就不做介绍了,希望以后可以写一片抛砖引玉的文章。
-
算法固然重要,但好的数据却要优于好的算法,设计优良特征是大有裨益的。假如你有一个超大数据集,那么无论你使用哪种算法可能对分类性能都没太大影响(此时就可以根据速度和易用性来进行抉择)。
-
机器学*算法复*手册——决策树
如何正确选择聚类算法? | CSDN博文精选
- https://mp.weixin.qq.com/s/abPjBOEh1WKqxyauxrAwEQ
- https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html
逻辑回归算法的优缺点 - 机器学*算法与自然语言处理
- https://mp.weixin.qq.com/s/nRCYIj778oAqy_XqneegAw
学*笔记之逃离数学焦虑、算法选择,思考做好机器学*项目的3个核心问题 - 浩然119 - 博客园
- https://www.cnblogs.com/pegasus923/p/10395848.html
GitHub开源项目!一款功能强大的特征选择工具
干货|了解机器学*常用数据预处理
干货|简单理解机器学*中非均衡数据处理方法
机器学*中如何处理不平衡数据? - 机器之心
- https://mp.weixin.qq.com/s/x48Ctb0_Eu1kcSGTYLt5BQ
- https://towardsdatascience.com/handling-imbalanced-datasets-in-machine-learning-7a0e84220f28
- 当我们使用机器学*算法时,必须谨慎选择模型的评估指标:我们必须使用那些能够帮助更好了解模型在实现目标方面的表现的指标;
- 在处理不平衡数据集时,如果类与给定变量不能很好地分离,且我们的目标是获得最佳准确率,那么得到的分类器可能只是预测结果为多数类的朴素分类器;
- 可以使用重采样方法,但必须仔细考虑:这不应该作为独立的解决方案使用,而是必须与问题相结合以实现特定的目标;
- 重新处理问题本身通常是解决不平衡类问题的最佳方法:分类器和决策规则必须根据目标进行设置。
干货|理解Dropout,BN及数据预处理
干货|机器学*数据无量纲化及缺失值处理
机器学*算法的随机数据生成 - 机器学*算法与自然语言处理
- https://mp.weixin.qq.com/s/IPlD7wgxxYTcmpj37Qi6mA
- https://github.com/ljpzzz/machinelearning/blob/master/mathematics/random_data_generation.ipynb
使用决策树对身高体重数据进行分类 - Python中文社区
- https://mp.weixin.qq.com/s/WfqTE9s5EoeMTKOt-w6gGA
关于防止过拟合,整理了 8 条迭代方向!
理解过拟合和dropout机制
干货|过拟合和正则化
如何确定最佳训练数据集规模?
- https://mp.weixin.qq.com/s/HCrNszG9WL6QaVUdqqW5Pw
- https://towardsdatascience.com/how-do-you-know-you-have-enough-training-data-ad9b1fd679ee
如何通过交叉验证改善你的训练数据集?
100多次竞赛后,他研发了一个几乎可以解决所有机器学*问题的框架
分析Booking的150种机器学*模型,我总结了六条成功经验
- https://mp.weixin.qq.com/s/mmfqrSEi4qdOxowGUoBKcA
- https://blog.acolyer.org/2019/10/07/150-successful-machine-learning-models/
调试机器学*模型的六种方法
- https://mp.weixin.qq.com/s/uHDnfJxFB7uvUECbPDJL-w
- https://mc.ai/six-ways-to-debug-a-machine-learning-model/
当博弈论遇上机器学*:一文读懂相关理论
机器学*中的集成学*模型实践
如何用Neo4j和Scikit-Learn做机器学*任务?| 附超详细分步教程
- https://mp.weixin.qq.com/s/WA_ZyS7A8hZmx_a9em6w4Q
- https://github.com/neo4j-contrib
- https://medium.com/neo4j/link-prediction-with-neo4j-part-1-an-introduction-713aa779fd9
APPLICATION
【科普】精选 7 个生活中的机器学*案例,AI无处不在!
Magi 一夜爆红,新一代知识化结构搜索新时代来了?
- https://mp.weixin.qq.com/s/reOxOfHxNsv7YRjwc2rBJw
- https://www.zhihu.com/question/354059866/answer/881655371
代码详解:手把手教你建立自己的视频分类模型
- https://mp.weixin.qq.com/s/oIEndeG2kCepOrZlAYBiSQ
- https://www.analyticsvidhya.com/blog/2019/09/step-by-step-deep-learning-tutorial-video-classification-python/
推荐系统
基于surprise的图书、电影推荐系统
今日头条、抖音推荐算法原理全文详解!
Instagram推荐系统:每秒预测9000万个模型是怎么做到的?
- https://mp.weixin.qq.com/s/b0_o4lHOxs7v4PCCL_I4DA
- https://ai.facebook.com/blog/powered-by-ai-instagrams-explore-recommender-system
RESOURCES
吴恩达《Machine Learning Yearning》
- https://mp.weixin.qq.com/s/8Z8LJaaAEpnQEo-99002Xw
- https://github.com/deeplearning-ai/machine-learning-yearning-cn
- 吴恩达《机器学*训练秘籍》中文版来啦!而且免费开源
- https://mp.weixin.qq.com/s/dm_3O_7TiDSz-PBQ6Lo6xQ
- https://deeplearning-ai.github.io/machine-learning-yearning-cn/docs/home/
- https://github.com/deeplearning-ai/machine-learning-yearning-cn/releases/download/v0.5.0/MLY-zh-cn.pdf
github标星11600+:最全的吴恩达机器学*课程资源(完整笔记、中英文字幕视频、python作业)
- https://mp.weixin.qq.com/s/RuevNK_go9-U97K0fEEvtQ
- https://www.coursera.org/learn/machine-learning
- https://github.com/fengdu78/Coursera-ML-AndrewNg-Notes
《应用TF&Sklearn实践机器学*》
- https://mp.weixin.qq.com/s/gu002jfExmeS42gUUXkSYA
《推荐系统实战》
- https://mp.weixin.qq.com/s/KunD1RuqikVZI2kEVzKEzg
520 页机器学*笔记!图文并茂可能更适合你