demi的博客

机器学习实践中应避免的七种常见错误

统计建模和工程开发很相似。在工程开发中,人们有多种方法搭建一套键-值存储系统,每种设计针对使用模式有一套不同的假设。在统计建模中,也有很多算法来构造一个分类器,每种算法对数据也有各自的假设集合。

当处理少量数据时,因为实验成本很低,我们尽可能多的尝试各种算法,从而选出效果最优的算法。但提到“大数据”,提前分析数据,然后设计相应“管道”模型(预处理,建模,优化算法,评价,产品化)是事半功倍的。

正如在我以前的文章里提到,每个给定的建模问题都存在几十种解法。每个模型会提出不同的假设条件,我们也很难直观辨别哪些假设是合理的。在业界,大多数从业人员倾向于挑选他们熟悉的建模算法,而不是最适合数据集的那个。在这篇文章中,我将分享一些常见的认识误区(要避免的)。在今后的文章中再介绍一些最佳实践方法(应该做的)。

1. 想当然地使用默认损失函数

滤波试验:不同噪声选用什么滤波器

在图像处理中,首先要对原始图像进行预处理,即将效果较差的图像处理为尽量符合后续工作的有效图像。这一步主要用到了图像增强技术(Image Enhancement)和图像复原技术(Image Restoration)。图像增强是主观的(subjective),没有特定标准需要增强到什么程度,只要满足用户的需求即可;而图像复原是客观的(objective),需要尽可能恢复为原始图像。今天我主要针对图像复原方法做了实验。

图像复原,主要是去噪。噪声来源灰常多,但主要可以分为三类:
1. 来自捕捉源的(acquisition/digitization),比如一个摄像机的镜头、A/D或者sensor;
2. 来自图像传输过程(image transmission),传输图像的信道包括无线电、微波、光缆等等,如果通过无线电传输,遇到个风吹雨雪的,自然会有各种噪声了;
3. 来自计算过程(computation),比如咱们将浮点型数据转化为整形处理,就会丢失部分信息,但这不属于错误,是把问题简化,所以这也是一种噪声。所以,图像复原主要是用各种滤波方法去除噪声。

机器好奇心有助于人工智能的发展

会学习的软件正在改变世界,但需要监督。人类以两种方式监督它们。一是向机器学习算法展示描述当下任务的大量数据。例如有标记的猫和狗的图片,让算法学习区分两者。另一种监督是在高度结构化的环境中设定一个特定目标,例如在某款电子游戏中获得高分,再让算法尝试众多可能性,直到找到能实现目标的那一个。

这两种「监督学习」的方法已经在人工智能(AI)领域带来了突破。2012 年,多伦多大学的一组研究人员用第一种方法构建了 AlexNet,这个软件在一项竞赛中识别出的图像比其最接近的竞争对手多了十分之一。2015 年,Alphabet 旗下的英国人工智能公司 DeepMind 的研究人员用第二种方法教一个算法玩电子游戏雅达利( Atari),水平超过人类。后来在围棋上取得的胜利正源自这一成果。

恶意软件检测之Deep Learning分类器

0x00、概述

本文主要是和大家介绍一下:

1. 回顾Machine Learning分类器方法。

  •  特征码提取自动化
  •  数据集介绍
  •  n-gram N如何获取
  •  特征选择
  •  算法评估

2. Deep Learning分类器

  •  为什么有Machine Learning还需要Deep Learning。
  •  如何实现Deep Learning的方法。
  •  效果验证。

0x01、Machine Learning分类器回顾

干货:你知道模型参数和超参数之间的区别吗?

翻译 | AI科技大本营(rgznai100)
参与 | 姜沂,焦燕

导语

机器学习中的模型参数和模型超参数在作用、来源等方面都有所不同,而模型超参数常被称为模型参数,这样,很容易对初学者造成混淆。本文给出了模型参数和模型超参数的定义,并进行了对比,指出了二者本质上的区别:模型参数是模型内部的配置变量,可以用数据估计模型参数的值;模型超参数是模型外部的配置,必须手动设置参数的值。

我们在做研究的时候,会碰到很多术语。有时,在不同的研究领域还会出现同样名称的术语。比如,统计学、经济学中经常使用的“模型参数”和“模型超参数”,在机器学习中也同样存在。

机器学习领域中的“模型参数”“模型超参数”在作用、来源等方面都有所不同,初学者如果对二者没有明确的认识,学习起来往往会比较吃力,尤其是那些来自统计学和经济学领域的初学者们。

为了让大家在应用机器学习时,对“参数模型”和“超参数模型”有一个清晰的界定,在这篇文章中,我们将具体讨论这两个术语。

首先,我们来看一下“参数”是什么?

循环神经网络中Dropout的应用

循环神经网络(RNNs)是基于序列的模型,对自然语言理解、语言生成、视频处理和其他许多任务至关重要。模型的输入是一个符号序列,在每个时间点一个简单的神经网络(RNN单元)应用于一个符号,以及此前时间点的网络输出。RNNs是强大的模型,在许多任务中表现出色,但会快速过拟合。RNN模型中缺少正则化使他难以处理小规模数据,为避免这种情况研究者经常使用提早停止,或者小规模的或未充分定义的模型。

Dropout是深度网络中常见的一种正则化技巧,在训练过程中网络单元随机的被隐藏/丢弃。但这种技巧在RNNs中一直未被成功应用。实证结果使很多人相信循环层(RNN单元之间的连接)中加入的噪音在长序列中会被放大,并淹没了信号。因此现存的研究认为这种技巧应仅用于RNN的输入和输出。但这种方式在研究中发现依然会导致过拟合。

最近贝叶斯和深度学习研究的交叉提供了一个从贝叶斯理解常见深度学习技巧的角度。这种深度学习中的贝叶斯观点也引入了一些新的技巧,例如从深度学习网络中获得主要非确定估计。例如Gal和Ghahramani展现了dropout可以被解释为一个贝叶斯神经网络后验的变体近似。它们的变体近似分布是两个小方差高斯的混合,平均数是一个高斯被固定在0。这种近似贝叶斯推论的dropout基础认为理论结果的延伸可为在RNN模型中使用该技巧提供见解。

浅聊卷积神经网络的发展

卷积神经网络的发展主要是为了解决人类视觉问题,不过现在其它方向也都会使用。发展历程主要从Lenet5->Alexnet->VGG->GooLenet->ResNet等。

Lenet5

上世界80年代发明了卷积层,但由于硬件限制无法构建复杂网络,直到后面90年代才开始有实践。

1998年LeCun提出卷积层、池化层和完全连接层组合,以此来解决手写数字的识别问题。此时的效果已经很不错了,能与其它经典的机器学习模型相比。架构如下,一个32 x 32的输入,通过卷积提取特征,然后进行下采样,再一次卷积和下采样,后面进行全连接和高斯连接。

浅聊卷积神经网络的发展

Alexnet

无人驾驶汽车真的指日可待了吗?

无人驾驶是百年汽车工业的一个崭新高度,也是人们对智慧出行梦寐以求的目标。

今年以来,从拉斯维加斯电子商品展上各种无人驾驶技术的高调亮相,到许多汽车和科技公司陆续对无人驾驶商业计划的激进宣示,一些媒体开始大肆宣称无人驾驶会比人们想象的时间更早到来。

当前社会上和业界弥漫着一种浮躁,似乎无人驾驶就在眼前,谁不抓住它就会被淘汰,造成了资本市场的压力和业界的普遍焦虑。

无人驾驶真的指日可待了吗?

我的回答非常简单:否。不仅否,还非常遥远。

主观能动性是无人驾驶的必要条件

要问为什么,首先要了解什么是无人驾驶和我们需要怎么样的无人驾驶。

无人驾驶位于汽车自动驾驶技术的顶端。按照美国自动车工程学会(SAE)对自动驾驶的五级分类,第一级至第三级为有人的自动驾驶,或称为辅助自动驾驶,即人仍然要为驾驶的最后决策负责。在这些阶段,所有自动驾驶技术的应用只是为了提高人们的驾驶体验,尤其是安全体验。

第四级和第五级为无人自动驾驶,即可以将人完全排除在驾驶决策之外,其中第四级为有限场景、第五级为无限场景下的无人驾驶。显然,第四级和第五级是真正意义上的无人驾驶。

2018年中国新型智慧城市应用领域分析

新型智慧城市,是指运用信息和通信技术手段,感测、分析、整台城市运行核心系统的各项关键信息,从而对包括民生、环保、公共安全、城市服务、工商业活动在内的各种需求做出智能响应。它不单是仅仅基于某一种技术,而是包括云,人工智能等等技术的综合应用解决方案,旨在帮助城市更好运转,为人们创造更美好的生活。

新型智慧城市主要应用领域包括:智慧政务、智慧交通、智慧安防、智慧教育、智慧医疗。

智慧政务:政务云建设加速,云计算、大数据以及AI等新技术不断落地

智慧政务是运用云计算、大数据、物联网、人工智能等技术,通过监测、整合、分析、智能响应,实现各职能部门的各种资源的高度整合,提高政府的业务办理和管理效率。通过智慧政务体系,可以加强职能监管,使政府更加廉洁、勤政、务实,提高政府的透明度,并形成高效、敏捷、便民的新型政府,保证城市可持续发展,为企业和公众建立一个良好的城市生活环境。

云计算、大数据、人工智能以及区块链技术快速发展,智慧政务开始进入“架构优化”阶段,存储和计算环节新技术应用显着增加,为政务、企业以及民生服务应用提供支撑。通过架构的优化,打破了原有的应用竖井和数据孤岛,真正实现了数据共享、智慧决策和管理。

神经网络从被人忽悠到忽悠人(一)

很早的时候就想写几篇关于人工智能的东西,把人工智能的东西写的通俗易懂点,但是毕竟人工智能的东西涉及的领域太广了,特别是对数学和概率有比较深的理解,如果只是想简单的了解,可以跳过文章的公式。

很难想象有什么事物会像廉价、强大、无处不在的人工智能那样拥有“改变一切”的力量。《必然》

前段时间的AlphaGo再次的把人工智能炒的火热,关于人工智能的讨论又再次进入讨论的风口浪尖上。各个方面对AlphaGo技术的猜测,神经网络也再次成为了技术的焦点。

一个看似简单的问题

给你一堆的图片,从图片中分出是猫,狗。归结成一个大问题:分类。本身来说,分类对计算机来说本该是最擅长的,本身0和1,就是很好的分类,编程语言的if else,swich,可以做到很好的分类。

像if else这种做法,似乎我们可以编写一套复杂的规则,这个规则覆盖所有的情况,就能够进行准确的分类了。但是这条路是走不通的,之前的自然语言处理就走过这条路。需要另外的选择一条出路。对,建模。通过模型来进行分类。