加入书架

阅读设置

上一章

返回目录

下一页

章节目录 第311章 燧火机器学习开发框架(1 / 2)

作品:《科技革命,从1984开始

第311章 燧火机器学习开发框架

燧火之名,源自燧人氏取火的古老神话传说,那是人类首次掌控的可控能源。

如今,历景铄希望它能成为机械智能的起源,开启一个全新的时代。

燧火框架主要涵盖了数据处理、模型构建、模型训练、模型评估这四大核心功能模块。

先说数据处理部分,数据加载环节至关重要,它具备从本地文件、网络文件系统和数据库等数据源读取数据的能力。当然,前世常见的各种大数据文件系统或者对象存储文件系统现在连影都没有,这个框架自然也不会有对应的加载处理能力。

数据从数据源里面读取进来之后,会被转化成与数据类型相适配的对应内存数据结构。

在秦奕的建议下,燧火里定义了一个和前世流行机器学习框架 PYTORCH 中的张量类似的基本数据类型来存储各种各样的数据,该数据类型是基于乾坤语言原生多维数组的一种对象,能够很方便的表示零维标量、一维向量、二维矩阵甚至更高维的数据。

历景铄做得是计算机视觉算法研究,最常用的便是表达一张图片的三维数组,三维分别是长、宽、颜色通道,颜色通道数值可以是 RGB 这种数字图像和视频处理的标准颜色表示方式也可以是 CMY 这种印刷行业标准的颜色模型,框架里提供了两种模型互相换算的能力。

在将数据读取进内存之后,用户就需要对现有的数据做预处理了,燧火框架提供了一系列数据清洗、归一化、标准化等预处理操作。

在数据清洗方面,框架提供了多种便捷的清洗能力。

面对文本数据中可能出现的乱码,框架会通过字符编码识别与转换算法,将其纠正为正确的字符格式。

若是数据中存在重复记录,比如数据库中可能因录入失误产生的完全相同的行,燧火框架会利用哈希算法对每条记录进行快速计算,对比哈希值来精准识别并删除重复数据。

对于缺失值,若是数值型数据,框架会依据数据的分布情况,采用均值、中位数或者众数填充法。

比如对于一组学生成绩数据,若某个学生的数学成绩缺失,会先计算其他学生数学成绩的均值,再用该均值填充缺失值;若是类别型数据,如学生的籍贯信息缺失,就会采用出现频率最高的籍贯类别进行填充。

在归一化操作上,燧火框架主要运用了两种常用方法。一种是最大 - 最小归一化,它将数据的取值范围映射到从零到一的双闭区间,另一种是 Z - score 归一化,它基于数据的均值和标准差进行转换,将数据转换为均值为 0,标准差为 1 的分布。

通过这样的归一化处理,不同特征的数据在数值范围上保持一致,避免因特征数值范围差异过大,导致模型训练时某些特征被过度重视或忽视。