引用
机器学习的一个重要的目标就是利用数学模型来理解数据,发现数据中的规律,用作数据的分析和预测。数据通常由一组向量组成,这组向量中的每个向量都是一个样本,我们用 𝑥𝑖 来表示一个样本,其中 𝑖=1,2,3,…,𝑁 ,共N个样本,每个样本 𝑥𝑖=(𝑥𝑖1,𝑥𝑖2,…,𝑥𝑖𝑝,𝑦𝑖) 共p+1个维度,前p个维度的每个维度我们称为一个特征,最后一个维度 𝑦𝑖 我们称为因变量(响应变量)。特征用来描述影响因变量的因素,如:我们要探寻身高是否会影响体重的关系的时候,身高就是一个特征,体重就是一个因变量。通常在一个数据表dataframe里面,一行表示一个样本 𝑥𝑖 ,一列表示一个特征。
根据数据是否有因变量,机器学习的任务可分为:有监督学习和无监督学习。
https://github.com/datawhalechina/team-learning-data-mining/tree/master/EnsembleLearning
有监督学习:
给定某些特征去估计因变量,即因变量存在的时候,我们称这个机器学习任务为有监督学习。如:我们使用房间面积,房屋所在地区,环境等级等因素去预测某个地区的房价。
无监督学习:
给定某些特征但不给定因变量,建模的目的是学习数据本身的结构和关系。如:我们给定某电商用户的基本信息和消费记录,通过观察数据中的哪些类型的用户彼此间的行为和属性类似,形成一个客群。注意,我们本身并不知道哪个用户属于哪个客群,即没有给定因变量。
算法包
# 引入相关科学计算包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
plt.style.use("ggplot")
import seaborn as sns
有监督学习
根据因变量的是否连续,有监督学习又分为回归和分类:
回归:因变量是连续型变量,如:房价,体重等。
分类:因变量是离散型变量,如:是否患癌症,西瓜是好瓜还是坏瓜等。
回归
分类
sklearn
https://www.jianshu.com/p/6ada34655862
使用sklearn构建完整的机器学习项目流程¶
一般来说,一个完整的机器学习项目分为以下步骤:
明确项目任务:回归/分类
收集数据集并选择合适的特征。
选择度量模型性能的指标。
选择具体的模型并进行训练以优化模型。
评估模型的性能并调参。