Python与机器学习-- 手写数字识别应用

合集下载

Python与机器学习算法的应用

Python与机器学习算法的应用

Python与机器学习算法的应用随着时代的发展和科技的进步,机器学习已经成为了许多行业中应用最为广泛的一种技术。

而Python作为一种易于上手、开发快速且功能强大的编程语言,也被越来越多的人应用于机器学习领域。

Python与机器学习算法的应用,成为了当前热门话题之一。

本文将会从机器学习的基础知识开始,探讨Python在机器学习算法应用中的作用、Python的优势及机器学习算法应用案例分析等方面,以此为读者提供有价值的参考。

一、机器学习的基础知识机器学习,是一种通过计算机模拟人脑的学习方式来获取知识并进行预测的技术。

可以简单地理解为将数据输入到算法中,通过算法的训练自动学习知识并进行预测。

机器学习算法通常分为无监督学习、监督学习和半监督学习三种方式。

1.无监督学习无监督学习,是指机器学习的过程没有标签,也就是无法知道数据的正确答案。

在这种情况下,机器学习算法会通过数据特征的相似性,对数据进行自身分组。

常用的无监督学习算法有聚类、异常检测和关联规则等。

2.监督学习监督学习,是指机器学习过程中,数据集有已知的标签,例如,将图片分为猫和狗,猫和狗就是已知的标签。

在监督学习中,机器学习算法需要学习每个标签和数据特征之间的关系,并将这种关系进行推广到新的数据中。

监督学习算法主要包括回归、分类、和神经网络等。

3.半监督学习半监督学习,是指分类问题中某些样本没有标签,而有一些具有标签。

通常情况下,我们会优先使用已知的标签来训练模型,并通过已知标签的特征来预测未知标签的特征。

二、Python在机器学习中的应用Python一直以来都是一种流行的开源编程语言,广泛应用于数据科学和机器学习领域。

作为一种非常容易上手的编程语言,Python通过其众多有用的库和模块,使得机器学习开发变得更加简单和快速、可靠。

1.优秀的数据处理能力Python提供了许多特定领域的库,如Numpy、Pandas和Scipy等,使数据处理和处理成为Python平台的一项主要操作。

手写数字识别技术的研究与应用

手写数字识别技术的研究与应用

手写数字识别技术的研究与应用随着数字化时代的到来,计算机科学的发展、普及和应用已经对传统的生活和工作方式产生了巨大的影响。

手写数字识别技术是计算机视觉和图像处理领域中的一项重要研究课题,它被应用在各个领域中,例如:银行、邮政、电信、医疗等行业。

一、手写数字识别技术的原理及模块手写数字识别技术是指借助计算机和数码设备等电子设备对手写数字进行自动识别的技术。

其核心是将手写数字的图像转化为数字数据,使计算机能够识别、处理和分析这些数字数据,达到自动化操作的目的。

手写数字识别技术的模块包含数据采集、图像处理、特征提取、分类器设计与训练、数字识别等模块。

其中,数据采集模块主要完成手写数字的图像采集和预处理;图像处理模块通过滤波、边缘检测、二值化等算法将原始图像转化为二值化图像,方便后续特征提取的处理;特征提取模块基于统计学、几何学或频域等方法提取图像的特征描述符,用于建立数字识别模型;分类器设计与训练模块依据特征提取模块得到的特征向量,使用机器学习或人工智能算法建立数字分类器,完成数字识别。

二、手写数字识别技术的应用手写数字识别技术的应用广泛,例如:1. 银行行业。

手写数字识别技术可以应用于银行支票的自动识别。

传统的方式是将银行支票通过光学扫描仪等数码设备转化为数字图像,然后借助手写数字识别技术识别出银行支票上的金额和账号等数字信息,进一步实现自动清算和结算。

2. 邮政行业。

手写数字识别技术可以应用于邮件的自动识别。

邮局通过对邮件的图像采集、处理和识别,可以自动识别出信封上的邮编、收信人地址等数字信息,进一步实现邮件的自动分类和派送。

3. 电信行业。

手写数字识别技术可以应用于手机号码的自动识别。

手机销售、充值等业务的过程中,通过相应设备采集手机号码的图像信息,进一步完成数字识别,方便手机业务的自动化操作。

4. 医疗行业。

手写数字识别技术可以应用于医疗处方的自动识别。

由于处方单上的各种信息、药品名称等文字信息都是手写填写的,完成处方单的自动识别、转化和记录有助于提高医疗效率和降低人力成本。

Python机器学习实践项目

Python机器学习实践项目

Python机器学习实践项目随着互联网和智能科技的迅速发展,机器学习成为人工智能技术领域中不可或缺的一环。

而Python作为一种简洁易用且功能强大的编程语言,成为了机器学习中不可或缺的工具。

本文将介绍一些Python机器学习实践项目,来帮助初学者快速掌握机器学习相关技术。

1. 手写数字识别手写数字识别是机器学习中常见的一个问题。

在这个项目中,我们将使用经典的MNIST数据集,通过训练来训练一个神经网络模型,来实现对手写数字的识别。

在这个项目中,我们需要掌握Python中的TensorFlow和Keras框架,以及卷积神经网络、梯度下降、反向传播等相关机器学习理论。

2. 垃圾邮件分类在现代社会,垃圾邮件问题越来越严重。

在这个项目中,我们将采用朴素贝叶斯算法来构建一个垃圾邮件分类器,通过训练数据集来分类邮件是否为垃圾邮件。

在这个项目中,我们需要掌握Python中的nltk和sklearn等自然语言处理相关库,以及朴素贝叶斯算法和交叉验证等相关机器学习理论。

3. 电影推荐系统电影推荐系统是一种应用广泛的机器学习应用,可以通过协同过滤算法来为用户推荐可能感兴趣的电影。

在这个项目中,我们将采用Python中的pandas和numpy等数据分析库来处理数据集,并运用协同过滤算法来实现电影推荐。

在这个项目中,我们需要掌握Python中的协同过滤、基于物品的推荐算法等相关机器学习理论。

4. 图像分类图像分类是机器学习中的一个重要应用领域,常见于图像识别、人脸识别、场景识别等。

在这个项目中,我们将使用Python中的OpenCV和scikit-learn等库来提取图像特征,并使用支持向量机、随机森林等算法来实现图像分类。

在这个项目中,我们需要掌握图像特征提取、支持向量机、随机森林等相关机器学习理论。

总结以上是Python机器学习实践项目的介绍。

通过这些项目进一步熟悉Python的机器学习相关技术,并实际动手进行项目,可以帮助初学者快速掌握机器学习相关技术。

Python机器学习经典案例

Python机器学习经典案例

Python机器学习经典案例Python机器学习经典案例随着大数据时代的到来,机器学习逐渐成为了热门的话题。

在机器学习领域,Python是一种十分受欢迎的编程语言之一,得益于其开源性、灵活性等特点,Python在机器学习领域被广泛应用。

本文将介绍几个Python机器学习经典案例,以此为大家提供参考和学习。

案例1:KNN分类器在Iris数据集上的应用工欲善其事,必先利其器。

在开始介绍Python机器学习案例前,我们需要先了解一下几个Python机器学习工具:- Numpy:用于处理大型数组和矩阵、支持数学运算、逻辑运算等。

- Pandas:用于数据操作和数据分析,可以读取各种格式的数据文件。

- Matplotlib:用于制作图表,展示数据结果。

- Scikit-learn(sklearn):Python机器学习库之一,包含机器学习中的各种算法和工具函数。

接下来我们以Iris数据集为例,介绍如何使用Python机器学习库中的KNN分类器进行数据分类。

Iris数据集是一个经典的数据集,它包含了三种鸢尾花(Iris Setosa、Iris Versicolour、Iris Virginica)的花萼和花瓣长度和宽度共四个属性,共计150条数据。

我们需要利用这些数据,训练出一个KNN分类器,用于预测新鲜的未知鸢尾花属于哪一类。

以下是我们的代码实现:```pythonimport numpy as npimport pandas as pdfrom sklearn.model_selection import train_test_splitfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn import datasets#加载鸢尾花数据集iris = datasets.load_iris()#将数据集和标签拆分开来x = iris.data[:, :4]y = iris.target#数据分割x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2)#训练分类器kNN = KNeighborsClassifier(n_neighbors=3)kNN.fit(x_train, y_train)#预测并计算准确率y_pred = kNN.predict(x_test)acc = np.mean(y_pred == y_test) * 100print("Accuracy:{:.2f}%".format(acc))```通过运行以上代码我们可以得到一个精度为96.67%的结果,说明这个测试集的预测结果非常准确。

python分类算法手写数字识别PPT课件

python分类算法手写数字识别PPT课件

迭代得到的代价值相减,若结果小于某个阈值则立即停止迭代,此时得到最终解。
1
四、逻辑回归算法
3.多分类问题
前边讨论的都是二分类的问题,即预测结果只有两种类比:0和1,但在许多实际的问题
中,分类结果又多种可能。
这里通常采用的一种处理方式就是one vs all(一对多)的方法,对于有k个类别的数据
,我们可以把问题分割成k个二值分类问题。
式进行变换:
四、逻辑回归算法
1
1.逻辑函数
这样将θTx的取值“挤压”到[0,1]范围内,因此可以将视为分类结果取1的概率。
假设分类结果y的取值只有0和1(即负例和正例),那么在已知x情况下y取1和0的概率
分别是:
将两个式子合并一下就是:
四、逻辑回归算法
1
2.逻辑回归的梯度下降法求解
似然是在确定的结果下去推测产生该结果的可能参数,用来描述已知随机变量输出结果
时,未知参数的可能取值。关于参数θ的似然函数(在数值上)等于给定参数后变量X
的概率:
对上式两边取对数,进行化简:
四、逻辑回归算法
1
2.逻辑回归的梯度下降法求解
目标函数:
当我们令J函数导数为0时,无法求得解析解,所以需要借助迭代的方法去寻求最优解。
首先对J求导:
然后,再应用梯度下降法的迭代公式:
迭代终止的条件是将得到的参数值代入逻辑回归的损失函数中,求出代价值,与上一次
阈值都可以得到一组(FPR,TPR),以FPR作为横坐标,TPR作为纵坐标,就能够画
出ROC图。
1
二、kNN算法
1.kNN算法基础
kNN(k-NearestNeighbor,k最近邻),也称为k邻近算法,就是每个样本都可以用

手写数字识别的研究与应用

手写数字识别的研究与应用

手写数字识别的研究与应用一、概述手写数字识别是计算机视觉和模式识别领域的重要研究内容,具有广泛的应用前景。

随着信息化和数字化的发展,手写数字识别技术在银行票据处理、邮政编码识别、税务表单处理、移动支付以及智能设备交互等方面发挥着越来越重要的作用。

手写数字识别的主要任务是将手写输入的数字转化为计算机可理解的数字信息。

由于手写数字存在书写风格多样、笔迹变化大、书写不规范等问题,使得手写数字识别成为一项具有挑战性的任务。

研究手写数字识别的算法和技术,提高识别的准确性和鲁棒性,具有重要的理论价值和实际应用意义。

近年来,随着深度学习技术的发展,基于神经网络的手写数字识别方法取得了显著的进步。

这些方法通过构建复杂的网络结构,自动学习手写数字的特征表示和分类器,从而实现了较高的识别性能。

同时,随着大数据和计算资源的不断丰富,基于深度学习的手写数字识别方法在实际应用中也越来越广泛。

本文旨在探讨手写数字识别的研究与应用,首先介绍手写数字识别的基本原理和常用方法,然后分析深度学习在手写数字识别中的应用及最新进展,最后讨论手写数字识别在实际场景中的应用案例和未来发展趋势。

通过本文的研究,期望能够为手写数字识别领域的研究者和应用开发者提供一定的参考和借鉴。

1. 手写数字识别的背景与意义随着信息技术的飞速发展,数字化、自动化和智能化已经成为现代社会的重要特征。

在这一背景下,手写数字识别技术应运而生,成为人工智能和计算机视觉领域的重要研究方向。

手写数字识别技术的主要目标是将手写输入的数字信息自动转换为计算机可识别的数字编码,从而实现信息的快速、准确录入和处理。

手写数字识别的研究具有重要意义。

它在实际应用中具有广泛的需求。

例如,在金融、邮政、税务、交通等领域,大量手写数字信息需要被快速、准确地录入和处理。

手写数字识别技术能够大大提高这些工作的效率和准确性,减少人为错误和劳动强度。

手写数字识别技术的研究有助于推动人工智能和计算机视觉领域的发展。

手写数字识别系统的设计与实现

手写数字识别系统的设计与实现一、绪论随着机器学习及神经网络技术的发展,人工智能正在不断向更广泛的领域渗透,尤其是在图像处理领域。

手写数字识别系统也因此应运而生,被广泛应用于各种场景中,例如验证码识别、手写板输入、银行支票识别等。

本文将介绍一种手写数字识别系统的设计与实现,以帮助读者深入了解该领域的技术。

二、系统设计本手写数字识别系统采用支持向量机(SVM)算法。

系统开发基于Python编程语言和OpenCV图像处理库进行,共分为以下四个模块:2.1 数据采集模块数据采集模块通过获取手写数字原始图像,采集大量的训练数据集和测试数据集。

该模块通过调用计算机的摄像头进行数据采集,将原始图像转化为数字图像,表示手写数字的像素。

在采集数据时,需要注意手写数字应该尽可能接近正方形,大小需要尽量一致,以保证后续的数字处理和识别效果。

数据采集完成后,需要对采集到的数据进行分类标注,即手写数字的分类,一般采用数字0-9进行标注。

2.2 特征提取模块在特征提取模块中,我们需要将数字图像转化为一组数字特征,以便于后续的数字图像比较和分类识别。

目前最常用的数字特征是手写数字的边界轮廓。

该模块通过调用OpenCV库中的边界检测函数获取数字的边界轮廓。

检测出轮廓后,我们可以使用等高线函数对其进行平滑处理,再通过描绘轮廓的关键点获取有效特征向量。

2.3 训练模型模块在训练模型模块中,我们需要将已经提取出的数字特征向量和其分类标注进行学习,训练得到一个能够正确识别数字的模型。

本系统采用了支持向量机(SVM)算法来实现数字的分类识别。

SVM算法有着很好的泛化性能和分类性能,并且适用于高维特征的数据集。

在训练模型时,我们首先对原始数据进行归一化处理,使其在相同量级内。

然后使用SVM训练模型,通过交叉验证的方式调整模型超参数,以达到最优分类效果。

2.4 数字识别模块数字识别模块是手写数字识别系统最核心的部分。

在该模块中,输入待识别的数字,对它进行特征提取,然后将其送入训练得到的SVM分类模型中进行分类,最终输出数字的识别结果。

手写数字识别技术的研究与应用

手写数字识别技术的研究与应用一、绪论手写数字识别技术已成为人工智能领域中的热门研究方向之一。

相较于机器数字识别,手写数字识别具有更广泛的应用领域,例如支票识别、自动化填写表格等。

本文将介绍手写数字识别技术的相关研究与应用。

二、手写数字识别技术的方法手写数字识别技术的方法主要分为两类:基于模板匹配和基于机器学习的方法。

1.基于模板匹配的方法基于模板匹配的方法是将手写数字与已有的数字模板进行匹配,根据相似程度来进行分类。

其基本思想是:建立一个数字库,将每个数字的特征值与库中所有数字的特征值进行比对,找到最相似的一个进行识别。

2.基于机器学习的方法基于机器学习的方法是通过给定数据集进行训练,利用分类器来对未知的手写数字进行分类。

其基本流程包括:数据预处理、特征提取、特征选择、分类器训练和准确率评估。

三、手写数字识别技术的应用手写数字识别技术广泛应用于文书处理、自动化填写表格、支票识别等多个领域。

1.文书处理手写数字识别技术可用于文书中数字信息的提取,实现数字化的管理。

例如,对于医院管理系统,可以通过手写数字识别技术来自动识别病人的身份证号、病历编号等信息,提高工作效率和准确率。

2.自动化填写表格手写数字识别技术能够实现数字的自动化填写,有效地降低工作难度和工作量。

例如,在工厂生产数据的记录中,可以利用手写数字识别技术快速识别并记录生产数量、时间和工序等信息,减少错误率和误操作。

3.支票识别现代银行系统中,支票识别是重要的自动化处理环节之一。

支票手写数字识别技术可以通过光学字符识别技术,将手写的支票号码和金额进行自动识别,降低错误率和时间成本。

四、手写数字识别技术的评估手写数字识别技术的评估主要从分类准确度和计算时间两个方面进行评估。

分类准确度是衡量手写数字识别技术准确性的重要指标。

准确率的高低与训练数据集的数据质量、特征选择的合理性有关。

计算时间是评估手写数字识别技术性能的指标。

在实际应用中,计算时间速度快是提高处理效率的重要因素之一。

python课程设计手写数字识别

python课程设计手写数字识别一、教学目标本课程的目标是使学生掌握Python编程语言的基本知识,学会手写数字识别的原理和实现方法。

通过本课程的学习,学生将能够:1.理解Python编程语言的基本语法和数据结构;2.掌握机器学习的基本概念和常用算法;3.学会使用Python库实现手写数字识别模型;4.能够独立完成手写数字识别项目的开发和优化。

二、教学内容本课程的教学内容主要包括以下几个部分:1.Python编程基础:介绍Python语言的基本语法、数据类型、控制结构、函数、模块等基本知识;2.机器学习理论:讲解机器学习的基本概念、常用算法和模型,如线性回归、支持向量机、神经网络等;3.手写数字识别:介绍手写数字识别的原理和常用算法,如感知机、支持向量机、神经网络等;4.实践项目:通过实际操作,让学生学会使用Python库实现手写数字识别模型,并进行优化和调试。

三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法相结合的方式进行教学:1.讲授法:讲解Python编程基础和机器学习理论;2.案例分析法:分析实际案例,让学生了解手写数字识别的应用场景;3.实验法:引导学生动手实践,实现手写数字识别模型;4.讨论法:学生进行小组讨论,分享学习心得和经验,互相促进。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将提供以下教学资源:1.教材:选用国内权威的Python编程和机器学习教材;2.参考书:推荐学生阅读相关的国内外经典著作;3.多媒体资料:提供在线视频教程、课件、实验代码等资源;4.实验设备:为学生提供必要的实验设备和软件环境。

五、教学评估为了全面、客观、公正地评估学生的学习成果,本课程将采用以下评估方式:1.平时表现:通过课堂参与、提问、讨论等方式评估学生的学习态度和理解程度;2.作业:布置相关的编程练习和实验报告,评估学生对知识点的掌握和实际操作能力;3.考试:安排期末考试,测试学生对课程知识的全面理解和应用能力。

Python中的数字识别技术

Python中的数字识别技术随着计算机技术和人工智能的不断发展,数字识别技术已经成为了计算机视觉领域的一个重要部分。

数字识别技术是指计算机在图像和视频中自动识别数字字符或手写数字的能力,也是实现OCR(Optical Character Recognition,光学字符识别)和数字识别等应用的基础技术之一。

Python是一种常用的编程语言,而且在数字识别领域中也有广泛的应用。

本文将从数字识别技术的发展历程、数字识别技术的基础原理以及Python在数字识别领域的应用等方面进行论述。

一、数字识别技术的发展历程数字识别技术的发展可以追溯到上个世纪60年代末期,当时光学字符识别技术开始进入实用化阶段。

20世纪70年代,由于数字化技术的兴起,数字字符的使用逐渐普及,数字字符的扫描、存储和处理也成为了一项重要的技术。

20世纪80年代,在计算机技术和光学字符识别技术的共同促进下,数字识别技术得到了进一步发展。

20世纪90年代,随着神经网络、支持向量机等机器学习技术的发展,数字识别技术又进一步得到了提升。

21世纪以来,数字识别技术随着深度学习、卷积神经网络等技术的发展,已经变得越来越成熟,并在许多领域得到了广泛应用。

二、数字识别技术的基础原理数字识别技术的基本流程是:图像采集、前处理、特征提取、分类识别。

下面我将分别对这四个过程进行介绍。

1.图像采集数字识别技术的首要任务是获取用于数字识别的原始图像。

数字图像的获取方法主要有两种:一种是使用扫描仪扫描纸质原件,另一种是使用数码相机或摄像机进行拍摄。

数字识别技术在实际应用中,通常不直接使用原始图像进行处理,而是需要进行一系列前处理,以便更好的获取图像信息。

2.前处理前处理是指对获取到的原始图像进行变换、滤波、二值化等一系列操作,处理得到更加利于数字识别的图像。

前处理包括灰度化、二值化、去噪等。

灰度化是将一幅彩色图像转化为灰度图像;二值化是将灰度值低于某一阈值的像素设为黑色,其他像素设为白色,将灰度图像转化为二值图像;去噪是将图像中的噪声进行识别,并去除掉。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

方案二:使用神经网络实现数字手写体识别 Car 情报局
• 预测结果可视化
上机时间:20min
Car 情报局
• 模型建立 • 模型训练 • 数据预测与评估 • 实验报告步骤3
课堂小结
重点: • 模式识别、数字识别 • SVM • 神经网络 难点: • 图像数据的读取与处理 • 不同方法的参数理解 作业:实验报告
Car 情报局
一、模式识别
Car 情报局
存在于空间中具有可观测性、可 度量性和可区分性的信息。
对模式进行分析与处理,进而 实现描述、辨识、分类与解释。
The real power of human thinking is based on recognizing patterns. The better computers get at pattern recognition, the more humanlike the will become.
Car 情报局
Car 情报局
THANK YOU!
方案二:使用神经网络实现数字手写体识别
• 模型评估
# 评估模型
y_pred = mlp.predict(x_test) print("预测准确 度:{:.2f}".format(mlp.score(x_test,y_test)))
Car 情报局
预测准确度:0.94
方案二:使用神经网络实现数字手写体识别
一、模式识别
➢ 模式识别的定义:
Car 情报局
• 模式识别就是用计算机通过计算的方法根据样本的特征对样本进行分类。 • 模式识别就是对模式的区分和认识,把对象根据其特征归到若干类别中的
一类。
➢ 模式识别基本步骤: • 样本获取 • 预处理 • 特征抽取 • 分类器设计
一、模式识别
Car 情报局
染色体
• 模型评估报告 print(pd.crosstab(y_test, y_pred, rownames=['Actual Values'], colnames=['Prediction'])) # 输出测试集的预测结果与真实值的评估报告 print(classification_report(y_test, y_pred))
手写数字识别应用
知识回顾:机器学习的方法
Car 情报局
机器学习算法
监督学习
无监督学习
分类 预测
回归 分析
聚类 分析
关联 规则
半监督学习
强化学习
时间差 Q-learning 学习
主要教学内容
模式识别应用 文字识别 机器学习方法
项目:手写数字识别 数据准备 数据可视化 模型训练 模型分析与识别结果的可视化 SVM 神经网络
方案一:使用SVM实现数字手写体识别
• 模型评估
print('预测开始....') y_pred = model_svc.predict(x_test) print('10000个测试数据的测试精确率:') print(model_svc.score(x_test,y_test))
10000个测试数据的测试精确率: 0.9099
机器人
军事目标
医学 影像
心电图
跟踪与识别
虹膜 掌纹
生物特 人脸 征识别
指纹
图像
识别
车牌
语音 情感识别
文字 识别
语音 识
二、项目应用:数字手写体识别
Car 情报局
MNIST数据集格式
✓ 60000 个训练样本。 ✓ 10000 个测试样本。 ✓ 每个样本大小为28*28像素
方案二:使用神经网络实现数字手写体识别 Car 情报局
• 模型建立与训练
from sklearn.neural_network import MLPClassifier print('开始训练....') print(time.strftime('%Y-%m-%d %H:%M:%S'))
# 神经网络分类预测
Car 情报局
方案二:使用神经网络实现数字手写体识别 Car 情报局
• 模型评估报告
precision
recall f1-score
support
0 0.94 0.97 0.96 980
1 0.97 0.99 0.98 1135
2 0.93 0.92 0.93 1032
3 0.92 0.92 0.92 1010
from sklearn.metrics import classification_report print(classification_report(y_pred, y_test))
Car 情报局
方案一:使用SVM实现数字手写体识别
Car 情报局
上机时间:20min
Car 情报局
• 模型建立 • 模型训练 • 数据预测与评估 • 实验报告步骤2
Car 情报局
方案一:使用SVM实现数字手写体识别
• 模型评估报告
precision recall f1-score support 0 0.97 0.92 0.95 1033 1 0.98 0.95 0.97 1169 2 0.88 0.93 0.90 976 3 0.90 0.89 0.90 1021 4 0.93 0.90 0.92 1020 5 0.85 0.86 0.86 883 6 0.94 0.93 0.93 962 7 0.91 0.91 0.91 1031 8 0.85 0.88 0.86 939 9 0.86 0.90 0.88 966 avg / total 0.91 0.91 0.91 10000
# 训练模型
mlp.fit(x_train, y_train) print('结束训练....') print(time.strftime('%Y-%m-%d %H:%M:%S'))
方案二:使用神经网络实现数字手写体识别 Car 情报局
• 模型建立与训练 开始训练.... 2019-08-24 17:24:16 Iteration 1, loss = 1.81559656 Iteration 2, loss = 1.03819475 Iteration 3, loss = 0.77358865 … Iteration 234, loss = 0.13965902 Training loss did not improve more than tol=0.000100 for two consecutive epochs. Stopping. 结束训练.... 2019-08-24 17:26:55
print('开始训练....') print(time.strftime('%Y-%m-%d %H:%M:%S')) model_svc = svm.LinearSVC() model_svc.fit(x_train,y_train)
print('结束训练....') print(time.strftime('%Y-%m-%d %H:%M:%S'))
4 0.93 0.95 0.94 982
5 0.92 0.92 0.92 892
6 0.94 0.96 0.95 958
7 0.95 0.93 0.94 1028
8 0.92 0.90 0.91 974
9 0.93 0.92 0.93 1009
avg / total 0.94 0.94 0.94 10000
上机时间:20min
Car 情报局
• 数据读取 • 可视化 • 实验报告步骤1
方案一:使用SVM实现数字手写体识别
Car 情报局
• 模型建立与训练
# 加载SVM方法
from sklearn import svm import time
开始训练.... 2019-08-24 18:15:52 结束训练.... 2019-08-24 18:26:31
mlp = MLPClassifier(solver='sgd', activation='relu',alpha=1e-4,hidden_layer_sizes=(10,10), random_state=1,max_iter=500,verbose=10,learning_rate_init =.001)
相关文档
最新文档