optional

一行命令跑评测,港中文MMLab开源自监督表征学习代码库

感情迁移 提交于 2020-10-09 05:10:42
   自监督表征学习发展迅速,但也存在诸多问题。近日,香港中文大学多媒体实验室(MMLab)和南洋理工大学的研究者开源了一套统一的自监督学习代码库 OpenSelfSup。    前言   近几个月来自监督表征学习领域获得了显著突破,特别是随着 Rotation Prediction、DeepCluster、MoCo、SimCLR 等简单有效的方法的诞生,自监督表征学习大有超越有监督表征学习的趋势。   然而,做这个领域的研究者都深有感触:1)自监督任务复杂而多样,不同方法各有各的专用训练代码,难以结合、复用和改进;2)评价方案不统一,不同的方法难以在公平环境下对比;3)动辄百万千万的训练数据量,训练效率是个大问题。   针对这些问题,香港中文大学多媒体实验室(MMLab)和南洋理工大学的研究者最近开源了一套统一的自监督学习代码库:OpenSelfSup。   开源地址: https://github.com/open-mmlab/OpenSelfSup    OpenSelfSup    统一的代码框架和模块化设计   OpenSelfSup 使用 PyTorch 实现,支持基于分类、重建、聚类、memory bank、contrastive learning 的多种自监督学习框架,目前收录了 Relative Location、Rotation Prediction

The complete list of new features in MySQL 8.0

故事扮演 提交于 2020-10-04 06:05:13
截止目前最完整的MySQL 8.0新特性列表。 原文出处:https://mysqlserverteam.com/the-complete-list-of-new-features-in-mysql-8-0/ There are over 300 new features in MySQL 8.0. The MySQL Manual is very good, but verbose. This is a list of new features in short bullet form. We have tried very hard to make sure each feature is only mentioned once. Note the similar list for MySQL 5.7. Please download MySQL 8.0 from dev.mysql.com or from the MySQL Yum, APT, or SUSE repositories. SQL DML Non-recursive CTEs [1] Recursive CTEs [1] Window functions [1] ORDER BY and DISTINCT with ROLLUP [1] LATERAL derived tables [1] Outer

swift 数组是否包含 查找数组元素 查找数组索引 查找最大元素和最小元素

依然范特西╮ 提交于 2020-10-03 19:56:50
contains(_:)判断是否包含给定元素 contains(where:)判断数组是否包含复合给定条件的元素 判断所有元素是否符合某个条件 allSatisfy(_:)判断数组的每一个元素都复合给定的条件 //: A UIKit based Playground for presenting user interface import UIKit var array = [Int](6..<20) print(array.allSatisfy({$0>=5})) print(array.allSatisfy({$0<5})) true false 查找元素 first 返回第一个元素(optional)如果数组为空 返回nil last 返回数组最后一个元素 (optional) 如果数组为空,返回nil first(while:)返回数组第一个复合给定条件的元素(optional) last(while:)返回最后一个符合给定条件的元素(optional) //: A UIKit based Playground for presenting user interface import UIKit var array = [10,231,3,123,123,12,312,3,121234,1] print(array.first) print(array.last)

Srping cloud gateway 实现动态路由(MySQL持久化+redis分布式缓存) 最新

落爺英雄遲暮 提交于 2020-10-03 13:29:22
摘要 本文讲解在Spring Cloud 中如何通过MySQL和redis实现动态路由配置,以及路由信息持久化在MySQL中,同时使用Redis作为分布式路由信息缓存。 无广告原文链接: Srping cloud gateway 实现动态路由(MySQL持久化+redis分布式缓存) 正文 Sping Cloud gateway 中自己集成了一套基于配置文件的一套路由规则,该规则需要配置在application.yml/properties文件中,如果在使用配置文件时想要动态化实现路由配置,需要网关结合Spring cloud config一起来使用(路由配置在config配置中心中,随着config修改路由信息,gateway会自动刷新而不需要重启刷新路由)。 本文将会在上述基础之上修改路由的存储方式为MySQL,并且把路由信息缓存在redis中,当数据库中的路由信息发生变化时, 可以主动通知网关去重新加载路由信息。 我们在使用此方法改造前,请去掉您的配置文件中配置的路由规则 注意,本部分代码需要使用的部分依赖为: <!-- ali json依赖 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version> <

创建自定义springboot的starter

夙愿已清 提交于 2020-10-03 05:19:45
springboot自定义starter 完整的springboot starter包含两个组件 autoconfigure 这里包含自动配置的代码 starter 依赖,或者依赖的其他springboot starter组件 自定义starter的命名 一般来说,自动装配的配置文件都是以xxxx-spring-boot-autoconfigur starter模块的命名为xxxx-spring-boot-starter 开始自定义starter 创建工程 这是工程的目录结构 pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring

Algolia Search

房东的猫 提交于 2020-10-03 00:03:49
First. 什么是 algolia search? 根据algolia官方网站自我阐述: Algolia是一个托管搜索引擎,提供全文,数字和多面搜索,能够从第一次击键中提供实时结果。 Algolia强大的API可让您快速无缝地在网站和移动应用程序中实施搜索。 我们的搜索API每月为成千上万的公司提供数十亿条查询,可在全球100ms之内提供相关结果。 简单直白的说就是一个提供云搜素服务的第三方平台。我们通过调用algolia的feed接口把一些我们想要呈现给用户的内容上传到algolia平台,可以是产品,文章,图片等等信息。 然后我们可以在自己的网站上通过构建前端或者后端搜素方式,把用户的关键词提交给algolia,同时algolia在很短的时间内容作出回应,返回给我们与搜索有关的内容。 Second. 建筑用户搜索界面 Algolia在官方文档中推荐我们使用 InstantSearch (即时搜索),这种搜索方式提供的效果确认给人一种很即时的感觉,没得用户键盘键入一个字母,algolia都会返回结果集。 InstantSearch属于前端搜索范畴,构建前端搜索algolia支持的语言还是比较丰富的例如 js,React,Vue,ios... 使用js构建前端搜索根据文档真的是十分的方便,只需把文档中的案例代码复制粘贴稍做改动就可以达到自己想要的结果

Java Stream操作

假装没事ソ 提交于 2020-10-01 14:41:37
Stream的基本概念 Stream和集合的区别: 1.Stream不会自己存储元素。元素储存在底层集合或者根据需要产生。 2.Stream操作符不会改变源对象。相反,它会返回一个持有结果的新的Stream。 3.Stream操作可能是延迟执行的,这意味着它们会等到需要结果的时候才执行。 Stream操作的基本过程,可以归结为3个部分: 创建一个Stream。 在一个或者多个操作中,将指定的Stream转换为另一个Stream的中间操作。 通过终止(terminal)方法来产生一个结果。该操作会强制它之前的延时操作立即执行,这之后该Stream就不能再被使用了。 中间操作都是filter()、distinct()、sorted()、map()、flatMap()等,其一般是对数据集的整理(过滤、排序、匹配、抽取等)。 终止方法往往是完成对数据集中数据的处理,如forEach(),还有allMatch()、anyMatch()、findAny()、 findFirst(),数值计算类的方法有sum、max、min、average等等。终止方法也可以是对集合的处理,如reduce()、 collect()等等。reduce()方法的处理方式一般是每次都产生新的数据集,而collect()方法是在原数据集的基础上进行更新,过程中不产生新的数据集。 List nums = Arrays

PyTorch:Embedding

天大地大妈咪最大 提交于 2020-09-30 00:52:46
-柚子皮- torch.nn.Embedding(num_embeddings: int, embedding_dim: int, padding_idx: Optional[int] = None, max_norm: Optional[float] = None, norm_type: float = 2.0, scale_grad_by_freq: bool = False, sparse: bool = False, _weight: Optional[torch.Tensor] = None) 参数 num_embeddings (int) – size of the dictionary of embeddings 词典的大小尺寸,比如总共出现5000个词,那就输入5000。此时index为(0-4999)。注意这里num_embeddings必须要比词对应的最大index要大,而不是比词个数大就可以。 embedding_dim (int) – the size of each embedding vector 嵌入向量的维度,即用多少维来表示一个符号。embedding_dim的选择要注意,根据自己的符号数量,举个例子,如果你的词典尺寸是1024,那么极限压缩(用二进制表示)也需要10维,再考虑词性之间的相关性,怎么也要在15-20维左右

Python学习

杀马特。学长 韩版系。学妹 提交于 2020-09-29 16:37:16
Python 学习 提示:刚刚开始用python,希望慢慢学习,慢慢记录 提示:以下是本篇文章正文内容,下面案例可供参考 一、Python 数值积分函数 Python 提供了很多种用于不同情况下的积分函数 scipy.integrate.quad: 一重积分 scipy.integrate.dblquad: 二重积分 scipy.integrate. 三重积分 scipy.integrate.nquad: 多重积分 二、scipy.integrate.dblquad 关于 scipy.integrate.dblquad 的用法。 scipy.integrate.dblquad(func, a, b, gfun, hfun, args=(), epsabs=1.49e-08, epsrel=1.49e-08) Compute a double integral. Return the double (definite) integral of func(y, x) from x = a…b and y = gfun(x)…hfun(x). Parameters funccallable A Python function or method of at least two variables: y must be the first argument and x the second