第8章 遗传编程
大数据挖掘工具需要借助计算效率高的技术来提高其自身的效率。在数据挖掘中使用遗传算法(Genetic Algorithm,GA)可以创建健壮与高效的自适应系统。事实上,随着数据呈指数级增长,数据分析技术将花费更多的时间,并反过来影响系统吞吐量。而且,由于它们的静态特性,复杂的隐藏模式容易被忽略。本章将展示如何使用遗传算法高效地挖掘数据。为了实现这一目标,本章将探索一些遗传编程的基本原理和算法。我们将从自然(生物)遗传学的一些非常基本的原理开始介绍,并将该算法与常用计算机理论进行比较。
本章主要包括以下内容:遗传算法的结构、KEEL框架、Encog机器学习框架、Weka框架以及用Weka以遗传算法实现属性搜索。
遗传算法从自然界得到了很多灵感,在研究自然对智能机器进化的影响时,下面这段引用是恰如其分的。
“大自然自有答案。我们的心智需与自然和谐一致,来找到所有困扰人类的问题的答案。”
——Gurunath Patwardhan(Vishnudas)
通过保持一些永恒不变的基本原则,我们星球上的生命进化了数百万年。在各种生物、自然现象以及我们看得见、摸得着的一切事物的核心进化过程中,存在着一种在特定规律与框架内运作的普遍意识。如果不能理解这些普遍意识背后的意义,并尝试去模拟大自然一直使用的一些复杂算法,那么开发与人类智能相匹配的智能系统的这一愿景就难以实现。基因理论作为生物学的基本原理之一就是这样一种现象。这一理论的核心原理是,性状通过基因传递从父母传给后代。基因位于染色体内,由DNA组成。虽然研究生物进化的自然规律很有趣,但它们超出了本书的范围。本章将研究遗传进化的一般原理,以及如何利用这些原理模拟计算机算法,从而帮助我们合理地挖掘大量数据,并从智能机器中获得可操作的洞见。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access