机器学习之路--Numpy】的更多相关文章

常用代码 ndarray.dtype 数据类型必须是一样的 常用代码 import numpy #numpy读取文件 world_alcohol = numpy.genfromtxt("world_alcohol.txt", delimiter=",", dtype=str, skip_header=1) #<class 'numpy.ndarray'> print(type(world_alcohol)) #获取帮助信息 print (help(num…
一.numpy简介 Numpy是高性能科学计算和数据分析的基础包,机器学习三剑客之一.Numpy库中最核心的部分是ndarray 对象,它封装了同构数据类型的n维数组.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对整组数据进行快速运算的标准数学函数(无需编写循环). 用于读写磁盘数据的工具以及用于操作内存映射文件的工具. 线性代数.随机数生成以及傅里叶变换功能. 用于集成C.C++.Fortran等语言编写的代码的工具. 二.NumPy的简单…
NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机器学习框架的基础库! 安装命令为:pip install numpy 编辑器中具体代码如下: #导入numpy 库 import numpy as np #打印版本号 # print(np.version.version) #声明一个numpy 一维数组 nlist = np.array([1,2,…
NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机器学习框架的基础库! Numpy简单创建数组 nlist = np.array([1,2,3])print(nlist) #[1 2 3] Numpy查看数组属性 #ndim方法用来查看数组维度 #二维数组 nlist_2 = np.array([[1,2,3],[4,5,6]]) print(nl…
python3 学习机器学习api 使用了三种集成回归模型 git: https://github.com/linyi0604/MachineLearning 代码: from sklearn.datasets import load_boston from sklearn.cross_validation import train_test_split from sklearn.preprocessing import StandardScaler from sklearn.ensemble…
python3 学习机器学习api 使用两种k近邻回归模型 分别是 平均k近邻回归 和 距离加权k近邻回归 进行预测 git: https://github.com/linyi0604/MachineLearning 代码: from sklearn.datasets import load_boston from sklearn.cross_validation import train_test_split from sklearn.preprocessing import Standard…
使用python3 学习了线性回归的api 分别使用逻辑斯蒂回归  和   随机参数估计回归 对良恶性肿瘤进行预测 我把数据集下载到了本地,可以来我的git下载源代码和数据集:https://github.com/linyi0604/MachineLearning import numpy as np import pandas as pd from sklearn.cross_validation import train_test_split from sklearn.preprocessi…
  Numpy NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机器学习框架的基础库! Numpy简单创建数组 import numpy as np # 创建简单的列表 a = [1, 2, 3, 4] # 将列表转换为数组 b = np.array(b) Numpy查看数组属性 数组元素个数 b.size 数组形状 b.shape 数组维度 b.…
NumPy库函数基础: 机器学习算法涉及很多线性代数知识. NumPy库中有很多线性代数计算. 之所以用到线性代数只是为了简化不同的数据点上执行的相同数学运算.将数据表示为矩阵形式, 只需要执行简单的矩阵运算而不需要复杂的循环操作. randMat =mat(random.rand(4,4)) 数据驱动产业:…
这里是首先需要安装好Anaconda Anaconda的安装参考Python之路-初识python及环境搭建并测试 配置好环境之后开始使用Jupyter Notebook 1.打开cmd,输入 jupyter notebook --generate-config 2.打开这个配置文件,找到“c.NotebookApp.notebook_dir=‘’ ”, 把路径改成自己的工作目录 使用notepad++打开这个文件,大概在124行添加自己的工作目录 c.NotebookApp.notebook_…
机器学习实战之kNN算法   机器学习实战这本书是基于python的,如果我们想要完成python开发,那么python的开发环境必不可少: (1)python3.52,64位,这是我用的python版本 (2)numpy 1.11.3,64位,这是python的科学计算包,是python的一个矩阵类型,包含数组和矩阵,提供了大量的矩阵处理函数,使运算更加容易,执行更加迅速. (3)matplotlib 1.5.3,64位,在下载该工具时,一定要对应好python的版本,处理器版本,matplo…
一.前述 NumPy(Numerical Python的缩写)是一个开源的Python科学计算库.使用NumPy,就可以很自然地使用数组和矩阵. NumPy包含很多实用的数学函数,涵盖线性代数运算.傅里叶变换和随机数生成等功能. 这个库的前身是1995年就开始开发的一个用于数组运算的库.经过了长时间的发展,基本上成了绝大部分Python科学计算的基础包,当然也包括所有提供Python接口的深度学习框架. 二.具体应用 1.背景--为什么使用Numpy? a) 便捷: 对于同样的数值计算任务,使用…
1. 定义 入门选手不抄作业了,先简单理解下,numpy最大的应用大概是方便做数学运算啥的,功劳在于一个叫ndarray(多维数组)的数据类型.numpy本身没有强大分析能力,只是pandas的基础啥的. 2 ndarray 2.1 定义 ndarray是一个多维数组对象,可以方便进行各种运算. ndarray所有元素必须是相同类型的.每个数组都有一个shape(一个表示各维度大小的元组)和一个dtype(一个用于说明数组数据类型的对象),用".shape".".dtype&…
git: https://github.com/linyi0604/MachineLearning/tree/master/07_tensorflow/ import tensorflow as tf from numpy.random import RandomState ''' 模拟一个回归案例 自定义一个损失函数为: 当真实值y_更大的时候 loss = a(y_ - y) 当预测值y更大的时候 loss = b(y - y_) loss_less = 10 loss_more = 1 l…
git: https://github.com/linyi0604/MachineLearning/tree/master/07_tensorflow/ import tensorflow as tf # 利用numpy生成数据模拟数据集 from numpy.random import RandomState # 定义一个训练数据batch的大小 batch_size = 8 # 定义神经网络的参数 w1 = tf.Variable(tf.random_normal([2, 3], stdde…
git:https://github.com/linyi0604/MachineLearning 如何确定一个模型应该使用哪种参数? k折交叉验证: 将样本分成k份 每次取其中一份做测试数据 其他做训练数据 一共进行k次训练和测试 用这种方式 充分利用样本数据,评估模型在样本上的表现情况 网格搜索: 一种暴力枚举搜索方法 对模型参数列举出集中可能, 对所有列举出的可能组合进行模型评估 从而找到最好的模型参数 并行搜索: 由于每一种参数组合互相是独立不影响的 所有可以开启多线程进行网格搜索 这种方…
分享一下 线性回归中 欠拟合 和 过拟合 是怎么回事~为了解决欠拟合的情 经常要提高线性的次数建立模型拟合曲线, 次数过高会导致过拟合,次数不够会欠拟合.再建立高次函数时候,要利用多项式特征生成器 生成训练数据.下面把整个流程展示一下模拟了一个预测蛋糕价格的从欠拟合到过拟合的过程 git: https://github.com/linyi0604/MachineLearning 在做线性回归预测时候,为了提高模型的泛化能力,经常采用多次线性函数建立模型 f = k*x + b 一次函数f = a…
特征提取: 特征降维的手段 抛弃对结果没有联系的特征 抛弃对结果联系较少的特征 以这种方式,降低维度 数据集的特征过多,有些对结果没有任何关系,这个时候,将没有关系的特征删除,反而能获得更好的预测结果 下面使用决策树,预测泰坦尼克号幸存情况,对不同百分比的筛选特征,进行学习和预测,比较准确率 python3学习使用api 使用到联网的数据集,我已经下载到本地,可以到我的git中下载数据集 git: https://github.com/linyi0604/MachineLearning 代码:…
主成分分析: 降低特征维度的方法. 不会抛弃某一列特征, 而是利用线性代数的计算,将某一维度特征投影到其他维度上去, 尽量小的损失被投影的维度特征 api使用: estimator = PCA(n_components=20) pca_x_train = estimator.fit_transform(x_train) pca_x_test = estimator.transform(x_test) 分别使用支持向量机进行学习降维前后的数据再预测 该数据集源自网上 https://archive…
python3 学习使用api 使用了网上的数据集,我把他下载到了本地 可以到我的git中下载数据集: https://github.com/linyi0604/MachineLearning 代码: import numpy as np import pandas as pd from sklearn.cluster import KMeans from sklearn import metrics ''' k均值算法: 1 随机选择k个样本作为k个类别的中心 2 从k个样本出发,选取最近的样…
python3 学习api的使用 git: https://github.com/linyi0604/MachineLearning 代码: from sklearn.datasets import load_boston from sklearn.cross_validation import train_test_split from sklearn.preprocessing import StandardScaler from sklearn.tree import DecisionTr…
python3 学习使用api 支持向量机的两种核函数模型进行预测 git: https://github.com/linyi0604/MachineLearning from sklearn.datasets import load_boston from sklearn.cross_validation import train_test_split from sklearn.preprocessing import StandardScaler from sklearn.svm impor…
python3学习使用api 线性回归,和 随机参数回归 git: https://github.com/linyi0604/MachineLearning from sklearn.datasets import load_boston from sklearn.cross_validation import train_test_split from sklearn.preprocessing import StandardScaler from sklearn.linear_model i…
        日常学习中总是遇到数据需要处理等问题,这时候我们就可以借助numpy这个工具来做一些有意思的事. 1.生成随机数的几种方式 x=np.random.random(12) ###生成12个随机数,也可以写成np.random.rand(12).  np.random.random_integers.np.random.uniform.np.random.randint(np.random.randint(1,20,(3,4),dtype='int32')).等形式 x=np.ran…
网上许多教程比较晦涩难懂,本教程按照笔者(新手)自己的视角记录,希望给大家一些帮助 1.安装anaconda 目前比较推荐的机器学习环境为anaconda. Anaconda指的是一个开源的Python发行版本,其包含了conda.Python等180多个科学包及其依赖项. 通过anaconda中的navigator我们可以方便的管理不同的python版本,随时创建或销毁一个环境,不同环境可以有不同的python版本(如,同时存在py3.6和py2.7),并且在不同的环境中允许使用存在不同的包.…
2018-04-1712:22:40 这是python依靠计算机视觉进行的ocr手写字的识别. 通过KNN训练数据 kNN 可以说是最简单的监督学习分类器了.想法也很简单,就是找出测试数据在特征空间中的最近邻居.我们将使用下面的图片介绍它. 上图中的对象可以分成两组,蓝色方块和红色三角.每一组也可以称为一个 类.我们可以把所有的这些对象看成是一个城镇中房子,而所有的房子分别属于蓝色和红色家族,而这个城镇就是所谓的特征空间.(你可以把一个特征空间看成是所有点的投影所在的空间.例如在一个 2D 的坐…
Pandas 是对numpy的封装 Pandas 核心结构DataFrame 近似看出矩阵结构panda字符型叫object dataframe其中一行或者一列叫series dataframe 里面结构是series series里面的结构又是ndarryayseries 就是可以自定义索引的ndarray string index可以用来字符串切片 常用代码 #导入模块 import pandas #常用读取文件 food_info = pandas.read_csv("food_info.…
seaborn是基于plt的封装好的库.有很强的作图功能. 1.布局风格设置(图形的style)and 细节设置 用matplotlib作图: import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt x = np.linspace(0, 14, 100) for i in range(1, 7): plt.plot(x, np.sin(x + i * .5) * (7 - i)) plt.show()…
1.绘制折线图 在pandas里面有一种数据类型为datatime ,可以将不规范的日期改为:xxxx-xx-xx import pandas as pd import numpy as np a = pd.read_csv('UNRATE.csv') a['DATE'] = pd.to_datetime(a['DATE']) print(a.head(12)) 折线图 import pandas as pd import numpy as np import matplotlib.pyplot…
在神经网络中,广泛的使用反向传播和梯度下降算法调整神经网络中参数的取值. 梯度下降和学习率: 假设用 θ 来表示神经网络中的参数, J(θ) 表示在给定参数下训练数据集上损失函数的大小. 那么整个优化过程就是寻找一个参数θ, 使得J(θ) 的值最小, 也就是求J(θ) 的最小值 损失函数J(θ)的梯度 = ∂ J(θ) / ∂ θ 此时定义一个学习率 η 梯度下降法更新参数的公式为: θn+1 = θn - η ( ∂ J(θn) / ∂ θn ) 将这个公式循环的重复下去,θ的值就从高处逐渐向…