Python,算法
BUAA-XX
关注后端架构开发 云计算 人工智能 计算机视觉
展开
-
导航坐标系和大地坐标系的转化程序
导航坐标系和大地坐标系的转化程序主要目的:实现了 站心坐标系和大地坐标系的转化(有什么用?为了实现由GPS坐标获得相对距离)什么是站心坐标系呢?以你为坐标原点,XYZ坐标系。什么是大地坐标系呢?(WG-84坐标系)GPS的输出坐标系,和地心坐标系不同。本代码考虑了椭球修正,实测比较准确。#encoding=UTF-8'''Created on 2016年9月26日@author: sx原创 2017-01-14 23:01:33 · 6272 阅读 · 4 评论 -
Machine Learning 学习 之 RBF网络
RBF 网络实现代码原创 2017-10-21 13:50:28 · 355 阅读 · 0 评论 -
Machine Learning 学习 之 Qleaning 学习
学习改编自 莫烦Python Qlearning学习教程import numpy as npimport timenp.random.seed(2) # reproducibleN_STATES = 6 # the length of the 1 dimensional worldACTIONS = ['left', 'right'] # available actionsE原创 2017-10-21 13:52:24 · 344 阅读 · 0 评论 -
Machine Learning 学习之朴素贝叶斯
#coding=utf8class Bayes: def __init__(self,data,inpu): self.data=data self.inpu=inpu self.lable=[self.data[i][1] for i in range(len(self.data))] self.score,self.res原创 2017-10-21 13:53:21 · 206 阅读 · 0 评论 -
MachineLearning 学习之fisher判别
import numpy as npfrom scipy.linalg import solveclass Fisher: def __init__(self,data,clas,inpu): self.data=data self.clas=clas self.inpu=inpu self.result=self.__get原创 2017-10-21 13:56:00 · 270 阅读 · 0 评论 -
空间亚线性算法
#coding=utf8import randomdef deleteElem(valueList,numList): V=[] L=[] for k in range(len(numList)): numList[k]-=1 if numList[k]!=0: V.append(原创 2017-10-21 13:57:59 · 892 阅读 · 3 评论 -
Machine Learning学习之岭回归
最小二乘法#coding=utf8from numpy import *class Min2c: def __init__(self,data): self.data=data self.result=self.__min2c() def __min2c(self): self.Y=mat([self原创 2017-10-21 14:00:14 · 285 阅读 · 0 评论 -
Machine Learning 学习之决策树 ID3树
#coding=utf-8#每个类先事先划分属性 数据结构定义为[[[类1,类2,...],结果],...(样本n)]#ID3算法 比较最大增益 增益越大 说明该分类器商相对越小#,分类越显著(概率比越大,类别对结果的影响越大)"""上面为了简便,将特征属性离散化了,其实日志密度和好友密度都是连续的属性。对于特征属性为连续值,可以如此使用ID3算法:先将D中元素按照特征属性排序,则每两原创 2017-10-29 21:05:38 · 287 阅读 · 0 评论 -
Machine Learning 学习 之 C4.5
#coding=utf-8#每个类先事先划分属性 数据结构定义为[[[类1,类2,...],结果],...(样本n)]#ID3算法 比较最大增益 增益越大 说明该分类器商相对越小#,分类越显著(概率比越大,类别对结果的影响越大)"""上面为了简便,将特征属性离散化了,其实日志密度和好友密度都是连续的属性。对于特征属性为连续值,可以如此使用ID3算法:先将D中元素按照特征属性排序,则每两原创 2017-10-29 21:06:27 · 351 阅读 · 0 评论 -
Machine Learning 之 SVM实现(个人认为最好的算法)
SVM.py#coding=utf-8""" 主要思想及算法流程来自李航的《统计学习方法》 《理解SVM的三重境界》 yi={1,-1} 难点: KKT条件 SMO算法"""import timeimport randomimport numpy as npimport mathimport copya=np.m原创 2017-10-29 21:12:19 · 16158 阅读 · 5 评论 -
非线性优化之牛顿(梯度)下降法、高斯牛顿法、LM下降法
本质都是基于梯度下降法。 牛顿法: 依赖于Hessen矩阵非奇异,收敛较快 高斯 牛顿法:依赖二阶项的jacobian 解决了Hessen非奇异的问题,收敛相对慢 LM下降法:表现是使用一个因子拟合牛顿和高斯牛顿法#coding=utf-8from numpy import *import sympydef Hessen(f,x,x_value): #行 列表示Hesse矩原创 2017-10-29 21:41:30 · 1985 阅读 · 1 评论 -
Machine Learning 学习之神经网络(1)
BP神经网络是机器学习的重要研究方向 也是深度学习的基石 先上效果图功能如下:可视化神经网络拓扑关系 可视化权值 偏置值 测试结果曲线测试 预测 归一化数据 等功能可选择的激活函数 动量因子 batch size性能指标和误差指标 训练时可见模型加载保存Net.txtNetrules:rulesRandom ***Layer 0 *****typ:原创 2017-10-22 10:26:39 · 227 阅读 · 0 评论 -
Python数据结构之哈夫曼树
HaffMan.py#coding=utf-8#考虑权值的haff曼树查找效率并非最高,但可以用于编码等使用场景下class TreeNode: def __init__(self,data): self.data=data self.left=None self.right=None self.parent=Nonecla原创 2017-11-08 11:55:56 · 2080 阅读 · 0 评论 -
Python数据结构之二叉排序树
SortTree.py#coding=utf-8#二叉排序树class TreeNode: def __init__(self,data,left=None,right=None): self.data=data self.left=left self.right=rightclass SortTree: def __init__(原创 2017-11-08 11:57:36 · 970 阅读 · 0 评论 -
Machine Learning 学习 之 Kmeans 笔记
#coding=utf8''' 算法流程: 输入:k, data[n];(1) 选择k个初始中心点,例如c[0]=data[0],…c[k-1]=data[k-1];(2) 对于data[0]….data[n], 分别与c[0]…c[k-1]比较,假定与c[i]差值最少,就标记为i;(3) 对于所有标记为i点,重新计算 c[i]={ 所有标记为i的data[j]之和}/标记为i 的个数原创 2017-10-21 13:43:48 · 162 阅读 · 0 评论 -
Machine Learning学习之 系统(层次)聚类法
#coding=utf8''' 1、定义距离 计算两个样品的距离,最开始每一个自成一类 2、找出非对角线最小元素,合并一类 3、递推,构造新矩阵 重复2的过程 4、重复2、3 直到所有元素都被合并'''import timeimport mathimport typesclass HCM: def __init__(self,data):原创 2017-10-21 13:42:00 · 337 阅读 · 0 评论 -
Machine Learning 笔记之KNN算法
#coding=utf8#data 为 [[data],class] 形式import mathclass trainSet: def __init__(self,data,clas): self.Data=[] for i in range(len(clas)): self.Data.append([data[i],clas[i]原创 2017-10-21 13:40:32 · 244 阅读 · 0 评论 -
数据结构——用python实现排序算法
用python实现各种数据结构,是不是EXCITING?本文实现了基础排序算法代码较为简单,按顺序如下:1.插入排序#coding=utf8L=[223, 85, 232, 171, 215, 229, 12, 58, 219, 143, 61, 152, 32, 42, 199, 82, 252, 217, 106, 240, 202, 40, 180, 292, 235, 214, 116,原创 2017-01-15 10:32:40 · 578 阅读 · 0 评论 -
图搜索之基于Python的迪杰斯特拉算法和弗洛伊德算法
图搜索之基于Python的迪杰斯特拉算法和弗洛伊德算法Djstela算法#encoding=UTF-8MAX=9'''Created on 2016年9月28日@author: sx'''b=999G=[[0,1,5,b,b,b,b,b,b],\ [1,0,3,7,5,b,b,b,b],\ [5,3,0,b,1,7,b,b,b],\ [b,7,b,0,2,b,3,b,原创 2017-01-15 10:41:04 · 1018 阅读 · 0 评论 -
Python顺序链表
Python顺序链表顺序链表#encoding=UTF-8class SXlist(): def __init__(self,max): self.maxlenth=max self.data=[] self.lenth=len(self.data) def add(self,key): self.lent=l原创 2017-01-15 10:59:05 · 454 阅读 · 0 评论 -
Python单链表
Python 单链表#encoding=UTF-8'''Created on 2016年9月25日@author: sx'''class Node(object): def __init__(self,value): self.value=value self.next=None def getvalue(self): retu原创 2017-01-15 11:00:24 · 287 阅读 · 0 评论 -
Python 栈和队列
Python 栈和队列1、Python栈的实现#encoding=UTF-8'''Created on 2016年9月25日@author: sx'''class Stack(): def __init__(self,lenth): self.stack=[] self.max=lenth self.top=len(self.stack原创 2017-01-15 11:11:31 · 243 阅读 · 0 评论 -
基于SIFT光流法的速度识别与位移检测
基于SIFT+python光流算法的速度识别与位移检测首先 还是先科普一下SIFT吧 很简单的说,因为不喜欢讲太多blabala没用的话首先 数字图像是什么?A good Question。数字图像不过是数字矩阵,常用的有HSV、HSI、UAV、RGB以及灰度等。这些,统统不重要,他们不过是三维/二维矩阵而已。640*480的图像,共有那么多的像素点。每一个点用什么代表?灰度就是0-25原创 2017-01-22 14:49:31 · 7507 阅读 · 4 评论 -
基于openCV和PythonSMTP的天眼系统
这个小系统是把两个简单功能组合到了一起。 先讲一下算法大致的思路: 首先是openCV不断检测,当检测到有像素变化且大于一定阈值时,更新状态队列,如果该队列list的最近5次有3次检测到异常,就捕捉照片,再使用Python SMTP发送邮件到指定邮箱。 几个注意的地方: 1、程序名 不能为 email.py 2、发送文字内容不能为 test、测试等 3、时间触发、照片限制、阈值设置在程序原创 2017-06-05 00:14:01 · 852 阅读 · 0 评论 -
Python 实现 深度学习图片爬虫、以及批量处理工具
主要是作为深度学习Caffe SSD 数据预训练的工具#coding=utf-8import sysfrom PyQt4.QtCore import *from tform import *from PyQt4.QtGui import *import osqtCreatorFile = "zhixi.py" # Enter file here.#Ui_MainWindow, QtBa原创 2017-09-04 14:13:33 · 1531 阅读 · 0 评论 -
Machine Learning笔记 之 关联项挖掘
#coding=utf-8#由频繁项集 推出规则 两个条件'''设定阈值:1、频繁阈值2、置信度阈值 剪枝策略: 1、项集频繁 则子项集频繁 2、项集非频繁 项集超集非频繁 以此进行剪纸搜索支持度 个数1->2,3s(1,2,3)/s(1)置信度 支持度/总的支持度置信度大的为规则'''class Apr: def __in原创 2017-10-21 13:38:54 · 198 阅读 · 0 评论 -
Python数据结构之二叉树(涵盖了构建、删除、查找、字典转换、非递归与递归遍历等)
MyTree.py#coding=utf-8import mathclass BinTree: def __init__(self): self.root=None def is_empty(self): return self.root is None def get_root(self): return self.root原创 2017-11-08 11:59:47 · 1118 阅读 · 0 评论