Swim in ML/Ad Tech Ocean - MaricLe Gao Blog

Record study process, and keep improving and producing.


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 日程表

  • 站点地图

机器学习中的损失函数

发表于 2018-12-05 | 分类于 machine learning
交叉熵交叉熵 cross-entropy cost,是信息论中和“信息量”有关的一个概念。 信息量首先是信息量。假设我们听到了两件事,分别如下: 事件A:巴西队进入了2018世界杯决赛圈。 事件B:中国队进入了2018世界杯决赛圈。仅凭直觉来说,显而易见事件B的信息量比事件A的信息量要大。究其原因,是因为事件A发生的概率很大,事件B发生的概率很小。所以当越不可能的事件发生了,我们获取到的信息量就越大。越可能发生的事件发生了,我们获取到的信息量就越小。那么信息量应该和事件发生的概率有关。假设 $X$ 是一个离散型随机变量,其取值集合为 $\chi$,概率分布函数 $p(x)=Pr(X=x), x∈\chi$ 则定义事件 $X=x_0$ 的信息量为: I(x_0) = −log(p(x_0)) 由于是概率所以 $p(x0)$ 的取值范围是 $[0,1]$ ,绘制为图形如下: 熵考虑另一 ...
阅读全文 »

python pandas 使用指南

发表于 2018-08-24
Series 操作123456# 获取所有的值In [27]: ser2.valuesOut[27]: array([0, 1, 2, 3])# 获取所有的索引In [28]: ser2.indexOut[28]: Index([u'a', u'b', u'c', u'd'], dtype='object') 按行遍历DataFrame不修改内容要以 Pandas 的方式迭代遍历DataFrame的行,可以使用: 1234567# 1、DataFrame.iterrows()for index, row in df.iterrows(): # 返回(索引, Series)元组 print row["c1"], row["c2"]# 2 DataFrame.itertuples()for row in df.itertuples(index=True, name='Pandas'): ...
阅读全文 »

【推荐系统算法系列一】FM及其衍生算法

发表于 2018-08-23 | 分类于 推荐系统
1、 FM背景在进行CTR预估时,除了单特征外,往往要对特征进行组合。对于特征组合来说,业界现在通用的做法主要有两大类:FM系列与Tree系列。今天,我们就来讲讲FM算法。 FM 解决one-hot特征稀疏的问题FM(Factorization Machine)主要是为了解决数据稀疏的情况下,特征怎样组合的问题。已一个广告分类的问题为例,根据用户与广告位的一些特征,来预测用户是否会点击广告。数据如下:(本例来自美团技术团队分享的paper) Clicked? Country Day Ad_type 1 USA 26/11/15 Movie 0 China 1/7/14 Game 1 China 19/2/15 Game “Clicked?”是label,Country、Day、Ad_type是特征。由于三种特征都是categorical类型的,需要经过独热编 ...
阅读全文 »

spark 原理资料

发表于 2018-08-21
《Spark学习: 简述总结》https://blog.csdn.net/databatman/article/details/53023818 2 Spark 系统架构首先明确相关术语: 应用程序(Application): 基于Spark的用户程序,包含了一个Driver Program 和集群中多个的Executor;驱动(Driver): 运行Application的main()函数并且创建SparkContext; 执行单元(Executor): 是为某Application运行在Worker Node上的一个进程,该进程负责运行Task,并且负责将数据存在内存或者磁盘上,每个Application都有各自独立的Executors; 集群管理程序(Cluster Manager): 在集群上获取资源的外部服务(例如:Local、Standalone、Mesos或Yarn等集群管 ...
阅读全文 »

shell中python时间处理总结

发表于 2018-08-10 | 分类于 珍惜时间
shell 篇date命令 linux 和 mac 不一样!环境centos 6 123date -d "1 days ago" +%F # 指定显示日期的格式 %F | full date; same as %Y-%m-%d date +"%Y%m%d" -d "-2 day" # -d 指定哪一天2017-03-04 指定显示日期的格式 格式 含义 %s seconds since 1970-01-01 00:00:00 UTC %F full date; same as %Y-%m-%d %Y year %m month %d day 时间戳 seconds since 1970-01-01 00:00:00 UTC python时间处理参考https://www.cnblogs.com/cq146637/p/8205054.html
阅读全文 »

spark SQL 笔记

发表于 2018-08-10
阅读全文 »

spark作业参数设置及调优

发表于 2018-08-10 | 分类于 spark
Spark作业基本运行原理在开发完Spark作业之后,就该为作业配置合适的资源了。Spark的资源参数,基本都可以在spark-submit命令中作为参数设置。很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参数,最后就只能胡乱设置,甚至压根儿不设置。资源参数设置的不合理,可能会导致没有充分利用集群资源,作业运行会极其缓慢;或者设置的资源过大,队列没有足够的资源来提供,进而导致各种异常。总之,无论是哪种情况,都会导致Spark作业的运行效率低下,甚至根本无法运行。因此我们必须对Spark作业的资源使用原理有一个清晰的认识,并知道在Spark作业运行过程中,有哪些资源参数是可以设置的,以及如何设置合适的参数值。 详细原理见上图。我们使用spark-submit提交一个Spark作业之后,这个作业就会启动一个对应的Driver进程。根据你使用的部署模式(deploy-mo ...
阅读全文 »

快乐的python

发表于 2018-08-09 | 分类于 python
格式化dict输出1print (json.dumps(content, encoding='utf-8', ensure_ascii=False, indent=1)) Python time & datetime & string 相互转换https://www.cnblogs.com/alfred0311/p/7885349.html datetime 日期计算 https://blog.csdn.net/zhengxiangwen/article/details/55157697 time 模块https://www.cnblogs.com/jackadam/p/7845888.html
阅读全文 »

二叉树的前序、中序、后序遍历(java实现)

发表于 2018-08-08 | 分类于 算法
雄关漫道真如铁!而今迈步从头越。 =。= 0 前序遍历:4 2 1 3 6 5 7 8 10 中序遍历:1 2 3 4 5 6 7 8 10 后序遍历:1 3 2 5 10 8 7 6 4 层序遍历:4 2 6 1 3 5 7 8 10 前序遍历Recursive1234567891011121314151617181920/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { List<Integer> res ...
阅读全文 »

【Spark 使用教程】SparkSession

发表于 2018-08-02 | 分类于 spark
SparkSession的功能Spark2.0中引入了SparkSession的概念,它为用户提供了一个统一的切入点来使用Spark的各项功能,用户不但可以使用DataFrame和Dataset的各种API,学习Spark的难度也会大大降低。 Spark REPL和Databricks Notebook中的SparkSession对象在之前的Spark版本中,Spark shell会自动创建一个SparkContext对象sc。2.0中Spark shell则会自动创建一个SparkSession对象(spark),在输入spark时就会发现它已经存在了。 在Databricks notebook中创建集群时也会自动生成一个SparkSession,这里用的名字也是spark。 SparkContext SparkContext起到的是一个中介的作用,通过它来使用Spark其他的功能。每 ...
阅读全文 »

lightgbm and I dont know everything

发表于 2018-08-02
安装GPU版https://blog.csdn.net/u012969412/article/details/71433960
阅读全文 »

在线广告基本术语及概念

发表于 2018-08-01 | 分类于 计算广告
CVR、CTR通俗的来说CVR、CTR就是两个指标计量,分别是: CVR: Click Value Rate,是一个转化成本的指标 CVR=\frac{转化量}{点击量}*100\% CTR: Click Through Rate. 点击率 。 CVR=\frac{点击量}{曝光量}*100\%其中CTR在广告联盟中要比CVR常见。在广告联盟中,每个联盟对于CTR的要求都是不一样的,这也是各个联盟防止和检测作弊的办法之一。 ROI和RPM说到CPR、CVR还有两个指标不得不提一下,那就是ROI和RPM,这两者具体是指: ROI投资回报率=CTR*CVR*Auction/PPCRPM千次展现收益=CTR*PPC/CPM注:$CTRCVR = \frac{点击量}{曝光量}\frac{转化量}{点击量} = \frac{转化量}{曝光量}$ ROC 和 AUC参考https://segm ...
阅读全文 »

python 字符串处理

发表于 2018-08-01
Refshttp://www.runoob.com/python/python-strings.html 字符串转义 转义字符 描述 \(在行尾时) 续行符 Python字符串运算符下表实例变量 a 值为字符串 “Hello”,b 变量值为 “Python”: 1234567891011121314# + 字符串连接 a + b'HelloPython'# * 重复输出字符串 a * 2'HelloHello'# in 成员运算符:如果字符串中包含给定的字符返回 True "H" in aTrue# r/R 原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母"r"(可以大小写)以外,与普通字符串有着几乎完全相同的语法。 print r'\n'\nprint R'\n'\n 内 ...
阅读全文 »

hadoop 使用经验

发表于 2018-07-31
生成并保持中间RDD,保存在hdfs上 提高并行 检查任务完成情况(运行完把中间文件删掉)
阅读全文 »

机器学习中的数学 资料整理

发表于 2018-07-31
最近在准备秋招,发现了很多基础概念之前并没有理解,找了一些说人话的资料。 联合分布机器学习-联合概率分布笔记 应该如何理解概率分布函数和概率密度函数?
阅读全文 »

shell 脚本note

发表于 2018-07-30 | 分类于 工具箱
shell中的带名参数getopts 语法格式:getopts [option[:]] [DESCPRITION] VARIABLEoption:表示为某个脚本可以使用的选项“:”:如果某个选项(option)后面出现了冒号(”:”),则表示这个选项后面可以接参数(即一段描述信息DESCPRITION)VARIABLE:表示将某个选项保存在变量VARIABLE中 123456789101112131415161718while getopts ":a:b:c:" optdo case $opt in a) echo "参数a的值$OPTARG" ;; b) echo "参数b的值$OPTARG" ;; c) echo "参数c的值$OPTARG" ;; ...
阅读全文 »

spark 开发中遇到的一些问题总结

发表于 2018-07-30
不知道spark怎么调bug,没有系统学习过,摸着石头过河吧。 卡在一个excutor上,没有报错因为一台机器的内存分配给越多的executor,每个executor的内存就越小,以致出现过多的数据spill over甚至out of memory的情况。把这个参数调大些试试:spark.shuffle.memoryFraction 参数说明:该参数用于设置shuffle过程中一个task拉取到上个stage的task的输出后,进行聚合操作时能够使用的Executor内存的比例,默认是0.2。也就是说,Executor默认只有20%的内存用来进行该操作。shuffle操作在进行聚合时,如果发现使用的内存超出了这个20%的限制,那么多余的数据就会溢写到磁盘文件中去,此时就会极大地降低性能。 参数调优建议:如果Spark作业中的RDD持久化操作较少,shuffle操作较多时,建议降低持久化操作 ...
阅读全文 »

tensorflow spacial API

发表于 2018-07-20
https://www.jianshu.com/p/fceb64c790f3 https://segmentfault.com/a/1190000014799038 tf.stack()h
阅读全文 »

magic machine leaning feature engineering

发表于 2018-07-19
一篇特征工程的好文章《评分卡系列(二):特征工程》https://www.cnblogs.com/gasongjian/p/8159501.html
阅读全文 »

hadoop common warn and error

发表于 2018-07-19
常规报错不影响运行的错误 Container preempted by scheduler如果有fair scheduler 并且有很多不同的 queue ,高优的应用程序会把jobs杀掉。每个queue都有相应的优先级 Preemption, https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.3.2/bk_yarn_resource_mgt/content/preemption.html 解决方案:取决于对性能和效果的预期,好的方法是检查job和队列的优先级。
阅读全文 »

scons - cpp编译工具学习

发表于 2018-07-10
scons是什么office guide SCons 是一个开放源代码、以 Python 语言编写的下一代的程序建造工具。功能上类似于make。 一个单个文件的程序是不需要scons和make之类的构建工具的,只要用gcc或者g++编译就好。但是一些相对较大的项目有多个文件,各个文件之间的依赖关系复杂,如果用g++来编译就会非常复杂,不仅要写的命令多,而且容易出错,所以就出现了make,但是make可能也存在某些问题,就出现了scons。 总之,这两种工具解决构建的方法就是用一个配置文件来记录下各个文件之间的依赖关系,用到了那些库,配置好环境变量等等,然后直接构建。scons并不是和g++一样的编译工具,而是在g++的基础上的工具。 scons的优势 使用 Python 脚本做为配置文件 对于 C,C++ 和 Fortran, 内建支持可靠自动依赖分析 . 不用像 make 工具那样需要 ...
阅读全文 »

meituan ads deep learning

发表于 2018-07-09
深度学习在美团搜索广告排序的应用实践 链接:https://gitbook.cn/gitchat/activity/5b39e067353da7153271877e CTR/CVR 预估由机器学习向深度学习迁移的模型探索;CTR/CVR 预估基于深度学习模型的线下训练/线上预估的工程优化。 交流环节tensorflow实时化会遇到过哪些问题?怎么处理?第一个是时效性问题。目前解决办法是小批量来模拟流式计算。第二个问题是如何处理新数据问题,因为embedding矩阵的size要在定义tensorflow图的时候确定,但是如果有新的数据进来,要扩充embedding矩阵的话应该如何操作。这个问题我们也咨询的Google的同学,他们也说目前安装tf的设计并没有直接解决的办法。但是可以通过在embedding之前根据经验加一个hashtable。相当于预留一些位置为新数据。 3.拉模型到线上机器的 ...
阅读全文 »

【设计模式】三种工厂模式及在c++中的实现

发表于 2018-07-07
简单模式工厂模式中最简单的一种,用比较简单的方式隐藏创建对象的细节,一般只需要告诉工厂类所需要的类型,工厂类就会返回需要的产品类,但客户端看到的只是产品的抽象对象,无需关心到底是返回了哪个子类。 客户端唯一需要知道的具体子类就是工厂子类。除了这点,基本是达到了依赖倒转原则的要求。 疑问:如果每次用工厂类创建的类型都不相同,这样修改起来的时候还是需要大量的替换。所以简单工厂模式一般应该于程序中大部分地方都只使用其中一种产品,工厂类也不用频繁创建产品类的情况。这样修改的时候只需要修改有限的几个地方即可。 客户只需要知道SimpleFactory就可以了,使用的时候也是使用的AbstractFactory,这样客户端只在第一次创建工厂的时候是知道具体的细节的,其他时候它都只知道AbstractFactory,这样就完美的达到了依赖倒转的原则。 常用的场景例如部署多种数据库的情况,可能在不同的地 ...
阅读全文 »

推荐系统及广告系统相关算法综述

发表于 2018-06-24 | 分类于 推荐系统算法
目前,推荐系统领域主流的算法主要包括: ftrl, 2013年, Google公司, 《Ad click prediction: a view from the trenches》 在线学习 ftrl传统的批量算法的每次迭代是对全体训练数据集进行计算(例如计算全局梯度),优点是精度和收敛还可以,缺点是无法有效处理大数据集(此时全局梯度计算代价太大),且没法应用于数据流做在线学习。 而在线学习算法的特点是:每来一个训练样本,就用该样本产生的loss和梯度对模型迭代一次,一个一个数据地进行训练,因此可以处理大数据量训练和在线训练。准确地说,Online Learning并不是一种模型,而是一种模型的训练方法,Online Learning能够根据线上反馈数据,实时快速地进行模型调整,使得模型及时反映线上的变化,提高线上预测的准确率。 Online Learning的流程包括:将模型的预测结 ...
阅读全文 »

tensorflow 和 在线学习 onlinelearning

发表于 2018-06-23
阿里巴巴 TFRS阿里妈妈基于TensorFlow做了哪些深度优化?TensorFlowRS架构解析 亮点: ps-plus框架重构,解决了水平扩展问题,支持增量更新,(grpc,lock,graph-engine)方面,Failover机制。 在线学习 问题: 1、tensorflow的worker与ps-plus的对接,是重构worker还是对接口进行了修改? 综述场景:搜索、广告、推荐场景特点: 样本规模和特征空间通常非常巨大,千亿样本、百亿特征并不罕见,同时存在大量的稀疏特征作为Embedding输入 TFRS主要成果: 解决了原生TF水平扩展能力不足的问题。在我们的测试中,绝大多数搜索广告模型的训练性能提升在十倍以上,某些模型的极限性能最高可提升百倍。 支持完备的在线学习语义,模型变更实时写出;稀疏特征无需做连续ID化,可以直接使用原始特征表征进行训练,大幅简化了特征 ...
阅读全文 »

vscode 快捷键 MAC版

发表于 2018-06-13
常用 General 按 Press 功能 Function command + Shift + P,F1 显示命令面板 command + P 快速打开 command + Shift + N 新窗口/实例 command + Shift + W 关闭窗口/实例 基础编辑 Basic editing 按 Press 功能 Function Ctrl+X 剪切行(空选定) Ctrl+C 复制行(空选定) Alt+ ↑ / ↓ 向上/向下移动行 Shift+Alt + ↓ / ↑ 向上/向下复制行 Ctrl+Shift+K 删除行 Ctrl+Enter 在下面插入行 Ctrl+Shift+Enter 在上面插入行 Ctrl+Shift+\ 跳到匹配的括号 Ctrl+] / [ 缩进/缩进行 Home 转到行首 ...
阅读全文 »

tensorflow data generation

发表于 2018-06-03
tensorflow 数据读取 office guide 十图详解tensorflow数据读取机制(附代码) tf.train.batch和tf.train.shuffle_batch的理解 如何使用TensorFlow中的高级API:Estimator、Experiment和Dataset tensorflow架构 tensorflow架构 Tensoflow 分布式部署简介 TensorFlow分布式全套(原理,部署,实例)
阅读全文 »

tensorflow中损失函数加正则项

发表于 2018-06-03
概述在损失函数上加上正则项(结构风险最小化)是防止过拟合的一个重要方法,下面介绍如何在TensorFlow中使用正则项. tensorflow中对参数使用正则项分为两步: 创建一个正则方法(函数/对象) 将这个正则方法(函数/对象),应用到参数上 创建正则项l1 正则tf.contrib.layers.l1_regularizer(scale, scope=None) 返回一个用来执行L1正则化的函数,函数的签名是func(weights).参数: scale: 正则项的系数. scope: 可选的scope name l2 正则tf.contrib.layers.l2_regularizer(scale, scope=None) 返回一个执行L2正则化的函数. 多正则tf.contrib.layers.sum_regularizer(regularizer_list, sco ...
阅读全文 »

推荐算法方面的优秀文章

发表于 2018-06-03
一些概念推荐广告怎么做? 系统架构是什么样?系统架构: bizer(特征抽取) → QR(用户理解 利用user id或上下文、位置等 → 相关的tag list) → Searcher(广告倒排 tag → ad list(后续ctr排序预选的ad)) → Ranker(根据cpm = ctr*bid,以及相关性等精排), 然后依次返回到用户做个性化推荐。 广告从投放到计费经过哪些主要流程?投放到计费流程:点击付费(CPC), 展示付费(CPM), 按销售收入付费(CPS)等。 这个流程中算法策略关注什么?算法策略关注:架构流程中每个步骤的数据的准确性,完整性对整个系统的准确度有重要影响。 综述CTR预估算法之FM, FFM, DeepFM及实践 阿里巴巴 常用推荐算法(50页干货) 腾讯 常见计算广告点击率预估算法总结 高航,深度学习在 CTR 中应用 美团 第09章:深入浅 ...
阅读全文 »

google-deep-and-cross

发表于 2018-06-03
softmax 反向传播https://blog.csdn.net/yujianmin1990/article/details/78989099
阅读全文 »

google-wide-and-deep-network

发表于 2018-06-02
第0章wide是指高维特征+特征组合的LR。LR高效、容易规模化(scalable)、可解释性强。但是泛化性需要在特征工程上下功夫deep就是deep learning了。特征工程省力,但是容易过度泛化over-generalize。 参考阅读 2016 《Wide & Deep Learning for Recommender Systems》 blog 2017 《Deep & Cross Network for Ad Click Predictions》 blog google research blog wide & deep github code 《2016-Deep Crossing: Web-Scale Modeling without Manually Crafted Combinatorial Features》 链接:本文参考:https ...
阅读全文 »

机器学习中的embedding原理及相关api的理解

发表于 2018-06-01
概述本文主要讲解tensorflow中涉及embedding的API。之前看了一些文章,写的云山雾绕,花了好长时间才搞懂,太笨了。embedding 算法主要用于处理稀疏特征,应用于NLP、推荐、广告等领域。所以word2vec 只是embbeding 思想的一个应用,而不是全部。 代码地址:git@github.com:gshtime/tensorflow-api.git embedding原理常见的特征降维方法主要有PCA、SVD等。 而embedding的主要目的也是对(稀疏)特征进行降维,它降维的方式可以类比为一个全连接层(没有激活函数),通过 embedding 层的权重矩阵计算来降低维度。 假设: feature_num : 原始特征数 embedding_size: embedding之后的特征数 [feature_num, embedding_size] ...
阅读全文 »

linux 命令行和 iterm2 操作指南

发表于 2018-05-31
标签 新建标签:command + t 关闭标签:command + w 切换标签:command + 数字 或 command + 左右方向键 切换全屏:command + enter 分屏 垂直分屏:command + d 水平分屏:command + shift + d 切换屏幕:command + option + 方向键 command + [ 或 command + ] 命令编辑删除 删除单词:ctrl + w, 删除光标之前的单词 删除行:ctrl + u,删除到行首 删除行:ctrl + k,删除到行尾 删除字符:删除当前光标ctrl + d,删除光标之前:ctrl + h 清屏1:command + r 清屏2:ctrl + l 光标移动 光标到行首:ctrl + a (同 ⌘ + ←) 光标到行尾:ctrl + e (同 ⌘ + →) 单词移动:alt + b / ...
阅读全文 »

hexo 网站的迁移

发表于 2018-05-27
markhttps://blog.csdn.net/aceking10/article/details/41540889 https://www.jianshu.com/p/f8a55b972972
阅读全文 »

tensorflow 中的 tf.app.flags

发表于 2018-05-21
tf定义了tf.app.flags,用于支持接受命令行传递参数,相当于接受argv 123456789101112131415import tensorflow as tfflags = tf.app.flags #flags是一个文件:flags.py,用于处理命令行参数的解析工作# 第一个是参数名称,第二个参数是默认值,第三个是参数描述flags.DEFINE_string("para_string", "default_val", "description") # 定义一个 stringflags.DEFINE_integer("pare_int", 1000, "this is an integer") # 定义一个integerflags.DEFINE_bool("para_bool", True, "description") # 定义一个 bool# FLAGS是一个对象,保 ...
阅读全文 »

scala 数据结构 array list tuple

发表于 2018-05-20
Array 类型参数化数组scala Array 的初始化 12345// 简洁的方法创造和初始化:val numNames = Array("zero", "one", "two")// 更罗嗦的调用 apply 方法:val numNames2 = Array.apply("zero", "one", "two") 12345678910111213141516object HelloWorld { def main(args: Array[String]) { val greetStrings = new Array[String](3) greetStrings(0) = "Scala: Hello" greetStrings(1) = ", " greetStrings(2) = "world!\n ...
阅读全文 »

vim使用指南及vim快捷键

发表于 2018-05-20
移动光标1234567891011121314151617181920212223h, j, k, l 上,下,左,右ctrl-e 移动页面ctrl-f 上翻一页ctrl-b 下翻一页ctrl-u 上翻半页ctrl-d 下翻半页w 跳到下一个字首,按标点或单词分割W 跳到下一个字首,长跳,如end-of-line被认为是一个字e 跳到下一个字尾E 跳到下一个字尾,长跳b 跳到上一个字B 跳到上一个字,长跳0 跳至行首,不管有无缩进,就是跳到第0个字符^ 跳至行首的第一个字符$ 跳至行尾gg 跳至文首G 调至文尾5gg/5G 调至第5行gd 跳至当前光标所在的变量的声明处fx 在当前行中找x字符,找到了就跳转至; 重复上一个f命令,而不用重复的输入fx* 查找光标所在处的单词,向下查找# 查找光标所在处的单词,向上查找 删除复制12345dd 删除光标所在行dw 删除一个字(word)d/D ...
阅读全文 »

hexo 使用指南

发表于 2018-05-18
安装支持 安装Node.js mac系统到 node.js 官网下安装包 1234567891011# 安装 Node.js# 安装 Node.js 的最佳方式是使用 nvm。# cURL方式$ curl https://raw.github.com/creationix/nvm/master/install.sh | sh# Wget方式$ wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh# 安装完成后,重启终端并执行下列命令即可安装 Node.js。$ nvm install stable 安装git 12345678910# Windows:下载并安装 git.# Mac:使用 Homebrew, MacPorts :brew install git # ;或下载 安装程序 安装。# ...
阅读全文 »

git 使用指南

发表于 2018-05-18 | 分类于 工具箱
git 回滚123456789# 回退命令:$ git reset --hard HEAD^ 回退到上个版本$ git reset --hard HEAD~3 回退到前3次提交之前,以此类推,回退到n次提交之前$ git reset --hard commit_id 退到/进到 指定commit的sha码# 强推到远程:$ git push origin HEAD --force git branch 命令12# 重命名分支git branch -m [old name] [new name] 克隆 git 仓库1git clone <remote_repo> -b <branch> 远程仓库查看、添加远程分支 12345# 查看远程分支git branch -r # 添加远程仓库git remote add origin ht ...
阅读全文 »

Gao Shang

Hi, I'm fan of Machine Learing and Online Advertisement technologies, I will record lots of simple and important information for us here.

39 日志
9 分类
24 标签
© 2018 Gao Shang
由 Hexo 强力驱动
|
主题 — NexT.Gemini v5.1.4