![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
机器学习实战 代码笔记
文章平均质量分 65
111
鱼儿冒个泡
这个作者很懒,什么都没留下…
展开
-
【机器学习实战】Keras人工神经网络简介
使用Keras实现MLP加载数据集import tensorflow as tffrom tensorflow import kerasfrom keras.datasets import fashion_mnist(X_train_full, y_train_full), (X_test, y_test) = fashion_mnist.load_data()X_valid, X_train = X_train_full[:5000]/255.0, X_train_full[5000:]/2原创 2021-09-28 17:01:40 · 315 阅读 · 0 评论 -
【机器学习实战】Ch 9:无监督学习 技术
K-Meansfrom sklearn.cluster import KMeansk = 5kmeans = KMeans(n_clusters=k)y_pred = kmeans.predict(X)# 算法的k个中心点kmeans.cluster_centers_# 每个实例到中心点距离 (软聚类)kmeans.transform(X)# 训练实例的标签副本kmeans.labels_中心点初始化方法如果事先知道了中心点位置, 可以将超参数init设置为中心点列表的Num原创 2021-09-22 15:08:46 · 185 阅读 · 0 评论 -
【机器学习实战】Ch 8:降维
降维的主要方法投影将高维空间的点投影到低维子空间上流形学习d维流形是n维空间(且d<n)的一部分, 局部类似于d维超平面。许多降维算法通过训练实例所在的流形进行建模工作, 称为流行学习。它依赖于流形假说:大多数现实世界的高维数据集都接近于低维流形。隐式假设:如果用流形的低维空间表示,任务(例如分类或回归)将更加简单。PCA主成分分析(PCA):识别最靠近数据的超平面, 然后将数据投影到其上保留差异性保留差异性大的轴更为合理, 相对其他的情况丢失的信息更少。方法:比较原始数据集与原创 2021-09-22 09:41:40 · 181 阅读 · 0 评论 -
【机器学习实战】Ch 7:集成学习和随机森林
投票分类器假设已经训练好了一些分类器, 每个分类器准确率约为80%。 这时, 要创建一个更好的分类器, 最简单的办法是聚合每个分类器的预测, 然后将得票数最多的结果作为预测类别。 这种大多数投票分类器被称为硬投票分类器。如下用Scikit-Learn创建并训练一个投票分类器, 由三种不同的分类器组成:# satellite datasetsfrom sklearn.datasets import make_moonsX, y = make_moons(n_samples=100, noise=0原创 2021-09-19 17:16:35 · 322 阅读 · 0 评论 -
【机器学习实战】Ch 6:决策树
训练决策树Scikit-Learn使用分类和回归树算法来训练决策树工作原理: 使用单个特征k和阈值tk将训练集分为两个子集, 通过选择(k, tk)最小化成本函数/搜索最纯子集。并重复该过程, 直到到达最大深度或找不到减少不纯度的分割, 停止递归。 其他一些超参数也可以控制停止条件(稍后叙述)from sklearn.datasets import load_irisfrom sklearn.tree import DecisionTreeClassifieriris = load_iris()原创 2021-09-19 12:28:05 · 131 阅读 · 0 评论 -
【机器学习实战】Ch 5:支持向量机
线性SVM分类SVM分类器在类之间拟合可能的最宽街道软间隔分类,超参数C越小,越容易欠拟合,间隔违例情况越多, 但泛化效果可能更好;C越大, 越容易过拟合, 间隔违例情况越少, 泛化效果更差。# detect virginica irisimport numpy as npfrom sklearn import datasetsfrom sklearn.pipeline import Pipelinefrom sklearn.preprocessing import StandardScale原创 2021-09-19 09:36:21 · 123 阅读 · 0 评论 -
【机器学习实战】Ch 4: 训练模型
线性回归# an exampleimport numpy as npimport matplotlib.pyplot as pltX = 2 * np.random.rand(100, 1)y = 3 * X + 4 + np.random.randn(100, 1)plt.plot(X, y, 'k.')plt.show()X_b = np.c_[np.ones((100, 1)), X]theta = np.linalg.inv(X_b.T.dot(X_b)).dot(X_原创 2021-09-17 16:50:17 · 337 阅读 · 1 评论 -
【机器学习实战】Ch3:分类
多类分类器一对剩余(OvR) / 一对多(one-versus-all) 策略 :若创建一个系统将样本分为N类, 训练N个分类器,每个类一个——1-检测器,2-检测器……N-检测器(这里类的标签用数字编号表示)当对一个样本进行预测时, 获取每个分类器的决策分数, 将其分到对应分类器最高的类一对一(OvO)策略:对每一对类训练一个分类器——区分1-2, 1-3, 2-3……如果存在N个类, 则需训练N*(N-1)/2个分类器,其优点在于每个分类器只需用到部分训练集对其必须区分的两个类进行训练原创 2021-09-04 17:05:12 · 341 阅读 · 0 评论