Pytorch中的自编码(autoencoder)

Pytorch中的自编码(autoencoder)

本文资料来源:https://www.bilibili.com/video/av15997678/?p=25

什么是自编码

先压缩原数据、提取出最有代表性的信息。然后处理后再进行解压。减少处理压力

通过对比白色X和黑色X的区别(cost函数),从而不断提升自编码模型的能力(也就是还原的准确度)

由于这里只是使用了数据本身,没有使用label,所以可以说autoencoder是一种无监督学习模型。

实际在使用中,我们先训练好一个autoencoder模型,然后只取用其前一半,来获取到压缩了的特征进行其他的训练,以达到压缩特征的目的。

自编码可以达到类似于PCA的效果

自编码in Pytorch

  • encoder

  • decoder

  • 连接成网络

  • 设置优化器和损失函数

    autoencoder=AutoEncoder()
    optimizer=torch.optim.Adam(autoencoder.parameters(),lr=LR)
    loss_func=mm.MSELoss()
  • 搭建网络,传入数据

这里的y是压缩之前的数据,用来在loss function中和decoded对比的

  • 设置输出

原文地址:https://www.cnblogs.com/jiading/p/11956955.html

时间: 2024-07-30 08:12:28

Pytorch中的自编码(autoencoder)的相关文章

Android中检测字符编码(GB2312,ASCII,UTF8,UNICODE,TOTAL——ENCODINGS)方法(一)

package com.android.filebrowser; import java.io.*; import java.net.*; public class FileEncodingDetect { static final int GB2312 = 0; static final int ASCII = 1; static final int UTF8 = 2; static final int UNICODE = 3; //static final int GBK = 4; //st

TomCat中server.xml编码的问题

这两天刚刚看了博客大牛的关于Javaweb的入门教程,里面开始介绍了关于Tomcat配置虚拟主机的内容,自己照猫画虎,但是出现了启动Tomcat后闪退的问题.查看了logs中的错误日志,报错信息如下所示: 警告: Catalina.start using conf/server.xml: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 字节的 UTF-8 序列的字节 1 无效. 上网查看了别

URL中字符串的编码及URL跳转

提交表单的时候,字符串中就是经过编码的字符.空格.反斜杠都会被转义. 使用一下的代码,就能起到一样的转义效果, 其中param是一个Json键值对. for(var p in param){ temp.push(p+"="+encodeURIComponent(param[p] || '')); } 构造一个提交的URL 其中temp是一个数组,获取数组的长度使用了属性length. 还用了JQuery的each方法.each方法中,key表示数组的下标,value表示key对于的te

perl脚本中对字符编码的支持

# 使perl程序支持utf8宽字符编码,不添加下面几行打印中文字符时将出现Wide character in print警告或错误.use utf8;binmode(STDIN, ':encoding(utf8)');binmode(STDOUT, ':encoding(utf8)');binmode(STDERR, ':encoding(utf8)');perl脚本处理中文等字符时,有时从文件读出的数据为字节码,需要进行解码才能正确显示.使用Encode模块即可处理.use Encode;#

javaEE中的字符编码问题

0 web.xml中注册的CharacterEncodingFilter <!-- 配置字符集过滤器 --> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-

浅析白盒审计中的字符编码及SQL注入

尽管现在呼吁所有的程序都使用unicode编码,所有的网站都使用utf-8编码,来一个统一的国际规范.但仍然有很多,包括国内及国外(特别是非英语国家)的一些cms,仍然使用着自己国家的一套编码,比如gbk,作为自己默认的编码类型.也有一些cms为了考虑老用户,所以出了gbk和utf-8两个版本. 我们就以gbk字符编码为示范,拉开帷幕.gbk是一种多字符编码,具体定义自行百度.但有一个地方尤其要注意: 通常来说,一个gbk编码汉字,占用2个字节.一个utf-8编码的汉字,占用3个字节.在php中

C#中文和UNICODE编码转换

C#中文和UNICODE编码转换 //中文轉為UNICODE string str = "中文"; string outStr = ""; if (!string.IsNullOrEmpty(str)) { for (int i = 0; i < str.Length; i++) { //將中文轉為10進制整數,然後轉為16進制unicode outStr += "\\u" + ((int)str[i]).ToString("x&

iOS URL中汉字的编码和解码

发现NSString类中有内置的方法可以实现.他们分别是: - (NSString *)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)encoding- (NSString *)stringByReplacingPercentEscapesUsingEncoding:(NSStringEncoding)encoding 只要传入相应的编码即可以进行编码和解码了,不过此方法是对整个Url进行编码的所以如果有Query Str

Python&MySQL操作过程中遇到的编码问题

对于Python字符编码的理解 之前整理了一部分,这次主要是设计到数据库操作的. 下面是一些编码方面的概念和原理,以条目方式整理: CREATE DATABASE IF NOT EXISTS db_name DEFAULT CHARSET utf8 COLLATE utf8_general_ci; DEFAULT CHARSET是设置默认字符编码集,也就是数据在库内从存储编码,我的理解是在存储这个层面上的,如果SQL命令是以gbk方式传输数据的(cur.execute('SET NAMES ut