为什么要降维?高维情形下,样本数据稀疏,距离计算困难。为什么能进行降维?收集的数据虽是高维但与学习任务密切相关的也许仅仅是某个低维分布无监督降维:PCA最大重构性:找到一个超平面使得样本点在这个超平面的投影尽量分开。PCA也可以看作是逐一筛选方差最大方向;对协方差矩阵XX^T特征分解,取最大特征值及其特征向量;在去掉该特征值以及特征向量后,继续取最大特征值;关于PCA的几个问题:投影方向应该取多少才好?根据博客https://blog.csdn.net/m
系统 2019-09-27 17:56:39 2497
前言优化随机森林算法,正确率提高1%~5%(已经有90%+的正确率,再调高会导致过拟合)论文当然是参考的,毕竟出现早的算法都被人研究烂了,什么优化基本都做过。而人类最高明之处就是懂得利用前人总结的经验和制造的工具(说了这么多就是为偷懒找借口。hhhh)优化思路1.计算传统模型准确率2.计算设定树木颗数时最佳树深度,以最佳深度重新生成随机森林3.计算新生成森林中每棵树的AUC,选取AUC靠前的一定百分比的树4.通过计算各个树的数据相似度,排除相似度超过设定值
系统 2019-09-27 17:54:33 2497
之前和大家介绍过在C/C++中嵌入Python,本次和大家分享下使用C/C++扩展Python内置模块的方法。被扩展出来的新模块可以做两件无法直接在Python中完成的事情:一可以实现新的内置对象类型,二则可以调用C库函数和一些其他的系统调用。使用平台:ubuntu14.04、python3.5、Qt5.5.1下面借助Qt创建一个叫libpy3extend的Python内置模块,它可以做一个简单的加法操作,还可以返回一个自定义的数据类型。调用形式如下:im
系统 2019-09-27 17:50:55 2497
python按行读取文件并找出其中指定字符串#coding=utf-8importos,time,sys,re#reload(sys)#sys.setdefaultencoding("utf8")#不设置,否则编码方式不对应,无法找出字符串file=open(path)sum=0forlineinfile.readlines():#line=line.strip("\n")key="解析渲染"ifkeyinline:s=re.findall('"TimeS
系统 2019-09-27 17:48:23 2497
编辑器不等于IDE(集成开发环境),开发python程序,不是只有一种print()打印输出调试。术业有专攻,于人如此,于一个软件也是如此。让专业的软件做专业的事。以上两点得出的结论:PyCharm我们以如下的一种常见错误,来演示如何通过PyCharm断点追踪的方式发现程序中的错误:deffoo(bar=[]):bar.append('bar')returnbar>>>foo()['bar']>>>foo()['bar','bar']>>>foo()['b
系统 2019-09-27 17:48:11 2497
在python中,任务并发一种方式是通过进程分支来实现的.在linux系统在,通过fork()方法来实现进程分支.1.fork()调用后会创建一个新的子进程,这个子进程是原父进程的副本.子进程可以独立父进程外运行.2.fork()是一个很特殊的方法,一次调用,两次返回.3.fork()它会返回2个值,一个值为0,表示在子进程返回;另外一个值为非0,表示在父进程中返回子进程ID.以下只能在linux中运行,不能在window下运行.进程分支fork()实例如
系统 2019-09-27 17:47:07 2497
分析我们都知道一个可迭代对象可以通过iter()可以返回一个迭代器。如果想要一个对象称为可迭代对象,即可以使用for,那么必须实现__iter__()方法。在一个类的实例对象想要变成迭代器,就必须实现__iter__()和__next__()方法。调用iter()时,在对象内部默认调用__iter__(),即__iter__()的返回值应该是一个迭代器。for的每次循环中或者next()时,都是自动调用迭代器的__next__()方法,并有一个返回值。实现
系统 2019-09-27 17:46:55 2497
Socket是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于Socket来完成通信的,例如我们每天浏览网页、QQ聊天、收发email等等。要解决网络上两台主机之间的进程通信问题,首先要唯一标识该进程,在TCP/IP网络协议中,就是通过(IP地址,协议,端口号)三元组来标识进程的,解决了进程标识问题,就有了通信的基础了。本文主要介绍使用Python进行TCPSocket网络编程,
系统 2019-09-27 17:38:43 2497
Activities提供了一种方便管理的创建、保存、回复的对话框机制,例如onCreateDialog(int),onPrepareDialog(int,Dialog),showDialog(int),dismissDialog(int)等方法,如果使用这些方法的话,Activity将通过getOwnerActivity()方法返回该Activity管理的对话框(dialog).onCreateDialog(int):当你使用这个回调函数时,Android
系统 2019-08-29 23:41:30 2497
JDBC批量Insert深度优化(没事务)最近在做一个数据同步分发工具,高并发,高效率,异步非实时是主要特点。为此,选择的方案是JDBC、只有两种操作,插入和更新。对于更新,只能逐条分批就可以了,优化空间不大。对于插入,则可以做批量的优化,优化的策略只能是具体问题具体分析,以测试结论为主要依据了。环境:MySQL5.1RedHatLinuxAS5JavaSE1.5DbConnectionBroker微型数据库连接池测试的方案:执行10万次Insert语句,
系统 2019-08-29 23:37:52 2497