Solvers no longer use the LevenbergMarquardt, LineSearchType, and NonlEqnAlgorithm options, since these options relate only to the Gauss-Newton algorithm.

1个回答

Matlab实现Logistic Regression时的一个小问题
Ng机器学习编程作业matlab实现LR时里有这样一段 %% ============= Part 3: Optimizing using fminunc ============= % In this exercise, you will use a built-in function (fminunc) to find the % optimal parameters theta. % Set options for fminunc options = optimset('GradObj', 'on', 'MaxIter', 400); % Run fminunc to obtain the optimal theta % This function will return theta and the cost [theta, cost] = ... fminunc(@(t)(costFunction(t, X, y)), initial_theta, options); ... ================================ 不是很能理解optimset和fminunc的用法 [theta, cost] = ... fminunc(@(t)(costFunction(t, X, y)), initial_theta, options); =============================== 我是matlab初学者，这里需要用这个函数来实现梯度下降算法，也就是迭代多次学习theta。请问在fminunc里是怎样实现迭代的呢？那个@t是什么意思？optimset里的‘GradObj’是什么意思？ 跪等大神解救！

global xpath clear FF x1=(-3:.1:3)'; x2=x1; N=length(x1); for ii=1:N for jj=1:N FF(ii,jj)=rosen([x1(ii) x2(jj)]'); end end % quasi-newton xpath=[];t0=clock; opt=optimset('fminunc'); opt=optimset(opt,'Hessupdate','bfgs','gradobj','on','Display','Iter',... 'LargeScale','off','InitialHessType','identity',... 'MaxFunEvals',150,'OutputFcn',@outftn); x0=[-1.9 2]'; xout1=fminunc('rosen',x0,opt); % quasi-newton xbfgs=xpath; % gradient search xpath=[]; opt=optimset('fminunc'); opt=optimset(opt,'Hessupdate','steepdesc','gradobj','on','Display','Iter',... 'LargeScale','off','InitialHessType','identity','MaxFunEvals',2000,... 'MaxIter',1000,'OutputFcn',@outftn); xout=fminunc('rosen',x0,opt); xgs=xpath; % hybrid GS and BFGS xpath=[]; opt=optimset('fminunc'); opt=optimset(opt,'Hessupdate','steepdesc','gradobj','on','Display','Iter',... 'LargeScale','off','InitialHessType','identity','MaxFunEvals',5,'OutputFcn',@outftn); xout=fminunc('rosen',x0,opt); opt=optimset('fminunc'); opt=optimset(opt,'Hessupdate','bfgs','gradobj','on','Display','Iter',... 'LargeScale','off','InitialHessType','identity','MaxFunEvals',150,'OutputFcn',@outftn); xout=fminunc('rosen',xout,opt); xhyb=xpath; figure(1);clf contour(x1,x2,FF',[0:2:10 15:50:1000]) hold on xlabel('x_1') ylabel('x_2') title('Rosenbrock with BFGS') pause(1) plot(x0(1),x0(2),'ro','Markersize',12); pause(1) plot(1,1,'rs','Markersize',12); pause(1) for ii = 1:size(xbfgs,1) plot(xbfgs(ii,1),xbfgs(ii,2),'bd','Markersize',12); pause(1) end hold off figure(2);clf contour(x1,x2,FF',[0:2:10 15:50:1000]); hold on xlabel('x_1') ylabel('x_2') title('Rosenbrock with GS') pause(1) plot(x0(1),x0(2),'ro','Markersize',12); pause(1) plot(1,1,'rs','Markersize',12); pause(1) for ii = 1:size(xgs,1) plot(xgs(ii,1),xgs(ii,2),'m+','Markersize',12);% pause(1) end hold off figure(3);clf contour(x1,x2,FF',[0:2:10 15:50:1000]); hold on xlabel('x_1') ylabel('x_2') title('Rosenbrock with GS(5) and BFGS') pause(1) plot(x0(1),x0(2),'ro','Markersize',12); pause(1) plot(1,1,'rs','Markersize',12); pause(1) for ii = 1:size(xhyb,1) plot(xhyb(ii,1),xhyb(ii,2),'m+','Markersize',12); pause(1) end hold off figure(4);clf mesh(x1,x2,FF'); axis([-3 3 -3 3 0 1000]) xlabel('x_1') ylabel('x_2') title('Rosenbrock with BFGS') hold on pause plot3(x0(1),x0(2),rosen(x0')+5,'ro','Markersize',12,'MarkerFaceColor','r'); pause(1) plot3(1,1,rosen([1 1]),'ms','Markersize',12,'MarkerFaceColor','m'); pause(1) for ii = 1:size(xbfgs,1) plot3(xbfgs(ii,1),xbfgs(ii,2),rosen(xbfgs(ii,:))+5,'gd','MarkerFaceColor','g'); pause(1) end %for ii = 1:size(xgs,1) % plot3(xgs(ii,1),xgs(ii,2),rosen(xgs(ii,:))+5,’m+’); pause(1); %end hold off hh=get(gcf,'children'); set(hh,'View',[-177 89.861],'CameraPosition',[-0.585976 11.1811 5116.63]); function stop = outftn(x,optimValues,state) global xpath stop = 0; xpath=[xpath;x']; end % function [F,G]=rosen(x) if size(x,1)==2, x=x'; end F=100*(x(:,2)-x(:,1).^2).^2+(1-x(:,1)).^2; G=[100*(4*x(1)^3-4*x(1)*x(2))+2*x(1)-2; 100*(2*x(2)-2*x(1)^2)]; end
MATLAB求距离最小值的计算

matlab逻辑回归代价函数报错

Ng机器学习课程Part 2 Logistic Regression作业中的问题，急！！！

global xpath clear FF x1=(-3:.1:3)'; x2=x1; N=length(x1); for ii=1:N for jj=1:N FF(ii,jj)=rosen([x1(ii) x2(jj)]'); end end % quasi-newton xpath=[];t0=clock; opt=optimset('fminunc'); opt=optimset(opt,'Hessupdate','bfgs','gradobj','on','Display','Iter',... 'LargeScale','off','InitialHessType','identity',... 'MaxFunEvals',150,'OutputFcn',@outftn); x0=[-1.9 2]'; xout1=fminunc('rosen',x0,opt); % quasi-newton xbfgs=xpath; % gradient search xpath=[]; opt=optimset('fminunc'); opt=optimset(opt,'Hessupdate','steepdesc','gradobj','on','Display','Iter',... 'LargeScale','off','InitialHessType','identity','MaxFunEvals',2000,... 'MaxIter',1000,'OutputFcn',@outftn); xout=fminunc('rosen',x0,opt); xgs=xpath; % hybrid GS and BFGS xpath=[]; opt=optimset('fminunc'); opt=optimset(opt,'Hessupdate','steepdesc','gradobj','on','Display','Iter',... 'LargeScale','off','InitialHessType','identity','MaxFunEvals',5,'OutputFcn',@outftn); xout=fminunc('rosen',x0,opt); opt=optimset('fminunc'); opt=optimset(opt,'Hessupdate','bfgs','gradobj','on','Display','Iter',... 'LargeScale','off','InitialHessType','identity','MaxFunEvals',150,'OutputFcn',@outftn); xout=fminunc('rosen',xout,opt); xhyb=xpath; figure(1);clf contour(x1,x2,FF',[0:2:10 15:50:1000]) hold on xlabel('x_1') ylabel('x_2') title('Rosenbrock with BFGS') pause(1) plot(x0(1),x0(2),'ro','Markersize',12); pause(1) plot(1,1,'rs','Markersize',12); pause(1) for ii = 1:size(xbfgs,1) plot(xbfgs(ii,1),xbfgs(ii,2),'bd','Markersize',12); pause(1) end hold off figure(2);clf contour(x1,x2,FF',[0:2:10 15:50:1000]); hold on xlabel('x_1') ylabel('x_2') title('Rosenbrock with GS') pause(1) plot(x0(1),x0(2),'ro','Markersize',12); pause(1) plot(1,1,'rs','Markersize',12); pause(1) for ii = 1:size(xgs,1) plot(xgs(ii,1),xgs(ii,2),'m+','Markersize',12);% pause(1) end hold off figure(3);clf contour(x1,x2,FF',[0:2:10 15:50:1000]); hold on xlabel('x_1') ylabel('x_2') title('Rosenbrock with GS(5) and BFGS') pause(1) plot(x0(1),x0(2),'ro','Markersize',12); pause(1) plot(1,1,'rs','Markersize',12); pause(1) for ii = 1:size(xhyb,1) plot(xhyb(ii,1),xhyb(ii,2),'m+','Markersize',12); pause(1) end hold off figure(4);clf mesh(x1,x2,FF'); axis([-3 3 -3 3 0 1000]) xlabel('x_1') ylabel('x_2') title('Rosenbrock with BFGS') hold on pause plot3(x0(1),x0(2),rosen(x0')+5,'ro','Markersize',12,'MarkerFaceColor','r'); pause(1) plot3(1,1,rosen([1 1]),'ms','Markersize',12,'MarkerFaceColor','m'); pause(1) for ii = 1:size(xbfgs,1) plot3(xbfgs(ii,1),xbfgs(ii,2),rosen(xbfgs(ii,:))+5,'gd','MarkerFaceColor','g'); pause(1) end %for ii = 1:size(xgs,1) % plot3(xgs(ii,1),xgs(ii,2),rosen(xgs(ii,:))+5,’m+’); pause(1); %end hold off hh=get(gcf,'children'); set(hh,'View',[-177 89.861],'CameraPosition',[-0.585976 11.1811 5116.63]); function stop = outftn(x,optimValues,state) global xpath stop = 0; xpath=[xpath;x']; end % function [F,G]=rosen(x) if size(x,1)==2, x=x'; end F=100*(x(:,2)-x(:,1).^2).^2+(1-x(:,1)).^2; G=[100*(4*x(1)^3-4*x(1)*x(2))+2*x(1)-2; 100*(2*x(2)-2*x(1)^2)]; end

clear; fun='exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1)'; x0=[-1,1]; [x,fval]=fminunc(fun,x0)

【JSON解析】浅谈JSONObject的使用

python自动下载图片

【前言】 　　收到一封来信，赶上各种事情拖了几日，利用今天要放下工作的时机，做个回复。 　　2020年到了，就以这一封信，作为开年标志吧。 【正文】 　　您好，我是一名现在有很多困惑的大二学生。有一些问题想要向您请教。 　　先说一下我的基本情况，高考失利，不想复读，来到广州一所大专读计算机应用技术专业。学校是偏艺术类的，计算机专业没有实验室更不用说工作室了。而且学校的学风也不好。但我很想在计算机领...

Java 14 都快来了，为什么还有这么多人固守Java 8？

【CSDN编者按】1月2日，阿里巴巴发布《达摩院2020十大科技趋势》，十大科技趋势分别是：人工智能从感知智能向认知智能演进；计算存储一体化突破AI算力瓶颈；工业互联网的超融合；机器间大规模协作成为可能；模块化降低芯片设计门槛；规模化生产级区块链应用将走入大众；量子计算进入攻坚期；新材料推动半导体器件革新；保护数据隐私的AI技术将加速落地；云成为IT技术创新的中心 。 新的画卷，正在徐徐展开。...

Python+OpenCV实时图像处理

2020年一线城市程序员工资大调查

python爬取百部电影数据，我分析出了一个残酷的真相
2019年就这么匆匆过去了，就在前几天国家电影局发布了2019年中国电影市场数据，数据显示去年总票房为642.66亿元，同比增长5.4%；国产电影总票房411.75亿元，同比增长8.65%，市场占比 64.07%；城市院线观影人次17.27亿，同比增长0.64%。 看上去似乎是一片大好对不对？不过作为一名严谨求实的数据分析师，我从官方数据中看出了一点端倪：国产票房增幅都已经高达8.65%了，为什...

Windows可谓是大多数人的生产力工具，集娱乐办公于一体，虽然在程序员这个群体中都说苹果是信仰，但是大部分不都是从Windows过来的，而且现在依然有很多的程序员用Windows。 所以，今天我就把我私藏的Windows必装的软件分享给大家，如果有一个你没有用过甚至没有听过，那你就赚了????，这可都是提升你幸福感的高效率生产力工具哦！ 走起！???? NO、1 ScreenToGif 屏幕，摄像头和白板...

【程序人生】程序员接私活常用平台汇总
00. 目录 文章目录00. 目录01. 前言02. 程序员客栈03. 码市04. 猪八戒网05. 开源众包06. 智城外包网07. 实现网08. 猿急送09. 人人开发10. 开发邦11. 电鸭社区12. 快码13. 英选14. Upwork15. Freelancer16. Dribbble17. Remoteok18. Toptal19. AngelList20. Topcoder21. ...

Idea 中最常用的10款插件（提高开发效率），一定要学会使用！

AI 没让人类失业，搞 AI 的人先失业了

2020年，冯唐49岁：我给20、30岁IT职场年轻人的建议

B站是个宝，谁用谁知道???? 作为一名大学生，你必须掌握的一项能力就是自学能力，很多看起来很牛X的人，你可以了解下，人家私底下一定是花大量的时间自学的，你可能会说，我也想学习啊，可是嘞，该学习啥嘞，不怕告诉你，互联网时代，最不缺的就是学习资源，最宝贵的是啥？ 你可能会说是时间，不，不是时间，而是你的注意力，懂了吧！ 那么，你说学习资源多，我咋不知道，那今天我就告诉你一个你必须知道的学习的地方，人称...

【蘑菇街技术部年会】程序员与女神共舞，鼻血再次没止住。（文末内推）

Java校招入职华为，半年后我跑路了