基本信息
- 作者: [美] 丹尼尔·怀特纳克(Daniel Whitenack)
- 丛书名: 数据科学与工程技术丛书
- 出版社:机械工业出版社
- ISBN:9787111609797
- 上架时间:2018-10-18
- 出版日期:2018 年10月
- 开本:16开
- 页码:225
- 版次:1-1
- 所属分类:计算机 > 软件与程序设计 > 综合 > 高级程序语言设计


编辑推荐
机器学习Go语言实现
[ 美 ] 丹尼尔·怀特纳克(Daniel Whitenack) 著
谢文江 姜明魁 译
Machine Learning With Go
内容简介
目录
前言
第1章 数据的收集和组织1
1.1 数据处理-Gopher方式2
1.2 Go语言收集和组织数据的最佳实践4
1.3 CSV文件5
1.3.1 从文件中读取CSV数据5
1.3.2 处理非预期的域6
1.3.3 处理非预期的类型7
1.3.4 用数据帧操作CSV数据9
1.4 JSON11
1.4.1 JSON的解析11
1.4.2 JSON的输出14
1.5 SQL-like数据库14
1.5.1 连接到一个SQL数据库15
1.5.2 查询数据库15
1.5.3 修改数据库17
1.6 缓存17
1.6.1 在内存中缓存数据17
1.6.2 在本地磁盘中缓存数据18
前言
Go的独特功能以及Go程序员的思维方式,可以帮助数据科学家克服他们遇到的一些常见困难。尤其是数据科学家(很不幸地)被公认为会产生糟糕、低效和不易维护的代码。本书将解决这个问题,并将清楚地阐明,如何在机器学习方面富有成效,同时还能生产出保持高级别完整性的应用程序。书中还会帮助读者应对在现有工程学组织中有关完整性分析和机器学习代码的常见挑战。
本书将使读者成为富有成效的、有创新精神的数据分析师,帮助读者利用Go来构建强大而有价值的应用程序。为此,本书会清楚地介绍在Go世界中机器学习的技术和编程方面的内容,同时也将指导读者理解现实分析工作中合理的工作流程和理念。
本书内容
在机器学习流程中准备和分析数据:
第1章,数据的收集和组织,包含了收集、组织和解析数据,这些数据来自本地和远端,或者需要保存到本地和远端。阅读完本章,读者会理解如何与存储在多个位置、不同格式的数据做交互,如何解析和清洗数据,如何输出清洗过、解析过的数据。
第2章,矩阵、概率论和统计学,涵盖了将数据组织成矩阵和矩阵运算。阅读完本章,读者将了解如何在Go程序中生成矩阵,以及如何利用这些矩阵执行各种类型的矩阵运算。本章会介绍统计度量和日常数据分析工作的操作关键。读者读完本章之后,还将了解如何执行可靠的汇总数据分析、描述和可视化分布、量化假设以及转换数据集(例如降维)。
第3章,评估和验证,本章主要介绍评估和验证,评估和验证是衡量机器应用性能和确保其通用化的关键。一旦读者完成本章,将会了解评估模型性能的各种度量指标,以及各种用以更通用地验证模型的技术。
机器学习的技术:
第4章,回归,本章解释了回归是一种广泛使用的连续变量建模技术,同时也是其他模型的基础。回归生成能立刻解释的模型。因此当开始在机构中引入预测功能时,回归可以提供一个很好的起点。
第5章,分类,分类作为一种与回归不同的机器学习技术,其目标变量通常是分类的或标记的。例如,分类模型可以将电子邮件分类为垃圾邮件或者非垃圾邮件,或者将网络数据分类为欺诈性或非欺诈性的数据等。
第6章,集群,集群是一种用于形成样本分组的无监督机器学习技术。在本章的最后,读者将能够自动形成数据点的分组,用以更好地理解其结构。
第7章,时间序列和异常检测,本章介绍了用于对时间序列数据进行建模的技术,如股票价格、用户事件等。阅读本章后,读者将会理解如何评估时间序列中的各种术语,建立时间序列模型,并检测时间序列中的异常情况。
机器学习探究:
第8章,神经网络和深度学习,介绍了利用神经网络进行回归、分类和图像处理的技术。阅读本章之后,读者将了解如何以及何时应用这些更复杂的建模技术。
第9章,部署、分布分析和模型,使读者能够将整个课程中开发的模型应用部署到生产环境,并对生产规模数据进行分布处理。本章说明了如何利用本书使用的现有代码轻松完成这两件事情,而不用对代码进行重大修改。
附录,与机器学习相关的算法/技术,会在本书全书中被引用,并且将提供与机器学习工作流程相关的算法、优化和技术的信息。
阅读本书需要的准备
为了运行本书中的示例并尝试使用本书中涵盖的技术,通常需要以下内容:
可以访问一个类似bash的shell。
媒体评论
本书向你展示了如何在机器学习中提高效率,同时生产出保持高度完整性的应用,还给出一些模式,用以应对在将机器学习集成到工程组织中时经常遇到的挑战。
通过阅读本书,你将:
? 了解数据收集、组织、解析和清理
? 探索矩阵、线性代数、统计学和概率论
? 了解如何评估和验证模型
? 了解回归、分类和集群
? 了解神经网络和深度学习
? 利用时序模型和异常检测
? 掌握部署、分布分析和模型的技术
? 优化机器学习流程技术