【科普周】入坑须知—机器学习扫盲篇(二)

欢迎关注哈希大数据微信公众号《哈希大数据》上一篇给大家介绍了有监督学习、无监督学习、和强化学习的含义和例子,这些可能还不够具体,机器学习博大精深本期咱们继续看看机器学习还有哪些好玩的点?想要入门机器学习你该怎么做?有哪些好的资料可以帮助大家尽快入门?

废话不多说咱们开始吧!

01 机器学习的应用

目前机器学习在以下场景应用非常火热:

1.推荐系统

网易云音乐每日推荐、每个人淘宝APP的首页都不一样这就是它对每个人的推荐、腾讯视频的“爱看”等

2.自然语言处理

百度的机器翻译、文本内容理解、文本情绪判断、科大讯飞的语音识别、搜狗的输入法、谷歌的搜索引擎智能匹配、互联网金融的风控系统等

3.计算机视觉

人脸识别、车牌识别、工业视觉检查、视频监控分析、文字识别、图片搜索、医疗影像检查,代表性的公司有商汤科技、Face++矿视科技等

02 入坑必备

扫描二维码关注公众号,回复: 1798455 查看本文章
既然这个领域这么火想入坑的小伙伴该如何下手呢?一般范式是这样的:


目前在互联网领域从事机器学习的人,有2类背景的人比较多,其中一部分(很大一部分)CS背景出身的,这类同学代码能力逻辑能力强,有想法可以很快上手。另一部分是学数学统计领域的同学,这部分同学理论基础相对扎实一些。因此对比上图,这两类同学入门机器学习,所欠缺和需要加强的部分是不一样的。要是都没学过先哭一会然后恶补吧!(调皮的某男神~~

数理基础:

这块主要用到的是三块:微积分、线性代数、概率与统计,理工科的同学在本科时候应该都学过这三门课,如果不是搞高深的机器学习研究,需要掌握的知识点也不是特别难,比如理解梯度的含义、极值、求导、偏导数等,其中一个概念可能在本科的学习中接触的比较少——最优化或者叫凸优化。求解模型就是一个不断寻优的过程常用的方法有:梯度下降法、牛顿法等。建议大家看陈宝林的最优化理论与算法。

线性代数:

大家可能都学过,但学明白的可能不多,什么是特征值、特征向量、奇异矩阵等概念大家应该都忘了,重温的话建议大家看麻省理工Gilbert Strang教授的课程。https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/

矩阵乘法与分解在机器学习的主成分分析(PCA)和奇异值分解(SVD)等部分呈现刷屏状地出现,所以线性代数也要补一补。

概率与统计:

极大似然思想、贝叶斯模型是理论基础,朴素贝叶斯(Naïve Bayes )、语言模型(N-gram)、隐马尔科夫(HMM)、隐变量混合概率模型是他们的高级形态。

常见分布如高斯分布是混合高斯模型(GMM)等的基础。这个主要学习一些随机过程的内容,推荐张波的随机过程。

编程基础

目前做机器学习的编程语言主要有两大派系:Python和R,程序员出身的用Python较多,学统计出身的用R较多。对初学者而言,Python和R语言是很好的入门语言,很容易上手,同时又活跃的社区支持,丰富的工具包帮助我们完成想法。

python有着全品类的数据科学工具,从数据获取、数据清洗到整合各种算法都做得非常全面。

·       网页爬虫:requestscrapybeautifulsouppyqueryre

·       数据挖掘:

·       pandas:模拟R,进行数据浏览与预处理。

·       numpy:数组运算。

·       scipy:高效的科学计算。

·       matplotlib:非常方便的数据可视化工具。

·   机器学习:

·       scikit-learn:远近闻名的机器学习package。未必是最高效的,但是接口真心封装得好,几乎所有的机器学习算法输入输出部分格式都一致。而它的支持文档甚至可以直接当做教程来学习,非常用心。对于不是非常高纬度、高量级的数据,scikit-learn胜任得非常好(有兴趣可以看看sklearn的源码,也很有意思)

·       libsvm:高效率的svm模型实现(了解一下很有好处,libsvm的系数数据输入格式,在各处都非常常见)

·       keras/TensorFlow:对深度学习感兴趣的同学,也能很方便地搭建自己的神经网络了。

·      自然语言处理:

·       nltk:自然语言处理的相关功能做得非常全面,有典型语料库,而且上手也非常容易。

R语言有以下特点:

R免费资源公开(不是黑盒子,也不是吝啬鬼)

R全面的统计研究平台

R支持多种操作系统可以在UNIX, WindowsMacintosh运行

R 有优秀的画图功能.

R可进行交互式数据分析和探索的强大平台

R有优秀的内在帮助系统

R语言有一个强大的,容易学习的语法,有许多内在的统计函数.

03 常用的机器学习

下面是寒小阳大神的总结:

1.    处理分类问题的常用算法包括:逻辑回归(工业界最常用),支持向量机,随机森林,朴素贝叶斯(NLP中常用),深度神经网络(视频、图片、语音等多媒体数据中使用)

2.    处理回归问题的常用算法包括:线性回归,普通最小二乘回归(Ordinary Least Squares Regression),逐步回归(Stepwise Regression),多元自适应回归样条(Multivariate Adaptive Regression Splines

3.    处理聚类问题的常用算法包括:K均值(K-means,基于密度聚类,LDA等等。

4.    降维的常用算法包括:主成分分析(PCA,奇异值分解(SVD 等。

5.    推荐系统的常用算法:协同过滤算法

6.    模型融合(model ensemble)和提升(boosting)的算法包括:baggingadaboostGBDTGBRT

7.    其他很重要的算法包括:EM算法等等。


猜你喜欢

转载自blog.csdn.net/hashdata2018/article/details/80684254
今日推荐