第8章 遗传编程

大数据挖掘工具需要借助计算效率高的技术来提高其自身的效率。在数据挖掘中使用遗传算法(Genetic Algorithm,GA)可以创建健壮与高效的自适应系统。事实上,随着数据呈指数级增长,数据分析技术将花费更多的时间,并反过来影响系统吞吐量。而且,由于它们的静态特性,复杂的隐藏模式容易被忽略。本章将展示如何使用遗传算法高效地挖掘数据。为了实现这一目标,本章将探索一些遗传编程的基本原理和算法。我们将从自然(生物)遗传学的一些非常基本的原理开始介绍,并将该算法与常用计算机理论进行比较。

本章主要包括以下内容:遗传算法的结构、KEEL框架、Encog机器学习框架、Weka框架以及用Weka以遗传算法实现属性搜索。

遗传算法从自然界得到了很多灵感,在研究自然对智能机器进化的影响时,下面这段引用是恰如其分的。

“大自然自有答案。我们的心智需与自然和谐一致,来找到所有困扰人类的问题的答案。”

——Gurunath Patwardhan(Vishnudas)

通过保持一些永恒不变的基本原则,我们星球上的生命进化了数百万年。在各种生物、自然现象以及我们看得见、摸得着的一切事物的核心进化过程中,存在着一种在特定规律与框架内运作的普遍意识。如果不能理解这些普遍意识背后的意义,并尝试去模拟大自然一直使用的一些复杂算法,那么开发与人类智能相匹配的智能系统的这一愿景就难以实现。基因理论作为生物学的基本原理之一就是这样一种现象。这一理论的核心原理是,性状通过基因传递从父母传给后代。基因位于染色体内,由DNA组成。虽然研究生物进化的自然规律很有趣,但它们超出了本书的范围。本章将研究遗传进化的一般原理,以及如何利用这些原理模拟计算机算法,从而帮助我们合理地挖掘大量数据,并从智能机器中获得可操作的洞见。 ...

Get 人工智能技术与大数据 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.