当前位置: 首页 > 科技观察

人工智能入门,看完这篇文章就够了!

时间:2023-03-20 00:33:44 科技观察

现在科技界最火的是什么?答案几乎离不开人工智能、机器学习、深度学习等。事实上,以人工智能为代表的一系列技术已经走进千家万户,深入到我们的日常生活中。公司门口的指纹门禁、手机拍照时的人脸对焦、家里使用的扫地机器人,这些都可以看作是人工智能的衍生品。人与国际象棋从技术上讲,人工智能(AI)是指在机器中模拟人类智能,这些机器被编程为像人类一样思考并模仿他们的行为。总之,让机器变得更像人的行为和思维,比如机器人试图模仿人的行为,比如AlphaGo模仿人的思维下围棋。考虑到人工智能的广泛领域和我们目前的基础,我们将以当前非常热门的计算机视觉问题为例,详细描述计算机识别物体的过程,希望能激发大家的兴趣。计算机如何“看到”事物?当人类看到一张照片时,很容易判断出照片的内容。这个过程涉及复杂的生物学和认知科学知识。简而言之,可以想象我们的眼睛从照片中接收信息,信息经过大脑中的神经元,经过复杂的处理,最终产生相关信号,比如“照片中有三个人,其中一个可能妈妈还有两个孩子。”与人类相似,计算机也经历“信号采集”、“信号处理”、“信号反馈”三个过程。照相机、摄像机等成像设备代替了眼睛,电脑芯片电路代替了大脑中的神经元,最后处理后的信号通过显示器反馈回来。使用手机摄像头识别花卉我们以手机摄像头识别花卉为例。我们的相机要经过什么样的过程才能“识别”出花的种类呢?与人类相似,手机也需要经历一个学习过程。我们先给“它”看很多很多花的照片,告诉“它”这些照片属于什么类别。具体过程如下:首先,相机拍摄花卉照片,手机在电脑等计算设备中,照片以矩阵的形式存在,可以理解为一串数字,其中数字代表颜色、亮度等信息;我们将矩阵X输入到神经网络N中(可以看作是一种复杂的数学函数,给定一个输入值可以得到一个输出值),记录输出值Y;由于这是一个学习过程,我们事先知道每张照片的真实类别Z,所以为了让我们的神经网络N有正确的识别,Y应该尽可能接近Z。所以我们改变N的参数,让Y和Z的距离变小;重复1-3,当你认为Y和Z足够相似时,模型的学习过程就结束了!通过学习到的神经网络N,当你用手机拍一张新的花卉照片时,相机会提取一个新的矩阵X',X'经过神经网络计算得到Y'。我们将Y'与AllZ进行比较,最接近的可以视为新照片的类别。当然,为了简单起见,上面省略了很多过程,也有一些不符合专业规范的表述。有兴趣的可以继续关注我的更新。人工智能充满魅力!新手如何开始机器学习?首先需要说明的是,人工智能、机器学习和深度学习是包容的关系。人工智能代表了一个广泛的拟人化概念。机器学习特指使用统计和数学模型进行建模。深度学习更进了一步。模型类型限于深度神经网络。每个人都可以有一个概念,随着学习的深入,会逐渐明白它的本质。知乎上知晓三人关系。一些朋友私下里相信了我。作为初学者,我该如何学习机器学习?我理解大家的困惑。如上所述,这是一个巨大且瞬息万变的领域,技术每时每刻都在更新。新手如何确定自己的方向是正确的?我的建议是不要盲目追求新技术。眼下涌现的大量新技术,实际上都是以高端名称命名的技术的新子集。以下内容涉及更多专业术语。不感兴趣可以关掉~题目的风格我不太了解,但我个人更喜欢在接触一个新事物的时候了解一下这个东西的动机来源。新手在接触机器学习时最大的困惑就是无从下手。我个人认为首先是要确定自己的兴趣方向。例如,如果要预测视频图像,那么首先在方法级别将其限制为生成模型。查阅文献我们可以知道,最早的生成模型,比如受物理能量模型启发的BoltamannMachine,比如深度信念网络(Pretraining,Hinton2006),以及现在流行的GAN和VAE。这个过程可以适当缩短,因为State-of-art基本上不用Boltzmannmachinedepthbeliefnetwork这些老古董了。但是,但是,如果你真的想要有所作为,我觉得还是有必要去了解深层次的背景。比如Goodfellow为什么要提出GAN?你怎么能想出像GAN这样影响该领域的东西?(我个人认为GAN的核心是Discriminator,相比常用的MSE、L1等,Discriminator作为判断者更接近人类,其数学推导也证明了Discriminator可以最小化分布距离。)当你接触到GAN和VAE时,你可能今天读了一篇关于CycleGAN的文章,明天又读了另一篇关于FactorVAE的文章,但是这些不同的知识对于新手来说是独立孤立的。事实上,以上两者都是深度生成模型,其中CycleGAN使用了循环一致性,这是另一种被广泛使用的技术;FactorVAE还涉及到Disentanglement机制,涉及到可解释模型的概念。所以,在这一步,你需要进一步缩小目标问题的范围。比如固定摄像头的异常事件预测(听起来很奇怪,不关心它举个例子)。DeepLearning(FlowerBook),据说有中文版~这里强烈推荐Goodfellow和Bengio的DeepLearning,FlowerBook真的是一本很好的书,如果时间充裕,建议通读一遍.当然,也可以根据自己平时的需要查找相关章节,但建议通读前十章,这样会少走很多弯路。花数的好处是,你在日常生活中可能遇到的小问题,在这里都有详细的解释。比如第7章关于Dropout机制的描述,我之前对于Dropout只是停留在操作层面(真的一直这么想,从来没有想过为什么),也是很多中文博客的一部分(很多英文直译博客。。。)内容,也就是在forwardpass的时候,随机的把一些connections的权重设置为0。是Bengio的解释让我清醒过来。这其实就是一种Boost机制,每一次forwardpass实际上训练的是不同的子模型。训练完成后,在最后的测试过程中,实现了Voting过程。