开通VIP,畅享免费电子书等14项超值服
首页
好书
留言交流
下载APP
联系客服
2024.06.19上海
本文为大家总结了监督学习和无监督学习中常用算法原理简单介绍,包括了代码的详细详解,是机器学习的入门学习,同时也是AI算法面试的重点问题。
定义:提供输入数据和其对应的标签数据,然后搭建一个模型,模型经过训练后准确的找到输入数据和标签数据之间的最优映射关系,从而对新的未标记数据进行预测或分类。
定义看懵逼了吧?接下来说人话!!!假如有一群草泥马和牛马组成的马群,这时候需要一个机器对马群进行分类,但是这个机器不知道草泥马和牛马长什么样儿,所以我们首先拿一堆草泥马和牛马的照片给机器看,告诉机器草泥马和牛马长什么样儿。机器经过反复的看,形成肌肉记忆,可以对草泥妈和牛马形成自己的定义,然后机器就可以准确的对马群进行分类。在这个过程中,草泥马和牛马的照片就叫做标签,反复的看理解为训练,形成的肌肉记忆叫做模型,这就是监督学习的过程。
定义:训练数据只包含输入样本,没有相应的标签或目标。
包装一下:我们没有拿草泥马和牛马的照片对机器进行系统的训练,机器也不知道这两个马儿长什么样,而是直接让机器对这两个马儿进行分类。这就是无监督学习。
如图所示,左图是无监督学习的过程,虽然数据被分成了两类,但是没有对应的数据标签,统一用蓝色的圆点表示,这更像是把具有相同的特征的数据聚集在一起,所以无监督学习实现分类的算法又叫做聚类。右图是监督学习中二分类的过程,标签在图中体现为三角和圆。
无监督学习的关键优势是它可以在没有人工标签的情况下自动从大量未标记的数据中获取知识。这使得无监督学习在数据探索、数据预处理和模式发现方面具有广泛的应用。它也可以用作监督学习的预处理步骤,以减少标记数据的需求或改善模型的性能。缺点是无监督学习的性能很大程度上依赖于输入数据的质量和特征。如果数据存在噪声、缺失值或异常值,这些因素可能会对模型的性能产生负面影响。
监督学习的优势是使用标记的训练数据来指导模型的学习过程,因此可以获得相对准确的预测结果。通过与真实标签进行比较,模型可以进行纠正和优化,提高预测的准确性。缺点是监督学习模型在训练阶段是通过学习训练数据的模式和规律来进行预测。如果模型在训练数据上过度拟合,可能在新的未见过的数据上表现不佳,泛化能力受到限制。
为了综合两者的优点,半监督学习诞生了。半监督学习是介于监督学习和无监督学习之间的一种机器学习方法。在半监督学习中,模型使用同时包含标记和未标记样本的训练数据进行学习。
半监督学习的优势在于:
线性回归是一种用于建立自变量(输入)和因变量(输出)之间线性关系的模型,其重点如下:
下面通过图来更加直观的看线性回归问题:X—房屋面积;—面积和价格对应的数据;Y—房屋价格;弧线—线性映射模型;
如果我们想要房屋面积对应的价格的话,通过这个线性回归模型,就可以很快的进行预测,这就是线性回归的整个过程。代码如下(示例):
importnumpyasnpfromsklearn.linear_modelimportLinearRegression#输入数据X=np.array([[1],[2],[3],[4],[5]])y=np.array([2,4,6,8,10])#创建线性回归模型model=LinearRegression()#拟合模型model.fit(X,y)#预测X_test=np.array([[6],[7]])y_pred=model.predict(X_test)#输出预测结果print(y_pred)1.2逻辑回归算法逻辑回归实际上是一种分类算法,它的输出是一个概率值,表示样本属于某个类别的概率。逻辑回归模型的数学表示如下:
逻辑回归实际上是一种分类算法,它的输出是一个概率值,表示样本属于某个类别的概率。逻辑回归模型的数学表示如下:
hθ(x)>=g(θ^T*x)其中,hθ(x)表示预测函数,g(z)表示逻辑函数(Sigmoid函数),θ是模型参数,x是输入特征向量。
g(z)>=1/(1+e^(-z))其中,e表示自然指数,z是线性回归模型的输出。
J(θ)=-1/m*∑[y*log(hθ(x))+(1-y)*log(1-hθ(x))]其中,m表示样本数量,y表示实际标签
importnumpyasnpfromsklearn.linear_modelimportLogisticRegression#输入数据X=np.array([[1],[2],[3],[4],[5]])y=np.array([0,0,1,1,1])#创建逻辑回归模型model=LogisticRegression()#拟合模型model.fit(X,y)#预测X_test=np.array([[6],[7]])y_pred=model.predict(X_test)#输出预测结果print(y_pred)1.3决策树算法决策树算法用于解决分类和回归问题。它通过构建一棵树形结构来进行决策,每个内部节点表示一个特征或属性(色泽和触感),每个叶节点表示一个类别或一个数值(好瓜、坏瓜)。
常见的决策树算法有ID3、C5.0和CART,CART的分类效果一般要优于其他决策树。
ID3的核心思想是基于信息增益来选择最优的特征进行节点的划分。