改变我们生活的得力算法

一、介绍

        M在过去的几年里,学习取得了长足的进步,现在它在各个领域的应用已经飙升。从Chat-GPT到DALL。E 2,每个应用程序都使用机器学习算法为我们提供最好的结果,并使我们能够更高效,更准确地解决复杂问题。在这篇博文中,我将分享10种最有前途的机器学习算法,它们可以主宰未来。

二、什么是算法?   

        简而言之,任何定义明确的计算步骤都可称为算法,接受一个或一组值为输入,输出一个或一组值。(来源:homas H. Cormen, Chales E. Leiserson 《算法导论第3版》)   可以这样理解,算法是用来解决特定问题的一系列步骤(不仅计算机需要算法,我们在日常生活中也在使用算法)。算法必须具备如下3个重要特性:   

[1] 有穷性。执行有限步骤后,算法必须中止。   

[2] 确切性。算法的每个步骤都必须确切定义。   

[3] 可行性。特定算法须可以在特定的时间内解决特定问题,   

        其实,算法虽然广泛应用在计算机领域,但却完全源自数学。实际上,最早的数学算法可追溯到公元前1600年-Babylonians有关求因式分解和平方根的算法。   

三、那么哪些算法造就了我们今天的生活呢?

        请看下面的表单,排名不分先后:

3.1. 归并排序(MERGE SORT)

        快速排序(QUICK SORT)和堆积排序(HEAP SORT)   

        哪个排序算法效率最高?这要看情况。这也就是我把这3种算法放在一起讲的原因,可能你更常用其中一种,不过它们各有千秋。   

        归并排序算法,是目前为止最重要的算法之一,是分治法的一个典型应用,由数学家John von Neumann于1945年发明。   

        快速排序算法,结合了集合划分算法和分治算法,不是很稳定,但在处理随机列阵(AM-based arrays)时效率相当高。   

        堆积排序,采用优先伫列机制,减少排序时的搜索时间,同样不是很稳定。   与早期的排序算法相比(如冒泡算法),这些算法将排序算法提上了一个大台阶。也多亏了这些算法,才有今天的数据发掘,人工智能,链接分析,以及大部分网页计算工具。

3.2  傅立叶变换和快速傅立叶变换   

        这两种算法简单,但却相当强大,整个数字世界都离不开它们,其功能是实现时间域函数与频率域函数之间的相互转化。能看到这篇文章,也是托这些算法的福。   

        因特网,WIFI,智能机,座机,电脑,路由器,卫星等几乎所有与计算机相关的设备都或多或少与它们有关。不会这两种算法,你根本不可能拿到电子,计算机或者通信工程学位。(USA)

3.3.代克思托演算法(Dijkstra‘s algorithm)   

        可以这样说,如果没有这种算法,因特网肯定没有现在的高效率。只要能以“图”模型表示的问题,都能用这个算法找到“图”中两个节点间的最短距离。   

        虽然如今有很多更好的方法来解决最短路径问题,但代克思托演算法的稳定性仍无法取代。

3.4. RSA非对称加密算法   

        毫不夸张地说,如果没有这个算法对密钥学和网络安全的贡献,如今因特网的地位可能就不会如此之高。现在的网络毫无安全感,但遇到钱相关的问题时我们必需要保证有足够的安全感,如果你觉得网络不安全,肯定不会傻乎乎地在网页上输入自己的yinhangka信息。   

        RSA算法,密钥学领域最牛叉的算法之一,由RSA公司的三位创始人提出,奠定了当今的密钥研究领域。用这个算法解决的问题简单又复杂:保证安全的情况下,如何在独立平台和用户之间分享密钥。

3.5. 哈希安全算法(Secure Hash Algorithm)   

确切地说,这不是一种算法,而是一组加密哈希函数,由美国国家标准技术研究所首先提出。无论是你的应用商店,电子邮件和杀毒软件,还是浏览器等等,都使用这种算法来保证你正常下载,以及是否被“中间人攻击”,或者“网络钓鱼”。

3.6. 整数质因子分解算法(Integer factorization)   

        这其实是一个数学算法,不过已经广泛应用与计算机领域。如果没有这个算法,加密信息也不会如此安全。通过一系列步骤将,它可以将一个合成数分解成不可再分的数因子。   

        很多加密协议都采用了这个算法,就比如刚提到的RSA算法。

3.7. 链接分析算法(Link Analysis)   

        在因特网时代,不同入口间关系的分析至关重要。从搜索引擎和社交网站,到市场分析工具,都在不遗余力地寻找因特网的正真构造。   

        链接分析算法一直是这个领域最让人费解的算法之一,实现方式不一,而且其本身的特性让每个实现方式的算法发生异化,不过基本原理却很相似。   

        链接分析算法的机制其实很简单:你可以用矩阵表示一幅“图“,形成本征值问题。本征值问题可以帮助你分析这个“图”的结构,以及每个节点的权重。这个算法于1976年由Gabriel Pinski和Francis Narin提出。   

        谁会用这个算法呢?Google的网页排名,Facebook向你发送信息流时(所以信息流不是算法,而是算法的结果),Google+和Facebook的好友推荐功能,LinkedIn的工作推荐,Youtube的视频推荐,等等。   

        普遍认为Google是首先使用这类算法的机构,不过其实早在1996年(Google问世2年前)李彦宏就创建的“RankDex”小型搜索引擎就使用了这个思路。而Hyper Search搜索算法建立者马西莫·马奇奥里也曾使用过类似的算法。这两个人都后来都成为了Google历史上的传奇人物。

3.8. 比例微积分算法(Proportional Integral Derivative Algorithm)   

        飞机,汽车,电视,手机,卫星,工厂和机器人等等事物中都有这个算法的身影。   

        简单来讲,这个算法主要是通过“控制回路反馈机制”,减小预设输出信号与真实输出信号间的误差。只要需要信号处理,或电子系统来控制自动化机械,液压和加热系统,都需要用到这个算个法。没有它,就没有现代文明。

3.9. 数据压缩算法   

        数据压缩算法有很多种,哪种最好?这要取决于应用方向,压缩mp3,JPEG和MPEG-2文件都不一样。   

        哪里能见到它们?不仅仅是文件夹中的压缩文件。你正在看的这个网页就是使用数据压缩算法将信息下载到你的电脑上。除文字外,游戏,视频,音乐,数据储存,云计算等等都是。它让各种系统更轻松,效率更高。

3.10. 随机数生成算法   

        到如今,计算机还没有办法生成“正真的”随机数,但伪随机数生成算法就足够了。这些算法在许多领域都有应用,如网络连接,加密技术,安全哈希算法,网络游戏,人工智能,以及问题分析中的条件初始化。   

        这个表单并不完整,很多与我们密切相关的算法都没有提到,如机器学习和矩阵乘法。另外,知识有限,如有批漏,还望指正。

四、未来主宰生活的十个算法

        从最基本到最新的尖端算法,这篇博文将为您提供 2023 年必须关注的机器学习算法的概述。让我们从博客开始,事不宜迟。

4.1 生成对抗网络 (GAN)

        生成对抗网络以其生成新内容和创作与人类创作者竞争的音乐甚至艺术的能力让每个人都感到惊讶。许多创作者使用它来产生创意并将他们的艺术提升到一个新的水平。GAN的一个流行应用程序在过去一年中一直在互联网上风靡一时,是Chat-GPT。这种最新的尖端算法将在未来处于创新的最前沿。

4.2 卷积神经网络 (CNN)

        这种深度学习算法可以看到和解释我们周围的世界。它的建模方式与人脑处理视觉信息的方式相同。它们可以以极高的准确性和速度识别图像中的纹理、面部、图案等。这使得它们在图像识别、计算机视觉和机器人领域至关重要。如果您对自动驾驶汽车的创造感兴趣,那么此工具是绝对必要的。

4.3 递归神经网络 (RNN)

        有没有想过聊天机器人如何像人类一样与您交谈?好吧,RNN 使之成为可能。这种深度学习算法能够预测您要输入的下一个单词,纠正语法错误,甚至生成全新的文本或音乐,这使它们成为自然语言处理(NLP),时间序列预测,音乐生成和图像字幕的重要工具。

4.4 自动编码器 

        自动编码器也可以称为“人工数据科学家”,因为它们可以在没有人工的情况下从原始数据中提取最相关的特征。它们已成为无监督学习中不可替代的一部分。它可以压缩和解压缩数据,提供原始数据的有意义的表示形式,并从大型复杂数据集中识别模式和见解。它们现在广泛用于数据压缩和异常检测。

4.5 决策树

        该算法被认为是机器学习中最简单但最基本的算法之一。它遵循“分而治之”的原则。它将复杂的问题分解为更小、更易于管理的问题。这些用于对数据进行分类并做出决策。由于它们是可解释的,因此它们也可以为其决定提供理由。它构成了其他著名模型的基础,例如随机森林,它将我们带到列表中的下一个算法。

4.6 随机森林

        “一个人,我们能做的很少;我们可以一起做很多事情。海伦·凯勒(Helen Keller)的一句话对随机森林进行了最准确,最美丽的描述。通过利用多个决策树的强大功能,随机森林模型提供比单独决策树更好的结果。它们用于各种应用,例如预测客户流失、欺诈检测、疾病检测等。

4.7 K 均值聚类

        无监督学习中最基本和最简单的算法非常强大。该算法根据数据的相似性对数据点进行分组,这使得它在市场细分、客户分析等任务中非常有用。它可以为我们提供有用的见解,并帮助我们做出明智的决定。

4.8 支持向量机(SVM)

        由Hava Siegelmann和Vladimir Vapnik创建的监督机器学习算法。它以其处理高维数据集的能力而闻名,并以非凡的准确性和速度提供结果。它通常用于计算生物学、垃圾邮件检测、手写识别、基因分类等。将 SVM 算法应用于数据集的最关键步骤是找到最佳内核。找到正确的内核可以为您提供最准确的预测。

4.9 主成分分析

        它是数据分析中非常重要且众所周知的算法。这是一种降维技术,可以帮助我们消除数据集中不必要的特征,并专注于相关的特征。通过减少变量的数量,不仅可以减少在数据集上运行算法的时间和复杂性,还可以提高模型性能。

4.10 逻辑回归 

        最后但并非最不重要的一点是,我们有逻辑回归。这是一种简单而基本但用途广泛的算法。它之所以强大,是因为它能够对具有线性或非线性关系的变量之间的复杂关系进行建模。它主要用于二元分类问题,如疾病预测、入侵检测等。它也是一个高度可解释的模型,即它可以解释影响决策的潜在因素。我在这里详细介绍了它。

五、后记 

        我们以上所介绍的算法极具时代意义,因此,好的选项是优先掌握它们,希望您发现它内容丰富且有用。

猜你喜欢

转载自blog.csdn.net/gongdiwudu/article/details/132228442