Skip to content

Jarlonyan/learning_machine_learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

1. 机器学习优秀的博客

收集了一些关于机器学习的优秀博客,相关博主写了一系列的机器学习文章,非常好。其中,每个博客,选择了几篇代表性的文章。

  • 阿泽的学习笔记 link

  • 矩阵求导、概率基础知识 link

  • kexue.fm,机器学习相关,质量很高:kexue.fm

    • 从K-Means到Capsule link
    • 基于fine tune的图像分类(百度分狗竞赛) link
  • 天空的城:shomy.top

    • 径向基网络RBF link
    • 推荐系统结合知识图谱简单总结 link
  • 三年一梦,博客园:cnblogs.com/king-lps

    • Focal Loss 理解 link
    • 图像超分辨率 link
    • pytorch孪生网络 link
  • 刘建平,机器学习算法相关:cnblogs.com/pinard

  • 美团推荐算法系列tech.meituan.com

    • 深度学习在美团搜索广告排序的应用实践 link
    • 深度学习在搜索业务中的探索与实践 link
  • 吴良超的博客:wulc.me

    • 遗传算法: link
    • 深度学习在表情学习中的应用: link
  • Ryan's Blog

  • Rachel Zhang csdn/Rachel Zhang

    • Cuda学习系列 link
  • 皮果提,LaTeX写的公式特别漂亮 csdn/itplus

    • 最大熵模型 link
    • 关于协方差矩阵的理解 link
    • word2vec link
  • 史丹利复合田,各种优化方法

    • momentum算法 link
  • Thaurun Thaurun

    • parameter server link
    • L1的推导 link
  • Chrispher

    • FTRL-大规模LR模型 link
    • 随机梯度下降综述(SGD、Monmentum、AdaGrad、AdaDelta、RMSprop、Adam) link
  • Jonathan Hui

    • CNN-Convolutional-neural-network link
    • Soft-and-hard-Attendtion link
    • CUDA link
    • Tensorflow-tutorial link
    • TensorFlow-Estimator link
  • ZeroZone

2. 推荐算法

  • 小毛驴

    • 深度CTR预估模型中的特征自动组合机制演化简史 link
    • GBDT算法原理深入解析 link
    • 机器学习完整过程案例分步解析 link
    • 构建分布式Tensorflow模型系列之CVR预估案例ESMM模型 link
    • 基于行列式点过程的推荐多样性提升算法的直观理解 link
    • tf高阶API之FeatureColumn link
  • d0evi1(翻译了各种流行的推荐算法相关的paper)

    • 各种流行的推荐算法模型列表 link
    • YouTube的MMoE模型 link
    • Hulu的 fast-map-DPP link
  • pytorch实现的推荐模型 link

  • tsingjyujing link

3. 经典论文翻译

  • ResNet翻译: link
  • Fast-RCNN翻译: link
  • Dense-Net翻译: link

4. 工程类的学习链接

5. 理论知识的学习链接

  • 概率论学习 link

6. 其他博客

7. 机器学习的应用

 应用场景         详细链接    备注 
   推荐系统    https://github.com/Jarlonyan/mlapplication/blob/master/ml_recommendation.md   
   图像     https://github.com/Jarlonyan/mlapplication/blob/master/ml_computervision.md      
自然语言处理 https://github.com/Jarlonyan/mlapplication/blob/master/ml_NLP.md
   股票       https://github.com/Jarlonyan/mlapplication/blob/master/ml_stock.md

8. 数据集

8.1.金融数据

股票数据

8.2. 聚类数据集

8.3. 社交网络数据集

 LFR生成网络步骤

首选跳转到LFR的binary_network目录中compile一下。

$ make

这样会生成一个benchmark文件,它就是我们构建网络的工具。使用benchmark生成一个网络数据的简单的例子:

$ ./benchmark -f flags.dat -t1 3

这里的flags.dat文件在解压缩包后就有的,它表示参数的设置。如果要生成其他的网络,要修改这个文件的参数。

$ ./benchmark [FLAG] [P]

[FLAG]		[P]
-N		number of nodes
-k		average degree
-maxk	maximum degree
-mu	mixing parameter
-t1		minus exponent for the degree sequence
-t2		minus exponent for the community size distribution
-minc	minimum for the community sizes
-maxc	maximum for the community sizes
-on		number of overlapping nodes
-om		number of memberships of the overlapping nodes
-C		[average clustering coefficient]
  • 关于参数mu
    1-mu是节点与其同一个社区内的节点之间的共享比例,mu是节点与其它社区节点的共享比例。mu设置的小一点,社区内部更加紧凑。

  LFR得到的网络数据

network.dat文件是得到的网络结构,每一行表示一条边。文件community.dat是该网络的真实社区结构其每一行表示 (节点、节点所在的社区)。

从community.dat和network.dat中提取网络代码,并将结果保存在LFR-1.gml文件中:

#coding=utf-8
import networkx as nx
from collections import defaultdict

def transfer_2_gml():
	"""--------------------------------------------------------------------------
	function:   将LFR的network.dat和community.dat转化为.gml文件
	parameter:  
	return:     
	-------------------------------------------------------------------------------"""
	nodes_labels={}
	k=0
	with open("community.dat","r") as f:
		for line in f.readlines():
			items=line.strip("\r\n").split("\t")
			v=items[0]
			label=items[1]
			nodes_labels[v]=label
		#end-for
	#end-with

	
	G=nx.Graph()
	for v in nodes_labels.keys():  #添加所有的节点,并且记录其真实标签
		G.add_node(v, value=nodes_labels[v])

	edges=set()
	with open("network.dat","r") as f:
		for line in f.readlines():
			items=line.strip("\r\n").split("\t")
			a=items[0]
			b=items[1]
			if (a,b) not in edges  or (b,a) not in edges:
				edges.add( (a,b) )
		#end-for
	#end-with

	for e in edges:
		a,b=e
		G.add_edge(a,b,type="Undirected")

	nx.write_gml(G,"LFR-1.gml")
	print ("transfer LFR(*.dat) data to *.gml")

	communities=defaultdict(lambda :[])
	for v in nodes_labels.keys():
		label=nodes_labels[v]
		communities[label].append(v)
	for c in communities.keys():
		print ("community ", c ,": \n", communities[c], "\n")
def main():
	transfer_2_gml()

if __name__ == '__main__':
	main()

8.4. 多目标数据集

About

学习机器学习

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published