- 博客(50)
- 收藏
- 关注
转载 Numpy Day 3 - 线性代数
目录线性代数1. 矩阵和向量积2.矩阵特征值与特征向量3. 矩阵分解3.1 奇异值分解3.2 QR分解3.3 Cholesky分解4. 范数和其它数字4.1矩阵的范数4.3 方阵的行列式4.4 矩阵的秩4.5矩阵的迹5. 解方程和逆矩阵5.1 逆矩阵(inverse matrix)5.2求解线性方程组6. 练习线性代数Numpy 定义了 matrix 类型,使用该 matrix 类型创建的是矩阵对象,它们的加减乘除运算缺省采用矩阵方式计算,因此用法和Matlab十分类似。但是由于 NumPy 中同时存在
2021-03-20 20:55:40 256
转载 Numpy Day 3 -统计相关
目录统计相关1.次序统计1.1计算最小值1.2 计算最大值1.3 计算极差1.4 计算分位数2.均值与方差2.1计算中位数2.2计算平均值2.3 计算加权平均值2.4计算方差2.5 计算标准差3.相关3.1计算协方差矩阵3.2计算相关系数4.直方图练习统计相关1.次序统计1.1计算最小值numpy.amin(a[, axis=None, out=None, keepdims=np._NoValue, initial=np._NoValue, where=np._NoValue])Return t
2021-03-20 20:37:52 484
转载 Numpy Day 3 随机抽样
这里写目录标题1. 随机抽样2.离散型随机变量2.1二项分布2.2泊松分布2.3 超几何分布3. 连续型随机变量3.1均匀分布3.2 正态分布3.3 指数分布4 其它随机函数4.1 随机从序列中获取元素4.2 对数据集进行洗牌操作5. 练习1. 随机抽样numpy.random 模块对 Python 内置的 random 进行了补充,增加了一些用于高效生成多种概率分布的样本值的函数,如正态分布、泊松分布等。numpy.random.seed(seed=None)Seed the generator
2021-03-20 20:18:06 406
转载 Numpy Day 3 -输入和输出
目录1. numpy 二进制文件2. 文本文件3. 文本格式选项4. 练习1. numpy 二进制文件save()、savez()和load()函数以 numpy 专用的二进制类型(.npy、.npz)保存和读取数据,这三个函数会自动处理ndim、dtype、shape等信息,使用它们读写数组非常方便,但是save()和savez()输出的文件很难与其它语言编写的程序兼容。【函数】def save(file, arr, allow_pickle=True, fix_imports=True):
2021-03-20 19:37:54 230
原创 Numpy Day 3 集合操作&练习
目录1. 集合操作1.1 构造集合1.2 布尔运算1.3 求两个集合的交集:1.4 求两个集合的并集:1.5 求两个集合的差集:1.6 求两个集合的异或:2.作业排序搜索计数1. 如何通过第n列对一个数组进行排序2. 对x的列进行排序,先按照最后一行排序,假如两数相等则按照倒数第二行排序3.取出每一列比第三大的数字小的数4.从arr中提取所有奇数。5.将arr中的偶数元素替换为0。6.将 arr 中的所有偶数元素替换为0,而不改变arr。7.获取给定数组a中前5个最大值的位置。8.删除一维numpy数组中所
2021-03-20 19:01:15 760
原创 Numpy Day 3 - 排序搜索计数
目录1. 排序,搜索和计数1.1 排序numpy.sort()numpy.argsort()numpy.lexsort()numpy.partition()numpy.argpartition()1.2搜索numpy.argmax()numpy.argmin()numppy.nonzero()numpy.where()numpy.searchsorted()1.3计数numpy.count_nonzero()1. 排序,搜索和计数1.1 排序numpy.sort()numpy.sort(a[,
2021-03-20 18:02:08 217
转载 Numpy Day 2 - 数学函数练习
数学函数1.将数组a中大于30的值替换为30,小于10的值替换为10。a = np.random.uniform(1, 50, 20)【知识点:数学函数、搜索】如何将大于给定值的所有值替换为给定的截止值?import numpy as npnp.set_printoptions(precision=2)np.random.seed(100)a = np.random.uniform(1, 50, 20)print(a)# [27.63 14.64 21.8 42.39 1.23
2021-03-16 17:29:31 367
原创 Numpy Day2- 数学函数
目录向量化和广播数学函数1.算数运算**numpy.addnumpy.subtractnumpy.multiplynumpy.dividenumpy.floor_dividenumpy.power****numpy.sqrtnumpy.square**2.三角函数**numpy.sinnumpy.cosnumpy.tannumpy.arcsinnumpy.arccosnumpy.arctan**3.指数和对数**numpy.expnumpy.lognumpy.exp2numpy.log2numpy.log1
2021-03-16 17:07:21 706
原创 Numpy Day 2 -逻辑函数,广播
目录1. 逻辑函数1.1真值测试numpy.allnumpy.any1.2.数组内容numpy.isnan1.3逻辑运算1.4对照Numpy的广播规则1. 逻辑函数1.1真值测试numpy.allnumpy.anynumpy.all(a, axis=None, out=None, keepdims=np._NoValue)Test whether all array elements along a given axis evaluate to True.numpy.any(a, axi
2021-03-16 16:14:22 346
原创 斯坦福 Speech and Language Processing - 2.5 Edit distance 可编辑距离
目录最小编辑距离旨在定义两个字符串之间的相似度(word similarity)。定义相似度可以用于拼写纠错,计算生物学上的序列比对,机器翻译,信息提取,语音识别等。编辑距离就是指将一个字符串通过的包括插入(insertion),删除(deletion),替换(substitution)的编辑操作转变为另一个字符串所需的最少编辑次数。定义最小编辑距离(莱文斯坦):计算Intention和execution之间距离的距离矩阵如下:(参考下方的bilibil视频)回溯比对(backtrace)
2021-03-16 14:01:15 116
原创 斯坦福 Speech and Language Processing - 2.4 Text normalization
目录2.4.1 Simple Tokenization in UNIX2.4.2 Word Tokenization 分词2.4.3 Byte Pair Encoding tokenization 字节对编码分词2.4.4 Word Normalization,Lemmatization and StemmingWord Normalization 词标准化Case folding 大写转小写Lemmatization 词形还原Stemming 词干提取Porter StemmerEvery NLP ta
2021-03-16 09:11:52 170
原创 斯坦福 Speech and Language Processing - 2.2 words &2.3Corpora
目录2.2 words2.3 CorporaCorpora vary along dimension like:Corpus datasheets2.2 words“I do uh main- mainly business data processing”Fragments : main- 断掉的这种**filled pauses:**uh 停顿“Seuss’s cat in the hat is different from other cats!”Lemma: same
2021-03-15 15:59:26 165
转载 斯坦福 Speech and Language Processing - 2.1 Regular Expression
目录2.1.1 基础正则表达模式2.1.2 分离,分组和优先级2.1.3 一个简单的例子2.1.4 更多操作符2.1.5 一个更复杂的例子2.1.6 正则表达式替换、捕获组和ELIZA2.1.7 预测断言2.1.1 基础正则表达模式正则表达式是区分大小写的;小写/s/与大写/S/是不同的(/s/匹配小写s而不是大写字母S)[ ]方括号内的字符串指定要匹配的字符的分离。例如,图2.2表示模式/[WW] /匹配包含w或W的模式。问号操作符/?/,他表示“前面的字符出现或不出现”,如图2.5所示。
2021-03-15 14:48:41 280
转载 Numpy Day 1-数组的操作 变形
目录1. 数组操作1.1更改形状1.2数组转置1.3更改维度1.4数组组合1.5数组拆分1.6数组平铺1.7添加和删除元素练习将 arr转换为2行的2维数组。垂直堆叠数组a和数组b。将数组a与数组b水平堆叠。将 arr的2维数组按列输出。给定两个随机数组A和B,验证它们是否相等。在给定的numpy数组中找到重复的条目(第二次出现以后),并将它们标记为True。第一次出现应为False。1. 数组操作1.1更改形状在对数组进行操作时,为了满足格式和计算的要求通常会改变其形状。numpy.ndarra
2021-03-14 21:58:06 659
转载 Numpy Day 1- 索引
目录1. 副本与视图2.索引与切片2.1 整数索引2.2切片索引2.3 dots 索引2.4 整数数组索引2.5 布尔索引3.数组迭代练习题交换数组arr中的列1和列3。交换数组arr中的第1行和第2行。反转二维数组arr的行。反转二维数组arr的列。1. 副本与视图在 Numpy 中,尤其是在做数组运算或数组操作时,返回结果不是数组的 副本 就是 视图。在 Numpy 中,所有赋值运算不会为数组和数组中的任何元素创建副本。numpy.ndarray.copy()函数创建一个副本。 对副本数据进
2021-03-14 18:38:50 341
转载 Numpy Day 1- 数据类型及数组创建 常量 数组等
目录1. 常量numpy.nannumpy.infnumpy.pinumpy.e2.数据类型常见数据类型创建数据类型3.数据类型信息3.时间日期和时间增量datetime64 基础datetime64 和 timedelta64 运算datetime64 的应用4.数组的创建1. 依据现有数据来创建 ndarray(a)通过array()函数进行创建。( b)通过asarray()函数进行创建(c)通过fromfunction()函数进行创建2. 依据 ones 和 zeros 填充方式(a)零数组(b)1
2021-03-14 17:10:13 2643 1
转载 Python Day 10 - 序列化与反序列化
目录练习题:Python 的 pickle 模块实现了基本的数据序列和反序列化。通过 pickle 模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储。通过 pickle 模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象。pickle模块中最常用的函数为:pickle.dump(obj, file, [,protocol]) 将 obj 对象序列化存入已经打开的 file 中。obj :想要序列化的 obj 对象。file :文件名称。protocol
2021-03-13 14:16:22 81
转载 Python day 10 - OS 模块中关于文件/目录常用的函数
目录OS 模块中关于文件/目录常用的函数OS 模块中关于文件/目录常用的函数我们所知道常用的操作系统就有:Windows,Mac OS,Linu,Unix等,这些操作系统底层对于文件系统的访问工作原理是不一样的,因此你可能就要针对不同的系统来考虑使用哪些文件系统模块……,这样的做法是非常不友好且麻烦的,因为这样就意味着当你的程序运行环境一改变,你就要相应的去修改大量的代码来应对。有了OS(Operation System)模块,我们不需要关心什么操作系统下使用什么模块,OS模块会帮你选择正确的模块并调
2021-03-13 14:01:55 677
转载 Python Day 10 - 文件与文件系统
目录1 打开文件2 文件对象方法3 简洁的 with 语句1 打开文件open(file, mode=‘r’, buffering=None, encoding=None, errors=None, newline=None, closefd=True)Open file and return a stream. Raise OSError upon failure.a. file : 必需,文件路径(相对或者绝对路径)。b. mode : 可选,文件打开模式c. buffering : 设置
2021-03-13 13:44:03 208
转载 Python Day 10 -datetime模块
目录1 datetime类2 date类3 time类4 timedelta类练习题:datetime 是 Python 中处理日期的标准模块,它提供了 4 种对日期和时间进行处理的类:datetime、date、time 和timedelta。1 datetime类class datetime(date): def __init__(self, year, month, day, hour, minute, second, microsecond, tzinfo): pass
2021-03-13 12:48:00 234
转载 Python Day 10 - 模块
目录1.什么是模块2.命名空间3.导入模块4.5.搜索路径6.包(package)习题在前面我们脚本是用 Python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了。为此 Python 提供了一个办法,把这些定义存放在文件中,为一些脚本或者交互式的解释器实例使用,这个文件被称为模块(Module)。模块是一个包含所有你定义的函数和变量的文件,其后缀名是 .py 。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 Python 标准库的方法
2021-03-13 10:51:47 119
转载 统计学习方法9- EM算法
非监督学习、生成模型EM算法应用场景:含有隐变量的参数估计问题EM解析(以高斯分布为例):- 假设有一批数据x。- x可能满足多种不同的模型,这些模型的分布服从高斯分布的概率密度函数形式(高斯混合模型)。这时,问题中就包含了三个变量:取到某种模型的概率w,以及在该高斯分布下的参数μ和σ \sigmaσ。我们最终求的是最好的模型的参数μ和σ \sigmaσ,所以取到某种模型的概率w就相当于是隐变量。- 若根据极大似然估计方法,该问题求解可以描述为:一般性的:EM算法的E步,也就是求..
2021-03-12 17:20:20 113
转载 统计学习方法8-提升方法
目录AdaBoost算法提升树梯度提升树(GBDT)AdaBoost算法判别模型,是前向分步加法算法的特例,损失函数为指数函数。思想:多个弱分类器(分类规则粗糙简单)合成一个强分类器。简要:多个弱分类器对实例进行分类,对多个结果加权计算(相当于投票表决,只不过每个人投票的权重不同)得到最终结果。两个关键点:1、如何获得多个弱分类器。2、多个弱分类器的结果如何加权?步骤:1.首先初始化训练数据权值(对每一个训练数据赋予权值)2.对具有权值分布的数据集进行训练,得到一个分类器。a.计算该分类
2021-03-12 17:17:12 83
转载 统计学习方法7 -支持向量机
支持向量机:判别模型种类:硬间隔、软间隔、核函数思想:感知机是线性分类器,对线性可分的数据集可以有无穷多个超平面将其分开。而支持向量机选择其中分类最为靠谱的一个,而这个靠谱的依据是:(重要思想):1.在分类准确的前提下,2.使得离超平面最近的点离超平面的距离最远,也就是说一个点可能是很多个超平面的最近点,但是我们对比这个点离其他超平面的距离,选择最远的那一个超平面作为最终的超平面。学习流程:输入空间映射特征空间,特征空间学习得到输出空间。参考:https://blog.csdn.net/Smile
2021-03-12 17:12:36 73
转载 统计学习方法6 - Logistic regression和最大熵
Logistic Regression:判别模型,分类二项Logistic Regression思路:线性回归的预测值为一系列实值,为了使输出值变成分类所需的0和1,需要有一个映射将线性回归的输出变在(0,1)之间。这个函数为sigmoid函数。将线性函数y = wx+b 先合并b到矩阵中:y = w’x’,代入到sigmoid函数中:但是现在只是将输出限定在(0,1)间,还没有完成0、1二分类,应该出现一个阈值作为0或者1的判断界限。这个阈值就是要学习的东西,反映在参数上就是w和b。..
2021-03-12 17:01:57 151
转载 统计学习方法 5 - 决策树
决策树:判别模型问题描述:假设要对一批样本分K类。其中这些样本又有A个特征。如何生成一个树形结构,按照特征一层一层往下分。决策树生成思路:有A个特征可供分类,但是先选哪个特征作为分类标准呢?决策树为了解决这个问题,首先会判断该特征的对样本的区分能力,比如在男宿舍这样一个条件下判断谁有ipad,如果用性别作为一个特征来判断分类,收益很小;如果我们用生活费多少来判断,那么对这个分类就有很大的帮助。决策树这里用信息增益来判断特征Ai对分类的影响大小,先选择对分类区分度大的特征,在用其他特征依次往..
2021-03-12 16:32:42 129
转载 统计学习方法4 - 朴素贝叶斯法
朴素贝叶斯:生成模型预测思路:给定输入,生成在该输入的情况下各类发生的概率,然后选择概率最大的类。具体:结合贝叶斯公式、独立同分布的假设和极大似然估计,运用训练数据。
2021-03-12 16:06:43 99
转载 Python Day 9 魔方方法 -待理解
目录魔法方法1.基本的魔法方法2.算术运算符3.反算术运算符4.增量赋值运算符5.一元运算符6.属性访问7.描述符8.定制序列9.迭代器10.生成器魔法方法魔法方法总是被双下划线包围,例如__init__。魔法方法是面向对象的 Python 的一切,如果你不知道魔法方法,说明你还没能意识到面向对象的 Python 的强大。魔法方法的“魔力”体现在它们总能够在适当的时候被自动调用。魔法方法的第一个参数应为cls(类方法) 或者self(实例方法)。cls:代表一个类的名称self:代表一个实例
2021-03-10 20:51:33 103
转载 Python Day 8 类与对象
目录类与对象1. 对象 = 属性 + 方法2.self 是什么?3. Python 的魔法方法4.公有和私有5.继承6.组合7.类、类对象和实例对象8.什么是绑定?9.一些相关的内置函数(BIF)练习题类与对象1. 对象 = 属性 + 方法对象是类的实例。换句话说,类主要定义对象的结构,然后我们以类为模板创建对象。类不但包含方法定义,而且还包含所有实例共享的数据。封装:信息隐蔽技术我们可以使用关键字 class 定义 Python 类,关键字后面紧跟类的名称、分号和类的实现。class Tu
2021-03-09 22:14:22 91
转载 Python Day7 - 函数学习
目录函数1.函数的定义2.函数的调用3.函数文档4.函数参数4.1 位置参数4.2 默认参数4.3 可变参数4.4 关键字参数4.5 命名关键字参数4.6 参数组合5. 函数的返回值6.变量作用域内嵌函数闭包递归函数1.函数的定义还记得 Python 里面“万物皆对象”么?Python 把函数也当成对象,可以从另一个函数中返回出来而去构建高阶函数,比如: 参数是函数、返回值是函数。我们首先来介绍函数的定义。函数以def关键词开头,后接函数名和圆括号()。函数执行的代码以冒号起始,并且缩进。r
2021-03-09 19:33:00 82
转载 Pytyon Day 7 continue - Lambda
目录Lambda 表达式匿名函数的定义匿名函数的应用作业Lambda 表达式匿名函数的定义在 Python 里有两类函数:第一类:用 def 关键词定义的正规函数第二类:用 lambda 关键词定义的匿名函数Python 使用 lambda 关键词来创建匿名函数,而非def关键词,它没有函数名,其语法结构如下:lambda argument_list: expressionlambda - 定义匿名函数的关键词。argument_list - 函数参数,它们可以是位置参数、默认参数
2021-03-09 19:27:37 178
原创 统计学习方法3 - k近邻法
主要参考:k近邻法介绍:https://blog.csdn.net/Smile_mingm/article/details/108385312kd树:https://zhuanlan.zhihu.com/p/53826008作业中的代码解释参考:zip: https://www.runoob.com/python/python-func-zip.htmlplt.subplots(): https://www.cnblogs.com/komean/p/10670619.htmlflatten(
2021-03-09 11:36:02 121
转载 Python 6 continue 序列
目录序列1. 针对序列的内置函数作业序列在 Python 中,序列类型包括字符串、列表、元组、集合和字典,这些序列支持一些通用的操作,但比较特殊的是,集合和字典不支持索引、切片、相加和相乘操作。序列原来是统称啊1. 针对序列的内置函数list(sub) 把一个可迭代对象转换为列表。a = list()print(a) # []b = 'I Love LsgoGroup'b = list(b)print(b) # ['I', ' ', 'L', 'o', 'v', 'e', '
2021-03-05 23:04:36 89
原创 Python Day6 - 集合
目录集合1. 集合的创建2. 访问集合中的值3. 集合的内置方法4. 集合的转换5 不可变集合作业集合Python 中set与dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。注意,key为不可变类型,即可哈希的值num = {}print(type(num)) # <class 'dict'>num = {1, 2, 3, 4}print(type(num)) # <class 'set'>1. 集
2021-03-05 22:12:21 228
转载 Python Day 6字典
目录字典1. 可变类型与不可变类型2. 字典的定义3. 创建和访问字典4. 字典的内置方法作业字典1. 可变类型与不可变类型序列是以连续的整数为索引,与此不同的是,字典以"关键字"为索引,关键字可以是任意不可变类型,通常用字符串或数值字典是 Python 唯一的一个 映射类型,字符串、元组、列表属于序列类型。那么如何快速判断一个数据类型 X 是不是可变类型的呢?两种方法:麻烦方法:用 id(X) 函数,对 X 进行某种操作,比较操作前后的 id,如果不一样,则 X 不可变,如果一样,则 X 可
2021-03-04 22:58:22 345 1
原创 Python Day5 -字符串
这里写目录标题字符串1. 字符串的定义2. 字符串的切片与拼接3. 字符串的常用内置方法4. 字符串格式化字符串1. 字符串的定义Python 中字符串被定义为引号之间的字符集合。Python 支持使用成对的 单引号 或 双引号。t1 = 'i love Python!'print(t1, type(t1))# i love Python! <class 'str'>t2 = "I love Python!"print(t2, type(t2))# I love Pyt
2021-03-04 20:56:18 306 1
原创 统计学习方法2 - 感知机
感知机:判别模型、二分类线性模型模型形式:f(x)=sign(w⋅x+b)f(x)=sign(w\cdot x+b)f(x)=sign(w⋅x+b)www和bbb为感知机模型参数,signsignsign是符号函数。要求:数据集线性可分目的:求将数据集线性划分为两部分的超平面经验损失函数:所有误分类的点到超平面距离之和L(w,b)L(w,b)L(w,b)极小化经验损失函数方法:梯度下降法算法流程:...
2021-03-04 19:48:45 95
转载 Python Day4 homework - 列表,元组
列表操作练习列表lst 内容如下lst = [2, 5, 6, 7, 8, 9, 2, 9, 9]请写程序完成下列操作:1 . 在列表的末尾增加元素152 . 在列表的中间位置插入元素203 . 将列表[2, 5, 6]合并到lst中4 . 移除列表中索引为3的元素5 . 翻转列表里的所有元素6 . 对列表里的元素进行排序,从小到大一次,从大到小一次lst = [2, 5, 6, 7, 8, 9, 2, 9, 9]# 在列表的末尾增加元素15lst.append(15)pri.
2021-03-02 23:18:28 517
原创 Python Day4 continue - 元组
目录元组1. 创建和访问一个元组2. 更新和删除一个元组3. 元组相关的操作符4. 内置方法5. 解压元组元组「元组」定义语法为:(元素1, 元素2, …, 元素n)小括号把所有元素绑在一起逗号将每个元素一一分开1. 创建和访问一个元组Python 的元组与列表类似,不同之处在于tuple被创建后就不能对其进行修改,类似字符串。元组使用小括号,列表使用方括号。元组与列表类似,也用整数来对它进行索引 (indexing) 和切片 (slicing)。t1 = (1, 10.31, '
2021-03-02 21:53:38 206
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人