用于机器学习训练的 CSV Format Guide

    使用 CSV 文件存储机器学习训练数据

    Training Data

    Specification

    CSV(Comma-Separated Values,逗号分隔值)是最古老且使用最广泛的数据交换格式之一,由 RFC 4180 标准化定义。每行代表一条记录,字段之间用逗号分隔,当字段包含逗号、换行符或引号时可选择用双引号括起。第一行通常作为定义列名的表头行。虽然 CSV 的简单性使其在数据科学领域无处不在,但将其用于机器学习训练数据时需要特别注意编码、转义和模式一致性。

    CSV 文件是纯文本格式,因此具有人类可读性,并且与所有数据处理工具、编程语言和电子表格应用程序通用兼容。在机器学习训练数据方面,CSV 通常用于表格分类任务、回归数据集、包含短文本字段的简单文本分类以及结构化特征数据集。Pandas、scikit-learn 和许多 AutoML 工具都接受 CSV 作为主要输入格式,Kaggle 竞赛传统上也以 CSV 格式分发数据集。

    然而,CSV 在现代机器学习工作流中存在显著局限性。它不支持嵌套数据结构,缺乏标准化的类型系统(在解析前一切都是文本),对多行文本字段的处理较差,且不提供压缩功能。由于没有模式定义,列类型必须通过推断或手动指定,混合类型列容易导致解析错误。Unicode 支持因实现而异,大型 CSV 文件的效率远低于 Parquet 等列式格式。

    When to Use 用于机器学习训练的 CSV

    CSV 适用于中小型表格机器学习数据集(几百兆字节以下),且人类可读性和通用工具兼容性是优先考虑的场景。对于由电子表格应用程序生成、从 SQL 数据库导出、或与 scikit-learn 和传统机器学习框架配合使用的数据集,CSV 是天然的选择。如果你的数据是严格的表格结构,包含简单类型(数值、短字符串、分类值)且可以完全载入内存,CSV 完全胜任。

    当需要与非技术利益相关者在 Excel 或 Google Sheets 中检查和编辑数据时,当从仅支持 CSV 导出的遗留系统中导入数据时,或当机器学习框架明确期望 CSV 输入(许多 AutoML 平台和 Kaggle 内核)时,应选择 CSV。CSV 也是快速原型开发中格式开销不是关注重点时最简单的格式。

    对于包含长文本(段落、文档)、嵌套结构(对话线程、层级标签)、二进制数据或超过几百兆字节的数据集,应避免使用 CSV。对于 LLM 微调数据,JSONL 几乎总是更好的选择。对于大规模存储,Parquet 提供了远超 CSV 的压缩率和查询性能。如果你的 CSV 文件经常出现编码问题或解析错误,切换到 JSONL 或 Parquet 将消除这些问题。

    Schema / Structure

    text
    RFC 4180 CSV Format Rules:
    1. Each record is on a separate line, delimited by CRLF
    2. The last record may or may not have an ending CRLF
    3. An optional header line with field names may be present
    4. Fields are separated by commas
    5. Fields MAY be enclosed in double quotes
    6. Fields containing commas, CRLFs, or quotes MUST be quoted
    7. Double quotes inside quoted fields are escaped as ""
    
    Example header + 2 records:
    text,label,split
    "Simple positive review",positive,train
    "Text with ""quotes"" and, commas",negative,test
    RFC 4180 CSV 格式规范规则及示例

    Example Data

    csv
    text,label,confidence,source
    "The battery life is exceptional, easily lasts two days",positive,0.94,amazon_reviews
    "Screen broke after one week. Very disappointed.",negative,0.91,amazon_reviews
    "Decent phone for the price range",neutral,0.78,amazon_reviews
    "Camera quality in low light is surprisingly good",positive,0.87,amazon_reviews
    "Slow charging speed compared to competitors",negative,0.82,amazon_reviews
    "Average performance, does what I need it to do",neutral,0.73,amazon_reviews
    用于产品情感分类训练数据集的 CSV 文件示例

    Ertas Support

    Ertas Data Suite 支持 CSV 导入,具备自动编码检测、分隔符推断和类型解析功能。你可以导入 CSV 数据集,进行 PII 脱敏和数据质量转换,并导出为 CSV 或转换为 JSONL、Parquet 等更高效的格式。数据血缘系统会追踪对 CSV 数据应用的所有转换操作,在格式转换过程中保持数据溯源。

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.