我在大学的课程中有一个需要各种Matlab功能的项目。我的Matlab版本由我的工作场所提供,它没有项目所需的一些工具箱。在任何地方都有这样的实现的存储库吗?我用Google搜索时找不到任何相关内容。
虽然我的问题很笼统,但我列出了我需要和找不到的功能,因为我的问题也是具体的:
knnclassify
- K近邻的实现svmclassify
- 支持向量机的实现svmtrain
- SVM实施的一部分mapstd
- 将矩阵规范化为平均值为0且标准差为1 我正在考虑的另一种方法是使用Numpy和Pylab在Python中工作。 Pylab中的工具箱是否与这些Matlab函数等效?
答案 0 :(得分:3)
您可能需要考虑获取自己的Matlab副本以及所需的工具箱。 Mathworks为大学生提供了非常的诱人定价。
GNU Octave是免费的Matlab,或多或少的工作。我不知道工具箱的覆盖范围有多好。
或者,如果作业需要它们,学校可能会在某些实验室机器上安装它们,你可能可以使用某种Xterm远程登录。问TA。
答案 1 :(得分:3)
我要检查的第一个地方是MathWorks File Exchange。 MATLAB用户提交的代码超过10,000个,您可以找到各种MATLAB工具箱的替代方案。这可能会有所帮助:
像MAPSTD这样的简单函数的另一种选择是尝试自己实现它的精简版本。下面是一些复制MAPSTD基本行为的示例代码:
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)
给出了相同的结果。
答案 2 :(得分:2)
您还可以查看R,它在许多数据驱动字段中非常强大,包括Machine Learning。
另外值得注意的是开源机器学习软件的MLOSS目录。