Skip to content
wangqiwen edited this page Jun 30, 2017 · 2 revisions

资料汇总

[TOC]

积累平时的代码 名词解释    解释        select * from table where a=3 limit 10;

备注信息:


流程图: flow st=>start: Start:>https://www.zybuluo.com io=>inputoutput: verification op=>operation: Your Operation cond=>condition: Yes or No? sub=>subroutine: Your Subroutine e=>end st->io->op->cond cond(yes)->e cond(no)->sub->io


macbook配置

  • 汇总
功能 方法 备注
终端用户名自定义 系统偏好设置->共享->编辑电脑名称  -
画图工具OmniGraffle+Pro 6下载地址,注册码;7下载地址(含许可证) 兼容viso,功能强大
安装pip sudo easy_install pip pip直接安装其他工具
软件包管理器 homebrew安装(参考地址);安装wget:brew install wget brew安装命令:ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
翻墙 1.有代理ip的直接设置:网络->高级->代理->勾选网页代理+安全网页代理,输入服务器域名及端口,无需填入账号。2.用lantern下载 备选方案很多
vim颜色显示 1.vim ~/.vimrc,2.添加colorscheme desert;syntax on vim sublime颜色主题
vim开发环境 vim IDE部署 其他主题包,[vim-go开发环境[(http://blog.csdn.net/chosen0ne/article/details/40782991)
shell目录颜色显示 开启方法:编辑~/.bash_profile,增加:export CLICOLOR=1;export LSCOLORS=exfxaxdxcxegedabagacad 注:如何在shell字符串中显示彩色字符?,显示白色:echo -e "\033[37m white \033[0m"
mac免密码远程登录 使用ssh创建rsa公钥密码。基本步骤:* 1.ssh-keygen生成密钥(ssh-keygen -t rsa) * 2.复制密钥文件到远程机器(scp ~/.ssh/id_rsa.pub [email protected]:/home/wangqiwen/.ssh) * 3.登录远程机器,修改文件权限(cd ~/.ssh && cat id_rsa.pub >> authorized_keys; chmod 644 authorized_keys;chmod 700 ~/.ssh/) 参考地址:mac无密码登录
chrome浏览器中右键失灵 双指触碰链接时,并未弹出右键菜单,而是“图片另存为” 解决办法:这是由于chrome浏览器上开启了鼠标手势,造成干扰,关闭或删除插件即可
image not recognized dmg文件无法安装,原因:文件损坏,dmg权限不允许任意来源的包;换浏览器 如何开启任意来源包?sudo spctl --master-disable
redis安装 brew install redis 使用方法:启动服务,redis-server,连接服务:redis-cli
mac mail客户端设置 连接163时,需要先去163邮箱开启pop3/imap选项,通过手机验证码设置连接密码;mail终端配置时填入的密码是连接密码(非登录密码!) wqw3721
安装虚拟机 vmware安装,下载地址 vmware fusion 8激活码:FY75A-06W1M-H85PZ-0XP7T-MZ8E8,ZY7TK-A3D4N-08EUZ-TQN5E-XG2TF,FG1MA-25Y1J-H857P-6MZZE-YZAZ6
java 官方下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Web服务 Mac OS 启用web服务,简网教程
linux 服务器mail mail command not found 解决方法:sudo yum install mailx;echo "test" (竖线) mail -s "content" [email protected]

wqw:code wangqiwen$ git clone https://github.com/p1cn/backend.git Cloning into 'backend'... Username for 'https://github.com': wqw547243068 Password for 'https://[email protected]': remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/p1cn/backend.git/' 原因:Github没有fork项目代码,或没加所在机器的sshkey(settings->deplot keys)

python使用mysql方法

安装方法

mac下安装MySQL-python

要想使python可以操作mysql,就需要MySQL-python驱动,它是python 操作mysql必不可少的模块。

  • 下载地址
  • 下载MySQL-python-1.2.5.zip 文件之后直接解压。
  • 进入MySQL-python-1.2.5目录:
python setup.py install

连接mysql

shell 代码,shell脚本中调用sql脚本

#mysql初始化-shell
mysql=/usr/local/mysql/bin/mysql
$mysql -uroot -pwqw  < init.sql

或者shell脚本中直接执行sql

mysql=/usr/local/mysql/bin/mysql
$mysql -uroot -p123456 <<EOF  
source /root/temp.sql;  
select current_date();  
delete from tempdb.tb_tmp where id=3;  
select * from tempdb.tb_tmp where id=2;  
EOF

爬虫

python抓取链接二手房数据

json使用

shell中使用json

  • #[2016-12-31] shell中使用json
  • 安装:

pip install git+https://github.com/dominictarr/JSON.sh#egg=JSON.sh

  • 使用:
echo '{"a":2,"b":[3,6,8]}' |JSON.sh

详情参考:https://github.com/dominictarr/JSON.sh

可视化

地图数据可视化

学习资料

学习技巧

  • @爱可可-爱生活:
  • 互联时代怎么阅读?
  • 读书重在结构生长,形成扎实的支撑;
  • 碎片阅读重在视野的纳新和扩展,开枝散叶;
  • 思考重在提炼和关联,勾画错综的经脉。
  • 学习就是如此,由外而内,无广不精,无博不深,但能坚持必有所成。
  • 网络阅读的最佳实践,不在“取”,在“舍”,知舍才能知关键,料不在多,有感悟一二足矣。
  • 学习金字塔

学习金字塔

数学基础

Essence of Linear Algebra

  • 行列式:行列式,记作 det(A),是一个将方阵 A 映射到实数的函数。行列式等于矩阵特 征值的乘积。行列式的绝对值可以用来衡量矩阵参与矩阵乘法后空间扩大或者缩小 了多少。如果行列式是 0,那么空间至少沿着某一维完全收缩了,使其失去了所有的 体积。如果行列式是 1,那么这个转换保持空间体积不变
  • 六大概率分布
  • 最优化算法-避开鞍点
  • 频率学派与贝叶斯学派之争知乎网友解释,频率学派最先出现,疯狂打压新生的贝叶斯学派,贝叶斯很凄惨,就跟艺术圈的梵高一样,死后的论文才被自己的学生发表,经过拉普拉斯之手发扬光大,目前二派就像华山派的剑宗和气宗。频率学派挺煞笔的,非得做大量实验才能给出结论,比如你今年高考考上北大的概率是多少啊?频率学派就让你考100次,然后用考上的次数除以100。而贝叶斯学派会找几个高考特级教师对你进行一下考前测验和评估,然后让这几个教师给出一个主观的可能性,比如说:你有9成的把握考上北大。
    • 这个区别说大也大,说小也小。(1)往大里说,世界观就不同,频率派认为参数是客观存在,不会改变,虽然未知,但却是固定值;贝叶斯派则认为参数是随机值,因为没有观察到,那么和是一个随机数也没有什么区别,因此参数也可以有分布,个人认为这个和量子力学某些观点不谋而合。(2) 往小处说,频率派最常关心的是似然函数,而贝叶斯派最常关心的是后验分布。我们会发现,后验分布其实就是似然函数乘以先验分布再normalize一下使其积分到1。因此两者的很多方法都是相通的。贝叶斯派因为所有的参数都是随机变量,都有分布,因此可以使用一些基于采样的方法(如MCMC)使得我们更容易构建复杂模型。频率派的优点则是没有假设一个先验分布,因此更加客观,也更加无偏,在一些保守的领域(比如制药业、法律)比贝叶斯方法更受到信任。
    • 频率 vs 贝叶斯 = P(X;w) vs P(X|w) 或 P(X,w)   - 频率学派认为参数固定,通过无数字实验可以估计出参数值——客观;
    • 贝叶斯学派认为参数和数据都是随机的,参数也服从一定的分布,需要借助经验——主观
  • 统计学基础知识【脑图笔记】
  • 大矩阵相乘:分布式版本,MapReduce实现矩阵相乘Hadoop实现大矩阵相乘之我见
  • A大B小(内存受限) 图
  • AB都大(内存受限) 图
  • 不受内存限制(最小粒度) 图
  • 其他

计算机基础

分布式计算

推荐系统

  • 项量:关于LDA,pLSA,SVD和Word2vector的一些看法
    • SVD算法是指在SVD的基础上引入隐式反馈,使用用户的历史浏览数据、用户历史评分数据、电影的历史浏览数据、电影的历史评分数据等作为新的参数
    • LSA最初是用在语义检索上,为了解决一词多义和一义多词的问题,将词语(term)中的concept提取出来,建立一个词语和概念的关联关系(t-c relationship),这样一个文档就能表示成为概念的向量。这样输入一段检索词之后,就可以先将检索词转换为概念,再通过概念去匹配文档。在实际实现这个思想时,LSA使用了SVD分解的数学手段.x=TSD
    • PLSA和LSA基础思想是相同的,都是希望能从term中抽象出概念,但是具体实现的方法不相同。PLSA使用了概率模型,并且使用EM算法来估计P(t|c)和P(c|d)矩阵.LDA是pLSA的generalization:一方面LDA的hyperparameter设为特定值的时候,就specialize成pLSA了
    • NMF:一种矩阵分解,要求输入矩阵元素非负,目标和 SVD 一样。
    • pLSA:SVD 的一种概率解释方法——要求矩阵元素是非负整数。LDA:pLSA 加上 topics 的 Dirichlet 先验分布后得到的 Bayesian model,数学上更漂亮。为什么是 Dirichlet 先验分布,主要是利用了 Dirichlet 和 multinomial 分布的共轭性,方便计算。
  • 从item-base到svd再到rbm,多种Collaborative Filtering(协同过滤算法)从原理到实现
  • 案例分享:世纪佳缘推荐系统经验分享
  • 《推荐系统实践》阅读笔记:LFM模型、图模型、slop one和SVD算法
  • 实时推荐系统
  • 实时推荐系统的三种方式

机器学习

特征工程

算法总结

算法总结

异常检测

  • IsolationForest。欺诈等是一系列的异常孤立点,而IsolationForest则是检测这类孤立点的一个有效算法。无需样本标记、线性时间复杂度。一般情况下要比OneClasSVM等表现要好。尤其是对非高斯分布的样本空间。

机器学习经验总结

流形学习

  • 什么是流形学习?传统的机器学习方法中,数据点和数据点之间的距离和映射函数f都是定义在欧式空间中的,然而在实际情况中,这些数据点可能不是分布在欧式空间中的,因此传统欧式空间的度量难以用于真实世界的非线性数据,从而需要对数据的分布引入新的假设。流形(Manifold)是局部具有欧式空间性质的空间,包括各种纬度的曲线曲面,例如球体、弯曲的平面等。流形是线性子空间的一种非线性推广。参考流形学习的简单介绍
  • 流形学习:本质上,流形学习就是给数据降维的过程。这里假设数据是一个随机样本,采样自一个高维欧氏空间中的流形(manifold),流形学习的任务就是把这个高维流形映射到一个低维(例如2维)的空间里。流形学习可以分为线性算法和非线性算法,前者包括主成分分析(PCA)和线性判别分析(LDA),后者包括等距映射(Isomap),拉普拉斯特征映射(LE)等。流形学习可以用于特征的降维和提取,为后续的基于特征的分析,如聚类和分类,做铺垫,也可以直接应用于数据可视化等。注:摘自集智百科流形学习(优质,包含代码及案例)
  • 拟合线性的流形学习模型:LLE, LTSA, Hessian LLE, 和Modified LLE
  • 拟合非线性的流形学习模型:Isomap,MDS和Spectral Embedding
  • 效果示意如下:降维效果

降维

常见的pca属于无监督,lda有监督,常用降维方法如下图。常用降维方法脑图

深度学习

神经网络发展历史 神经网络发展历史 神经网络网络结构变化 网络结构变化历史 当然,光有强大的内在能力,并不一定能成功。一个成功的技术与方法,不仅需要内因的作用,还需要时势与环境的配合。神经网络的发展背后的外在原因可以被总结为:更强的计算性能,更多的数据,以及更好的训练方法。只有满足这些条件时,神经网络的函数拟合能力才能得已体现 发展外因

知识图谱

数据挖掘

IT资讯

工具

实验评估

  • 第一种:A/B-Test. 什么是ab-test?
  • A/B Test,也称为对比测试,是让两个版本的登陆页面的相互pk测试。看看哪个版本能更好地引导访问者达到你的预设目标,如注册或订阅。
  • 工程实施:叫你如何对产品进行AB Test?,包含服务端、客户端如何实施ab-test,及各自的优缺点
  • ab-test有什么局限性?
  • 首先,A/B测试只有在关键效绩指标(KPI, or Key Performance Indicator)单一,且这个单一明确的目标可以被电脑量化时,适用
  • 其次,A/B测试相比起一些别的测试手段,如纸本原型(paper prototyping),需要的工作量大、时间长,对设计的要求也相对较高。
  • 另外,A/B测试之所以进行,唯一原因是对结果的追求。但相对应的测试结果通常是短期、即刻的用户行为,比如购买、注册、点击等。
  • 此外,A/B测试并不能提供用户行为的具体细节。A/B测试的结果也仅限于被测试的两个选项:如果12号字比16号字为你的网站带来多1%的用户浏览时间,那10号字呢?8号呢?A/B测试并不能帮助你作更多的、长远的决定。
  • A/B测试还有别的缺点:需要的用户人数大,可能的影响因素多,可以测试的选项数有很大限制等等。
  • 吆喝科技-ab-test最佳实践
  • 第二种:interleaving
  • 灰度发布和A/B Test

编程语言

视频资源

公开课