1_机器学习
1)基础要求:所有的数据全部变为了特征,而不是eeg信号了
- python基础
- 已经实现了特征提取、特征选择(可选)
- 进行了数据预处理.预处理指对数据进行清洗、转换等处理,使数据更适合机器学习的工具。Scikit 提供了一些预处理的方法,分别是标准化、非线性转换、归一化、二值化、分类特征编码、缺失值插补、生成多项式特征等
2)机器学习送入模型的数据结构:data和label
- data:n*m的矩阵,n是样本数,m是特征数。
特征一定是一维特征,不能是n * m1 * m2。如果是二维用reshape转为一维。 - label:1*n(n)的特征,N个样本对应n个label。
机器学习就是给定一定的输入,通过施加一定的算法,得到输出,然后通过学到的知识,输入新的
数据,获得新的输出。
1)提出问题 2)理解数据 3)特征提取 4)构建模型 5)模型解释
2_回归Regression(回归)
output输出:离散值
Machine learning的三大步骤:
第一步:定义一个函数集合(define a function set)
第二步:判断函数的好坏(goodness of a function)
第三步:选择最好的函数(pick the best one)
Step1:定义一个函数集合(define a function set)
Step2:判断函数的好坏(goodness of a function)
Step3:选择最好的函数(pick the best one)
求解w,b?机器学习中最常用的一种方法叫梯度下降。
每个模型都有自己的损失函数,不管是监督式学习还是非监督式学习。损失函数包含了若干个位置的模型参数,比如在多元线性回归中,损失函数均方误差 ,我们就是要找到使损失函数尽可能小的参数未知模型参数。
在简单线性回归时,我们使用最小二乘法来求损失函数的最小值,但是这只是一个特例。在绝大多数的情况下,损失函数是很复杂的(比如逻辑回归),根本无法得到参数估计值的表达式。因此需要一种对大多数函数都适用的方法。这就引出了“梯度算法”。
- 梯度(gradient)
- 学习率(learning rate)
- local minima和global minima
此时,已经找到了好的w,b。就构成了一个线性模型:
接着,在测试集上测试,如果测试集上的准确率较好,该模型就被训练好了。
- 过拟合问题
一个重要问题:过拟合(在训练集上表现好,在测试集上表现差)
- 局部最小问题
3_线性回归
线性回归是回归问题中的一种,线性回归假设目标值与特征之间线性相关,即满足一个多元一次方程。
通过构建损失函数,来求解损失函数最小时的参数w和b。