EduCoder Python
文章平均质量分 94
EduCoder社区中部分Python题答案
程子的小段
关注一下我的B站账号吧:https://space.bilibili.com/481428639?spm_id_from=333.1007.0.0
展开
-
机器学习 --- 模型评估、选择与验证
机器学习的目的是使学到的模型不仅对已知数据而且对未知数据都能有很好的预测能力。不同的学习方法会训练出不同的模型,不同的模型可能会对未知数据作出不同的预测,然而我们手上并没有“未知”的数据。所以,如何评价模型好坏,并选择出好的模型是我们这个实训需要掌握的内容。第1关:为什么要有训练集与测试集任务描述本关任务:根据本节课所学知识完成本关所设置的选择题。相关知识为了完成本关任务,你需要掌握:1.为什么要有训练集与测试集,2.如何划分训练集与测试集。为什么要有训练集与测试集我们想要利用收集的西瓜数据原创 2021-06-24 15:39:01 · 11767 阅读 · 3 评论 -
机器学习 --- 决策树
第1关:什么是决策树任务描述本关任务:根据本节课所学知识完成本关所设置的选择题。相关知识为了完成本关任务,你需要掌握决策树的相关基础知识。引例在炎热的夏天,没有什么比冰镇后的西瓜更能令人感到心旷神怡的了。现在我要去水果店买西瓜,但什么样的西瓜能入我法眼呢?那根据我的个人习惯,在挑西瓜时可能就有这样的脑回路。假设现在水果店里有3个西瓜,它们的属性如下:那么根据我的脑回路我会买1和2号西瓜。其实我的脑回路可以看成一棵树,并且这棵树能够帮助我对买不买西瓜这件事做决策,所以它就是一棵决策树。原创 2021-06-23 15:49:38 · 13964 阅读 · 2 评论 -
机器学习 --- 朴素贝叶斯分类器
第1关:条件概率任务描述本关任务:根据本节课所学知识完成本关所设置的选择题。相关知识为了完成本关任务,你需要掌握条件概率。条件概率朴素贝叶斯分类算法是基于贝叶斯定理与特征条件独立假设的分类方法,因此想要了解朴素贝叶斯分类算法背后的算法原理,就不得不用到概率论的一些知识,首当其冲就是条件概率。接下来就开启我们的条件概率之旅吧。什么是条件概率概率指的是某一事件A发生的可能性,表示为P(A)。而条件概率指的是某一事件A已经发生了条件下,另一事件B发生的可能性,表示为P(B|A),举个例子:今天有原创 2021-06-23 11:40:26 · 22964 阅读 · 10 评论 -
机器学习 --- kNN算法
将 kNN 算法称为机器学习算法中最简单的算法一点都不为过,因为该算法的思想用一句化就能概括,即:“近朱者赤,近墨者黑”。第1关:实现kNN算法任务描述本关任务:补充 python 代码,完成 kNNClassifier 类中的 fit 函数与 predict 函数。实现 kNN 算法的训练与预测功能。相关知识为了完成本关任务,你需要掌握 kNN 算法的算法流程。kNN 算法的算法流程kNN 算法其实是众多机器学习算法中最简单的一种,因为该算法的思想完全可以用 8 个字来概括:“近朱者赤,近墨原创 2021-06-22 17:18:35 · 10079 阅读 · 1 评论 -
机器学习 --- 聚类性能评估指标
第1关:外部指标任务描述本关任务:填写 python 代码,完成 calc_JC 函数、calc_FM 函数和 calc_Rand 函数分别实现计算 JC系数、FM 指数 和 Rand 指数 。相关知识为了完成本关任务,你需要掌握:JC 系数;FM 指数;Rand 指数。外部指标聚类的性能度量大致分为两类:一类是将聚类结果与某个参考模型作为参照进行比较,也就是所谓的外部指标;另一类则是直接度量聚类的性能而不使用参考模型进行比较,也就是内部指标。外部指标通常使用 Jaccard Coeffi原创 2021-06-18 13:00:32 · 10768 阅读 · 4 评论 -
机器学习 --- k-means
k-means是属于机器学习里面的非监督学习,通常是大家接触到的第一个聚类算法,其原理非常简单,是一种典型的基于距离的聚类算法。聚类算法中,将相似的数据划分为一个集合,一个集合称为一个簇。 k-means(k均值)聚类,之所以称为 k均值,是因为它可以发现k个簇,且每个簇的中心采用簇中所含值的均值计算而成。本实训项目将基于Python语言搭建出一个k-means模型,并基于sklean实现对红酒数据进行聚类。第1关:距离度量任务描述本关任务:使用Python编写一个能计算样本间欧式距离与曼哈顿距离原创 2021-06-17 14:43:52 · 14490 阅读 · 8 评论 -
机器学习 --- 逻辑回归
逻辑回归是属于机器学习里面的监督学习,它是以回归的思想来解决分类问题的一种非常经典的二分类分类器。由于其训练后的参数有较强的可解释性,在诸多领域中,逻辑回归通常用作 baseline 模型,以方便后期更好的挖掘业务相关信息或提升模型性能。本实训项目的主要内容是基于 Python 语言搭建出一个能够识别恶性肿瘤的逻辑回归模型,并使用 sklearn 中的 LogisticRegression 实现手写数字识别。第1关:逻辑回归核心思想任务描述本关任务:根据本节课所学知识完成本关所设置的编程题。相关知原创 2021-06-16 19:27:20 · 8520 阅读 · 6 评论 -
机器学习 --- 线性回归
线性回归是属于机器学习里面的监督学习,与分类问题不同的是,在回归问题中,其目标是通过对训练样本的学习,得到从样本特征到样本标签直接的映射,其中,在回归问题中,样本的标签是连续值。线性回归是一类重要的回归问题。在线性回归中,目标值与特征直接存在线性关系。本实训项目介绍线性回归模型的类别和性能度量等知识,并基于sklearn线性回归面向解决房价预测问题。第1关:简单线性回归与多元线性回归任务描述本关任务:根据本节课所学知识完成本关所设置的选择题。相关知识为了完成本关任务,你需要掌握:1.简单线性回归原创 2021-06-16 19:05:28 · 9122 阅读 · 8 评论 -
支持向量机简介
支持向量机(Support Vector Machines,SVM)是一种分类器,通过一个超平面对数据进行划分,用一系列参数来表示这个超平面。几乎所有分类问题都可以使用SVM,值得一提的是,SVM 本身是一个二类分类器,对多类问题应用SVM需要对代码做一些修改。第1关:支持向量机简介任务描述本关任务:了解支持向量机。相关知识为了完成本关任务,你需要掌握:1.什么是支持向量机2.什么是最大化间隔,3.分类器求解最大化间隔支持向量机简介SVM(支持向量机,英文全名:(Support Vector原创 2021-06-16 18:45:15 · 2661 阅读 · 3 评论 -
机器学习 --- PCA
第1关:维数灾难与降维任务描述本关任务:根据本节课所学知识完成本关所设置的选择题。相关知识为了完成本关任务,你需要掌握维数灾难与降维的相关基础知识。维数灾难在机器学习中,我们不仅需要学习怎样进行分类、回归或者聚类,我们更要学习怎样对数据进行更好的处理,使得我们的数据能够更好地为我们的机器学习算法服务。而降维就是数据处理中的一环。说到降维,那首先就要提到一个概念:维数灾难。维数灾难其实很好理解,举个例子。我们现在玩个游戏,我告诉你一些信息,你猜一猜我所描述的是什么。我:这个在地球上才有,而且原创 2021-06-16 17:23:05 · 5639 阅读 · 4 评论 -
机器学习 --- DBSCAN
第1关:DBSCAN算法的基本概念任务描述本关任务:根据本节课所学知识完成本关所设置的选择题。相关知识基本概念在DBSCAN算法中,有两个基本的领域参数,分别为eps邻域和Minpts。eps邻域表示的是在数据集D中与样本点x i的距离不大于eps的样本。样本点x i的eps邻域如图所示:在图中,样本点x不在样本点x i的eps邻域内。x i密度由x i的eps邻域内的点的数量来估计。Minpts表示的是在样本点x i的eps邻域内的最少样本点数目。基于邻域参数 eps 和 Minpt原创 2021-06-15 15:13:30 · 8276 阅读 · 12 评论 -
K-means聚类算法
实训目标本实训项目介绍无监督学习中,使用最广泛的 K-means 聚类算法。先修知识本实训项目假设,你已经掌握了初步的 Python 程序设计的基础知识。学习者若有一些 numpy 的使用经验,则可更快速地通过实训。实训知识点欧几里得距离估算簇集中心评估聚类效果K-means算法框架第1关:计算欧几里得距离任务描述本关实现一个函数来计算欧几里得距离。相关知识K-means 算法的核心思想是,将数据集中的样本聚类为多个簇集,簇内样本距离较近,簇间样本距离较远。由此可见,其最基本的运算原创 2021-06-14 14:13:00 · 9349 阅读 · 3 评论 -
Python 计算思维训练——绘图进阶
第1关:柱状图 - 商品房销售价格统计图任务描述本关任务:请编写代码绘制办公楼商品房平均销售价格柱状图。相关知识为了完成本关任务,你需要掌握:读取外部数据;绘制基础柱状图。读取外部数据编写程序时,以方便为原则,少量数据可直接拷贝或手工录入,当数据量比较大时,一般会将数据存储在文件或是数据库中,这时需要编写专门读文件的代码。下面介绍了读取 .csv 文件的多种方法:1.使用 Python I/O 直接读取文件,示例代码如下:with open(‘fileName.csv’, ‘r’) a原创 2021-06-13 11:07:16 · 6989 阅读 · 4 评论 -
Python计算思维训练——数组和曲线绘制练习(三)
第1关:将函数数据写入文件任务描述本关任务:编写一个能将函数数据写入文件的小程序。相关知识为了完成本关任务,你需要掌握:exec函数;Python的文本操作。exec函数在Python中,exec函数常用来动态执行Python代码,其参数形式为exec(source, globals=None, locals=None),其中参数说明如下所示:source是必选参数,表示需要被指定的Python代码,它必须是字符串或code对象;globals是可选参数,表示全局命名空间(存放全局变量)原创 2021-06-11 16:56:53 · 5198 阅读 · 4 评论 -
Python计算思维训练——数组和曲线绘制练习(二)
第1关:展示数组切片任务描述本关任务:将指定程序切片输出的答案填写出来。相关知识为了完成本关任务,你需要掌握 Python的切片操作。Python切片操作在Python中,对于具有序列结构的数据类型来说,是可以使用切片操作,这也算是Python语言的一大特色。需要注意的是,序列对象某个索引位置返回的是一个元素,而切片操作返回的是和被切片对象具有相同类型对象的副本,也就是切片得到的对象里的元素均来自于被切片对象。想使用切片访问,就要知道切片的书写格式:[start????det]start表原创 2021-06-11 14:57:17 · 5062 阅读 · 1 评论 -
Python 计算思维训练——数组和曲线绘制练习(一)
第1关:使用函数值填充列表任务描述本关任务:使用函数值填充列表。相关知识为了完成本关任务,你需要掌握:Python 的列表推导式;Python 的 math 第三方库。Python 的列表推导式在一般的编程语言中,如果我们想对一个数组每个位置的元素赋上一个其对应下标的值,或许可以通过循环来完成,就像下面这样。for i in range(10):a[i] = i #对长度为 10 的 a 数组进行赋值print(a)输出:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9原创 2021-06-10 17:49:50 · 4584 阅读 · 0 评论 -
Python 计算思维训练——数组计算与曲线绘制
本实训围绕实际应用场景中的数组计算与曲线绘制的需求展开,旨在培养学生学习和掌握如何更高效的处理数值序列(用数组array替代列表list,并通过向量化操作数组),以及如何绘制函数曲线(使用 Python 中的 matplotlib 模块)第1关:绘图函数 - 绘制 sin 函数任务描述本关任务:请编写代码完成sin函数曲线绘制。完成图应如下图所示:相关知识课程视频《数组计算与曲线绘制 - 绘制Sin函数》绘图模块 matplotlib所谓“一图胜千言”,很多时候都需要通过可视化的方式查看、分原创 2021-06-08 15:35:15 · 9481 阅读 · 3 评论 -
Python基础综合测试
第1关:字符串反转挑战任务将输入的字符串str进行反转。编程要求补全右侧inversion(self,str)函数实现字符串的反转并返回反转之后的字符串,其中函数参数str表示要反转的字符串。测试说明将反转的字符串作为函数的返回值返回输入:hello world输出:dlrow olleh#!/usr/bin/env python# -*- coding: utf-8 -*-class Task: def inversion(self, str): ne原创 2021-06-08 14:52:57 · 3436 阅读 · 3 评论