Open source Matlab工具箱的开源(或其他)版本
我在大学的一门课程中有一个项目,需要各种Matlab函数。我的Matlab版本由我的工作场所提供,它没有项目所需的一些工具箱。在任何地方都有这样的实现的存储库吗?我在谷歌搜索时找不到任何相关信息 虽然我的问题是一般性的,但我列出了我需要的和找不到的函数,因为我的问题也很具体:Open source Matlab工具箱的开源(或其他)版本,open-source,matlab,Open Source,Matlab,我在大学的一门课程中有一个项目,需要各种Matlab函数。我的Matlab版本由我的工作场所提供,它没有项目所需的一些工具箱。在任何地方都有这样的实现的存储库吗?我在谷歌搜索时找不到任何相关信息 虽然我的问题是一般性的,但我列出了我需要的和找不到的函数,因为我的问题也很具体: knncodel-K-最近邻的一种实现 svmclassify-支持向量机的实现 svmtrain-SVM实现的一部分 mapstd-将矩阵标准化,使其平均值为0,标准偏差为1 我正在考虑的另一种选择是在Python
-K-最近邻的一种实现knncodel
-支持向量机的实现svmclassify
-SVM实现的一部分svmtrain
-将矩阵标准化,使其平均值为0,标准偏差为1mapstd
我正在考虑的另一种选择是在Python中与Numpy和Pylab一起工作。Pylab中是否有与这些Matlab函数等效的工具箱?您还可以查看哪些工具箱在许多数据驱动领域非常强大,包括
还有一点是开源机器学习软件的目录。
你可能想考虑得到你自己的MATLAB和你需要的工具箱的副本。Mathworks对大学生的定价非常有吸引力 GNU倍频程是免费的Matlab或多或少的工作一样。我不知道工具箱盖得有多好或者,如果作业需要它们,学校可能会在某个地方的一些实验室机器上安装它们,您可以使用某种Xterm远程登录。询问助教。我要检查的第一个地方是。MATLAB用户提交的代码超过10000个,您可以找到各种MATLAB工具箱的替代品。以下是一些可能有用的东西:
- 有一些与KNN搜索相关的高评级提交,以及
M = magic(5); %# Create an example matrix
rowMeans = mean(M,2); %# Compute the row means
rowStds = std(M,0,2); %# Compute the row standard deviations
rowStds(rowStds == 0) = 1; %# Set standard deviations of 0 to 1
for i = 1:size(M,1)
M(i,:) = (M(i,:)-rowMeans(i))./rowStds(i); %# Normalize each row of M
end
%# Or you could avoid the for loop with a vectorized solution...
M = bsxfun(@rdivide,bsxfun(@minus,M,rowMeans),rowStds);
这显然不会涵盖MAPSTD中的所有选项,但会捕获基本功能。我可以确认上面的代码给出的结果与
mapstd(M)
Octave实际上有一些基本MATLAB(没有工具箱)没有的功能。我不记得具体是哪个函数,但当时我主要是处理统计数据。一个更正:如果SD=0(常量行),你不能除以零!改为使用:M=bsxfun(@rdivide,bsxfun(@减号,M,rowMeans),rowStds+(rowStds==0))
另一种替代解决方案是:zscore(M')”
或者更准确地说,zscore(M')”*ystd+ymean
,以匹配函数调用mapstd(M,ymean,ystd)
@Amro:很好地掌握了标准偏差。我更正了代码以解释那个案例。我避免使用函数ZSCORE,因为这是在统计工具箱,我想展示一个例子与基本Matlab。如果你要做的机器学习技术的比较,你也可以考虑使用WEKA与MATLAB简单地导出和导入ARFF文件。