计算机算法
chenXin@Euler
黄金分割点、白银分割点
展开
-
随机森林(randomForest)和极限树或者叫做极端随机树(extraTree),
随机森林:是一个包含多个决策树的分类器, 并且其输出的类别是由个别树输出的类别的众数而定。,随机森林对回归的结果在内部是取得平均 但是并不是所有的回归都是取的平均,有些是取的和,以后会发博文来解释这样的一个现象,需要整理些资料出来。 随机森林里的随机包含的意思是: 样本随机 特征随机 参数随机 模型随机(ID3 ,C4.5) 极限树/极端随机树里的随机包含的意思是: 特征随机 参...原创 2018-08-18 22:39:28 · 39335 阅读 · 1 评论 -
特征选择算法(机器学习)
1)特征选择理论 一份数据有很多属性,但有些属性可能很关键,另一些没有用。从给定特征集中选择出相关特征子集的过程称为特征选择。特征选择是一个重要的数据预处理过程。一般在正式的数据处理之前进行。 特征选择是一个重要的数据预处理过程,他不仅可以降低数据维数,以节省时间,简化分析,规避“维度灾难”,更可以去除无关特征,抓住主要矛盾,使分析结果更加准确。同时,采用特征选择算法还便于理解和可视化数据,降...原创 2018-08-20 23:04:25 · 4767 阅读 · 0 评论 -
机器学习集成模型
下面示例的是boosting集成,bagging集成,stacking集成 详细的信息,明天早晨起床再添加吧!困了先睡了翻译 2018-08-20 23:29:49 · 3425 阅读 · 0 评论 -
机器学习之聚类
衡量聚类距离的方式有很多,常用的方式有欧式距离和曼哈顿距离两种。对于两个n维数据Xi,Xj,以下是两种距离的计算公式, 上图中的k代表的是维度数,最高是n维,而不是幂次数 图片裁剪的像素尺度不好,导致图片只能倒放,造成的不便还请多多包涵! 原型聚类:K-means 聚类算法有很多种,常用的聚方法包括原型聚类,密度聚类,层次聚类几种。 原型聚类是指聚类结构能通过一组原型刻画的聚类,原...原创 2018-08-21 10:36:46 · 477 阅读 · 0 评论 -
python递归(阶乘和斐波那契数)
斐波那契数列亦称之为斐波那契数列(意大利语: Successione di Fibonacci),又称黄金分割数列、费波那西数列、费波拿契数、费氏数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上 斐波那契数列指的是这样一个数列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, … 这个数列从第三项开始,每一项都等于前两项之和。 通...原创 2018-08-25 10:47:12 · 1893 阅读 · 0 评论 -
hash table在python中的实现
hash table:又称为散列表,有键和值组成,数组中方商品的价格。 散列表总是将同样的输入映射到形同的索引 散列函数将不同的输入映射到不同的索引 散列函数知道数组有多大,只返回有效的索引。# 投票可以使用散列表voted={}def check_voter(name): if voted.get(name): print("kick them out")...原创 2018-08-25 11:30:53 · 2914 阅读 · 2 评论 -
广度优先算法
deque 即双端队列。是一种具有队列和栈的性质的数据结构。双端队列中的元素可以从两端弹出,其限定插入和删除操作在表的两端进行。# 最短路径问题的算法被称为广度优先搜索# 广度优先搜索是一种用于图的查找算法# 第一类问题:从节点A出发,有前往节点B的路径吗?# 第二类问题:从节点A出发,前往节点B的哪条路径最近。from collections import dequegraph={...原创 2018-08-25 13:40:46 · 425 阅读 · 0 评论 -
机器学习之情感分析
情感分析# -*- coding: utf-8 -*-from __future__ import unicode_literals# sent.pyimport nltk.corpus as ncimport nltk.classify as cfimport nltk.classify.util as cupdata = []fileids = nc.movie_review...原创 2018-08-25 15:17:24 · 1301 阅读 · 0 评论 -
机器学习之NLP自然语言处理
本文将分八大步骤来介绍如何用机器学习处理文本数据。从最简单的方法开始,逐一讲解,然后分析更具体的方案细节,如特征工程、词向量和深度学习。你可以把本文看作是标准方法的高度概括。代码链接:https://github.com/hundredblocks/concrete_NLP_tutorial/blob/master/NLP_notebook.ipynb一、收集数据每一个机器学...转载 2018-08-25 21:59:27 · 9512 阅读 · 0 评论 -
opencv算法(通过opencv点击图片获得相应坐标)
这是一个开始 实现的功能是通过鼠标的点击,获得图片的相应的坐标 图片的缩放,或改变图片的坐标位置的大小 原理参见: opencv图片的缩放的数学原理# 图片坐标获取的方法:# -*- coding:utf-8 -*-import cv2img=cv2.imread("4.jpg") # 定片位置img=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) ...原创 2018-09-10 13:24:02 · 5997 阅读 · 0 评论 -
目标检测标注工具labelImg使用方法(Ubuntu)
外网github这里展示的是源码过程,我给大家说以下怎么下载以及安装,和使用的问题下载版本亲测,下载的版本直接上图,红色条区域是我自己在我的ubuntu系统上使用过得紧接着,就是download的工作了,不如直接上图同样是红色方框着的地方,是我们需要下载的版本下载后是一个zip压缩吧我们把压缩包拷贝到你想放到的位置下面,我一般防止的位置是Documents目录下面红色的框住的...原创 2018-11-08 19:14:23 · 1913 阅读 · 3 评论 -
无人驾驶环境感知设备中 激光雷达和摄像头各自的优缺点
无人驾驶环境感知设备中 激光雷达和摄像头各自的优缺点原创 2018-11-16 11:59:24 · 11563 阅读 · 2 评论 -
fatal err :Eigen/Dense(/Core): No such file or directory
当你安装好你的eigen3的时候,你首先要创建相应的链接关系所以找到你的eigen3所在的位置我的是在/usr/include所以我会cd /usr/include之后创建链接sudo ln -sf eigen3/Eigen Eigensudo ln -sf eigen3/unsupported unsupported这样的话你再去执行g++ eigenxxx.cpp这...原创 2018-11-19 14:50:30 · 2016 阅读 · 0 评论 -
机器学习降维技术(unsupervision/supervision)
线性将维技术本质是把数据投影到低维线性子空间,通过特征的线性组合来降维,其代表方法有主成分分析(PCA),线性判别技术(LDA)等。原始观察空间中的样本具有极大的信息冗余,样本的高维数引发分类器设计的“维度灾难”。将维可以在一定程度上解决这个问题,比如说样本数400,但是特征属性有40000个,这就是一个维度灾难的实际现象。 缓解维度灾难的一个重要途径是降维,即将高纬度空间的数据缩放到低纬度空...原创 2018-08-20 18:26:59 · 591 阅读 · 0 评论 -
sklearn 逻辑回归中的参数的详解'newton-cg', 'lbfgs', 'liblinear', 'sag', 'saga'
penalty : str, ‘l1’ or ‘l2’, default: ‘l2’ 这个是l1 or l2正则化,一般选l2正则化对于逻辑回归分类算法 dual:选择默认的就好,针对的就是l2正则和libliner solver C : float, default: 1.0 正则强度逆或者叫做惩罚系数就是对误差的容忍度,值越高越不能容忍 fit_intercept : bool, d...翻译 2018-08-27 17:20:52 · 13950 阅读 · 0 评论 -
特征抽取(萃取extra)和特征选择
总述 特征选择和特征抽取其实这些都是将维的范畴。特征选择是指选择全部特征的一个子集作为特征向量:特征抽取是指通过已有特征的组合建立一个 新的特征子集,主成份分析方法(principa1component analysis, PCA)就是通过原特征的线性组合建立新的特征子集的一种特征抽取方法。 特征抽取:是指通过已有特征的组合(变换)建立一个新的特征子集。在众多的组合方法当中,线性组合(变换)...原创 2018-08-19 09:54:22 · 1452 阅读 · 0 评论 -
python3 reverse_integer leetcode
leetcode:https://leetcode-cn.com/problems/reverse-integer/description/ 这是第7道算法题。,有兴趣的同学可以去这里刷题。class Solution: # @param {int} n the integer to be reversed # @return {int} the reversed integ...原创 2018-08-22 10:23:53 · 171 阅读 · 0 评论 -
python代码查找列表中重复的元素出现次数
这个问题需要用到字典# 输入数字几,就找到出现几次的元素ids=[1,2,3,3,4,2,3,4,5,6,1,5]di={}for i in ids: if i not in di.keys(): di[i]=1 else: di[i]+=1values=list(di.values())keys=list(di.keys())pri...原创 2018-08-16 20:08:38 · 4884 阅读 · 0 评论 -
python3 atoi leetcode
实现 atoi,将字符串转为整数。在找到第一个非空字符之前,需要移除掉字符串中的空格字符。如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部分字符即为整数的值。如果第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。字符串可以在形成整数的字符后面包括多余的字符,这些字符可以被忽略,它们对于函数没有影响。当字符串中的第一个非空字...转载 2018-08-22 11:20:25 · 379 阅读 · 0 评论 -
python3 leetcode判断一个数是不是2的幂次方
当拿到这道题的时候我想的是进行 code:import mathn=int(input('请输入一个正整数:'))if math.log(n,2)==int: return Trueelse: return False但是在leetcode这样运行时错误的,所以 代码修改如下:class Solution: def isPowerOfTwo(sel...原创 2018-08-22 12:02:54 · 1995 阅读 · 0 评论 -
python3 汉明重量 输入一个数找二进制中位数是1的个数 leetcode
编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。示例 : 输入: 11 输出: 3 解释: 整数 11 的二进制表示为 00000000000000000000000000001011示例 2:输入: 128 输出: 1 解释: 整数 128 的二进制表示为 0000000000000000000000001000000...原创 2018-08-22 13:41:14 · 788 阅读 · 1 评论 -
排序算法,对内存小数据量大的数据排序(一)
问题描述 百度面试题: 搜索引擎会通过日志文件把用户每次检索使用的所有检索串都记录下来,每个查询串的长度为1-255字节。 假设目前有一千万个记录(这些查询串的重复度比较高,虽然总数是1千万,但如果除去重复后,不超过3百万个。一个查询串的重复度越高,说明查询它的用户越多,也就是越热门。),请你统计最热门的10个查询串,要求使用的内存不能超过1G。外部排序指的是大文件的排序...翻译 2018-08-22 16:59:04 · 10850 阅读 · 1 评论 -
最短路径算法
A*算法实际是个穷举算法,也与课本上教的最短路径算法类似。课本上教的是两头往中间走,也是所有路径都走一次,每一个点标注最短值。A* (使用曼哈顿距离) 2. A* (采用欧氏距离) 3. A* (利用切比雪夫距离) 4. Dijkstra 5. Bi-Directional Breadth-First-Search(双向广度优先搜索) 在最短路径搜...转载 2018-08-22 17:09:34 · 289 阅读 · 0 评论 -
线性回归中 给损失函数加的正则项L1和L2
正则化(Regularization) 机器学习中几乎都可以看到损失函数后面会添加一个额外项,常用的额外项一般有两种,一般英文称作ℓ1-norm和ℓ2-norm,中文称作L1正则化和L2正则化,或者L1范数和L2范数。L1正则化和L2正则化可以看做是损失函数的惩罚项。 L1正则化是指权值向量w中各个元素的绝对值之和,通常表示为||w||1 L2正则化是指权值向量w中各个元素的平方和然后再...原创 2018-08-22 21:51:13 · 3240 阅读 · 0 评论 -
Laplace(拉普拉斯)先验与L1正则化
在之前的一篇博客中L1正则化及其推导推导证明了L1正则化是如何使参数稀疏化人,并且提到过L1正则化如果从贝叶斯的观点看来是Laplace先验,事实上如果从贝叶斯的观点,所有的正则化都是来自于对参数分布的先验。现在来看一下为什么Laplace先验会导出L1正则化,也顺便证明Gauss(高斯)先验会导出L2正则化。 最大似然估计很多人对最大似然估计不明白,用最简单的线性回归的例子来说:如果有数据...转载 2018-08-17 10:25:25 · 2845 阅读 · 0 评论 -
二叉树(满树),树深度和叶子节点的计算
判断树深和叶子节点的个数,对于完全二叉树, 有关二叉树的名词 树的结点(node):包含一个数据元素及若干指向子树的分支; 孩子结点(child node):结点的子树的根称为该结点的孩子; 双亲结点:B 结点是A 结点的孩子,则A结点是B 结点的双亲; 兄弟结点:同一双亲的孩子结点; 堂兄结点:同一层上结点; 祖先结点: 从根到该结点的所经分支上的所有结点子孙结点:以某结点为根的...原创 2018-08-17 14:01:56 · 14083 阅读 · 0 评论 -
关于srand(time(0))的解释
标准库定义了一组随机数引擎类和适配器,使用不同数学方法生成伪随机数。标准库还定义了一组分布模板,根据不同的概率生成随机数。引擎和分布类型的名字都与它们的数学性质是相对应的。但是我们今天就接触一点点最基础的知识。计算机没有办法产生真正的随机数的,是用算法模拟,所以你只调用rand,每次出来的东西是一样的。设置一个种子后,根据种子的不同,就可以产生不同的数了。而怎么保证种子的不同呢?最简单的办法当...原创 2019-02-21 21:15:49 · 30531 阅读 · 8 评论