甜野猫 关于机器学习那些事儿:我们从企业学到哪些经验教训?

点击上方关注 , AllinAI中国
0.ML不仅是训练模型我意识到这是一种普遍存在的误解 。 当我采访有抱负的数据科学家时 , 我通常会问:
“假设你有一个具有某些特征的数据集 , 目的是预测某个变量 , 你会做什么?”
令我沮丧的是 , 他们的答案往往是这样的:
“我将数据集拆分为训练/测试 , 运行Logistic回归、随机森林、SVM、深度学习、XGBoost......(以及一些闻所未闻的算法) , 然后计算精度、召回率、F1得分 , ...(以及一些闻所未闻的指标) , 最终选择最佳模型” 。
但是 , 我问他们:
“你有没看过这些数据?如果您缺少值 , 该怎么办?如果您的错误值/错误数据怎么办?您如何映射分类变量?你是如何做特色工程的?”
在本文中 , 我将介绍成功创建端到端机器学习系统所需的七个步骤 , 包括数据收集、数据管理、数据探索、特征提取、模型训练、评估和部署 。
1.给我一些数据!
访问:大多数企业数据都非常敏感 , 尤其是在与政府、医疗保健和金融行业打交道时 。 在共享数据资产方面 , 保密协议(NDAs)是标准程序 。 数据分散:在一个组织中 , 数据分散在各个单位的情况很常见 , 通常需要来自不同方的批准 。 专业知识:访问数据通常是不够的 , 因为可能有这么多来源 , 只有主题专家(SME)知道如何导航数据湖并为数据科学团队提供正确的数据资产 。 中小企业也可能成为数据科学项目的瓶颈 , 因为它们通常会被核心企业运营所淹没 。 隐私:混淆和匿名化已经成为各自的研究领域 , 在处理敏感数据时势在必行 。 标签:具有可用的基础事实或标签通常很有用 , 因为它允许应用各种监督学习算法 。 但是 , 在某些情况下 , 标记数据可能过于昂贵 , 或者由于法律限制 , 标签可能无法使用 。 在这些情况下 , 诸如聚类之类的无监督方法很有用 。 数据生成器:当数据或标签不可用时的另一种方法是模拟它们 。 在实现数据生成器时 , 获得有关数据模式、数值变量的概率分布以及名义变量的类别分布的信息非常有用 。 如果数据是非结构化的 , Tumblr是标记图像的重要来源 , 而Twitter可能是自由文本的重要来源 。 Kaggle还在许多领域和行业提供各种数据集和解决方案 。 2.大数据往往不是那么大这是一个有争议的问题 , 尤其是在大数据供应商过去十年所做的大肆宣传之后 , 强调了对可扩展性和性能的需求 。
尽管如此 , 我们需要区分原始数据(即 , 可能与手头问题无关的所有部分)和特征集(即ML算法的输入矩阵) 。 从原始数据转到功能集的过程称为数据准备 , 通常包括:丢弃无效/不完整/脏数据 , 根据我们的经验 , 这些数据可能达到记录的一半 。 聚合一个或多个数据集 , 包括联接和组聚合器等操作 。 特征选择/提取 , 例如 , 移除可能不相关的特征 , 例如唯一ID , 并应用其他降维技术 , 例如主成分分析(PCA) 。 使用稀疏数据表示或特征哈希来减少具有许多零值的数据集的内存占用 。


推荐阅读