在上一篇文章末尾,小夕提到了“机器学习是实现自然语言处理的正确道路”。其实确实如此,纵观整个自然语言处理的发展史,也是纵观整个人工智能的发展史,从诞生到现在,机器学习不仅是在理论和工程上实现自然语言处理的目前最佳选择,也是最贴近生物掌握自然语言处理能力的本能方式。
从规则到统计,再到如今深度学习这个特殊而一般的统计,这条发展之路渗透在自然语言处理的几乎每一个应用场景。如中文分词,从最初的最大匹配法(通过规则查字典——基于规则),到后来的基于DAG的最大概率路径法、由字构词法、基于词的n-gram方法等(通过感知机、HMM、最大熵、CRF等model实现——基于统计),甚至到现在出现了基于深度学习的无聊方法。
从统计的时代开始,机器学习便当上了人工智能舞台的主角——视觉、听觉、语言等能力都成为了它的表现形式。而机器学习是从数据中学习到规律,将这个规律用一个模型去表示。因此,理论上来说,只要某一应用场景可以记录历史知识并且将知识表示成机器学习认可的数据的形式,那么机器学习就应该可以从该场景的历史知识中学习到规律,并且描述该规律,以用于日后的分类、聚类、回归、序列标注等任务。
下面小夕就带领大家看一下几个火热的应用领域是如何将它们的知识表示成机器学习可以消化的数据的。
场景1、图像视频处理:
相关方向:计算机视觉、模式识别。
图像可以看成是一个静态的矩阵。灰度图则是一个标准的矩阵(上帝视角的矩阵是个二维张量,即2D Tensor。回顾一下,2Dtensor就是矩阵,1D tensor是向量,0D tensor就是一个点。),矩阵中的每个元素都是0-255的数值,代表颜色深度。因此0代表纯黑,255代表纯白。
而彩色图则是一个3D的Tensor(张量),其中第0维一般为R、G、B三个值,分别代表红色通道、绿色通道、蓝色通道,第0维的每个值下(也就是每个颜色通道下)当然就是一个矩阵啦,跟灰度图一样,代表该颜色通道的颜色深度,因此B这个通道的255就代表纯蓝,RGB三个通道的颜色深度组合形成自然界中任何一种颜色。
而视频则是一个图像序列,视频中的每一个时间点,即每一帧,就是一个图像。
因此,在处理图像的时候,就是对一个2D Tensor或者3D Tensor的数据处理;在处理视频的时候,就是对一个2D或者3D Tensor序列的数据处理。
场景2、语音信号处理:
相关方向:语音识别、模式识别。
原始的语音信号可以看成是一个序列,但是这个序列的精髓在于时间轴。先不谈神奇的时间轴,先说时间轴上的某个点。
单通道的语音信号在每个时间点上的值就是一个点,即0D的tensor所以简单看语音信号的话,就是一个0D Tensor序列。
但是,如果单独的看这个0D Tensor序列的某一点,或者某一极小片段的话,是意义不大的(虽然对视频这个序列这样做的话是有意义的),这样得到的样本仅仅是某一点或者极小片段的声音的响度。但是生物对声音的主观辨识不仅在于某一点的响度,还有非常重要的音调和音色,而后两者依赖于对响度随时间轴变化的密集程度和变化规律进行感知,因此对语音信号的处理既一般化,又要注意时间轴上的区别。
场景3、自然语言处理:
相关方向:自然语言处理、信息检索。
自然语言既可以看成序列,也可以看成结构,或者结构+序列。自然语言处理即对人类语言描述出的文本进行处理。
我们可以将一段文本看作是从左到右随着“时间轴”变化的文字序列,也可以将一句话看做是一个“树形结构”,比如“小夕不喜欢大土豆”(这例子是什么鬼),可以将其中的“不”和“喜欢”合成为一个结点,将“大”和“土豆”合成为一个结点,然后将“小夕”、“不喜欢”、“大土豆”合成为最终的句子:
而序列或结构中的每个点,则是一个有着丰富意义的词,比如同样的“土豆”,放在食物中就是吃的,放在人身上可能是贬义词,放在电影里还可能是个暗号。因此,对于一个词的编码往往用一个向量(1D Tensor)来描述。简单描述如one-hot,复杂描述如word embedding,详情见这里。
而词又有不同的分析角度,比如从词法上来说,词可以分为动词、形容词、名词等,因此还可以将词像彩色图像一样编码成多个通道,比如语义通道、词性通道、甚至奇怪的拼音通道、偏旁部首通道等,这样就成了一个矩阵(2D Tensor)。因此对一段自然语言文本的处理就是对1D或2D Tensor序列或结构的处理。
场景4、游戏
相关方向:机器学习、控制类和上述感知类方向。
游戏是一个很大的概念,机器学习在游戏上的应用经常同时包括图像视频处理、语音信号处理甚至自然语言处理,但除此之外,“规划(planning)”往往是游戏场景的特色和核心。
包括自动驾驶,其实也可以看做是一个特殊的游戏。其本质即通过机器学习训练得到的视觉、听觉等感知能力来将外部信息处理成计算机可以进一步运算的“符号”,而这些符号其实就是机器学习可以消化的数据。
因此,积累这些符号的历史数据,就可以通过机器学习训练得到的具有规划能力的model来将这些符号转变为对外输出的自身行动。
上述4个应用场景直接体现了大众眼里的人工智能概念。但下面两个应用场景同样是机器学习广泛应用的地方。
场景5、信息安全:
相关方向:数据挖掘、自然语言处理、上述感知类方向。
如果觉得信息安全跟机器学习毫不沾边,那你的知识面就有点窄啦。一个烂大街的例子是将机器学习用于网站的入侵检测,基本思想即学习网站的正常运行的历史数据和被入侵时的历史数据,进而用学习到的model来对网站的运行状况进行监控,自动监测是否被入侵。
除此之外,实际上机器学习在信息安全的应用非常广泛。如通过对加密信息的学习,来破解加密信息;对流量类别的学习来分类流量;对互联网违法信息的学习来养成帅帅嗒小网警;对微博的文字情感和话题的学习来监督舆情;对色情视频的学习(跟你们学习的立足点不一样!!)来识别色情网站等等。这些场景都可以通过学习历史数据来完成安全任务。
场景6、数据处理:
相关方向:数据挖掘。
数据处理是机器学习的重头戏,也是跟商业(钱)联系最为紧密的应用方向。现代几乎任何的企业想要发展壮大,都离不开对商业数据的处理。比如对产品的大量用户反馈数据进行处理,通过聚类或分类来挖掘出产品的核心槽点;对企业的财务数据进行处理,从而制定更合理的收支分配等。
由于传统的数据处理算法难以挖掘出数据背后更为隐晦的规律,或者难以发现海量的商业数据背后的宏观规律,因此通过机器学习,而不是人的主观算法和主观分析,来对商业数据进行深层次的处理和挖掘,进而直接为企业创造出价值。
商业数据一般是以结构化的形式存储于数据库中,因此一方面是最容易被机器学习直接利用的数据,另一方面也是最混杂脏乱,难以高效利用的数据。
当然啦,广义的数据处理也会涉及自然语言、语音甚至图像形式的非结构化数据,因此在数据处理中涉及到的机器学习技术非常广泛,从最简单的KNN一直到复杂的深度学习,都有它存在的场景。
上述各应用场景的数据形式基本决定了机器学习在该场景的存在形式。
最贴近人类视觉系统的深度神经网络很自然的在图像视频处理的场景带来了巨大的成功,注定深度学习是该应用场景的核心;而人的听觉系统也是类似的,因此在语音处理场景也是如此;但人的语言系统却是十分复杂而神秘的,因此哪怕目前机器学习最先进的深度学习model在自然语言处理领域也表现不尽人意,注定自然语言处理场景成为一个日新月异,研究难度大的场景;而在数据处理的场景下,面对世界上纷繁多样的数据形式和需求场景,使得几乎每个机器学习模型都在该场景下有容身之处,因此该领域也是“最不浪费机器学习模型”的领域。
再讲点最现实的吧。
在入门难度和“投资回报”周期上,数据处理领域是“性价比”很高的领域,通过对统计机器学习的掌握和数据的预处理就可以完成相当多的数据处理任务,而且市场需求十分大,非人工智能导向的企业也会对其有非常旺盛的需求,因此小夕觉得还是比较适合非科班出身,希望转行又缺乏大量时间、精力和基础的同学的。
既然入门难度小,投资回报周期短,那么在这一应用领域有没有合适的培训机构呢?
7月20-24日,通信和信息技术创新人才培养工程项目办公室(http://ciit.org.cn/)将在北京举办“python大数据挖掘与分析(机器学习)核心技术案例实战专题培训班”
该培训班的培训对象是从事计算机、云计算、大数据、互联网等相关领域项目的科研院所的项目负责人、科研人员、工程技术人员;各地方政府信息中心负责人、技术骨干;大数据产业投资团队,大数据应用开发商,大数据服务提供商等;有志于python机器学习研究和应用的个人及从业者,高校相关专业的教学科研人员、高年级本科生及研究生。
该培训班:
1,可以帮助学员尽快掌握python语言的基本结构与语法与数据类型,模块、基本用法,熟悉函数,类设计,包的使用及基本的编程方法;
2,理解python数据挖掘与分析技术在当代各种大数据相关产品中的应用,并掌握该领域最关键技术的原理以及技术应用过程;
3,能开发出一些实际的应用项目并初步胜任Python的数据挖掘和机器学习工作;
4,通过紧密结合应用实例,针对工作中存在的疑难问题进行分析讲解和专题讨论,进而有效提升学员解决工作中实际问题的能力同时提升其从数据角度去思考的能力;
下面是教学大纲:
第一天 | 第1讲:数据分析方法概述及相关工具 | 1.认识数据 2.数据分析的步骤和原则(确定/分解/评估/决策) 3.相关工具概述及对比(excel/spss/R/matlab/python/Java) |
第2讲:python环境和基础语法与 | 1.安装anaconda套件 2.基本数据结构(列表/字符串/字典) 3.基本语法(条件/循环/函数/类/模块) 4.python语言编程的最佳实践经验 5.python在业界的典型应用 | |
第3讲:基础工具库 | 1.基础环境linux/ipython 2.数值计算 numpy 3.绘图与可视化 matplotlib与 Chart 4.数据操作 pandas 5.高级应用案例分享 | |
第二天 | 第4讲:统计分析库 | 1.概率和统计分析 statsmodels 2.科学计算和最优化 scipy 3.线性回归和逻辑回归 statsmodels |
第5讲:数据挖掘概览 | 1.数据挖掘与模型 2.建模流程和步骤 3.常见算法 5.高级应用案例解析 | |
第6讲:典型数据挖掘项目示范 | 1.基于titanic数据集预测生存概率 2.演示如何进行绘图探索 3.特征处理和建模 4.练习及答疑 | |
第三天 | 第7讲:数据挖掘与机器学习 | 1.感知机、决策树、特征工程、正则化方法、PCA等 2.练习和答疑 |
第8讲:机器学习进阶(一) | 1.参数调优、集成学习、文本挖掘、神经网络、深度学习等 2.练习和答疑 | |
第9讲:机器学习进阶(二) | 1.基于MNIST数据集识别数字 2.展示如何进行特征构造 3.常规机器学习算法和深度学习算法的效果差异 4.机器学习的结果评估 5.深度学习的最新进展分享 | |
第10讲:现代分析技术的应用(选修) | 1.社交网络分析 2.空间数据的展示与地理信息分析 3.图像分析技术简介 | |
第四天 Kaggle机器学习案例实战解析 | 第1讲:二分类任务案例分析 | 1.二分类任务简介 2.泰坦尼克沉船幸存者预测 3.Amazon员工访问需求预测 4.融360-用户二次贷款需求预测 |
第2讲:多分类与回归案例分析 | 1.多分类与回归任务简介 2.XGBoost简介 3.Otto集团产品分类预测 4.旧金山犯罪类型预测--利用地理信息可视化 5.Rossmann公司门店销量预测 | |
第3讲:其它数据挖掘任务案例分析 | 1.图像分类任务简介 2.树叶图片分类任务 3.推荐任务及评价指标简介 4.Santander银行产品推荐任务 |
内容很良心呐有木有。
培训费用为4980元/人(含培训费、教材费、考试费、证书申报、场地等相关费用),食宿统一安排,费用自理。
已经心动的同学快快拿出小本本记下联系方式:
电话: 15811578768
微信:15811578768
联系人: 金老师
邮 箱:384595672@qq.com
相比较数据处理,其他应用场景的“速成”难度就大多了。
机器学习是自然语言处理的核心方法,但不是解决方法。自然语言处理的研究进展日新月异,远远没有达到批量工业化的程度,因此需要足够扎实的数学基础来跟进最新论文,并自主实验。
基于规则的诸多算法、统计机器学习、深度学习在该领域仅仅是研究基础,而不是最终目标。因此相对而言入门难度很大,投资回报周期很长。而且注意一下,目前深度学习依然是机器学习在该领域的主流方法,对硬件平台要求较高,只用手头的PC是远远不够的。
图像视频处理、语音信号处理有大量的非机器学习任务,因此通信、电子出身的人可以很好的以此为切入点,将机器学习融入其中,从而完成更加智能的图像视频与音频处理的任务。
当然了,涉及更加智能的处理任务后,对数学的要求同样是蛮高的,机器学习与深度学习只是实现智能处理的工具,而不是用了这些工具就一定能完成智能处理。兼备数学理论与工程研发能力才可以做到。
而且与自然语言处理一样,深度学习是机器学习在图像视频与语音领域应用的前沿且主流方法,但是由于数据格式的原因,对硬件设备的要求比自然语言处理还要大,因此只用一台PC的话更不靠谱啦。
小夕暂时就想到这些啦~水平和认知所限,文中观点或许有些片面,欢迎在评论区指出哦~