从LMNN算法的源代码中得到启发,使用矩阵运算计算两个样本集之间的距离,可以避免循环计算,节省时间。
输入两个样本集X和x,X:d×N x:d×n 每一列代表一个样本,每个样本特征为d维,即X有N个样本,x有n个样本
输出距离矩 D D D:N×n D i j D_{ij} Dij​代表X的第i个样本和x的第j个样本的欧式距离
朴素的算法是循环迭代X和x中的每个样本算距离,要循环N×n次
优化后的算法代码如下:

[D,N] = size(X);if(nargin>=2)[d,n] = size(x);if(D~=d)error('Both sets of vectors must have same dimensionality!\n');end;X2 = sum(X.^2,1);x2 = sum(x.^2,1);dist = bsxfun(@plus,X2.',bsxfun(@plus,x2,-2*X.'*x));else[D,N] = size(X);s=sum(X.^2,1);dist=bsxfun(@plus,s',bsxfun(@plus,s,-2*X.'*X));
end;

优化距离计算函数的matlab实现相关推荐

  1. 点到直线的距离计算原理及MATLAB程序

    在二维和三维空间,有现成的计算点到空间直线的距离的公式: 如: 三维空间有类似的计算公式. 甚至博客直接提出用叉乘和行列式计算点到直线距离的计算方法和程序.但仅限于二维和三维的情况.更高维的就不适用. ...

  2. 灰狼优化算法求函数最优值matlab,GWO(灰狼优化)算法MATLAB源码逐行中文注解(转载)...

    2-l*((2)/Max_iteration); % 对每一次迭代,计算相应的a值,a decreases linearly fron 2 to 0% Update the Position of s ...

  3. mysql 经纬度距离计算

    经纬度距离计算 函数计算方法 两点距离(单位m) mysql 5.6 添加 两点球面距离(单位m)MySQL 5.7.6添加 函数计算方法 CREATE DEFINER=`root`@`%` FUNC ...

  4. 【MATLAB教程案例11】基于PSO粒子群优化算法的函数极值计算matlab仿真及其他应用

    FPGA教程目录 MATLAB教程目录 -------------------------------------------------------------------------------- ...

  5. help efun matlab,Matlab优化工具箱在函数最值求解中的应用.pdf

    Matlab优化工具箱在函数最值求解中的应用.pdf 系 统 解 决 方 案 Matlab优化工具箱在函数最值求解中的应用 彭东海 (中山职业技术学院数学教研室,广 东 中山 528404) 摘 要 ...

  6. 2021-01-28 粒子群优化算法-Python版本和Matlab函数 particleswarm 调用

    粒子群优化算法-Python版本和Matlab函数 particleswarm 调用 前两天分享了粒子群优化算法的原理和Matlab原理实现,本文分享一下Python代码下的PSO实现以及Matlab ...

  7. matlab数组平方的计算自定义函数_从零开始的matlab学习笔记——(38)简单数论计算函数:取整,gcd,lcm,质数,全排列...

    matlab应用--求极限,求导,求积分,解方程,概率统计,函数绘图,三维图像,拟合函数,动态图,傅里叶变换,随机数,优化问题....更多内容尽在个人专栏:matlab学习 翻了翻优化工具箱,发现内容 ...

  8. matlab实现线性函数逼近,1基于MATLAB的科学计算—函数逼近1.doc

    1基于MATLAB的科学计算-函数逼近1 数值分析-最佳逼近 ━基于MATLAB的实现与分析 §1 引 言 所谓函数最佳逼近就是从指定的一类简单的函数中寻找一个和给定的函数"最贴近" ...

  9. 多目标优化拥挤距离计算

    多目标优化拥挤距离计算 觉得有用的话,欢迎一起讨论相互学习~ 拥挤距离主要是维持种群中个体的多样性.具体而言,一般来说是指种群按照支配关系进行非支配排序后,单个Rank层中个体的密集程度.常用于支配关 ...

最新文章

  1. javascript获取和设置URL中的参数
  2. centos下安装 php,Centos 下安装 PHP (新)
  3. 【华为云技术分享】【昇腾】【玩转Atlas200DK系列】基于Pycharm专业版构建开发板python开发运行环境
  4. nightwatch系列教程03——开发者指南:运行你的测试脚本
  5. (48)FPGA面试技能提升篇(数字采样、射频存储、频谱搬移)
  6. 转:10+年程序员总结的20+条经验教训
  7. TZOJ 4813 机器翻译(模拟数组头和尾)
  8. 轻便的客户端本地文件数据库 SQLite
  9. 如何减小Exe, DLL 的大小
  10. [GitHub][2014-05-13 06:00:39]JavaDsp
  11. sqlserver200864位下载_sql server 2008 r2中文版
  12. MonkeyTest
  13. ios 高德地图加载瓦片地图_iOS 利用高德地图WMS服务
  14. android outlook日历同步,Android上使用Exchange ActiveSync不能同步Outlook.com账号中的多个日历...
  15. 稀土掘金首页沸点课程返场5折直播活动商城APP邀请有礼插件探索稀土掘金搜索创作者中心vip会员5Java查序的头像梳理流程引擎 Flowable 四大常见任务
  16. Python应用开发——爬取网页图片
  17. 关于使用 Connect-Busboy 实现文件上传 优化说明
  18. 使用HTML,CSS,JS写出模拟前端易车网页面
  19. Java_IOl流_缓冲流_转换流
  20. length与length()的区别

热门文章

  1. 什么是Tuscany?
  2. vscode配置内存,解决窗口出现故障
  3. 怎样利用DOI快速检索文献?
  4. 数独求解算法(回溯法和唯一解法)java实现
  5. 算法:求10万以内的质数
  6. Python 如何安装 MySQLdb ?
  7. SQLyog数据导入导出图文教程
  8. 小说《小城恋情》第三十三章
  9. 特征工程-什么是特征工程(Kaggle微课)
  10. 如何快速而准确地进行 IP 和端口信息扫描:渗透测试必备技能