如何用python编程机器人,用Python机器学习:游戏攻略

游戏攻略 2023-01-17 14:34:10

责任编辑面向全国现阶段和有志向的机器自学提倡者,他们期望同时实现对现实生活当今世界机器自学难题的软件系统。这是一则枭女该文,适用作于没有机器自学或人工智慧(AI)科学知识的新手。

这首诗,我将如是说机器自学的基本原理,它的应用应用领域,怎样创建我们的工作自然环境,以及一个单纯工程项目的课堂教学。

机器自学概要

机器自学是一种人工智慧(AI),它为计算机系统提供更多了自学潜能,而不须要隐式程式设计。

机器自学的进行分类

从狭义上讲,机器自学可分成四类:

监督管理自学无监督管理学习加强自学

为何是Python?

Python已经成为很多统计数据数据科学应用应用领域流程的通用型词汇,为统计数据数据生物学家提供更多了大批的通用型和特定机能。

它将通用型程式设计词汇的强悍机能与应用领域某一JavaScript(如MATLAB或R)的可用性结合起来。它管用作统计数据数据读取、建模、统计数据、语义处置、绘图等的库。它能采用终端产品或其它辅助工具(如海王星笔记本电脑)间接与标识符可视化。

必要性还是机器自学

统计数据数据制造的稳步增长化解人类文明难解的繁杂难题主要包括金融创新其中的各个单位的重大决策找出暗藏的商业模式并从统计数据数据中抽取管用的重要信息。

机器自学的应用应用领域

自动驾驶汽车机器学词汇处置视觉处置股市走势预测推荐系统图像和语音识别预测检出

机器自学生命周期

统计数据数据收集/抽取

这是机器自学生命周期的第一个阶段,它涉及到识别和获取所有与统计数据数据相关的难题。

我们可以从很多统计数据数据源收集统计数据数据。其中主要包括文件、统计数据数据库、互联网或移动设备。

这一步骤主要包括以下任务:

-确定各种统计数据数据来源

-收集统计数据数据

-综合从不同来源获得的统计数据数据

数据准备

统计数据数据准备是一个步骤,我们把我们的统计数据数据放在一个合适的地方,并准备它用作我们的机器自学培训。

在收集统计数据数据之后,我们须要准备好它,以便我们可以在我们的工程项目中采用它。这一阶段可分成两个阶段:

i)。统计数据数据勘探

它被用来找出我们要处置的是哪种统计数据数据。我们必须了解统计数据数据的特征、格式和质量。在这个过程中,我们发现了相关性、一般趋势和异常值。

(二)。统计数据数据预处置/争论

统计数据数据预处置是将原始统计数据数据转换成可理解格式的过程。

在实际应用流程中,收集到的统计数据数据可能存在各种难题,主要包括:

-缺失的价值

-重复统计数据数据

-无效统计数据数据

-噪音

统计数据数据分析

这一步的目标是创建一个机器自学模型,该模型将采用各种分析方法研究统计数据数据,然后评估结果。首先对难题类型进行识别,然后选择进行分类、回归、聚类分析、关联等机器自学技术,然后利用准备好的统计数据数据构建模型,最后对模型进行评价。

模型训练

在这一步中,我们训练我们的模型,以提高其性能,以更好地化解难题。须要对模型进行培训,以便它能够理解各种商业模式、规则和特性。

模型试验

一旦机器自学模型被训练到某一的统计数据数据集上,我们就会对它进行测试。在这个阶段,我们通过提供更多一个测试统计数据数据集来验证我们的模型的正确性。

模型的正确性/准确性取决于根据工程项目或问题的需求对其进行测试。

模型评价与改进

模型评估是创建模型的一个重要步骤。它有助于确定最优的模型来表示我们的统计数据数据,以及该模型在未来的表现。

部署

机器自学生命周期的最后一步是部署,在实际系统中部署模型。

流行的用作机器自学的Python库和辅助工具

海王星笔记本电脑

它是一个在浏览器中运行标识符的可视化式自然环境。

Numpy

NumPy是一个python库,主要用作处置数组并对数组执行各种各样的数学操作。

熊猫

熊猫是一个用作统计数据数据争论和分析的Python库。

Matplotlib

它是Python中的主要科学绘图库。它提供更多了制作出版物质量建模的机能,如线条图、直方图、散射图等。

情节等等。

Scikit-自学

Scikit-Learning(SkLearning)是Python中用作机器自学的最管用和最健壮的库。它通过Python中的一致性接口为机器自学和统计数据建模提供更多了有效的辅助工具选择,主要包括进行分类、回归、聚类和降维。

自然环境设置

安装Anaconda和Python

下载并安装Anaconda(Python3.6版本)下载然后根据你的操作系统进行选择。

打开终端产品通过键入以下命令,确认Conda已正确安装:

conda -V

通过键入以下命令确认Python安装正确:

python -V

确认您的Conda自然环境是最新的,输入:conda update conda conda update anaconda

课堂教学之手:对虹膜种类的认识与进行分类

在本节中,我们将如是说一个单纯的机器自学应用应用领域流程,并创建我们的第一个模型。

我们将在本例中采用的统计数据数据是Iris统计数据数据集,这是机器自学和统计数据中的一个经典统计数据数据集。它包含在Scikit-自学在统计数据数据集模块中。我们可以通过调用load_iris函数来读取它:

from sklearn.datasets import load_iris iris_dataset = load_iris()

此统计数据数据集包含3种不同类型的虹膜(Setosa、Versicolour和Virica)花瓣和萼片长度,存储在150x4 numpy.ndarray中。

样品行和柱分别为萼片长度、萼片宽度、花瓣长度和花瓣宽度。我们的目标是创建一个机器自学模型,可以从已知物种虹膜的测量中自学,从而预测新虹膜的种类。

虹膜花的部分

如何用python编程机器人,用Python机器学习:游戏攻略_https://www.ybmzs.com_游戏攻略_第1张

这是一个监督管理自学难题,因为我们有测量,我们知道正确的虹膜物种。在这种情况下,我们期望期待多种选择之一(虹膜物种)。这是一个进行分类难题的例子。可能的输出(各种虹膜物种)被称为类别。这是一个三级进行分类难题,因为统计数据数据集中的每个虹膜都属于三个类别中的一个。这种花的种类是一个统计数据数据点(虹膜)的期望输出。统计数据数据点所属的物种称为其标签。

print("Target:\n{}".format(iris_dataset[target]))

输出量

Target: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

这些数字的含义由虹膜[‘Target_name’]数组给出:0表示setosa,1表示versicolor,2表示virginica。

衡量成功:培训和测试统计数据数据

我们不能采用生成模型所用的统计数据数据来评估模型。这是因为我们的模型总是能记住整个训练集,因此,总是会预测训练集中任何给定点的正确标签。

为了评估模型的性能,我们提供更多了新的统计数据数据(以前从未见过的统计数据数据)和标签。这通常是通过将标记的统计数据数据(在这种情况下,我们的150个花卉测量)分成两半来同时实现的。训练统计数据数据或训练集是用作开发机器自学模型的统计数据数据的子集。其余的统计数据数据将用作评估模型的性能;这称为测试统计数据数据、测试集或保持集。

SICKIT-Learning中的火车测试拆分机能是一个为您调整和分隔统计数据数据集的函数。作为训练集,此函数抽取统计数据数据中75%的行,以及该统计数据数据的附带标签。测试集由其余25%的统计数据数据以及其余的标签组成。

注:在Scikit-Learning中,统计数据数据通常用大写X表示,而标签则由

小写y。让我们对我们的统计数据数据调用TRAN_TEST_Split并采用这个名称分配输出:

from sklearn.model_selection importtrain_test_split X_train, X_test, y_train, y_test = train_test_split( iris_dataset[data], iris_dataset[target], random_state=0)

列车_TEST_Split函数的输出是X_TRANTEST、Y_TRANY和Y_TEST,它们都是NumPy数组。X_TRANY包含统计数据数据集的75%的行,而X_test包含其余的25%

print("X_train shape: {}".format(X_train.shape)) print("y_train shape: {}".format(y_train.shape))

产出:

X_train shape: (112, 4) y_train shape: (112,)

检查我们的统计数据数据

检查统计数据数据的最佳方法之一是建模统计数据数据。一种方法是采用散点图。统计数据数据的散点图将一个特征沿x轴,另一个特征沿y轴,并为每个统计数据数据点绘制一个点。

# create dataframe from data in X_train # label the columns using the strings in iris_dataset.feature_names iris_dataframe = pd.DataFrame(X_train, columns=iris_dataset.feature_names) # create a scatter matrix from the dataframe, color by y_train grr = pd.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15), marker=o, hist_kwds={bins: 20}, s=60, alpha=.8, cmap=mglearn.cm3)

根据虹膜所属物种对统计数据数据点进行着色。为了创建这个图,我们首先将NumPy数组转换为一个熊猫DataFrame。熊猫有一个机能,可以创建一对名为分散矩阵的图形。此矩阵的对角线中填充了每个特征的直方图:

如何用python编程机器人,用Python机器学习:游戏攻略_https://www.ybmzs.com_游戏攻略_第2张

用萼片和花瓣的测量,这三个类别的区别似乎相对较好,如图中所示。这意味着机器自学模型几乎肯定能区分它们。

模型建筑:K近邻

我们将采用k近邻进行分类器,这是很容易理解的训练集是唯一须要存储的东西,同时创建这个模型。该算法识别训练集中与新点最近的点,以创建新统计数据数据点的预测。然后将此培训点的标签分配给新的统计数据数据点。

与仅采用与新统计数据数据点最接近的邻居相比,k中的k最近邻表示在培训中可以包含任何固定数量的邻居(例如,最近的三个或五个邻居)。然后,可以采用这些邻居中的多数类来构造预测。

fromsklearn.neighborsimport KNeighborsClassifier knn = KNeighborsClassifier(n_neighbors=1) knn.fit(X_train, y_train)

产出:

KNeighborsClassifier(algorithm=auto, leaf_size=30, metric=minkowski, metric_params=None, n_jobs=1, n_neighbors=1, p=2, weights=uniform)

作出预测

在创建了我们的模型之后,我们现在已经做好了预测的准备。为了进行预测,我们调用KNN对象的预测方法:

prediction = knn.predict(X_new) print("Prediction: {}".format(prediction)) print("Predicted target name: {}".format( iris_dataset[target_names][prediction]))

我们的模型预测这个新的虹膜属于0级,这意味着它的种类是

赛索萨。

模型评价

这就是我们之前创建的测试集出现的地方。这个统计数据数据不是用来创建模型的,但是我们知道测试中每个虹膜的正确种类是什么。

准备好了。因此,我们可以对测试统计数据数据中的每个虹膜进行预测,并将其与其标签(已知物种)进行比较。我们可以通过计算精确性来衡量该模型的工作效果,这是预测正确物种的花卉的比例:

y_pred = knn.predict(X_test) print("Test set predictions:\n {}".format(y_pred)) print("Test set score: {:.2f}".format(np.mean(y_pred == y_test)))

产出:

Test set predictions: [2 1 0 2 0 2 0 1 1 1 2 1 1 1 1 0 1 1 0 0 2 1 0 0 2 0 0 1 1 0 2 1 0 2 2 1 0 2] Test set score: 0.97

对于该模型,测试集的精度约为0.97,这意味着我们对测试集中97%的虹膜进行了正确的预测。

原文Https://dev.to/emma_donery/machine-learning-with-python-introduction-4e67

发表回复