首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

入门机器学习的数学基础

机器学习 Machine Learning 借着AlphaGo的大火也跟着火了起来, 尤其是深度学习 Deep Learning 技术, 16年至今风光无限, 一时间大家都在议论, 未来的多少多少年是AI的时代, 虽然有些夸张, 但是确实能感受到越来越多的领域和应用场景在被AI和ML技术所改变, 腾讯员工大会上老大们已经两次提到AI In All的战略, 翻译, 语音识别, 文字转语音, 图像识别, 人脸识别等等, 各个大公司都在抢占现有的研究成果红利, 同时依靠自身多年积累的数据红利, 快速进行着从0到1这一波研究成果产品化. 直观的感觉就是, 突然所有的产品都开始号称智能了.

虽然并非从事机器学习相关工作, 然而大势所趋, 还是觉得有必要也对ML领域有所了解和实践. 但是不同于其他新技术, 框架, 软件或解决方案, 可以开箱即用或者面向API编程, 机器学习有着天然数学门槛, 如果没有一点点相应的数学基础, 甚至连原理都看不懂, 更谈不上针对自己业务需求的调优和适配了, 这篇文章就打算根据自己最近一年的实际经验, 从一个外行的角度, 分析下入门机器学习需要的数学基础知识.

跟优图实验室的研究同事沟通过, 不谈研究只说应用, 一般认为基本上大学数学的水平(就是高等数学, 线性代数, 概率论)就可以满足大部分需要了, 说实在的要求并不高, 所以我猜大部分人的问题应该是跟我一样吧: 基本忘光了…毕竟做业务开发很少涉及数学. 那么事情就变成了如何重新捡起来.

1, 数学符号

翻开周志华的(俗称西瓜书)的前几页: 主要符号表, 可以大致了解多少符号和表达式和概念是自己还能看懂的, 以及还有多少需要补课, 数学符号可以说是数学通用语言, 是理解算法原理和最佳途径.

这里只是列出了书中用到的符号和表达式, Wikipedia里有更全的, 简单列举一些

Wikipedia数学符号表

2, 数学概念

基本的数学概念是一切的基础, 这部分概念理解的好, 后面理解起更复杂的数学推导会水到渠成. 这部分基本上我是从初中数学开始回顾的, 买了两本初高中数学的总结辅导书, 花了几个小时通读了一遍, 因为高考的缘故, 初高中的知识一般都是经过大量重复练习的, 印象还是比较深的, 基本上看到就能回忆起来, 比起大学时候学完一科扔一科还是好的多. 初高中的知识主要都是最基本的概念. 也是最重要的. 比如这些:

数的概念: 整数, 小数, 分数, 实数, 有理数等等

函数的概念: 代数, 函数, 映射, 几种基本函数的概念和图形

微积分概念: 函数的微分, 积分, 导数, 偏导数的概念, 这几个尤其重要, 可以说是机器学习过程如何优化调参的核心概念了

线性代数: 向量, 矩阵, 张量, 向量的计算, 矩阵的计算, 矩阵的特性等等, 这部分是运算的核心, 一般我们都是把具体业务问题抽象为数学问题, 把计算机数据转换为向量或矩阵形式, 然后利用计算机和机器学习方法求解, 在我看来线性代数可以说是科学计算领域的数据结构.

概率论: 样本, 集合, 事件, 随机事件, 条件概率, 分布函数等等. 概率论提供了另一种看待世界的方法论, 是机器学习很多分类方法的基础. 如贝叶斯分类, 最大熵, 最大似然等等.

3, 机器学习算法的数学表达

看懂基本的数学符号, 理解基本的数学概念之后, 就可以找一些经典算法的数学表达来验证下自己算法真的可以理解这些算法, 以及在实际应用中不断去熟悉和深入理解其中的数学原理.

数学概念比较抽象, 很多时候就想如果可以想程序可以运行一下试试, 感觉会更容易理解, 我一般是使用Python 或者 Matlab, 学习一个概念后, 稍作修改, 看看结果是否如预期.

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180303G0TTJ200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券