可以自学人工智能吗?
发布时间:2018-11-01 作者:jason
答案是肯定的,但你真的需要受到纪律处分。每当我得到这样一个问题时,我总是要求具体细节,AI非常广泛。现代AI领域主要包括:
1.机器学习(ML):关于从示例中学习和改进的机器。在ML中,有监督和无监督的学习方法,例如:
a.人工神经网络(ANN):如深度神经网络(DNN)。人工神经网络目前是针对大多数人工智能相关问题的算法,我们有:
i.卷积神经网络(CNN)。
ii.循环神经网络(RNN),例如长短期记忆(LSTM)或门控循环单位(GRU)网络。
iii.内存网络。
iv.生成对抗网络(GAN)。
v.残余神经网络(ResNet)。
vi.自动编码器:用于降噪,压缩等等。我们还有生成对抗性自动编码器。
b.支持向量机(SVM)。基于铰链损失最小化导致最大边际分类器。
c.受限制的玻尔兹曼机器(RBM)。
d.聚类算法,如k-means和凝聚层次聚类方法。
e.K最近邻懒惰学习算法。
2.自然语言处理(NLP):ML算法尤其是诸如LSTM或GRU网络的RNN通常用于NLP。但CNN也可以通过及时巧妙地使用卷积在NLP中应用。NLP包括:
a.自然语言理解(NLU):这是关于理解口语的,这与基于映射的方法(称为语音识别)不同。NLU极具挑战性,被称为AI-complete或AI-hard。
b.自然语言生成(NLG):不像NLU那么难,但也具有挑战性。这主要是关于生成语言,顾名思义。
3.计算机视觉(CV)。这也被认为是AI-complete,可以利用各种算法。在简历中我们通常有:
a.3D计算机视觉:在增强现实(AR)应用中应用的诸如运动结构(SfM)和同时定位和映射(SLAM)以及3D相机姿态估计的算法基于涉及跟踪显着区域和拟合运动的3D计算机视觉技术。单应性或仿射变换等模型。来自照片的自动全景拼接也属于3D计算机视觉,因为为了对准图像,通常使用束调整算法来恢复相机3D姿势。
b.图像识别:在这里,我们更感兴趣的是识别给定场景中的主导内容而无需本地化该内容。这曾经是通过词袋方法完成的,其中矢量量化技术(例如k均值聚类)找到特征字典,然后使用tf-idf(文本频率 - 逆文档频率)方法来查找匹配大规模的图像。这是Google Goggles中使用的技术或Google图像搜索等搜索引擎中的图片搜索。非常确定有更多先进的技术可以持续部署。自2012年Geoffrey Hinton和他的团队在ImageNet挑战中取得突破以来,CNN已经接管了风暴的图像识别。
c.物体检测:图像识别+定位=物体检测。这是一个极具挑战性的CV子领域,它比图像识别复杂得多。识别对象的本地化并非无足轻重,这是非常困难的。CNN再次利用诸如更快的区域CNN(更快的R-CNN)之类的算法来攻击该区域。
d.图像到图像转换:另一个最近有趣的字段,它将 一个图像映射(翻译)到另一个图像,这使用了GAN。
还有更多的AI技术,如进化策略(ES),它是用于训练ML模型的替代梯度自由优化方法。随着深度学习算法的进步,ML的当前领域已经取得进展,这使得ML成为当今AI中非常热门的领域。如果你必须选择一个专业领域,ML是一个很好的选择。因此,下面的讨论将假设您打算专注于ML。CV和NLP字段需要ML非常糟糕。
现在人工智能的目标是解决情报问题。
解决情报。用它来让世界变得更美好。
-DeepMind。
目前的趋势是将学习作为一个不太理想的优化问题,因为这主要限于可微分的软目标,softmax,软注意等。这本身就限制了人工智能实现其最终目标的进程。因此,如果您熟悉优化理论,ML可以非常容易地学习。这是因为ML基于梯度体面优化,诸如随机梯度下降(SGD)之类的算法可能听起来很复杂,但算法本身是数值优化的正常梯度下降的简化版本。
因此,ML目前根本不是非常智能,但是目前大多数ML算法仅仅基于映射。
F:X→YF:X→Y
将输入映射到新的方便空间。那里没有适当的推理,比如从世界学习事实等等。只是这样,通过大多数监督学习方法进行优化,提供输入 - 输出训练对。我们确实有非常有用的算法,如GAN和强化学习(RL),用于非监督学习模型。XXYY
有了这个说,要自己学习,你真的需要确定,因为你可以看到很多东西需要阅读,理解和实现。因此,我用来学习的方法是基于。
1.开始极具挑战性的项目
2.在ML或AI中导出重要的数学概念。
3.从头开始实施大多数系统。
首先,我确保我对ML的先决条件感到满意:
1.数学:
a.线性代数:非常重要,因为ML中通常会遇到矩阵乘法等矩阵运算。多维向量通常在ML中称为张量,张量在ML算法中从一层传递到另一层。这就是TensorFlow(Google Brain的ML库)名称来源于计算图中的张量流。因此,理解线性代数非常重要。还有时间欣赏非常强大的奇异值分解(SVD)算法。
b.概率和统计:概率推理对于许多系统中的决策至关重要,并且需要在大多数ML系统中做出决策。我们有用于计算概率的逻辑和softmax函数,因此更容易确定特定类是否存在。
c.微积分:学习这个数学领域,因为导数对于优化可微分的目标函数很重要,这是当今ML算法的优点。因此,请确保非常熟悉多变量微积分。
d.数值优化:是的,这是当前ML本身的基础,ML是基于一些目标的优化,称为损失或成本函数,用于衡量ML系统的性能。我们的想法是在误差表面(由物镜定义)的最陡坡上做小步,以减少损失。理解数值优化领域意味着理解大多数ML算法。
2.编程:
a.Python:Python提供了许多ML库,并且具有易于学习的语法,Python是初学者的首选语言。它对专家来说也非常强大。
b.Java:您还可以在ML实现中使用Java。
c.C / C ++:非常有效地从头开始开发新方法。如果您从头开始编码,您将学到很多关于AI和ML领域的知识。但是,不要总是从头开始编码,只在必要时这样做。
我也亲自阅读了很多,我的意思很多,每一天都在Quora或其他地方。我还在YouTube上观看了很多来自Google Tech Talk,Google研究,麻省理工学院,Facebook,微软等的演讲,演讲或教学视频。我也阅读了很多期刊,是的,我了解来自顶级来源的期刊,如DeepMind,FAIR,BAIR,百度,微软研究,OpenAI,谷歌等等。
所以你问
你能教自己人工智能吗?
当然,但这是一项艰苦的工作,很少有人可以管理。但如果我管理了你也可以。你需要确保你有热情和坚韧,阅读有关AI的大量在线资料。有几个高质量的来源,一个简单的谷歌搜索可以提供这些来源来学习。
今天网上有足够的信息来学习博士学位以及博士学位以外的任何知识,相信我是可行的。
希望这可以帮助