机器学习基本知识
数据集
- 数据集(Dataset)可以分为训练集(Training Set)、测试集(Test Set)以及验证集(Validation Set):
训练集用于训练模型;
验证集用于调整模型;
测试集用于测试模型性能(准确度); - 数据集可以是各种类型的:
比如结构化数据组成的数据集(表格、数据库);
也可以是非结构化数据组成的数据集(文本数据、图像、音频和视频等)。 - 使用数据集前,数据的预处理是非常重要的,包括数据清洗、数据转换、数据归一化以及特征提取等,预处理操作至关重要,不过多赘述,后续会单开一个专栏研究相关领域内容。
监督学习与非监督学习
监督学习(Supervised Learning)和非监督学习(Unsupervised Learning)是机器学习中的两种基本类型;
监督学习
- 监督学习是从带有标签(结果)的训练数据中学习输入和输出之间的映射关系。通过超大训练集的训练,模型可以预测未知输入的输出。
- 监督学习的主要内容是 回归问题(Regression)和 分类问题(Classification):
回归问题中,模型需要预测的是一个连续值的输出,例如房价或者股票价格;
分类问题中,模型需要预测的是一个离散值的输出,例如电子邮件是垃圾邮件或非垃圾邮件;
非监督学习
- 非监督学习是从不带有标签的训练数据中学习输入和输出之间的关系。在非监督学习中,模型需要根据数据本身的内在结构和相似性来发现关系。
- 非监督学习主要包含 聚类(Clustering)降维(Dimension Reduction)和异常检测(Anomaly Detection):
聚类问题中,模型将数据样本分成不同的组或聚类;
降维问题中,模型需要将高维数据降维到低维空间中,以便更好的可视化和理解数据;
异常检测中,模型需要识别数据中的异常点或离群值;
机器学习与深度学习关系
- 深度学习是机器学习的一个分支,深度学习使用神经网络模型进行学习和预测。
- 深度学习和机器学习的区别在于:
机器学习通常使用传统的统计和机器学习算法来学习和预测,需要人工提取和选择特征。
而深度学习则是通过构建多层神经网络来自动提取和学习特征,不需要手工设计特征。
因此,深度学习可以应对更加复杂和高维的数据,同时也需要更多的计算资源和数据量来训练。
深度学习内容已经单独展开一个栏目进行逐步内容阐述。
机器学习流程
- 数据收集和预处理:收集数据、数据处理、数据清洗(去除异常值,填充缺失值,特征归一化);
- 特征工程:对原始数据进行处理和转换,提取出数据特征(特征选择,特征提取和特征变换);
- 数据集划分:将处理好的数据集分为训练集,验证集和测试集;
- 选择模型:选择适合的模型,并对模型进行超参数调优;
- 模型训练:使用训练集对模型进行训练,对模型进行优化;
- 模型评估:使用验证集对模型进行评估,调整模型参数和选择最优模型;
- 模型测试:使用测试集对训练好的模型进行测试,评估模型的性能和泛化能力;
- 模型部署和维护:将训练好的模型部署到实际环境中,并进行维护和更新。