Python能用来做什么?以下是Python的三大主要用途

Opencv相机校准之棋盘格标定 Reference: https://yq.aliyun.com/articles/62472 阅读详情

如果你想学Python,或者你刚开始学习Python,那么你可能会问:“我能用Python做什么?”

这个问题不好回答,因为Python有很多用途。

但是随着时间,我发现有Python主要有以下三大主要应用:

· Web开发

· 数据科学

包括机器学习、数据分析和数据可视化

· 脚本

让我们来依次介绍。

一、Web开发

Django和Flask等基于Python的Web框架最近在Web开发中非常流行。

这些Web框架可以帮助你用Python编写服务器端代码(后端代码)。这是在你的额服务器上运行的代码,而不是运行在用户设备和浏览器的代码(前端代码)。

为什么需要Web框架

因为用Web框架可以更容易地构建通用后端逻辑。这包括将不同的URL映射到Python代码块,处理数据库以及生成用户在浏览器中看到的HTML文件。

应该使用哪种Python Web框架

Django和Flask是最流行的两种Python Web框架。如果你刚刚入门,我建议使用其中一种。

Django和Flask有什么区别

Gareth Dwyer 关于这个问题有一篇出色的文章,在这里我引用几段:

主要区别

Flask:能够实现简单、灵活和细致的控制。并能让你自己决定实现方式。

Django:提供了全面的体验:你可以获得管理面板、数据库接口、ORM(对象关系映射)以及开箱即用的应用程序和项目的目录结构。

如何选择

Flask:如果你关注的是经验和学习的机会,或者你想更多地控制使用哪些组件,比如你想使用哪些数据库以及如何与其进行交互。

Django:如果你关注最终产品,或者你正在研究一个简单的应用,比如新闻网站、网店或博客,并且你希望有单一实现的方式。

换句话说,如果你是初学者,Flask可能是更好的选择,因为它要掌握的组件更少。此外,如果你想要更多的定制,那就选Flask。

根据我的数据工程师朋友Jonathan T Ho的说法,由于Flask 的灵活性,在创建REST API时,Flask 比Django 更适合。

另一方面,如果你想直接构建一些东西,Django可能会让你更快实现。

二、数据科学

数据科学,这里包括机器学习,数据分析和数据可视化。

机器学习是什么

假设你想开发一个能够自动检测图片内容的程序。给出图1,你希望程序识别这是一只狗。

图1

给出图2,希望程序能识别这是一张桌子。

图2

你可能会说,我可以写一些代码来做到这点。例如,如果图片中有很多浅棕色像素,那么可以识别是狗。

或者可以检测图片中的边缘,如果有很多直的边缘,那么就是桌子。

但这种方法很快就不好用了。如果图片中的狗不是棕色毛的怎么办?如果图片只显示桌子的圆形部分怎么办?

这里就需要用到机器学习了。

机器学习通过实现算法,该算法能够自动检测输入中的模式。

例如,你将1000张狗的图片和1000张桌子的图片输入给机器学习算法,让它掌握狗和桌子间的区别。那么当你给出新的图片让它识别是狗还是桌子时,它就能够进行判断。

这有点类似孩子学习新事物的方式。孩子是如何学习认知狗或桌子的呢?就是通过大量的例子。

你不会明确告诉孩子:“如果某个毛茸茸的东西有浅棕色的毛发,那么就可能是狗。”

你会说,“这是狗,这也是狗。而这是桌子,那个也是桌子。“

机器学习算法的方式大致相同。

我们可以将相同的想法应用于:

· 推荐系统

(比如YouTube,亚马逊和Netflix)

· 人脸识别

· 语音识别

以及其他应用。

你听过的热门机器学习算法包括:

· 神经网络

· 深度学习

· 支持向量机

· 随机森林

你可以使用上述任何算法来解决前面提到的图片标签问题。

将Python用于机器学习

有一些热门的机器学习库和Python框架。其中两个最热门的是scikit-learn和TensorFlow。

· scikit-learn带有一些内置的热门机器学习算法。

· TensorFlow是一个低级库,能让你创建自定义机器学习算法。

如果你刚开始进行机器学习项目,我会建议你先从scikit-learn开始。如果你开始遇到效率问题,那么可以使用TensorFlow。

数据分析和数据可视化

假设你在一家在线销售产品的公司工作。作为数据分析师,你会绘制这样的条形图。

条形图1 - 用Python生成

从这张图中可以看到在某个周日,男性用户购买了400多件产品,女性用户购买了350件产品。

作为数据分析师,对此你会提出一些可能的解释。明显的解释是,该产品在男性用户中更受欢迎。另一种是样本量太小,而这种差异是偶然的。还可能呢是由于某种原因,男性往往在周日才购买该产品。

为了理解哪种解释是正确的,你可以绘制另一个图。

折线图1 - 用Python生成

不止看周日的数据,还要看到一周的数据。从这张图表中可以看出,在不同的日子里这种差异比较一致。

从这个分析中你会得出结论:这种产品在男性中比在女性中更受欢迎。

但如果你看到像这样的图表呢?

折线图2 - 用Python生成

那么,怎么解释周日的差异呢?

你可能会说,也许出于某种原因男性只在周日才会更多地购买这款产品。或许这只是巧合。

我在谷歌和微软工作时所做的数据分析工作与这个例子非常相似,只是更复杂一些。在谷歌时我使用Python进行分析,而我在微软使用JavaScript。

在这两家公司我都使用SQL从数据库中提取数据。然后,我用Python和Matplotlib(在谷歌)或JavaScript和D3.js(在微软)来可视化和分析这些数据。

使用Python进行数据分析/可视化

进行数据可视化时,Matplotlib是非常热门的库。

Matplotlib很棒,因为:

· 容易上手

· seaborn等库是基于它的,学习Matplotlib可以帮助你以后学习其他库。

如何用Python学习数据分析/可视化

你首先应该了解数据分析和可视化的基础知识。在学习了数据分析和可视化的基础知识之后,学习统计学基础知识也将会很有帮助。

三、脚本

什么是脚本?

脚本通常是指编写能够自动执行简单任务的小程序。

我曾经在日本的一家小型创业公司工作,公司有邮件支持系统,这用来回复客户通过邮件发送给我们的问题。

在那儿工作时,我的任务是计算包含关键字的邮件数量,以便分析我们收到的电子邮件。这可以手动完成,但我写了一个简单的脚本来自动执行此任务。

当时我们使用了Ruby,但对于这类任务Python也是不错的选择。Python适合这类任务,因为它语法简单,易于编写,而且进行测试也很快。

其他用途

嵌入式应用

我不是这方面的专家,但我知道Python可以与Rasberry Pi一起用,在硬件爱好者中很流行。

游戏开发

你可以用PyGame来开发游戏,但这并不是最受欢迎的游戏引擎。你可以用它来开发业余爱好项目,但如果你对游戏开发很认真,建议不要选它。

我建议使用Unity的C#,这是最受欢迎的游戏引擎之一。它能让你为许多平台开发游戏,包括Mac、Windows、iOS和Android。

桌面应用

你可以用Python的Tkinter,但这并不是最热门的选择。Java,C#和C ++等语言似乎更受欢迎。

最近,一些公司也开始使用JavaScript来开发桌面应用程序。例如,Slack的桌面应用是Electron构建的。它能让你用JavaScript构建桌面应用程序。

就个人而言,如果我要开发桌面应用,我会选择使用JavaScript。它能让你重新使用网络版本的一些代码。

当然,我并不是桌面应用的专家,所以如果你有不同的看法,评论中告诉我。

Python 3还是Python 2

我会推荐Python 3,因为它更新而且更受欢迎。

后端代码与前端代码的区别

假设你想开发类似Instagram的产品,那么你需要为想要支持类型的设备创建前端代码。

你可能会用到:

· 面向iOS端的Swift

· 面向Android的Java

· 面向Web浏览器的JavaScript

每组代码将在每种类型的设备上运行。这类代码将决定应用的布局样式,点击按键的样式等。

但是,您还需要存储用户信息和照片的功能。你要将它们存储在服务器上,而不仅仅存储在用户的设备上,以便每个用户的关注者都可以查看其照片。

这时需要用到后端代码/服务器端代码。你需要编写后端代码来执行以下操作:

· 记录关注情况

· 压缩照片,从而不占用太多存储空间

· 在发现功能中向每个用户推荐照片和新帐户

这是后端代码和前端代码之间的区别。

顺便说一下,Python不是编写后端代码的唯一选择,还有基于JavaScript的Node.js等选择。

Python经验分享

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

Python学习路线

这里把Python常用的技术点做了整理,有各个领域的知识点汇总,可以按照上面的知识点找对应的学习资源。
在这里插入图片描述

学习软件

Python常用的开发软件,会给大家节省很多时间。
在这里插入图片描述

学习视频

编程学习一定要多多看视频,书籍和视频结合起来学习才能事半功倍。
在这里插入图片描述

100道练习题

在这里插入图片描述

实战案例

光学理论是没用的,学习编程切忌纸上谈兵,一定要动手实操,将自己学到的知识运用到实际当中。
在这里插入图片描述
最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至优快云官方,朋友如果需要可以直接微信扫描下方优快云官方认证二维码免费领取【保证100%免费】。

华为OD面试八股真题 - 操作系统相关 - 2 华为OD技术面,操作系统相关八股真题提供详细解答,这篇博客主要涉及于进程和线程相关知识点 阅读详情

相关推荐

骗分导论 CSP、NOIP、蓝桥杯、PAT、USACO等竞赛的算法骗分技巧 轻松省三

问题来了,那么多座桥,炸一座就破坏岛屿的联系,可能性微乎其微(除非特别设计数据)。它们的价值极大,不仅能初步帮你检验程序的对错,而且,如果你不会做这道题,你就可以直接输出样例!在OI考试中最后难的题数据最后的几个,他们往往不会创造新的数据,此时就可以直接输出最后几个数据了。需要运用《骗分导论》第3章中学到的知识,先写出朴素算法,然后造一些数据,可能就会发现规律。有些时候,问题的答案可能很有特点:对于大多数情况,答案是一样的。据说,在NOIP2013中,有人最后一题不会,愤然打了个随机数,结果得了。

星卯教育-信奥教练tony 6407

python能够干什么?全干货!一篇文章详细告诉你

本篇文章的目的是介绍Python究竟可以用在多少个领域,以及它到底有多好用,有什么可用的工具包这一点上,以及对Python的相关管理环境和集成开发环境做一个简单的科普, 本篇文章主要来讲,还是以扩展视野为主要目的。

z099164的博客 1万+

(10)Proteus 8.9上的STM32仿真系列(HAL)---freertos

实验设计:通过cubemxide生成freertos工程,然后创建一个 pc13 led灯间隔200ms闪烁的任务。非常遗憾的是proteus8.9仿真失败,实物上没有问题,但还是把流程过一遍。 一、原理图 实物是淘宝上stm32f103 c8t6的核心板,proteus上没有这个芯片,这里图上大概表示一下,用的是核心板自带的pc13引脚的led灯。 二、cubemxide配置 1.RCC如之前工程一样配置 2、配置SYS timebase Source不要使用systick,自己选择一个定时器,我这

qq_35442550的博客 7346

Python到底能做什么?

随着互联网行业的发展,编程越来越受到人们的重视,但是始终很多人并不了解编程是什么,能做什么事情。今天就来重点解答这些问题,以Python这个热门的编程语言为例子,为大家解答一些最常见的疑惑。

m0_59236127的博客 1万+

密码学:一文读懂数字证书

消息摘要算法用于验证数据完整性服务,对称加密算法和非对称加密算法用于保证数据保密性服务,数字签名算法用于抗否认性服务。数字证书集合了多种密码学算法:自身带有公钥信息,可完成相应的加密/解密操作;同时,还带有数字签名,可鉴别消息来源;且自身带有消息摘要信息,可验证证书的完整性;由于证书本身含有用户身份信息,因而具有认证性。

Shujie 2913

利用PLECS实现Boost变换器的闭环控制仿真与优化

本文详细介绍了如何利用PLECS仿真软件实现Boost变换器的闭环控制与优化。从基础原理到开环系统搭建,再到闭环控制设计与动态优化,提供了完整的仿真实践指南。通过PLECS的仿真功能,工程师可以有效诊断问题、优化参数,并实现高性能的DC-DC变换器设计。

weixin_42527401的博客 325

python能用来做什么?这3大主要用途你一定要知道!(实用)

导读:如果你想学Python,或者你刚开始学习Python,那么你可能会问:“我能用Python做什么?这个问题不好回答,因为Python有很多用途。但是随着时间,我发现有Python主要有以下三大主要应用:Web开发数据科学:包括机器学习、数据分析和数据可视化脚本本文将依次介绍。01 Web开发Django和Flask等基于Python的Web框架最近在Web开发中非常流行。这些Web框架可以帮助你用Python编写服务器端代码(后端代码)。

weixin_67991858的博客 3716

代码复现5——VLMaps

报错“AttributeError: module 'clip' has no attribute 'load'”,运行下述命令解决。运行后接着报错:“ModuleNotFoundError: No module named 'pytorch_lightning'”运行后命令后会弹出一个RGB窗口,可以用键盘上的“W”“A”“D”键控制移动视角的变化,“空格”键开始记录,“q”键停止。并更改相关代码文件,vlmaps/vlmaps/lseg/modules/models/lseg_vit.py。

qq_44100524的博客 603

python可以应用在哪些方面,python可应用于哪些方面

豆瓣:公司几乎所有的业务均是通过 python 开发的知乎:国内最大的问答社区,通过 python 开发(Quora) 春雨医生:国内知名的在线医疗网站是用 python 开发的还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝、土豆、新浪、果壳等公司都在使用 python 完成各种各样的任务。2、Linux运维:通过shell脚本去实现自动化运维,但是编程能力较弱,可以使用功能的库很少,而Python作为胶水语言,可以很方便的与其他想结合,对各类工具进行二次开发,形成一套自己的运维管理系统。

神器榜 2万+

最新腾讯手游游戏appid列表及urlScheme一览 urlscheme查询

[全网独家] 2024最新腾讯游戏appid列表及urlScheme一览 手游包含王者荣耀QQ飞车我的世界PUBG吃鸡和平精英金铲铲之战三角洲行动QQ炫舞拳皇98OL欢乐斗地主 元梦之星使命召唤等

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 2万+

Flink实战案例(十三):Flink DataStream 八大分区策略与自定义分区器

声明:本系列博客是根据SGG的视频整理而成,非常适合大家入门学习。 《2021年最新版大数据面试题全面开启更新》 分区策略决定了一条数据如何发送给下游。Flink中默认提供了八大分区策略(也叫分区器)。 本文基于Flink 1.9.0总结Flink DataStream中的八大分区策略以及手动实现一个自定义分区器。 八大分区策略继承关系图 ChannelSelector: 接口,决定将记录写入哪个Channel。有3个方法: void setup(int numberOfChannels):

微信搜:import_bigdata,大数据领域硬核原创作者 1125

学Python 都能用来做什么?

Python能做的事情非常多,小到爬虫、自动化脚本,大到web开发、机器学习,python都可以搞定。

DEVELOPERAA的博客 1842

2021.07.05【R语言】丨预测lncRNA并绘制venn图

目录摘要环境与方法依赖工具预测工具绘制工具使用命令预测lncRNA统计noncoding_ID绘制Venn图结果展示总结 摘要 接到一个单样品测lncRNA数据的项目,正好拿来练练手,梳理一下lncRNA流程。这里记录预测lncRNA并生成venn图的过程 环境与方法 R version 3.6.3 (2020-02-29) 依赖工具 预测工具 CPC2 CNCI Pfam CPAT 绘制工具 R:VennDiagram 使用命令 预测lncRNA CPC2 #更换env conda activate py

2036

python主要用途-Python能用来做什么?以下是Python的三大主要用途

作者 YK Sugi编译 Mika本文为 CDA 数据分析师原创作品,转载需授权观看更多国外公开课,点击"阅读原文"如果你想学Python,或者你刚开始学习Python,那么你可能会问:“我能用Python做什么?”这个问题不好回答,因为Python有很多用途。但是随着时间,我发现有Python主要有以下三大主要应用:· Web开发· 数据科学包括机器学习、数据分析和数据可...

weixin_37988176的博客 191

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

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

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

python主要用途-学习Python的三大主要用途

如果你想学Python,或者你刚开始学习Python,那么你可能会问:“我能用Python做什么?”这个问题不好回答,因为Python用途太多了,以至于小编不知道如何回答,但是我可以告诉大家的是几个主要用途,Python主要有以下三大主要应用:一、Web开发Web框架可以帮助你用Python编写服务器端代码(后端代码)。这是在你的额服务器上运行的代码,而不是运行在用户设备和浏览器的代码(前端代码)...

weixin_37988176的博客 163

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

python主要用来做什么-Python能用来做什么?以下是Python的三大主要用途

如果你想学Python,或者你刚开始学习Python,那么你可能会问:"我能用Python做什么?”这个问题不好回答,因为Python有很多用途。但是随着时间,我发现有Python主要有以下三大主要应用:· Web开发· 数据科学包括机器学习、数据分析和数据可视化· 脚本让我们来依次介绍。一、Web开发Django和Flask等基于Python的Web框架最近在Web开发中非常流行。这些...

q6q6q的专栏 1142

深度学习工具包 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")

python有哪些用途-Python能用来做什么?以下是Python的三大主要用途

作者 YK Sugi编译 Mika本文为 CDA 数据分析师原创作品,转载需授权观看更多国外公开课,点击"阅读原文"如果你想学Python,或者你刚开始学习Python,那么你可能会问:"我能用Python做什么?”这个问题不好回答,因为Python有很多用途。但是随着时间,我发现有Python主要有以下三大主要应用:· Web开发· 数据科学包括机器学习、数据分...

q6q6q的专栏 418
上一篇: 数据分析|Python实操
下一篇: 大家都在学的 Python,可以用来干什么?
壹只小小码农
博客等级 码龄5年 8105粉丝 1333原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值