js+书摘

python 爬虫 xpath 存储到数据库 参考 阅读详情
js分为 ECMAScript(核心)、DOM(文档对象模型)、BOM(浏览器对象模型)。

ECMAScript:为“不同种类的宿主”环境提供核心的脚本编程能力,因此核心的脚本语言是与任何特定的宿主环境分开进行规定的。其描述了 语法、类型、语句、关键字、保留字、运算符、对象。
ECMAScript分为 JavaScript、ActionScript、ScriptEase。

DOM:是HTML和XML的应用程序接口(API),Dom将整个界面规划成由节点层级构成的文档,HTML或XML页面的每个部分都是一个节点的衍生物。
DOM不是JavaScript专有的,事实上许多其他语言都实现了它,不过,Web浏览器中的DOM已经用ECMAScript实现了,现在是Javascript语言的一个很大组成部分。

BOM:可以对浏览器窗口进行访问和操作的特性。
通常浏览器特定的javascript扩展都被看做BOM的一部分。包括:
弹出新的浏览器窗口
移到、关闭浏览器窗口及调整窗口大小
提供web浏览器详细信息的导航对象
对cookie的支持
ie扩展了BOM,加入了ActiveXObject类,可以通过JavaScript实例化ActiveX对象。

如果变量未声明而使用typeof外的运算符会报错。
如:
//var a;
a+1;//报错
alert(a==1);//报错

alert(typeof(a));//undefined


类可以看成是对象的配方。

var paramStr = new String("Test Js Info");
paramStr = null;//强制废除对象

ECMAScript 是晚绑定,从不是强类型可以看出其不是早绑定。

ECMAScript对象并非同等创建的,一般可以创建并使用的对象有三种:
本地对象:独立于宿主环境的ECMAScript实现提供的对象,就是ECMA-262定义的类。
如:Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、
EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError

Array:
length 最大为 4294967295
join()         连接字符串值。
arrNum.join(","); 使用“,”连接数组中各项值。
Concat()     将参数附加在数组末尾。
Slice()      提取数组中的项,参数为 (开始位置和结束位置);(开始位置)。
Push()         压栈
Pop()          出栈
Unshift()     在数组头增加项
Shift()     去除数组头项
Sort()        升序
Reverse()    降序
Splice()    删除(0,2);替换而不删除(2,0,“aa”,“bb”);替换并删除(2,1,“aa”,“bb”)


EncodeURI()
DecodeURI()

EncodeURIComponent()
DecodeURIComponent()

Eval()         把参数解释为真正的ECMAScript语句,并把其插入该函数所在位置。

Math
Ceil()        向上舍入函数
Floor()        向下舍入函数
Round()        标准舍入函数


20111013笔记

URI方法 EncodeURI()、EncodeURIComponent()、DecodeURI()和DecodeURIComponent代替了BOM的Escape()和Unescape()方法,URI方法更可取,因为它们会对所有Unicode符号编码,而BOM方法只能对ASCII符号正确编码,尽量避免使用Escape()和Unescape()方法。

//创建对象
虽然ECMAScript越来越正式化,但创建对象的方法却被置之不理,且其规范化至今还遭人反对,一部分是语义上的原因(它看起来不像使用带有构造函数的new运算符那么正规),一部分是功能上的原因。功能问题在于用这种方式必须创建对象的方法。
/*
 *工厂方法
 */
function Car() {
    var car = new Object();
    car.company = "上海大众";
    car.name = "帕萨特 3.0 V6 DSG";
    car.color = "red";
    car.run = function() {
        alert(this.company + "生产的" + this.type + "最高时速为:" + "240.0 ");
    };
    return car;
}

var tempcar = Car();
tempcar.color;
tempcar.run();

有些开发者在工厂函数外定义对象的方法,然后通过属性指向该方法,避免每次调用函数CreateCar都要创建新函数Run(意味着每个对象都有自己的Run版本,事实上,每个对象都共享了同一个函数)。

//在工厂函数外定义方法
function run() {
    alert("this car is Running!");
}

function CreateCar(company,name,color,speed) {
    var newCar = new Object();
    newCar._company = company;
    newCar._name = name;
    newCar._color = color;
    newCar._speed = speed;
    newCar.Run = run;//指向方法
    return newCar;
}


从功能上讲,这种外部定义,内部指向的方法解决了重复创建函数对象的问题,但是此函数看起来不像对象的方法。
所以引发开发者定义了构造函数的方式。
//构造函数方式
/*
 *构造函数方法
 */
function House(length, width, height) {
    this._length = length;
    this._width = width;
    this._height = height;
    this.createHouse = function() {
        alert("this house length: " + this._length + " ; width: " + this._width + " ; height: " + height);
    }
}

var myhouse = new House(10, 7, 6);
myhouse.createHouse();
此方法就像工厂函数,构造函数会重复生成函数,为每个对象都创建独立的函数版本,不过,与工厂函数相似,也可以用外部函数重写构造函数,同样,这样做语义上无任何意义。这正式下面原型方式的优势所在。

//原型方式
/*
 *原型方式
 */
 function User(){//定义构造函数,其不可以带参数
 }
 User.prototype.name="";
 User.prototype.age=24;
 User.prototype.sex="";
 User.prototype.Eat = function() {
     alert(this.name + " is Eating");
 };

 var u = new User();
 u.Eat();
 alert(u instanceof User);

var u1 = new User();
var u2 = new User();
u1.name = "andy";
u1.Eat(); //andy is Eating
u2.Eat(); //mick is Eating
u1.address.pop();
alert(u1.address.toString()); //Asia,Europe,Africa,North America,South America,Oceania
alert(u2.address.toString()); //Asia,Europe,Africa,North America,South America,Oceania


属性address指向Array对象的指针,address是引用值,user的两个实例都指向了同一个数组。这意味着两个实例中的address会变化(任何一个实例执行中改变address)。


//混合的构造函数/原型方式
 /*
  *混合的构造函数/原型方式
  */
 function Archive(archiveCode, startDT, endDT) {
     this._archiveCode = archiveCode;
     this._startDT = startDT;
     this._endDT = endDT;
     this._goods = new Array("AAA","BBB","CCC");
 }
 Archive.prototype.Create = function() {
     alert("OK");
 }


 //动态原型方法
 /*
*动态原型方式
*/
function Book(name, pagecount, bookman) {
    this._name = name;
    this._pageCount = pagecount;
    this._bookMan = bookman;
    this._auther = new Array("Tom", "Dived");
    if (typeof Book._initialized == "undefined") {//如果_initialized未定义则为book添加Publish方法
        Book.prototype.Publish = function() {
            alert("book had Publish");
        };
        Book._initialized = true;//增加publish方法后,设置_initialized为true,将不在为对象重新设置publish方法
    };
}

var b = new Book("JavaScript","550","图灵");
alert(b._name);
b.Publish();

var c = new Book();
c = null;
c.Publish();

//重新定义已有方法
        Function.prototype.toString = function() {
            alert(typeof this);
        }
        
        function bill() {
            this.company = "HTC";
            this.money = 1200;
        }
        bill.prototype.print = function() {
            alert("aa");
        }
        
        bill.toString();


20111014

//继承
//对象冒充方法
function classA() {//父类
            this.name = "tom";
            this.getName = function() {
                alert(this.name);
            };
}

function classB() {//子类
            this.newclassA = classA;//使用字段newclassA指向函数classA
            this.newclassA();//通过调用构造函数,在classB构造classA中字段和函数
            delete this.newclassA; //删除字段newclassA
            //上边三句可看成
//            this.newclassA = classA;
//            this.name = "tom";
//            this.getName = function() {
//                alert(this.name);
//            };
//            delete this.newclassA;
}

var bb = new classB();
bb.getName();//tom

//这里存在一个弊端,如果classB和classA具有同名的属性或方法,classB具有高优先级。
function classB(){
    this.newclassA=classA;
    this.newclassA();
    delete this.newclassA;
    this.name = "Lily";
}
var bb = new classB();
bb.getName();//Lily

//call()方法
function classA1() {
    this.name = "tom";
    this.getName = function() {
        alert(this.name);
    }
}

function callclassA1() {
    classA1.call(this);//将classA1中关键字this等于新创建的callclassA1对象。

}

var callA1 = new callclassA1();
callA1.getName();


//apply()方法
function classA1() {
    this.name = "tom";
    this.getName = function() {
        alert(this.name);
    }
}

function callclassA1() {
    classA1.apply(this);

}

var callA1 = new callclassA1();
callA1.getName();


function classA1(name,working) {
    this.getName = function() {
        alert(name + " is " + working);
    }
}

function callclassA1(_name, _working) {

    //classA1.apply(this,new Array(_name,_working));
    this.aworking = _working;
    this.aname = _name;
    this.aage = 25;
    classA1.apply(this, arguments); // 一个数组,它的元素是要传递给函数 function 的参数值。
}

var callA1 = new callclassA1("tom", "eating");
callA1.getName();


20111017

//原型链 调用父类的构造函数时,没有给其传递参数,这是原型链中的标准做法,要确保构造函数没有参数传递。
        //原型链弊端是不支持多重继承, 原因是子类的prototype被父类重写。
        function classA() {
        }
        classA.prototype.name = "Tom";
        classA.prototype.alertName = function(name) {
            alert(name);
        }

        function classB() {
        }
        classB.prototype = new classA();
        classB.prototype.name = "bb";
        classB.prototype.alertName = function() {
            alert(this.name);
        }
        
        var cb = new classB();
        alert(cb.name);
        cb.alertName("LiLy");

//混合方式
        function classA(name) {
            this._name = name;
        }
        classA.prototype.alertName = function() {
            alert(this._name);
        };

        function classB(name, sex) {
            classA.call(this, name);
            this._sex = sex;
        }
        classB.prototype = new classA();
        classB.prototype.alertSex = function() {
            alert(this._sex);
        };

        var b = new classB("tom","boy");
        b.alertName();
        b.alertSex();



//例子 多边形 父类
        function polygon(_sides) {
            this.sides = _sides;
        }
        polygon.prototype.getArea = function() {
            return 0; //占位
        };

        //三角形 子类
        function triangle(iLength, iWidth) {
//            polygon.call(this, 3);
            this.length = iLength;
            this.width = iWidth;
        }
        triangle.prototype = new polygon(3);
        triangle.prototype.getArea = function() {//重写
            return this.length * this.width / 2;
        };
        //四边形
        function rectangle(iLength, iWidth) {
            //            polygon.call(this, 4);
            this.length = iLength;
            this.width = iWidth;
        }
        rectangle.prototype = new polygon(4);
        rectangle.prototype.getArea = function() {//重写
            return this.length * this.width;
        };

        var trgle = new triangle(3, 5);
        alert(trgle.getArea());

        var regle = new rectangle(10, 20);
        alert(regle.getArea());


Vue2 - 详细实现网页 “开启录音并生成音频文件,上传到服务器效果“,浏览器录制外部音频调用麦克风并传到后端,兼容全部浏览器、支持 PC 网页或手机 H5 网页、可本地播放试听(详细示例运行代码) vue,nuxt,uniapp,网页网站,麦克风,网页录音,MediaRecorder,浏览器录音,移动端h5网页,手机端录音,web网页录音,recorder-core官方文档,Recorder,非https怎么本地录音,录音报错失败,录音后怎么播放音频,如何获取录音mp3文件,解决一直不提示麦克风权限,小白详细教程,实时录音,调用浏览器麦克风录音,浏览器不兼容,wav,mp3,vue怎么实现网页录音呢,vue2网页录音并上传到服务器,web如何实现录制音频,vue网页录音,音频录制播放和上传服务器,vu 阅读详情

相关推荐

电脑的kernelbase.dll故障怎么处理?kernelbase.dll是什么文件

kernelbase.dll​是一个系统文件,属于Microsoft Windows操作系统的一部分。该DLL(动态链接库)文件包含了许多基本且低级的系统函数,这些函数被Windows上运行的各种程序和进程调用。kernelbase.dll通常与Kernel32.dll紧密相关,它是实现许多Windows API(应用程序编程接口)的封装。这些API涉及到内存管理、输入输出操作、进程和线程管理以及其他许多核心的操作系统功能。

电脑修复君的博客 4533

《javascript模式--by Stoyan Stefanov》书摘--汇总

《javascript模式--by Stoyan Stefanov》书摘--基本技巧 http://www.cnblogs.com/liubei/p/JavascriptModeLog1.html 《javascript模式--by Stoyan Stefanov》书摘--字面量和构造函数 http://www.cnblogs.com/liubei/p/JavascriptModeLog2....

weixin_33834075的博客 112

512分辨率万能遮罩模型实战指南:从下载到高精度应用

本文提供了512分辨率万能遮罩模型的完整实战指南。该模型经过超过540万次迭代,专门优化了对头发、手、眼睛等复杂区域的识别。文章详细介绍了从可靠渠道下载、环境部署、使用DF_ICE工具批量应用遮罩,到利用XSeg Editor进行高精度精修的全流程,旨在帮助用户显著提升AI换脸合成视频的质量与效率。

y2z3a4b5c的博客 1165

《The Missing Manual Javascript》 - 书摘精要

(P23) < script type = "text/java script "> ***** </ script > (P26) < script type = "text/java script " src = "sample.js"></ script > (P61) “...

weixin_34268843的博客 126

使用LSTM(长短期记忆)模型处理文本数据的典型流程

对于序列到序列的任务(如机器翻译),可以使用LSTM的隐状态来生成目标序列。这些向量捕获了词之间的语义关系,每个词都被表示为一个高维空间中的点,语义上相似的词在向量空间中彼此靠近。这通常是通过创建一个词汇表(vocabulary)来实现的,词汇表中的每个词都会被分配一个唯一的数字ID。:由于LSTM等循环神经网络(RNN)需要固定长度的输入,所以需要将不同长度的句子填充到相同的长度。由于计算机不能直接理解连续的文本,第一步是将文本分割成独立的词或标记(token)。:将词嵌入作为输入传递给LSTM模型。

YHKKun的博客 2500

TSMC 65nm PDK衬底文件转换避坑记:从.itf到.itd,解决ADS导入乱码与金属层缺失

本文详细解析了TSMC 65nm PDK衬底文件从.itf到.itd转换过程中的常见问题及解决方案,包括ADS导入乱码与金属层缺失的修复方法。通过环境准备、文件定位、转换操作和问题诊断的完整流程,帮助工程师高效完成衬底文件转换,确保电磁仿真精度。

weixin_30855099的博客 301

《The Missing Manual Javascript 》 - 书摘精要

(P23) &lt; script type = "text/javascript "&gt; ***** &lt;/ script &gt; (P26) &lt; script type = "text/javascript " src = "sample.js"&gt;&lt;/ script &gt; (P61) “push()” —— 在数据最后添加; “uns

loveyu0428的专栏 116

通信原理与MATLAB(八):2PSK的调制解调

通信原理和MATLAB

菜yuan~的博客 3万+

温故而知新--JavaScript书摘(一)

前言: 毕业到入职腾讯已经差不多一年的时光了,接触了很多项目,也积累了很多实践经验,在处理问题的方式方法上有很大的提升。随着时间的增加,愈加发现基础知识的重要性,很多开发过程中遇到的问题都是由最基础的知识点遗忘造成,基础不牢,地动山摇。所以,就再次回归基础知识,重新学习JavaScript相关内容,加深对JavaScript语言本质的理解。日知其所亡,身为有追求的程序员,理应不断学习,...

weixin_30908707的博客 130

C#上位机+TensorFlow Lite 轻量化AI模型部署实战(工业级完整版,低算力工控机首选)

工业自动化轻量化AI部署指南:C# + TensorFlow Lite实战 摘要:本文针对工业自动化领域机器视觉部署的痛点,提出基于C#和TensorFlow Lite(TFLite)的轻量化解决方案。该方案完美适配低算力工控环境(J1900/2G内存),具有以下核心优势:1)极致轻量化,模型体积仅KB-MB级;2)CPU深度优化,单帧推理≤15ms;3)零环境依赖,纯C#部署;4)工业级稳定性,7×24小时运行。教程涵盖从环境搭建、模型转换到C#封装的完整流程,特别提供YOLOv8等工业常用模型的TFLi

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1030

基于ADMM的TV正则化最小化稀疏实现图像重建

ADMM算法是一种求解带有约束条件的优化问题的有效方法,它可以将原问题分解成两个子问题,然后交替求解这两个子问题,直到收敛。为了解决这些问题,研究人员提出了许多图像重建方法,其中一种常用的方法是基于正则化的方法。在图像重建中,TV正则化是一种比较常用的正则化方法,可以有效地降低图像的噪声,并保持图像细节特征。通过本文的介绍和源代码的演示,我们可以看出基于ADMM的TV正则化最小化稀疏实现图像重建的方法是一种简单、高效、有效的图像重建方法,能够在一定程度上提高图像质量,对于实际应用具有一定的参考意义。

学习使你进步。 1762

温故而知新--JavaScript书摘(二)

前言 毕业到入职腾讯已经差不多一年的时光了,接触了很多项目,也积累了很多实践经验,在处理问题的方式方法上有很大的提升。随着时间的增加,愈加发现基础知识的重要性,很多开发过程中遇到的问题都是由最基础的知识点遗忘造成,基础不牢,地动山摇。所以,就再次回归基础知识,重新学习JavaScript相关内容,加深对JavaScript语言本质的理解。日知其所亡,身为有追求的程序员,理应不断学习,不...

weixin_30475039的博客 143

27、目标识别的最新进展

本文综述了目标识别(OID)领域的最新进展,重点介绍了质量评估、预处理和搜索空间缩减等关键技术。文章分析了多种质量指标,如缩减率、对完整性、召回率和精确率等,并探讨了它们的适用场景。同时,详细介绍了预处理中自动学习转换规则的方法,以及传统阻塞、排序邻域索引等搜索空间缩减技术。此外,文章还讨论了动态选择缩减技术的方法,并展望了未来研究方向,如更智能的预处理、自适应的缩减技术和与人工智能的结合。希望这些技术和方法能够为目标识别领域的研究和实践提供参考和帮助。

q5r6s7的博客 92

温故而知新--JavaScript书摘(三)

前言 毕业到入职腾讯已经差不多一年的时光了,接触了很多项目,也积累了很多实践经验,在处理问题的方式方法上有很大的提升。随着时间的增加,愈加发现基础知识的重要性,很多开发过程中遇到的问题都是由最基础的知识点遗忘造成,基础不牢,地动山摇。所以,就再次回归基础知识,重新学习JavaScript相关内容,加深对JavaScript语言本质的理解。日知其所亡,身为有追求的程序员,理应不断学习,不...

weixin_30852367的博客 167

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

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

《javascript模式--by Stoyan Stefanov》书摘--函数

三、函数 1、函数的命名属性 // IE下不支持name属性 var foo = function bar () { // todo }; foo.name; // "bar" 2、函数的提升 function foo () { alert("global foo") } function ...

weixin_34071713的博客 94

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

《javascript模式--by Stoyan Stefanov》书摘--基本技巧

一、基本技巧 1,变量释放的副作用 a、使用var创建的全局变量(在函数外部创建)不能删除。 b、不使用var创建的隐含全局变量(尽管在函数内部创建)可以删除。 // 定义三个全局变量 var global_var = 1; global_novar = 2; // 反模式 (function(){ global_fromfunc = ...

weixin_33705053的博客 101

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

第4章 变量、作用域和内存---JS红宝书书摘系列笔记

一、基本类型和引用类型 ECMAScipt变量可能分为两种数据类型:基本类型和引用类型。 基本类型:指简单的数据段;包括Undefined、Null、Bo...

nqxcwl的专栏 118

基于小程序的个人书摘管理系统

碎片化阅读时代下,读者的读书笔记、书摘内容分散在各类软件与纸质载体中,缺少统一轻量化的管理工具。本文设计并实现基于微信小程序的个人书摘管理系统,采用 Java 语言结合 SSM 框架搭建后端服务,以 MySQL 作为数据存储载体,依托微信小程序构建移动端交互入口。系统划分管理员与普通用户两大角色,管理员可完成用户信息、书摘资源、每日打卡、论坛交流等内容审核与管理;用户支持账号注册登录、书摘收录、阅读打卡、备忘录记录、资源浏览收藏、阅读心得论坛交流等功能。

V+Zsffbb211 74

《javascript模式--by Stoyan Stefanov》书摘--字面量和构造函数

二、字面量和构造函数 1,能够使用对象字面量时,就没理由使用new Object构造函数 // 一个空对象var 0 = new Object();console.log( o.constructor === Object ); //true// 一个数值对象var o = new Object(1);console.log( o.constructor === Number ); ...

weixin_33896069的博客 102

第5章 引用类型---JS红宝书书摘系列笔记

在ECMAScript中,引用类型是一种数据结构,用于将数据和功能组织在一起,描述的是一类对象所具有的属性和方法。而对象是某个特定引用类型的实例。 一、Object类型 可...

Eric_sun8868的博客 143

JS + AJAX 书摘+经验 重新整理版... 持续更新中ing...

  经过了1个多月的紧张加班工作,项目终于在2010.5.1完成了..在整个过程中,由于项目量大,历史问题多,制作修改时间短,等因素..搞得很累。这几天闲下来没啥事,趁着前些日子的热乎劲,我再看看书,和实际工作中的问题结合的整理一下,给自己留个记录,给新手朋友们做个借鉴,这是一个系列的文章,先从javascript的面向对象、js的一些高级技巧 、排错方法、常用代码和工具、到AJAX相关的内容进行

chaolive007的专栏 553

java微课版李玉臣答案_JavaScript前端开发程序设计教程(微课版)简介,目录书摘...

编辑推荐:1.86个同步案例贯穿教学,深刻理解知识点,所学即所用。2.60个重点难点微课视频,随书扫描并观看,与文字内容相辅相成。3.每章一个实训练习,巩固提高学习效果。内容简介:JavaScript是一门广泛应用于Web前端开发的脚本语言,能为网页添加各式各样的动态效果,为用户提供流畅美观的浏览效果,具有简单、易学的特点。本书系统地讲解了JavaScript编程的基础知识和实用技术。全书共10章...

weixin_42500156的博客 1566

PHP + MySQL 学习笔记(五)--- MySQL+ PHP+Javascript + jQuery 设计一个简单的月历 (书摘) --第二部份

用JavaScript创建日历 为了用JavaScript构建日历,您需要执行与PHP中相同的操作: 检查用户输入。 建立一个HTML表单。 创建一个日历表。 将事件添加到日历。 您只是用不同的方式来做。在本章中,您将学习如何使用jQuery在JavaScript中构建日历。您在第10章“使用jQuery的基础知识”中了解了jQuery。 为日历创建HTML 首先,为日历创建基本的HTML。由于您将使用jQuery和一些兼容的JavaScript,因此您可以创建一个非常小的HTML文档。所有工作将由脚本

weixin_45889834的博客 270

PHP + MySQL 学习笔记(四)--- MySQL+ PHP+Javascript + jQuery 设计一个简单的月历 (书摘) --第一部份

这篇内容是摘自 (Sams Teach Yourself PHP, MySQL & JavaScript All in One)原文,翻译出中文版。由于在依照英文版实作的时候,发现原文代码跳动的厉害,也没有清楚写出档名,造成困扰,所以,试着把原文翻译后调整,做成笔记分享。 CHAPTER 21 Creating a Simple Calendar 您将在本章中学到什么: 如何用PHP和JavaScript构建简单的日历脚本 如 何在日历中查看和添加事件 本章综合了您到目前为止所学的有关PHP语言

weixin_45889834的博客 455

html网站开发实用技术,HTML5+CSS3+JavaScript网站开发实用技术(第2版)简介,目录书摘...

编辑推荐:  (1)知识全面,内容覆盖了HTML+CSS+JavaScript的主要内容(2)案例丰富,全书的知识点融于200个案例之中,并结合典型案例进行讲解和拓展(3)易学易用,本书提供全部的代码和素材资源,读者可以用尽可能少的时间掌握相关内容。内容简介:  本书系统地讲述了HTML、CSS和JavaScript等Web前端开发技术,范围覆盖HTML5与CSS3的新技术与典型应用,实现网站开发...

weixin_42471893的博客 381
上一篇: Design_Patterns-Adapter
下一篇: 引发类型为System.OutOfMemoryException的异常
andycode
博客等级 码龄17年 12粉丝 80原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值