0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 nm = size(err,3);
0019
0020 if ~exist('tol','var')
0021 tol=1e-3;
0022 end
0023
0024 figure, h=errorbar_logsafe(trfrac'*ones(1,nm), shiftdim(mean(err)), shiftdim(std(err)));
0025
0026 set(gca,'fontsize',14,'yscale','log');
0027 ylim([1e-5 1e+2]);
0028
0029 set(h,'linewidth',2);
0030 set(h(1:3),'color',[0 0 1]);
0031 set(h(1),'linestyle','--');
0032 set(h(2),'linestyle','-.');
0033
0034 col=get(gca,'colororder');
0035 for ii=4:7, set(h(ii),'color', col(ii-2,:)); end
0036
0037 hold on;
0038 plot(xlim, tol*[1 1], '--', 'color', [.5 .5 .5], 'linewidth',2);
0039
0040
0041 grid on;
0042 xlabel('Fraction of observed elements');
0043 ylabel('Generalization error');
0044 legend('As a Matrix (mode 1)',...
0045 'As a Matrix (mode 2)', ...
0046 'As a Matrix (mode 3)',...
0047 'Constraint',...
0048 'Mixture',...
0049 'Tucker (large)',...
0050 'Tucker (exact)',...
0051 'Optimization tolerance',...
0052 'Location','NorthEastOutside');
0053
0054 h=get(gca,'children');
0055 set(gca,'children',h([2:end,1]));
0056
0057 set(gcf,'PaperSize',[20 20]);