【新手必看!】半夜学妹发信息给我,害我非常激动,结果问我如何搭建python的开发环境

基于Codex与Skills的学术研究自动化全流程实战指南 还在为海量文献下载、整理、阅读和综述写作而头疼吗?面对堆积如山的PDF,你是否感到无从下手?从选题、文献检索、到写作、绘图、润色,再到应对AI检测和审稿意见,学术研究的每一步都充满挑战。本文将为你带来一套堪称“王炸组合”的解决方案: Codex + Skills 。这不是简单的工具介绍,而是一套从零开始,覆盖学术研究全流程的保姆级实战教程。我们将手把手教你如何安装、配置,并利用强大的Skills(技能)自动化处理文献下载管理、高效撰写综述、生成专业图表、智能润色降重,直至应对审稿。无论你是科研新手还是希望提 阅读详情

此文章内容适合所有人,只要你认识字,小白跟着一步一步操作都可以成功把Python环境安装好,整个过程还可以了解一些开发相关的基础知识。如果觉得还不错,那就请你点个赞或者点个关注,这将是我最大的动力!

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-R3Z9b5QD-1692863367888)(https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/d02e75b81871438bad6d178ce595f8ce~tplv-k3u1fbpfcp-zoom-1.image)]


首先,谈到开发环境,这是一个既基础又重要的东西。python程序员用开发语言进行工作创造,或者小白要学习一门开发语言,那么搭建开发环境是必须的第一步。就像冲锋陷阵的士兵要有战场,伐木工要找到可伐的树林一样。对于士兵来说,战场就是他们搭建的“开发环境”,而对于伐木工来说,树林就是他们的“开发环境”。

Python的开发环境搭建其实很简单,找到正确的方法,就能够更快速的完成开发环境的搭建,就能少走弯路少掉发。本文章一个小白看完了都能快速的完成搭建,现在让我来介绍如何搭建。


第一步:准备工作

1 、下载正确的安装文件

对于Python来说,无论新手还是老手,搭建开发环境要找到可靠的安装文件。Python的官网给我们提供了最新,最完整的安装文件下载方案。我们只要进入官网(https://www.python.org/),找到下载链接下载就好,如下

这里使用windows系统,直接点击就可以下载下来(OX,和linux系统也一样)。需要注意的是,我选择的是最新版本Python。如果你是一个全新的小白,刚下决心进入软件开发的坑,那么去理解版本号的意义其实是很重要的。我们可以在Python官网找到提供所有Python发行版本下载地址,可以在官方网站 DownLoad 链接下。

截至目前Python官网提供了3.9、3.8 、3.7 、 3.6 、2.7这五个版本,这些版本都可以用于安装我们的开发环境。那问题来了这几个版本他们之间有什么样的不同之处呢?

2、我们需要了解版本号的意义

小数点前面的我们叫做大版本号,它代表的是这个软件或者这个编程语言有了质的飞越,无论从性能上、语法的使用上、一些基本的概念上还是功能上,都有很大的不同。但带来的后果就是用后面的版本编写的程序不能直接在最新的版本环境下运行,后者会造成系统报错。用软件行业的行话来说叫做向下不兼容。


那 3.8 到 3.9会有什么不同呢?小数点后面的数字代表了一个软件产品或开发语言有了小版本的进步,这些进步包括了BUG的修复,一些新的功能特性,或者性能上的改善。如果要把一个用python3.8甚至python3.7编写的项目升级到python3.9其实很简单,甚至不用去修改任何东西。用软件行业的话来说,叫做向下兼容。

第二步,安装Python工具包

Python安装很简单,在windows系统下面右键已经下载好的安装文件,选择“以管理员身份运行”启动安装程序,然后下一步,下一步就可以。不过在安装的过程中,下面的细节值得注意

1 、不建议使用默认位置安装

但是为什么默认位置不适合安装呢?

原因有以下几点:

1.这个位置不好找:配置一些第三方库全局变量时会有一些不顺手。大部分windows电脑C盘都不是很大,并且C盘有些时候会受到访问权限的影响,外部程序想要调用Python的核心库,会出问题。

2.未来可能会有很多的Python虚拟机,放在C盘不是很好管理。

3.我们一般都会用这样的地址来代替默认安装地址,比如:

(1).D:\Python

(2).E:\Python

(3).C:\Python(如果你的PC只有一个分区,这是最次的方案了)

修改默认地址:在安装时选择自定义安装,然后点击“下一步” 就可以看到这个界面:

记得设置好,点击 install 耐心等待就好。


第三步,安装完成

当你看到下图的界面,说明已经安装成功了。

第四步,安装一个好的IDE作为编写Python代码的工具

安装完成之后,在开始菜单找到文件夹。IDLE自带开发环境,打开python 3.9.6(64-bit)

可以用文档和解释器打开运行代码。

1.首先看一下交互式的解释器,教大家一个小技巧,打开交互式解释器,不需要每次都从菜单找,我们可以直接按下window+R,打开运行,输入python就能打开这个python的交互式环境,可以用来计算一些常见的数学运算,如下图:

比如:输入了3*3,一下就可以算出来是9;


比如:输入2**3,这是幂运算,意思是2的三次方,一下就可以算出是8;


又或者可以用数字大一点来算,你们自己操作的时候可以看到,大数字算起来几乎也是一瞬间返回结果的。

经常使用python适合科学运算,从这里就能了解到一点原因。像其他的语言,计算大数字要额外加库的。python直接将集成在了原系统的底层,直接原生支持了运算,不仅是这里展示的大数运算,还有很多其他特性。所以在科学计算中有一定优势,如单单当成一天个功能性强大的计算器,那太浪费了。在这个交互式环境中也可以执行代码。


比如,跑一个print函数

解释器一般用来验证一些代码,而不会真的写很长的代码。


2.接下来看一下IDLE

通过自带的IDLE运行python代码,IDLE是python安装包自带的一个开发环境。

乍一看和刚刚的交互式环境没什么区别 ,就是颜色变白了而已,其实他的语言更加丰富,比如说可以打开python的一个源文件来运行,或者是将当前的代码保存为一个python的源文件,还有一些其他功能,不过这些功能对于我们来说还是略微显得不足,所以后期也很少使用IDLE。


这里有一些小彩蛋和学习资源给大家介绍:

1.输入import this 会输出python之禅(打开window+r) ,可以看到有信息出来,这也是一个python的一个设计哲学,大家有兴趣可以搜索翻译,其实还是挺有意思的。


2.Idle中有一些有趣的Demo(Help—Turtle Demo),这是一个绘图的例子。


Example里面有非常多的例子,比如说yinyang,这里可以画出一个太极图案。


除了它,还有一些其他的例子,minmal-hanoor,这是一个汉诺塔。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hPB79PmM-1692863367896)(https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/82d9d7e65ff44d31a56595dd5cb12a1c~tplv-k3u1fbpfcp-zoom-1.image)]

还有很多其他的例子,大家感兴趣的话可以自己一个一个点出来看一看。


第五步、下载合适Pycharm

我们通过这个网址进入到Pycharm的官方网站:https://www.jetbrains.com/pycharm/download/。

Pycharm有两个版本,一个专业版(Professional),一个社区版(Community)

(1).左边的专业版拥有全套的Web开发工具箱,开发人员可以使用它快速的搭建和开发任意的网络应用程序,是非常高效和舒服的,但要收费。

(2).右边的是社区版本,是开源的(任何人都可以拿到这个工具的源代码)免费的。但仅有Python相关的开发工具。其实社区版也可以完成专业版能完成的事情,就是比较费事,比较麻烦。对于Python的学习,或者仅写纯Python的代码,使用社区版就足够了。

2.Pycharm的安装和配置

双击下载好的安装文件,然后根据提示勾选选项之后,Next就可以了。到了这一步骤,建议选择在桌面创建快捷方式:


安装完后第一次启动Pycharm,要勾选一个协议,勾选完后Next,选择Don’t send按钮,就可以看到配置Pycharm的样式界面:


3. 创建新项目。

我们配置好Pycharm后,会看到这样一个界面。我们可以根据这个界面引导,来创建一个新的Python项目:

我们先点击第一个,创建一个新项目: ​​​​​​​


为这个新项目去创建一个Python虚拟机。这里涉及到一个重要概念,Python虚拟机,虚拟主机相当于从服务器中分割出一个空间一样。

配置好后,选择Create稍等片刻,项目就为我们创建好了:建好新项目


然后我们在项目目录里面新建一个Python文件,右键点击项目 ->New->Python File:

这里我把新文件命名为c1.py。创建完文件后,在右边的编辑器里输入下面的代码:

print(“hello python”)

然后右键-Run‘c1’(ctrl+shift+F10)运行代码,能看到运行出c1,输出‘hello python’,到这里就差不多啦,是不是一看就会,对新手小白也很友好。


最后 如果小伙伴看到这里,操作到这里时Python的最基础的开发环境就搭建好了。如果对大家有帮助,请大家点个赞或者点个关注,在下方评论或者私信我,我都会一一解答的。 ​​​​​​​

感谢每一位愿意读完我文章的人,创作是一件非常值得持续投入的事情,因为你们每一次的支持都是对我极大的肯定!

这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!

优快云大礼包:全网最全《全套Python学习资料》免费分享🎁

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉优快云大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

​

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
上述所有资料 ⚡️ ,朋友们如果有需要 📦《全套Python学习资料》的,可以扫描下方二维码免费领取 🆓
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉优快云大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

​

Cadence virtuos安装教程 本文详细介绍了在Ubuntu 18.04系统上安装Cadence Virtuoso IC617及MMSIM的完整流程。主要内容包括:1)系统环境准备(安装JDK及相关依赖包);2)通过创建软链接和修改系统文件实现RedHat环境兼容;3)共享目录文件操作与分卷压缩包合并解压技巧;4)使用InstallScape工具的安装步骤详解,包括权限处理和配置选项。特别提醒需注意系统兼容性处理(如创建redhat-release文件)和分卷压缩包的特殊解压方法(cat合并)。整个安装过程涉及大量Linux命令操作,需特 阅读详情

相关推荐

从医疗成像到工业检测:CMOS图像传感器NIR技术的最新应用案例解析

本文深入解析了CMOS图像传感器NIR技术在医疗成像和工业检测中的最新应用案例。通过提升量子效率至70%,NIR技术实现了血管可视化、材料缺陷检测等突破性进展,显著提高了医疗诊断精度和工业质检效率。文章还探讨了系统集成关键考量和前沿发展趋势。

weixin_30879169的博客 92

反了!大半夜的,学妹居然让我教她自动化测试

一个做测试的学妹居然让我教她怎么做自动化测试,真是反了……

自动化测试技术栈 1016

Robocup3d

一、 比赛介绍 RoboCup 仿真比赛是一个能为多智能体系统和模拟智能进行研究、教育的工具。比赛是在一个标准的计算机环境中进行的,提供了一个完全分布式控制、实时异步多智能体环境。通过这个平台,可以测试各种理论、算法和Agent体系结构。在实时异步、有噪声的对抗环境中,研究多智能体的合作对抗问题。当然,仿真组的比赛使用的机器人并非是真的机器人。一个机器人是一个Agent, 它拥有自己的大脑,

zhanghe2775115的专栏 7268

python这个软件学会能做什么工作-学会这项技能,让你在求职中更显优势!

原标题:学会这项技能,让你在求职中更显优势!最近有一位读者准备实习开始找工作,来跟我交流他目前找工作遇到的一些情况:"我被找工作弄得满头包,觉得好像自己学的专业很没有市场,也没有很好的大公司背书,根本没有和 HR 谈薪资的底气。他最近撒简历发现很多公司的招聘信息,都惊人的相似,很多很多岗位在招聘的JD里都写上了:"有Python编程经验”优先这样的条件。这个要求就让没学过Pyt...

weixin_37988176的博客 262

别再只用跳层连接了!手把手教你用DASI和MDCR模块提升红外小目标检测精度

本文详细介绍了如何利用DASI和MDCR模块提升红外小目标检测精度。通过分析传统跳层连接的缺陷,提出维度感知的特征选择性融合(DASI)和多尺度感受野精炼器(MDCR)的创新方案,显著提升小目标检测性能。实验证明,该方法在多个场景下AP@0.5提升达15.4%,特别适用于安防监控和遥感图像分析。

weixin_28715081的博客 224

当图像配准遇见边缘计算:低功耗设备的优化实践

本文探讨了在边缘计算环境下优化图像配准技术的实践方法,重点解决低功耗设备如树莓派和Jetson Nano上的算力瓶颈问题。通过算法轻量化、硬件加速和内存优化等策略,实现了毫秒级图像配准,适用于智能安防、移动医疗等实时性要求高的场景。

weixin_29054195的博客 389

在大学为什么一定要学会Python?

一个从事民宿市场运营的实习生,每天午休抽空学习 Python爬虫,通过抓取竞品店铺的下单情况、单价、销售额、人群画像等,做出每日价格趋势分析报表,帮助公司提升了业绩直接提前转正了。

python122_的博客 1060

Shopee商品详情页反爬实战:手把手逆向x-sap-Ri和x-sap-Sec参数(附完整调试过程)

本文详细解析了Shopee商品详情页反爬机制中的x-sap-Ri和x-sap-Sec参数逆向过程。通过JS逆向技术,从环境数据采集到多层哈希运算,完整拆解了这两个关键参数的生成逻辑,并提供了实战技巧和Node.js实现方案,帮助开发者应对Shopee的动态加密挑战。

weixin_33701251的博客 1598

开课吧python好吗-Python是个什么鬼?求职为何这么难

原标题:Python是个什么鬼?求职为何这么难最近有一位读者准备实习开始找工作,来跟我交流他目前找工作遇到的一些情况:“我被找工作弄得满头包,觉得好像自己学的专业很没有市场,也没有很好的大公司背书,根本没有和 HR 谈薪资的底气。他最近撒简历发现很多公司的招聘信息,都惊人的相似,很多很多岗位在招聘的JD里都写上了:“有Python编程经验”优先这样的条件。这个要求就让没学过Python的学生都不敢...

weixin_37988176的博客 291

修改Windows hosts文件的解决方案

本文主要介绍了修改Windows hosts文件解决方案,希望能对新手有所帮助。 文章目录 1. 问题描述 2. 解决方案 2.1 安装软件 2.2 修改hosts文件

weixin_43178406的博客 1万+

微信小程序 - 实现仿小红书轮播图组件功能,类似小红书笔记页面图片展示播放效果,微信小程序仿小红书幻灯片轮播支持视频播放、图片预览,自动适应图片或视频大小可左右滑动切换(小程序精美轮播图,丝滑切换)

微信小程序,轮播图组件,微信小程序仿小红书轮播图,小红书轮播图仿造,微信小程序轮播图,微信小程序幻灯片,微信小程序高仿小红书轮播图实现,小程序实现类似小红书一样的轮播图组件,轮播图插件,精致轮播图,精美丝滑流畅切换的轮播图,轮播图组件,小红薯轮播图,关于小红书的小程序不同数量的轮播图,展示不一样的轮播指示点的实现,微信小程序仿小红书图片轮播,开发微信小程序模仿小红书,高仿小红书Banner的指示器,小红书小程序笔记详情轮播图指示点的随图片数量的变化动态变化,微信小程序swiper轮播图,js轮播图,html

✅ 精选推荐文章 6934

2023我为什么建议你学Python?

2023我为什么建议你学Python?

一名正义的白帽黑客 252

Kubeflow系统性学习教程:从入门到高级实践

Kubeflow学习教程摘要(150字): Kubeflow是基于Kubernetes的云原生MLOps平台,提供端到端机器学习解决方案。核心功能包括Jupyter Notebooks开发环境、Pipelines工作流编排、分布式训练支持和模型服务部署。教程采用三阶段学习路径:初学者搭建Kind集群体验Notebooks;中级开发自定义Pipeline组件;高级实现企业级应用。通过容器化和K8s CRD深度集成,解决环境一致性、实验跟踪和资源调度等MLOps痛点,相比MLflow/Airflow更适合大规模

自可乐的博客 888

JPA自定义原生SQL语句的查询结果如何转化为对象,三种方法

写在最前面(最近的感悟) 这半年太忙了,好久没写博客了。写久了PHP项目,忽然想拾一拾JAVA项目,因为JAVA的消息队列、日志、分布式方案比较多,可以自己实现的功能比较多,具有比较高的性能,稳定性好,而且考虑到JAVA的开源中间件比较丰富,大数据生态多是JAVA的,适合搞大型项目,于是最近的项目后端采用了 Spring boot + JPA + Redis + MySQL,前端使用 Vue +...

欧阳金城-武 1万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

毕设还有15天,从“三维GIS”滚回“增删改查”——学渣的极限换题逃生全程曝光!

摘要: 毕业设计选题切忌好高骛远,应以"能过"为核心原则。文章通过真实案例警示:某同学选择冷门三维GIS系统课题后,因资料匮乏、时间冲突濒临延毕,最终在答辩前15天紧急换题为SpringBoot管理系统,依托开源模板快速完成并通过答辩。建议优先选择资料充足、源码完整的工程类题目,避开算法/区块链等复杂方向,合理分配时间(70%套模板+30%优化),必要时可购买系统课辅助。记住:本科毕设的核心是顺利通关,而非技术创新。

我们不是普通的猪,我们是一群热爱编程、追求创新的“猪仔”。在这里,我们用键盘敲出梦想,用代码编织未来。 1342

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

在开课吧学python的经历-“你毕业2年,为什么写3年的工作经验?”“加班啊”...

原标题:“你毕业2年,为什么写3年的工作经验?”“加班啊”最近有一位读者准备实习开始找工作,来跟我交流他目前找工作遇到的一些情况:“我被找工作弄得满头包,觉得好像自己学的专业很没有市场,也没有很好的大公司背书,根本没有和 HR 谈薪资的底气。他最近撒简历发现很多公司的招聘信息,都惊人的相似,很多很多岗位在招聘的JD里都写上了:“有Python编程经验”优先这样的条件。这个要求就让没学过Python...

weixin_37988176的博客 119

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

黑马程序员—一个美女程序员面试经历,不要羡慕姐,姐只是个传说!

文章来源:黑马程序员,黑马论坛 致学弟学妹们:   先自我介绍下,我是黑马15期一个很平凡,平凡的不能再平凡的女孩,很高兴刚刚毕业就找到一份自己满意的工作,8k、五险一金、餐补、公交补、电话补助, 项目分红(不坐公交不打电话都照样会补的,老总这样给我说的),公司不怎么加班。想想来到黑马这4个月,实在存在着不少心酸。更重要的是这条道路对女生来 说确实是个挑战。在这四个月里

heima_28的专栏 3055
上一篇: 程序员有哪些绝对不能踩的坑
下一篇: 为何后起之秀的python能逐渐成为编程语言的顶流?
Llama-Turbo
博客等级 码龄4年 9901粉丝 2024原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值