Python
文章平均质量分 59
豆-Metcalf
已弃用CSDN,欢迎关注我的GitHub https://github.com/Meatlf,不断更新关于图像算法,深度学习,算法优化等学习笔记和代码,欢迎粉一下.
展开
-
机器学习之-最邻近算法(Nearest Neighbor)
1.理论基础测试图片(test image)与训练图片(training image)每个对应相同位置像素值之差的绝对值,然后求和。具体如下图所示: 待续原创 2017-06-27 21:56:54 · 5973 阅读 · 0 评论 -
Python基础、函数及其相关函数库(Numpy、TensorFlow)常用函数集锦(更新中,更新日期:2017-08-03)
更新记录:2017-07-092017-07-122017-07-13Python函数参考资料: 1.Python基础教程 2.Python学习与分享平台 3.Python 3.6.2rc2 documentationlen>>>n=len([1,2,3,4,5,6]);n6>>>n=len([(1,2),(3,4),(5,6)]);n3>>>n=len(1,2,3,4,5,6)T原创 2017-06-09 14:23:38 · 943 阅读 · 0 评论 -
机器学习教程之6-神经网络的学习(Neural Networks:Learning)
1.代价函数 注意:由红色圆圈可知,这里的代价函数实际上输出的各个元素的代价函数之和。2.反向传播算法首先用正向传播方法计算出每一层的激活单元,利用训练集的结果与神经网络预测的结果求出最后一层的误差,然后利用该误差运用反向传播法计算出直至第二层的所有误差。3.反向传播算法的直观理解4.实现注意:展开参数5.梯度校验6.随机初始化7.综合起来小结一下使用神经网络时的步骤: 网络结构:第一件要做的事原创 2017-05-23 09:48:47 · 585 阅读 · 0 评论 -
机器学习教程之5-神经网络:表述(Neural Networks:Representation)
1.非线性假设无论是线性回归还是逻辑回归都有这样一个缺点,即: 当特征太多时,计算的负荷会非常大。使用非线性的多项式,能够建立更好的分类模型。普通的逻辑回归模型,不能有效地处理很多的特征,这时候就需要神经网络。2.神经元和大脑神经网络是一种很古老的算法,它最初产生的目的是制造能模拟大脑的机器。 人工智能的梦想就是:有一天能制造出真正的智能机器。3.模型表示1神经元:每一个神经元都可以被认为是一个处原创 2017-05-07 10:52:02 · 895 阅读 · 0 评论 -
Python中import语句的使用教程
1.代码1) support.pydef print_func(par): print("Hello",par) return2) test.pyimport supportsupport.print_func("World !")2.输出Hello World !原创 2017-07-07 20:06:48 · 985 阅读 · 0 评论 -
机器学习教程之-近邻法
from sklearn.neighbors import NearestNeighborsimport numpy as np# X为6个点的数据X = np.array([[3, 2], [-2, -1], [-1, -1], [1, 1], [2, 1], [3, 2]])# 以 X[i] 为参考点,找(n_neighbors - 1)个与之最近的点nbrs = NearestNeigh原创 2017-07-21 19:14:40 · 462 阅读 · 0 评论 -
机器学习教程之10-聚类(Clustering)-K均值聚类(K-means)的sklearn实现
0.概述----**优点**:原理简单速度快能够处理大量的数据**缺点**:需要指定聚类 数量K对异常值敏感对初始值敏感原创 2017-08-04 18:48:32 · 14273 阅读 · 3 评论 -
win10 下安装 python 版的 opencv
pip install --user opencv-python原创 2017-12-04 19:49:04 · 1582 阅读 · 0 评论 -
机器学习教程之4-正则化(Regularization)
1.过拟合的问题模型的分类:欠拟合、完全符合、过拟合 目前已经学习的线性回归和逻辑回归可以解决很多问题,在实际应用中可能会产生过度拟合(over-fitting)的问题,可能导致它们的效果很差。 这里利用正则化(regularization,有译者翻译为:规范化)技术减少过度拟合的问题。 减少过拟合的方法: 1. 丢弃一些不能帮助我们正确预测的特征。可以是手工选择保留哪些特征, 或者使用一些原创 2017-05-23 20:47:33 · 5017 阅读 · 1 评论 -
机器学习之0-机器学习概述
1.背景----**意义**:机器学习是目前信息技术中最激动人心的方向之一。**应用场景**:搜索、图片分类、过滤垃圾邮件。**应用领域**:计算生物学、机械应用、手写识别、自然语言处理或计算机视觉等。原创 2017-05-07 18:39:51 · 675 阅读 · 0 评论 -
机器学习教程之3-逻辑回归(logistic regression)的sklearn实现
0.概述---**线性回归**不仅可以做**回归**问题的处理,也可以通过与**阈值**的比较转化为**分类**的处理,但是其**假设函数**的输出范围没有限制,这样很大的输出被分类为1,较少的数也被分为1,这样就很奇怪。而**逻辑回归**的**假设函数**的输出范围是0~1。当数据集中含有误差点时,使用**线性回归**相应的误差也会很大。原创 2017-04-29 23:30:04 · 16608 阅读 · 1 评论 -
机器学习教程之9-SVM的sklearn实现
0.概述[1] 优点:缺点:支持向量机(support vector machines,SVM)是一种二类分类模型。SVM的基本模型是定义在特征空间的间隔最大的线性分类器,间隔最大使它有别于感知器。SVM学习方法由简至繁分为三种模型:线性可分支持向量机、线性支持向量机及非线性支持向量机。分别对应三种处理方法:硬间隔最大化、软间隔最大化、核技巧。支持向量机的学习是在特征空间进行的。1.线性可分支持向原创 2017-07-27 14:39:58 · 11856 阅读 · 1 评论 -
机器学习教程之2-线性回归(linear regression)的sklearn实现
0.概述线性回归属于机器学习中的回归问题,因为线性回归是根据数据预测一个准确的输出值,而不是分类结果。 注意:”机器学习教程之1”里的感知器讲的是分类问题,它是寻找超平面将数据分为正、负两类。优点:非常简单、易于建模、应用广泛缺点:1.模型表示 数据集:数据的集合监督学习:从已有数据中发现关系:由多个输入映射一个输出。并用数学模型表示,将新数据用这数学模型运算得到新的输出。监督学习的方式:回归问原创 2017-04-26 21:26:19 · 3501 阅读 · 0 评论 -
机器学习教程之13-决策树(decision tree)的sklearn实现
0.概述决策树(decision tree)是一种基本的分类与回归方法。 主要优点:模型具有可读性,分类速度快。 决策树学习通常包括3个步骤:特征选择、决策树的生成和决策树的修剪。1.决策树模型与学习节点:根节点、子节点;内部节点(internal node)和叶节点(leaf node)。决策树学习本质上是从训练数据集中归纳出一组分类规则。决策树学习仍然需要将代价函数最小化。为了防止有过拟合现原创 2017-08-02 20:38:21 · 16167 阅读 · 0 评论 -
机器学习教程之12-朴素贝叶斯(naive Bayes)法的sklearn实现
0.概述朴素贝叶斯法基于贝叶斯定理与特征条件独立假设的分类方法。对于给定的训练数据集,首先基于特征条件独立假设学习输入/输出的联合概率分布;然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y。优点: 原理简单 实现简单 学习与预测的效率都很高 是一种常用的方法缺点: 1.朴素贝叶斯法的学习与分类要点: 1)朴素贝叶斯法通过训练数据集学习联合概率分布P(X,Y)。具体原创 2017-07-23 20:12:09 · 1472 阅读 · 0 评论 -
机器学习教程之11-降维(Dimensionality Reduction)
0.概述----**降维**也是一种**无监督学习**问题。原创 2017-08-05 13:52:30 · 762 阅读 · 0 评论 -
LeetCode学习之-225. 利用队列实现堆栈(Implement Stack using Queues)
1.算法[1]2.代码[2]"""Author: Tianze TangDate: 2017-07-17Email:454779758@qq.comFunction: Use two queue to realize stack's function.Explain:Modified Log:"""class MyStack(object): def __init__(sel原创 2017-07-17 12:19:19 · 373 阅读 · 0 评论 -
Python列表教程
1.代码list01 = ['TTZ',26,'FQQ',25]list02 = [2017,7,20]print(list01)print(list02)['TTZ', 26, 'FQQ', 25][2017, 7, 20]# 列表截取print (list01[0])print (list01[-1])print (list01[0:3]) # 特别注注意:只截取3个元素TTZ原创 2017-07-20 16:43:20 · 411 阅读 · 0 评论 -
Python列表
# coding: utf-8# In[12]:list01 = ['TTZ',26,'FQQ',25]list02 = [2017,7,20]# In[13]:print(list01)print(list02)# In[16]:# 列表截取print (list01[0])print (list01[-1])print (list01[0:3]) # 特别注注意:只截取3个原创 2017-07-20 16:32:02 · 402 阅读 · 0 评论 -
OpenCV+Python教程之2- 一个加载灰度图的入门程序
0.学习目标读入一幅图像,显示一幅图像,以及保存一幅图像 学习如下函数:cv2.imread(),cv2.imshow(),cv2.imwrite()1.源代码# -*- coding: utf-8 -*-import numpy as npimport cv2img=cv2.imread('4.jpg',0)cv2.imshow('image',img)k=cv2.waitKey(0)if原创 2017-05-10 15:59:29 · 4382 阅读 · 0 评论 -
OpenCV+Python教程之1-Ubuntu16.04下安装OpenCV教程
1.安装依赖库[compiler]sudo apt-get install build-essential[required] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev[optional] sudo apt-get install py原创 2017-05-09 20:08:20 · 593 阅读 · 0 评论 -
Ubuntu16.04下安装有关python的开发环境
pylab并不是一个包,而是Python, NumPy, SciPy, Matplotlib的集合。所以这些包都得安装,而这些包之间又有一些依赖关系,比如安装Matplotlib要求先安装NumPy。1.安装pip下载模式sudo apt install python-pippip install --upgrade pip2.使用pip安装最新版本的NumPy和SciPysudo pip ins原创 2016-12-17 19:42:29 · 1328 阅读 · 0 评论 -
OpenCV实现边缘算法
1.功能: 粗略的描绘图像的边缘2.算法: 将当前像素与邻接的下部和右部的像素进行比较,如果相似,则将当前像素设置为黑色,否则设置为白色。用到的算法为欧氏距离算法。3.代码:#!/usr/bin/env python#-*- coding: utf-8 -*-import cv2import numpy as npfn="test.jpg"def get_EuclideanDistance(x原创 2017-01-04 20:01:14 · 1387 阅读 · 0 评论 -
Python中使用OpenCV最基本的程序
1.功能: 显示图像2.代码#!/usr/bin/env pythonimport cv2fn="test.jpg"if __name__ == '__main__': img=cv2.imread(fn) cv2.imshow('preview',img) #按任意键关闭图形显示的窗口 cv2.waitKey() cv2.destroyAllWindo原创 2017-01-04 15:19:15 · 3853 阅读 · 0 评论 -
python中if __name__ == '__main__': 的解析
http://www.cnblogs.com/xuxm2007/archive/2010/08/04/1792463.html转载 2016-12-26 20:34:32 · 237 阅读 · 0 评论 -
Python中for的使用
例子 1.代码:d=[2,5]for w in d: w=w+2 print w2.结果: 4 93.结论:w遍历d中所有数据,w运算之后所有数据。原创 2016-12-26 09:49:00 · 889 阅读 · 1 评论 -
Python与NumPy的比较
NumPy提供数组,Python提供列表。原创 2017-06-07 14:19:37 · 1492 阅读 · 0 评论 -
Python中列表、元组、元组的列表和NumPy中数组、数组的列表的比较
1.Python列表a=[1,2,3,4]a[0]=12.Python元组b=(1,2,3,4)b[0]=13.Python元组的列表c=[(1,2),(3,4)]c[0]=(1,2)c[0][0]=1说明:这里把(1,2)作为列表里的一个单位。4.NumPy数组一维数组:import numpy as npd=np.array([1,2,3,4])d[0]=1二维数组:import n原创 2017-06-09 09:03:04 · 10906 阅读 · 0 评论 -
Pycharm字体大小设置
pycharm字体大小设置中第1、4条。转载 2017-06-28 15:20:06 · 1665 阅读 · 0 评论 -
win10下Visual Studio2015+cuda8.0+cudnn v5.1+Anaconda4.4.0+tensorflow+Keras+Pycharm+OpenCV3.2.0安装教程
1.Visual Studio2015默认安装2.cuda8.0默认安装 注意:不需要手动设置环境变量3.cudnn v5.1解压该文件夹,将文件夹lib、include和bin里的文件分别复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0里相对应的lib、include和bin文件夹下,安装成功!4.tensorflowpip原创 2017-06-27 11:39:45 · 2561 阅读 · 0 评论 -
Python及其接口函数库(TensorFlow、NumPy、Matplotlib、sklearn、pandas)参考资料(更新中,更新日期:2017-07-10)
Python1.Python基础教程 2.Python学习与分享平台 3.Python 3.6.2rc2 documentationTensorFlowNumPyNumPy IndexMatplotlibMatplotlib官方教程sklearnsklearn官方教程pandaspandas官方教程原创 2016-12-25 17:16:06 · 1083 阅读 · 0 评论 -
Python中类的定义与调用
#!/usr/bin/pythonimport numpy as np'''define'''class Network: def __init__(self,sizes): self.num_layers=len(sizes) self.sizes=sizes self.biases=[np.random.randn(y,1) for y原创 2017-06-13 13:56:30 · 1820 阅读 · 0 评论 -
利用Pycharm断点调试Python程序
1.代码准备没有语法错误的Python程序:#!/usr/bin/pythonimport numpy as npclass Network: def __init__(self,sizes): self.num_layers=len(sizes) self.sizes=sizes self.biases=[np.random.randn(y原创 2017-06-13 11:10:24 · 12785 阅读 · 0 评论 -
Python实现深度学习之-神经网络识别手写数字(更新中,更新日期:2017-07-12)
更新日期:2017-07-112017-07-120.神经网络的架构构成任意一个神经网络的四个要素: 层数(num_layers)、大小(sizes)、偏置(biases)、权重(weights)。 说明:在下图中,大小(sizes)为[2,3,1] 1.神经网络Network对象的初始化前后层之间的关系如下式: (1)分析隐藏层:第1原创 2017-06-06 22:25:33 · 2601 阅读 · 0 评论 -
Ubuntu16.04下利用Pycharm和Anaconda搭建Python IDE(集成开发环境)
1.Anaconda安装下载:清华大学的Anaconda2-4.4.0-Linux-x86_64 建议下载anaconda2的版本 下载完成后,直接运行bash ./Ana*.sh即可,按照终端中提示的内容进行默认设置安装2.Pycharm安装下载:Pycharm社区版 安装:$ cd Downloads/$ tar xfz pycharm-*.tar.gz$ cd pych原创 2017-06-12 16:36:29 · 3220 阅读 · 0 评论 -
Python 并行遍历zip()函数使用方法(更新日期:2017-07-11)
Python 并行遍历zip()函数使用方法原创 2017-06-07 17:34:15 · 3875 阅读 · 0 评论 -
Python中print(__doc__)作用的教程
作用输出文件开头注释的内容推广1)momodule.py"""This is the module docstring."""def f(x): """This is the function docstring.""" return 2 * x2)执行>>> import mymodule>>> mymodule.__doc__'This is the module docst原创 2017-07-11 09:57:59 · 11897 阅读 · 1 评论 -
Python中的字典(Dictionary)
代码>>>dict = { 'Name' : 'TTZ' , 'Age' :26 }>>>print(dict['Name'])TTZ说明机器学习的数据集和字典类似。原创 2017-07-10 21:10:38 · 412 阅读 · 0 评论