技术文章

Extracting, transforming and selecting features

让人想犯罪 __ 提交于 2021-02-17 17:59:38
This section covers algorithms for working with features, roughly divided into these groups 本节介绍使用功能的算法,大致分为以下几组: 提取: 从数据中抽取特征。 转变: Scaling, converting, or modifying features 选择: 在多个特征中挑选比较重要的特征。 局部敏感哈希(LSH): 这类算法将特征变换的各个方面与其他算法结合起来。 Table of Contents Feature Extractors 特征提取 TF-IDF Word2Vec CountVectorizer Feature Transformers 特征变换 Tokenizer 分词器 StopWordsRemover 停用字清除 n n -gram Binarizer 二元化方法 PCA 主成成分分析 PolynomialExpansion 多项式扩展 Discrete Cosine Transform (DCT-离散余弦变换) StringIndexer 字符串-索引变换 IndexToString 索引-字符串变换 OneHotEncoder 独热编码 VectorIndexer 向量类型索引化 Interaction Normalizer 范数p-norm规范化

C# 导出Word报”无法打开Office open xml文件。因为文件内容有错误“ 解决方法

…衆ロ難τιáo~ 提交于 2021-02-17 17:58:34
C# 导出Word报”无法打开Office open xml文件。因为文件内容有错误“ 解决方法 参考文章: (1)C# 导出Word报”无法打开Office open xml文件。因为文件内容有错误“ 解决方法 (2)https://www.cnblogs.com/BeyondWJsel/archive/2012/05/10/2494418.html 备忘一下。 来源: oschina 链接: https://my.oschina.net/u/4428122/blog/4953375

2017-2018-2 20179204《网络攻防实践》第十周学习总结 缓冲区溢出漏洞实验

不打扰是莪最后的温柔 提交于 2021-02-17 17:09:31
第1节 实验简介 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况。这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段。这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写。 第2节 实验准备 系统用户名shiyanlou,实验楼提供的是64位Ubuntu linux,而本次实验为了方便观察汇编语句,我们需要在32位环境下作操作,因此实验之前需要做一些准备。 ###2.1 输入命令安装一些用于编译32位C程序的东西: ###2.2 输入命令“linux32”进入32位linux环境。此时你会发现,命令行用起来没那么爽了,比如不能tab补全了,所以输入“/bin/bash”使用bash: 第3节 练习1实验步骤 ###3.1 初始设置 Ubuntu和其他一些Linux系统中,使用地址空间随机化来随机堆(heap)和栈(stack)的初始地址,这使得猜测准确的内存地址变得十分困难,而猜测内存地址是缓冲区溢出攻击的关键。因此本次实验中,我们使用以下命令关闭这一功能: sudo sysctl -w kernel.randomize_va_space=0 此外,为了进一步防范缓冲区溢出攻击及其它利用shell程序的攻击,许多shell程序在被调用时自动放弃它们的特权。因此,即使你能欺骗一个Set-UID程序调用一个shell

IntelliJ IDEA详细配置和使用教程

一曲冷凌霜 提交于 2021-02-17 17:09:09
前言 正所谓工欲善其事必先利其器,对开发人员而言若想提高编码效率,一款高效的开发工具是必不可少的,相信看到该博客的朋友们都已经对IntelliJ IDEA有所了解了,所以此处就不对IntelliJ IDEA进行介绍,而是直接阐述在实际开发中应用场景。博主使用的IntelliJ IDEA版本为IntelliJ IDEA 2017,因为博主是一名Java开发工程师,所以以下内容均以Java为主。(相信有不少人和我一样是从Eclipse转粉IntelliJ IDEA,在学习IntelliJ IDEA前请尽量忘记Eclipse有关知识)在学习过程中主要参考了 https://github.com/judasn/IntelliJ-IDEA-Tutorial ,该教程对IntelliJ IDEA介绍十分详细,你们可以直接点击以上链接进行学习。至于为什么写这篇博文,我的目的是想把自己的个性化配置记录下来,当然如果与此同时能帮助到其他人,岂不美哉,本文将持续更新,由于本文内容较多建议读者从目录树上定位想要获取的配置信息 关闭Intellij IDEA自动更新 在File->Settings->Appearance & Behavior->System Settings->Updates下取消Automatically check updates for勾选 隐藏.idea文件夹和.iml等文件

Java基础—变量

那年仲夏 提交于 2021-02-17 17:08:56
什么是变量呢? 变量就是存储数据的小盒子,只能存数据和取数据。 1.计算机的存储单元: 变量是内存中的小容器,用来存储数据 , 无论是内存还是硬盘, 计算机存储设备的 最小信息单元 叫 “位( bit ) ” , 我们又称之为 “比特位”,通常用小写的字母 b 表示。而 计算机 最小的存储单元 叫 “字节( byte ) ”,通常用大写字母 B 表示, 字节是由连续的 8 个位组成。 1B(字节) = 8bit 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024GB 1PB = 1024TB 2.基本数据类型(4类8种) 变量必须要有明确的类型,什么类型的变量装载什么类型的数据。 四类 八种 字节数 数据表示范围 整 型 byte 1 -128~127 short 2 -32768~32767 int 4 -2147483648~2147483648 long 8 -2 63 ~2 63 -1 浮点型 float 4 -3.403E38~3.403E38 double 8 -1.798E308~1.798E308 字符型 char 2 表示一个字符,如('a','A','0','家') 布尔型 boolean 1 只有两个值true与false 注意:Java 中整数常量如果不在 -2147483648~2147483648

web前端经验总结需要注意的地方和技巧

雨燕双飞 提交于 2021-02-17 17:08:10
1.编程思维 学习web前端开发核心在于一个“编程思维”,因为每段代码都不一样,都需要分别去看,所以只要你掌握了学习web前端的编程思维,那么写程序对于你来说,就只是先分析业务,然后编码就可以了。 2.代码量 任何一个web前端开发高手都是大量的代码堆积出来的,有很多人只是看视频看书而已,视频或者书只是让你了解web前端都学什么内容。按照自己的理解这些知识点,然后大量的代码决定你的技术能达到什么样子的水平和熟练度。 3.明确目标水平 学习web前端肯定是为了就业,所以要分出来主次,web前端体系的内容很多,我们重点要学习哪些内容自己要明确,这样就比较有方向。 4.代码规范 代码规范,最好是从开始就养成,对自己有一个比较严格的要求,对于以后的发展很有帮助。 5.指导 别自己钻牛角尖,因为作为一个初学者,要适当找别人帮助,最好有一个老师全程指导,这样可以少走很多弯路。别人五分钟解决的问题,你可能用四五个小时,浪费时间。而你完全可以用这些时间去做一些其他的事情。导致自己的学习效率大大下降。 6.项目 为了最后的项目去学习,学习web前端没有任何方式是可以在项目学习到的东西更多了。自己尝试去开发一些小东西,这会大大增加你的实战能力。就跟上战场一样,上过几次战场就会不一样。 7.程序员种类 认识到深入学习web前端技术和代码搬运工的区别,我是希望你学习web前端要做技术大神

简单的java缓存实现

五迷三道 提交于 2021-02-17 17:07:11
提到缓存,不得不提就是缓存算法(淘汰算法),常见算法有LRU、LFU和FIFO等算法,每种算法各有各的优势和缺点及适应环境。 1、LRU(Least Recently Used ,最近最少使用) 算法根据数据的最近访问记录来淘汰数据,其原理是如果数据最近被访问过,将来被访问的几概率相对比较高,最常见的实现是使用一个链表保存缓存数据,详细具体算法如下: 1. 新数据插入到链表头部; 2. 每当缓存数据命中,则将数据移到链表头部; 3. 当链表满的时候,将链表尾部的数据丢弃; 2、LFU(Least Frequently Used,最不经常使用) 算法根据数据的历史访问频率来淘汰数据,其原理是如果数据过去被访问次数越多,将来被访问的几概率相对比较高。LFU的每个数据块都有一个引用计数,所有数据块按照引用计数排序,具有相同引用计数的数据块则按照时间排序。 具体算法如下: 1. 新加入数据插入到队列尾部(因为引用计数为1); 2. 队列中的数据被访问后,引用计数增加,队列重新排序; 3. 当需要淘汰数据时,将已经排序的列表最后的数据块删除; 3、FIFO(First In First Out ,先进先出) 算法是根据先进先出原理来淘汰数据的,实现上是最简单的一种,具体算法如下: 1. 新访问的数据插入FIFO队列尾部,数据在FIFO队列中顺序移动; 2. 淘汰FIFO队列头部的数据;

解决UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 108: ordinal not in range(128

只谈情不闲聊 提交于 2021-02-17 17:06:48
解决UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 108: ordinal not in range(128 今天做网页到了测试和数据库交互的地方,其中HTML和数据库都是设置成utf-8格式编码,插入到数据库中是正确的,但是当读取出来的时候就会出错,原因就是python的str默认是ascii编码,和unicode编码冲突,就会报这个标题错误。那么该怎样解决呢? 通过搜集网上的资料,自己多次尝试,问题算是解决了,在代码中加上如下几句即可。 import sys reload ( sys ) sys . setdefaultencoding ( 'utf8' ) http://docs.python.org/howto/unicode.html 这个是python的unicode编码API文档,英文好的同学可以看一下,加深理解。 参考资料: http://groups.google.com/group/python-cn/browse_thread/thread/f48ef745452740f6?pli=1 点击打开链接 --------------------------------------------------------------------------------------

APUS浏览器应用集成恶意URL检测功能,风险网站检测能力提升20%

早过忘川 提交于 2021-02-17 17:06:26
APUS 成立于2014年6月,其系统及产品集群全球总用户数突破14亿,是全球高速发展的互联网公司之一。其中APUS浏览器以功能丰富、设计简洁、简单易用为亮点,轻松帮助用户实现极速浏览、搜索与下载的优质体验。 业务挑战 为了让用户拥有一款更安全放心的浏览器,APUS浏览器应用团队表示,需要始终关注每一位用户的个人隐私信息、财产安全保护等问题,避免钓鱼链接、假冒仿冒链接等一些恶意的URL的出现。因此,在APUS浏览器中增加恶意URL检测功能显得格外重要。不仅如此,APUS浏览器应用团队表示“为了能够长期、持续地为用户提供安全浏览服务,APUS浏览器需要一种运营简单、成本可控的检测方法。“ 解决方案 快速评估风险 识别URL 当用户在APUS浏览器应用内访问未知风险的URL前,恶意URL检测功能可快速识别URL是安全的、还是钓鱼或恶意软件链接,即可有效评估URL是否存在风险。 有效提示风险 拦截访问 在通过恶意URL检测功能的评估后,如果发现URL存在风险,在应用界面上就会发出提醒,帮用户阻断对恶意网站的访问,有利于拦截被钓鱼、被盗号甚至被种***的风险。 集成简单 降低开发成本 恶意URL检测功能集成简单,仅需三个步骤即可调用API。并且无需运营,有效的控制了安全浏览服务的实现成本。 结果 APUS浏览器应用负责人表示,“通过接入华为安全检测的恶意URL检测功能后

鸿蒙和安卓,到底有什么区别?

帅比萌擦擦* 提交于 2021-02-17 17:06:03
点击“ 开发者技术前线 ”,选择“星标🔝” 让一部分开发者看到未来 在 9 月 10 日召开的华为开发者大会上,宣布了鸿蒙2.0 系统正式面世,同时开启了 Beta 版本的测试和开源网站。 对于开发者来说两个最关键的点值得关注: 一个是 Beta 版的开发工具,一个是开源网站。 开源网站 在开发者大会上宣布将 HarmonyOS源代码捐赠给中国开放原子开源基金会,并在大会上公布了鸿蒙系统的开源路线。 OpenHarmony 官方源码地址: https: //openharmony.gitee.com/openharmony 开发工具 鸿蒙使用基于 Intellij IDEA 深度定制研发的 DevEco Studio 作为其开发工具。 DevEco Studio 下载地址: https: / /developer.harmonyos.com/cn /develop/deveco -studio 那么,在应用开发过程中,HarmonyOS(鸿蒙)和 Android(安卓)开发环境有什么不同呐? HarmonyOS 项目和 Android 项目对比 资源目录的变更 ①资源目录名称有更改 安卓 res 目录,这里用 resources 目录,它包括 base 和 rawfile 两部分,其中 base 是核心的资源目录,常用的都放在这里面,便于查找和使用。rawfile