上下文

【一起学习输入法】华宇拼音输入法开源版本解析(5)

霸气de小男生 提交于 2020-01-23 23:15:10
【一起学习输入法】华宇拼音输入法开源版本解析(5) 原创:good02xaut(CSDN) IME输入法系统框架 输入法在DOS时代就有了,首先出现的是英文输入法,其次根据市场需要推出中文输入法。微软推出windows操作系统后,输入法先是以IME架构形式,现在又推出更新的TSF技术来支持平板电脑和更高版本的Windows操作系统。 输入法程序也是一个进程,但是我们在任务管理器中却找不到该进程,找到输入法的安装目录会发现一个后缀是.ime的文件,就是一个dll的模块,当一个进程打开输入法要输入汉字的时候其实是加载了这个模块。 默认情况下, IME 提供了一个 IME 窗口(其实是 4 个窗口,下文有详细展开),通过这个窗口,用户可以用键盘输入并且查看和选择想要的字符。应用程序可以使用输入法管理器( IMM )函数和消息来创建并且管理其自己的 IME 窗口(比如 QQ 里是五笔而 Word 里却是拼音),并使用 IME 的转换功能提供一个自定义接口(比如,英文输入法到中文输入法的转换)。 输入法管理器 IMM 只在东亚(中国,日本,韩国)本地化的 Windows 中才可用。在这些系统中,以 SM_DBCSENABLED 消息调用 GetSystemMetrics 函数来确定 IMM 是否可用。注意, Windows 所有本地化版本中都提供了全功能的 IME 支持

第01章-Spring之旅

拥有回忆 提交于 2020-01-23 04:59:17
一、简化Java开发 1. Spring的主要特性 依赖注入DI和面向切面编程AOP。 2. 关键策略 轻量级和最小侵入性编程:POJO 松耦合:DI和AOP 声明式编程:切面和惯例 减少样板式代码:切面和模板 3. 优点 Spring不会强迫你实现Spring规范的接口或继承Spring规范的类。往往没有任何迹象表明你使用了Spring! 4. 依赖注入DI 装配(wiring):创建应用组件之间协作的行为; Spring的装配:有多种装配Bean的方式,最常见的是XML配置方式; 工作方式:Spring通过应用上下文(Application Context)装载、组装Bean; Spring的上下文:有多种,区别在于如何加载它们的配置。常用的如ClassPathXmlApplicationContext,可用来加载位于系统classpath下的一个或多个XML文件。 (依赖注入更多参考《Dependency Injection》,Dhanji R. Prasanna) 5. 应用切面AOP DI让相互协作的软件组件保持松散耦合,而AOP编程允许你把遍布应用各处的功能分离出来形成可重用的组件。 6. 通过“模板封装”消除样板式代码 典型的如Spring JdbcTemplate,使得在执行数据库操作时,避免传统的JDBC样板式代码成为可能。 二、容纳你的Bean 1.

百分点认知智能实验室出品:深度迁移学习十八问

那年仲夏 提交于 2020-01-22 23:13:40
编者按 深度迁移学习是基于深度神经网络的迁移学习方法,BERT通过预训练模型达到深度迁移学习的效果,自从2018年底BERT横空出世以来,就以势不可挡的姿态横扫了众多榜单,甚至在阅读理解任务SQuAD 中超越人类水平。BERT在公检法、媒体出版、军工、快消零售等工业界也迅速落地,如百分点智能对话系统、百分点智能审校系统和百分点智能翻译系统等。BERT几乎在所有的下游任务中效果都获得了明显提升,BERT自此开创了一个NLP的新时代,那就是pre-train + fine-tuning的时代。 基于BERT的各种改进版预训练模型层出不穷,令人眼花缭乱,似乎一不小心就会落伍。但是万变不离其宗,只要掌握了一些最基本的的思想、技术,就能让自己紧跟大神们的脚步,让更优秀的算法模型在工业界持续落地。百分点认知智能实验室梳理了以BERT为代表的基于fine-tuning模式的深度迁移学习中一些疑难问题,整理出18个典型的问题,对理解BERT论文和源代码有明显的帮助,因此分享给大家。 本文作者:崔丙剑 苏海波 基本概念 1.如何正确理解深度迁移学习? 答:迁移学习是机器学习的一个重要分支,是指利用数据、任务、或模型之间的相似性,将在源领域学习过的模型,应用于新领域的一种学习过程。 图1: 迁移学习示意图 迁移学习主要有几种形式:基于样本的迁移、基于特征的迁移、基于模型的迁移和基于关系的迁移

百分点认知智能实验室出品:深度迁移学习十八问

扶醉桌前 提交于 2020-01-22 23:06:48
编者按 深度迁移学习是基于深度神经网络的迁移学习方法,BERT通过预训练模型达到深度迁移学习的效果,自从2018年底BERT横空出世以来,就以势不可挡的姿态横扫了众多榜单,甚至在阅读理解任务SQuAD 中超越人类水平。BERT在公检法、媒体出版、军工、快消零售等工业界也迅速落地,如百分点智能对话系统、百分点智能审校系统和百分点智能翻译系统等。BERT几乎在所有的下游任务中效果都获得了明显提升,BERT自此开创了一个NLP的新时代,那就是pre-train + fine-tuning的时代。 基于BERT的各种改进版预训练模型层出不穷,令人眼花缭乱,似乎一不小心就会落伍。但是万变不离其宗,只要掌握了一些最基本的的思想、技术,就能让自己紧跟大神们的脚步,让更优秀的算法模型在工业界持续落地。百分点认知智能实验室梳理了以BERT为代表的基于fine-tuning模式的深度迁移学习中一些疑难问题,整理出18个典型的问题,对理解BERT论文和源代码有明显的帮助,因此分享给大家。 本文作者:崔丙剑 苏海波 基本概念 1.如何正确理解深度迁移学习? 答:迁移学习是机器学习的一个重要分支,是指利用数据、任务、或模型之间的相似性,将在源领域学习过的模型,应用于新领域的一种学习过程。 图1: 迁移学习示意图 迁移学习主要有几种形式:基于样本的迁移、基于特征的迁移、基于模型的迁移和基于关系的迁移

Spring Cloud应用程序上下文—服务和层次结构

懵懂的女人 提交于 2020-01-22 16:08:37
Spring Boot对于如何使用Spring构建应用程序有一个看法:例如它具有常规配置文件的常规位置,以及用于常见管理和监视任务的端点。Spring Cloud建立在此之上,并添加了一些可能系统中所有组件将使用或偶尔需要的功能。 引导应用程序上下文 一个Spring Cloud应用程序通过创建一个“引导”上下文来进行操作,这个上下文是主应用程序的父上下文。开箱即用,负责从外部源加载配置属性,还解密本地外部配置文件中的属性。这两个上下文共享一个 Environment ,这是任何Spring应用程序的外部属性的来源。Bootstrap属性的优先级高,因此默认情况下不能被本地配置覆盖。 引导上下文使用与主应用程序上下文不同的外部配置约定,因此使用 bootstrap.yml application.yml (或 .properties )代替引导和主上下文的外部配置。例: bootstrap.yml spring: application: name: foo cloud: config: uri: ${SPRING_CONFIG_URI:http://localhost:8888} 如果您的应用程序需要服务器上的特定于应用程序的配置,那么设置 spring.application.name (在 bootstrap.yml 或 application.yml )中是个好主意。

关于Spring Cloud应用程序上下文服务

岁酱吖の 提交于 2020-01-22 16:07:03
Spring Boot对于如何使用Spring构建应用程序有一个看法:例如它具有常规配置文件的常规位置,以及用于常见管理和监视任务的端点。Spring Cloud建立在此之上,并添加了一些可能系统中所有组件将使用或偶尔需要的功能。 引导应用程序上下文 一个Spring Cloud应用程序通过创建一个“引导”上下文来进行操作,这个上下文是主应用程序的父上下文。开箱即用,负责从外部源加载配置属性,还解密本地外部配置文件中的属性。这两个上下文共享一个 Environment ,这是任何Spring应用程序的外部属性的来源。Bootstrap属性的优先级高,因此默认情况下不能被本地配置覆盖。 引导上下文使用与主应用程序上下文不同的外部配置约定,因此使用 bootstrap.yml application.yml (或 .properties )代替引导和主上下文的外部配置。例: bootstrap.yml spring: application: name: foo cloud: config: uri: ${SPRING_CONFIG_URI:http://localhost:8888} 如果您的应用程序需要服务器上的特定于应用程序的配置,那么设置 spring.application.name (在 bootstrap.yml 或 application.yml )中是个好主意。

Spring Cloud教程(九)应用程序上下文服务

馋奶兔 提交于 2020-01-22 16:05:31
Spring Boot对于如何使用Spring构建应用程序有一个看法:例如它具有常规配置文件的常规位置,以及用于常见管理和监视任务的端点。Spring Cloud建立在此之上,并添加了一些可能系统中所有组件将使用或偶尔需要的功能。 引导应用程序上下文 一个Spring Cloud应用程序通过创建一个“引导”上下文来进行操作,这个上下文是主应用程序的父上下文。开箱即用,负责从外部源加载配置属性,还解密本地外部配置文件中的属性。这两个上下文共享一个 Environment ,这是任何Spring应用程序的外部属性的来源。Bootstrap属性的优先级高,因此默认情况下不能被本地配置覆盖。 引导上下文使用与主应用程序上下文不同的外部配置约定,因此使用 bootstrap.yml application.yml (或 .properties )代替引导和主上下文的外部配置。例: bootstrap.yml spring: application: name: foo cloud: config: uri: ${SPRING_CONFIG_URI:http://localhost:8888} 如果您的应用程序需要服务器上的特定于应用程序的配置,那么设置 spring.application.name (在 bootstrap.yml 或 application.yml )中是个好主意。

Spring Cloud的应用程序—上下文服务

会有一股神秘感。 提交于 2020-01-22 16:04:06
Spring Boot对于如何使用Spring构建应用程序有一个看法:例如它具有常规配置文件的常规位置,以及用于常见管理和监视任务的端点。 Spring Cloud建立在此之上,并添加了一些可能系统中所有组件将使用或偶尔需要的功能。 引导应用程序上下文 一个Spring Cloud应用程序通过创建一个“引导”上下文来进行操作,这个上下文是主应用程序的父上下文。开箱即用,负责从外部源加载配置属性,还解密本地外部配置文件中的属性。这两个上下文共享一个 Environment ,这是任何Spring应用程序的外部属性的来源。Bootstrap属性的优先级高,因此默认情况下不能被本地配置覆盖。 引导上下文使用与主应用程序上下文不同的外部配置约定,因此使用 bootstrap.yml application.yml (或 .properties )代替引导和主上下文的外部配置。例: bootstrap.yml spring: application: name: foo cloud: config: uri: ${SPRING_CONFIG_URI:http://localhost:8888} 如果您的应用程序需要服务器上的特定于应用程序的配置,那么设置 spring.application.name (在 bootstrap.yml 或 application.yml )中是个好主意。

JavaScript探究之执行上下文

纵饮孤独 提交于 2020-01-22 09:19:55
JavaScript代码的执行过程分为两个阶段: 代码编译阶段,由编译器完成,将代码翻译成 可执行代码 代码执行阶段,由引擎完成,主要任务是 执行可执行代码 可执行代码分为三种: 全局代码 函数代码 eval代码 一、执行上下文(EC) 当代码运行到一个环境时,就会进行“准备工作”,这里的“准备工作”称为“ 执行上下文 ”,也叫 执行上下文环境 , 执行环境 。 执行上下文的组成: 变量对象 作用域链 this指针 二、执行上下文的生命周期 创建 生成变量对象,建立作用域链,确定this指向 执行 变量赋值,函数引用,执行其它代码 执行完出栈,等待销毁 三、变量对象的创建过程 创建 arguements对象 检查 function函数 声明创建属性 检查 var变量 声明创建属性 四、变量对象和活动对象(Active Object)   变量对象和活动对象都是同一个对象,只是处于 执行上下文的不同生命周期 。   只有处于 函数调用栈栈顶 的执行上下文中的变量对象,才会变成 活动对象 。 五、作用域链和this指向   本质是一个指向当前环境与上层环境的 一系列变量对象的指针列表 (它只引用但不实际包含变量对象)。   作用域链保证了当前执行环境对符合访问权限的变量和函数的有序访问。   this指向的确定见另一篇文章。 六、总结 全局上下文 在代码开始前就创建,在栈底部

初试Code First(附Demo)

99封情书 提交于 2020-01-22 08:13:32
初试Code First(附Demo) 写在前面 新建项目 安装EntityFramework程序包 创建模型 创建上下文DbContext 创建数据库、读/写数据 配置连接字符串 Code First 迁移 示例Demo下载 后记   以前逛园子的时候,很多大牛写的一些东西,什么AOP、DDD之类的,看过之后一头雾水,远望大牛,回过头看看自己,原来程序员的差距还可以这么大。每个程序员都有个大牛梦想,当然小菜我也是,只是还在开始的路上。   因为前几天研究easyui,准备写个mvc+ef+easyui的简单示例,当然这对很多人来说很简单,有段时间也研究过别人写的,但这是小菜我第一次自己写,勿喷。而且这周安排给自己的任务:设计模式第五篇-控制反转(ioc),前段时间做些其他方面的事,设计模式也好久没写了,所以这周必须把它完成,想研究完ioc之后,试着再写上面的简单示例,把ioc融入到mvc中,想想应该有搞头。   关于Code First,昨晚无意间看到一位园友翻译的相关教程: http://www.cnblogs.com/qouoww/archive/2011/12/31/2309066.html ,这边小弟先谢过,前面几篇还可以看下去,但是后面几篇就有点不知所云了,学习是一方面,实践是另一方面,做的过程中才能学到更多的东西,这边也试着写个关于Code First的小示例。