【使用jquery编写第一个油猴(tempermonkey)脚本】

从零快速编写一个油猴脚本 Tampermonkey,又称 Greasemonkey 油猴脚本,是一款免费的浏览器扩展,可用于管理用户脚本,它本质上是对浏览器接口的二次封装 油猴脚本可用于更改页面布局样式、完成页面自动化、去广告、下载影视等功能,适用于主流的浏览器 官网: https://www.tampermonkey.net/index.php 1. 介绍 Tampermonkey 特点包含: 内置的编辑器,可以非常方便地管理、编辑用户脚本 支持自动更新检查功能 标签中脚本运行状态速览 阅读详情
AI摘要

本文介绍如何使用jQuery和Tampermonkey插件编写浏览器脚本,包括安装配置、脚本编写与发布全流程。涵盖选择合适的浏览器、安装插件、获取脚本、编写及发布新脚本等内容。


01. 下载安装油猴浏览器插件

0101. 关于浏览器的特别说明

使用chrome内核内核的浏览器理论上都可以安装google的浏览器插件,但是目前手机版的chrome并未开放该功能。

所以我本人是安装了kiwi browser移动浏览器(chrome内核),为的是,我可以为我经常在手机上访问的网站开发一些脚本,为其增加功能,或者修改为我喜欢的样式(比如,去掉一些无法手动关闭的恶意广告)。

可以从github去下载最新的release(kiwi browser官方下载地址:https://github.com/kiwibrowser/src.next/releases)
同时,我也上传到了优快云的下载资源里,下载地址是:https://download.youkuaiyun.com/download/crazy_rays/86620455

0102. 油猴插件下载地址

说明下载地址备注
百度网盘下载https://pan.baidu.com/s/1SqwHjKuBQOdORpJ1KXPO4w?pwd=5hdn提取码:5hdn
google商店在线安装https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo需要能够访问google
google商店离线下载https://clients2.google.com/service/update2/crx?response=redirect&os=win&arch=x64&os_arch=x86_64&nacl_arch=x86-64&prod=chromecrx&prodchannel=&prodversion=77.0.3865.90&lang=zh-CN&acceptformat=crx2,crx3&x=id%3Ddhdgffkkebhmkfjojejmpbldmpobfkfo%26installsource%3Dondemand%26uc需要能够访问google,下载后使用chrome浏览器安装

安装成功后可以看到浏览器多了Tampermonkey插件,如下图:

在这里插入图片描述


02. 获取新脚本

开始编写自己的脚本之前,先认识一下Tampermonkey的常用脚本发布网站。

0201. 油猴菜单栏

浏览器插件栏点开Tampermonkey插件菜单栏,在下拉列表中点击“获取新脚本”,如下图:

Tampermonkey插件菜单栏

0202. 脚本社区

此时会弹出油猴官方页面,其中提供了几个常用的脚本社区,可以在该页面看到“GreasyFork”社区的相关说明,如下图:

在这里插入图片描述

0203. GreasyFork社区

点击链接“GreasyFork”,打开新网页进入该社区,如下图:

GreasyFork

0204. 搜索

可以在搜索栏中搜索想要使用脚本的网站,例如tmall.com,搜索结果如下图:

搜索
或者你可以按照作者进行搜索,如下图:

在这里插入图片描述

0205. 插件详情

点击任意搜索结果可以进入插件详情页面,可以在该页面安装插件、查看其源代码、查看其版本变更记录等,如下图:

插件详情


03. 编写新脚本

0301. 脚本头部声明

油猴脚本中,头部的一些声明其含义见表格如下:

属性描述
@name名称;也就是你给脚本起的名
@namespace命名空间;可以写你网站的域名
@version版本;脚本肯定要不断更新的不是
@description描述;你写的脚本是干什么的
@author作者;开发者的姓名
@match匹配;描述脚本会在哪些网站上运行,可以使用 * 通配符代表匹配所有子路径,如 https://*/*代表匹配所有使用https协议的网站都可以使用本脚本
@grant权限;用于添加GM_ 函数到白名单
@require需要导入的外部依赖,此url地址需要维护在油猴官方的白名单地址中方可正确导入并使用

0302. 插件菜单栏

浏览器插件栏点开Tampermonkey插件菜单栏,在下拉列表中点击“添加新脚本”,如下图:

Tampermonkey插件菜单栏

0303. 在线脚本IDE

弹出新页面,是在线脚本IDE,其中// Your code here...注释下面即可编写自己的代码,如下图:

在线脚本IDE

0304. 使油猴脚本支持jquery

需要使用@require声明,并且添加代码this.$ = this.jQuery = jQuery.noConflict(true);防止依赖冲突,如下图:

使油猴脚本支持jquery

0305. 完整测试代码:

// ==UserScript==
// @name         tampermonkey demonstration
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://www.baidu.com/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=tampermonkey.net
// @grant        none
// @require      https://code.jquery.com/jquery-2.1.4.min.js
// ==/UserScript==
this.$ = this.jQuery = jQuery.noConflict(true);

(function() {
    'use strict';

    // Your code here...

    // delete elements by class
    var underSearchboxTips = $(".under-searchbox-tips");
    if (null !== underSearchboxTips &&
        typeof(underSearchboxTips) !== "undefined" &&
        underSearchboxTips.length > 0){

        for(var i=0; i<underSearchboxTips.length; i++){
            underSearchboxTips[i].remove();
        }
    }

    // delete elements by id
    var hotsearchWrapper = $("#s-hotsearch-wrapper");
    if (null !== hotsearchWrapper &&
        typeof(hotsearchWrapper) !== "undefined"){
        hotsearchWrapper.remove();
        console.log("delete elements by id:s-hotsearch-wrapper finished");
    }
    var hotsearchData = $("#hotsearch_data");
    if (null !== hotsearchData &&
        typeof(hotsearchData) !== "undefined"){
        hotsearchData.remove();
        console.log("delete elements by id:hotsearch_data finished");
    }
})();

0306. 调试代码

可以按F12打开浏览器的开发调试功能,在Elements页签中可以查看DOM元素,选中元素,可以在Properties页签中查看该元素的属性,见下图:

在这里插入图片描述
在这里插入图片描述

在Resouse页签中的左侧栏目列表中可以找到Tampermonkey插件下所有的脚本,在Resource页签中可以对脚本进行断点调试,见下图:

在这里插入图片描述
也可以在代码中使用日志打印的方式辅助调试,见下图:

在这里插入图片描述
脚本成功运行后,删除了“百度热搜”栏目,运行结果如下图:

在这里插入图片描述


04. 脚本发布

0401. 登录greasyfork社区

注册并登录greasyfork社区,进入个人中心,可以看到发布脚本的链接,如下图:

在这里插入图片描述

0402. 代码

点击发布脚本,将代码复制粘贴过来,并填写说明,如下图:

在这里插入图片描述

0403. 检查声明 & 发布

发布脚本前,检查并确定以下声明是否还需要修改:
// @name,用以确定你的脚本名称。
// @description,其后的内容为你对该脚本的描述。
// @license,用以指名对应的许可,我声明的是MIT。

发布成功后如下图:

在这里插入图片描述

Tempermonkey 如何加载 jQuery 添加 // @require https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js // ==UserScript== // @name 自动刷新简历 // @namespace http://tampermonkey.net/ // @version 0.1 // @description 找工作嘛竞争很激烈的,不排到前面,HR怎么看得到你哪。 // @author 笨笨 // @match htt 阅读详情

相关推荐

com.kiwibrowser.browser-3071706106-arm64-github.apk kiwi-浏览器-安卓版

kiwi-浏览器-安卓版-arm64 「Kiwi Browser」是一款基于开源项目 Chromium 开发的安卓端浏览器,最大的特色就是支持安装 Chrome 扩展,而且自带广告过滤功能。 Kiwi 浏览器与 Chrome 非常相似,但功能上更加丰富和强大,可以看作是一个增强版的 Chrome。 特色功能: 支持 Chrome 扩展程序安装; 自带广告屏蔽功能和弹出窗口拦截器; 自定义主页显示的网站; Kiwi Browser 与 Chrome 同样基于 Chromium 开发,因此两者具有相当顺滑且一致的浏览体验,如果之前就比较习惯使用 Chrome,那么 Kiwi 用起来也会很顺手。 支持 Chrome 扩展的安卓浏览器我们去年还分享过 Yandex 浏览器,也非常不错,它的界面和操作就比较独具一格了,但习惯后也很好用,可以都尝试下。 底部地址栏、夜间模式、网页翻译、下载管理等; 隐私保护; 自定义下载位置和下载工具; ……

chrome 插件tempermonkey

下载方法: 1.Chrome应用商店下载。需要挂VPN 2.crx4chrome.com中搜索下载油泼猴crx文件 3.百度网盘链接:链接:https://pan.baidu.com/s/1RuFIdVQTopydIdq_2Wf42Q 提取码:zmno 安装方法: 在Chrome->更多工具->扩展工具->打开开发者模式->将下载的crx文件拉到该页面中心,即可 下载其他插件: 点击油泼猴插件->获取新脚本->(推荐了三个网站获取脚本)建议选择grea.

qq_36890992的博客 2584

【Chrome谷歌浏览器】篡改猴(油猴/tempermongkey)插件安装包

在当前的网络应用环境中,浏览器扩展插件已经成为提升浏览体验的重要工具之一。其中,Chrome浏览器作为全球使用量最大的浏览器之一,它所支持的插件种类繁多,功能各异,从广告拦截到网页美化,再到提高工作效率,应有尽有。而在这些插件之中,Tempermonkey(常被爱好者亲切地称为“篡改猴”)就是其中的一个特立独行的存在。 Tempermonkey是一款用户脚本管理器,也就是所谓的“油猴”脚本。它允许用户在自己的浏览器上运行由社区成员编写的自定义JavaScript代码。这意味着,通过Tempermonkey,用户可以轻松地修改网页的外观和功能,或者增强网站的某些特性,以便更好地满足个人的特定需求和喜好。例如,去除页面上的广告、调整字体大小、改变布局、添加新的功能等。 与普通的浏览器插件不同的是,Tempermonkey本身不提供任何具体的功能,而是作为一个平台,承载和运行其他的“油猴”脚本。用户可以在Tempermonkey的脚本库中选择适合自己的脚本进行安装,也可以从外部资源导入,甚至可以自己编写脚本。Tempermonkey会按照用户的设定,自动在指定的网站上运行相应的脚本。 Chrome谷歌浏览器作为Tempermonkey的支持平台之一,为用户提供了便捷的安装和使用体验。只需从Chrome网上应用店安装Tempermonkey扩展插件,就可以开始享受通过用户脚本定制网络体验的乐趣。Chrome浏览器与Tempermonkey插件的结合,为用户打造了一个个性化和灵活性十足的网络浏览环境。 值得注意的是,安装和使用Tempermonkey及其脚本需要一定的网络知识和判断力。因为虽然大多数脚本都是安全无害的,但不排除有些脚本可能存在恶意代码,会对用户的个人信息安全造成威胁。因此用户在安装任何第三方脚本时,都应该对脚本来源进行充分的了解和验证。 为了提高用户体验和安

油猴脚本使用jquery bootstrap

使用油猴脚本结合 jQuery 和 Bootstrap 的指南 油猴(Tampermonkey)是一款流行的用户脚本管理器,可以帮助用户自定义网页的外观和功能。本文将带你了解如何在油猴脚本中使用 jQuery 和 Bootstrap,以增强网页的交互性和美观性。我们将通过一系列清晰的步骤来完成这一过程。 1. 流程概述 下...

weixin_34614567的博客 692

4.图像sensor的特性和驱动解析

例子:sensor驱动自己提供操作曝光时间的函数和获取曝光时间的函数,然后将这个函数注册到ISP库和3A算法库,3A算法库根据外部光照强度计算出一个Sensor曝光时间的设置值,ISP库得到这个设置值,然后通过Sensor之前注册的回调函数,把这个值设置到Sensor的硬件寄存器中去,实现整个过程。是为 ISP 配置正确的输入时序。(1)修改驱动源码(sambashar\Hi3518E_SDK_V1.0.3.0\package\mpp\component\isp\sensor\ar0130)

weixin_53762042的博客 3566

手把手教你排查Abaqus中的Johnson-Cook损伤参数:避免因d3正负号导致的仿真失败

本文详细解析了Abaqus中Johnson-Cook损伤参数d3正负号设置的关键问题,帮助用户避免因参数错误导致的仿真失败和Excessive distortion报错。通过对比不同文献定义、提供实操指南和典型错误排查流程,有效提升非线性分析的准确性和效率。

weixin_33960567的博客 353

使用油猴(TamperMonkey)编写脚本屏蔽博客园闪存的某一模块

emmm,看到小姐姐的要求,索性捣鼓一下 油猴(TamperMonkey)介绍 这是一款特别受欢迎的浏览器插件。。详细了解请到他的官网。 这是TamperMonkey的 Chrome插件地址 安装完成后可以看到浏览器右上角: 点击进入管理面板 点击+ 号按钮,你可以看到脚本示例代码: // ==UserScript== // @name New Userscript /...

dianxinshuan5366的博客 1176

Xilinx Vitis HLS教程1--Vitis HLS概述[01/12]

Xilinx Vitis HLS教程[01/10]前言1. Vitis HLS简介1.1 软件工程师的设计原则1.1.1 简介1.1.2 吞吐量和性能1.2.3 架构问题1.2.4 FPGA编程的3大范式1.2.4.1 生产者-消费者范式1.2.4.2 流式数据范式1.2.4.3 流水线范式1.2.5 3种范式结合 前言 项目中使用到Xilinx Zynq UltraScale+ MPSoC ZCU102 开发板,领导指示研究"xilinx软件自带的c语言综合器"。对于一个硬件一窍不通的我来说,甚至不知道

B10030607的博客 5234

【Tempermonkey】Tempermonkey中使用jquery

前言 转载:https://blog.youkuaiyun.com/weixin_44198965/article/details/106278558 示例 // ==UserScript== // @name 自动刷新简历 // @namespace http://tampermonkey.net/ // @version 0.1 // @description 找工作嘛竞争很激烈的,不排到前面,HR怎么看得到你哪。 // @author 笨笨 // @match

Meditation_Crazy 691

移相变压器Simulink建模与HVDC系统仿真实践

移相变压器是电力电子领域实现精确相位调节的核心设备,其通过特殊绕组设计改变输出电压相位角,在解决环网潮流不均、阻尼功率振荡等场景具有关键作用。本文基于MATLAB/Simulink环境,详细解析移相变压器的建模原理与技术实现,包括磁路耦合特性模拟、参数计算方法和控制策略设计。针对HVDC高压直流输电和FACTS柔性交流输电系统等典型应用,提供仿真模型搭建技巧与问题排查指南,特别涵盖新能源并网场景下的相位调节优化方案。通过实测数据验证,所建模型在稳态精度和动态响应方面均满足工程要求,为电力系统稳定性分析提供有

weixin_28278377的博客 270

Qt实现窗口自适应分辨率大小

如果希望窗口大小始终保持与屏幕分辨率一致,可以将上述代码放在窗口的resizeEvent()函数中。这样,每当窗口大小发生变化时,都会自动调用resizeEvent()函数,从而实现窗口大小的自适应调整。在Qt中,可以通过一些简单的方法实现窗口大小随分辨率变化而自适应调整。获取到当前屏幕的分辨率后,可以根据需要调整窗口的大小。无论在何种分辨率下运行应用程序,窗口都能够正确地自动调整大小,提供更好的用户体验。除了调整窗口大小,还可以考虑将窗口设置为最大化,以充分利用屏幕空间。步骤2:调整窗口大小。

FuJavascript的博客 3654

tampermonkey油猴与selenium webdriver入门 (by quqi99)

作者:张华 发表于:2020-11-08 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 今天群里在给同学投票,有人点50次,于是,研究了一下。 tampermonkey油猴 下面脚本运行不成功, 因为还得处理跨域问题,不怎么熟悉javascript也就没继续研究了,记录一下只是为了说明油猴的入门及调试方法。 另外,在调试的过程中,遇到油猴脚本总不生效,后来在卸载安装最新版本就好了。 // ==UserScript== // @name test //

技术并艺术着 3313

SAP 系统间信任关系配置全攻略:从 SM59 到 SMT1 的实践与风险控制

本文介绍了在SAP系统间配置信任关系的详细流程与最佳实践。文章以SAP Gateway与后端系统架构为场景,从SM59创建RFC目的地开始,到SMT1建立信任关系,再到授权对象S_RFCACL的配置,提供了完整的操作指南。重点包括:使用标准命名规范创建专用RFC连接、通过向导完成系统间信任登记、严格控制S_RFCACL授权范围等。文中还分享了真实项目案例、可复用的检查清单以及常见问题的排查思路,帮助用户实现稳定可靠的跨系统无密码调用,同时确保安全性。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 321

油猴(Tampermonkey)浏览器插件简单自定义脚本开发

浏览器插件,包括油猴插件和其他插件,通过它们可以实现浏览器网页的定制化与功能增强。 其他插件一般只有某种具体的功能,且已经写死而不能更改,比如Adblock插件只用于去广告。 油猴插件是一款用于管理用户脚本的插件,它本身没有什么功能,真正起作用的是它所管理的那些用户脚本。你可以根据需求,利用油猴插件来安装某些特定的用户脚本,从而实现定制化的功能。

我的身体只需要很少的粮食就能养活;而我的灵魂却非常地贪婪,需要日月星辰、山川湖泊和大自然的滋养。 1544

药物不良反应预测实战指南:从FAERS数据挖掘到PyTorch深度学习模型(含可解释性分析)

【代码】药物不良反应预测实战指南:从FAERS数据挖掘到PyTorch深度学习模型(含可解释性分析)

理论都是虚的,代码才是王道。 721

反光柱定位算法实战03:VEnus代码解析和纯反光柱定位中的可改进方向

本文深入解析了开源框架VEnus的反光柱定位与建图实现流程,包括强度提取、聚类、数据关联、位姿优化等核心模块。同时指出其三大局限:匹配质量脆弱性、单一传感器依赖和地图扩展逻辑缺失,并提出改进方向:融合里程计/IMU数据、引入图优化后端、建立动态地图维护机制。该分析为基于反光柱的定位系统优化提供了实用参考,有助于提升工业场景下的定位鲁棒性和精确性。

Studying…… 520

tampermonkey 油猴例子

// ==UserScript== // @name 阅读模式 // @namespace http://tampermonkey.net/ // @version 0.1 // @description try to take over the world! // @author You // @match http://*/* // @match https://*/* // @require https://cdn.boo

abc81163788的博客 288

efm32 入门.pdf

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

【油猴脚本】00016 案例 Tampermonkey油猴脚本, 仅用于学习,不要乱搞。美化编辑表格的UI界面,Jquery爬虫,JavaScript爬虫,HTML+Css+JavaScript编写

附具体完整代码,深入理解,彻底掌握!

宝码香车的博客 1446

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

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

在chrome中利用“油猴”为每个网页增加“返回顶部”功能

        今天在网上看到了“油猴”这么个东西的介绍,感觉蛮有趣,跟大家分享一下。这个东西本来是火狐的插件,后来一查原来chrome从4.0以后也支持用户脚本了。所谓的“油猴”实际上是一段以*.user.js结尾的js脚本,通过油猴你可以在每个网页上执行你的这段脚本。利用这个js脚本你可以对网站页面做一些个性化的修改,比如像我们今天提到在每个页面上增加“返回顶部”的功能,其效果就是在每个页面自...

weixin_33941350的博客 649

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

我的第一个油猴脚本

由于一些需求,找了一下也没有现成的脚本(可能需求过于简单哈哈哈),于是就尝试了一下,写了一个简单的油猴脚本。

薛定谔的壳的博客 1291

Tempermonkey脚本代码分享,保持网站登录状态

这是一个很简单的小脚本, 原理也非常简单, 就是通过不断静默刷新来延长Cookie等的过期时间 使用说明 由于原理很简单, 适用于很多网站, 但是怕每个网站都不断的刷新影响使用(虽然我设置了3-4min的周期) 于是我将网址匹配规则设成了本人有需求的网址 所以, 若想正常使用, 请一定要手动调整 @match 后的内容!!! // ==UserScript== // @name 保持网站登录状态 // @namespace http://tampermonkey.net/

zzshenchao的博客 2826

时间戳转日期,日期装时间戳快速tempermonkey脚本

 使用  1.安装chrome tempermonkey插件. 2.安装此脚本. 3.连续按t键3次, 调出时间戳转日期输入框,按回车转换,按esc退出. 4.连续按d键3次,调出日期转时间戳选择框,按回车转化,按esc退出. // ==UserScript== // @name time-date-convertor // @namespace http://ta...

asdfzxc123789的博客 452

tempermonkey文档及为google翻译添加清除输入框脚本

想通过tempermonkey为google增加一个清除输入框的快捷键,这本来是很好做的事情,后来也证明确实是那么简单,不过中间遇到了几个奇怪的问题,有必要记录一下 tempermonkey 文档:https://blog.youkuaiyun.com/abc45628/article/details/53919135/ 1)borwer console报错:"Tempermonkey:coul...

houpainansheng688的博客 913

【油猴脚本】00026 案例 Tampermonkey油猴脚本, 仅用于学习,不要乱搞。添加拖拽图标。Jquery爬虫,JavaScript爬虫,HTML+Css+JavaScript编写。

附具体完整代码,深入理解,彻底掌握!可以一键复制,查看效果。

宝码香车的博客 1406

【油猴脚本】00004案例 Tampermonkey油猴脚本引入js库,使表格可以拖拽移动

附具体代码,深入理解,彻底掌握!可以一键复制,查看效果。

宝码香车的博客 1724

tampermonkey脚本header介绍

本文简单介绍了,tampermonkey是什么?如何使用tampermonkey?tampermonkey脚本中的header的概念。

叶子常常随风而落,分享博主日常学习和使用的一些技术 1253
上一篇: 【C 语言经典100例 | 菜鸟教程】C 语言练习实例8
下一篇: DOCKER镜像UBUNTU-22.04-SERVER安装VNCSERVER实现远程桌面
相信光的疯子
博客等级 码龄18年 91粉丝 57原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值