自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

藏知阁

娱乐博主

  • 博客(137)
  • 资源 (4)
  • 收藏
  • 关注

原创 [Spark] 大纲

1、Spark任务提交流程2、SparkSQL执行流程2.1 RBO,基于规则的优化2.2 CBO,基于成本的优化3、Spark性能调优3.1 固定资源申请和动态资源分配3.2 数据倾斜常见解决方法3.3 小文件优化4、Spark 3.04.1 动态分区裁剪(Dynamic Partition Pruning, DPP)4.2 自适应查询执行(Adaptive Query Execution, AQE)

2023-07-26 21:37:34 14445

原创 [Keras] 绘制训练过程中Acc和Loss曲线

绘制训练过程中Acc和Loss曲线

2022-08-09 01:17:49 61102 1

原创 [TensorFlow 2.0] Keras使用Grid Search进行参数选择

Keras使用Grid Search进行参数选择

2022-07-24 03:55:59 58751 3

原创 [PyQt5] 线程刷新界面

PyQt5线程刷新界面

2022-07-10 15:34:32 44714

原创 [PyQt5] 表格控件(QTableWidget)

PyQt5表格控件

2022-07-10 14:15:40 3233

原创 [PyQt5] 选项卡

PyQt5选项卡

2022-07-10 13:42:13 635

原创 [PyQt5] 菜单栏、工具栏、状态栏

PyQt5菜单栏、工具栏、状态栏

2022-07-10 13:12:11 561

原创 [推荐系统] 手撕DeepFM模型

模型总体架构图设计动机在Wide & Deep模型中,Wide部分是一个简单的线性模型,交叉特征需要根据经验人工去挑选组合,而FM模型,可以自动学习交叉特征,所以自然而然想到,可以用FM模型来替换Wide & Deep模型的Wide部分,所以名字叫DeepFM。比较特别的是,FM部分和Deep部分会共享Embedding权重,根据论文的说法,这样可以同时学习到高阶和低阶的特征交互信息。FM部分图中,黑色线表示的是FM模型中的一次项,红色线表示的是二次项。Deep部分问题1:

2022-01-13 00:37:37 285

原创 [高效Mac] 多显示器快速切换鼠标焦点和移动窗口

多显示器快速切换鼠标焦点和移动窗口,使用免费的Hammerspoon步骤:1、下载Hammerspoon2、在【安全性与隐私】->【辅助功能】中开启控制权限3、在任务栏点击图标,选择Open Config,也就是打开/Users/gld/.hammerspoon/init.lua,填写以下代码并保存-- 使用【Option+Q】在不同屏幕之间移动鼠标hs.hotkey.bind({'option'}, 'Q', function() local screen = hs.mouse.

2021-12-31 21:22:42 92252 11

原创 搜索推荐评价指标Precision@k、Recall@k、F1@k、NDCG@k

假设对于一个查询,真实相关的结果是{A,C,E, Q},搜索模型得到5个结果{A, B, C, D, E},则其中只有A,C,E是相关的,标记为{1, 0, 1, 0, 1},1表示相关,0表示不相关。Precision@k即预测正确的相关结果占返回的所有结果的比例:Precision@k=TP@kTP@k+FP@kPrecision@k = \frac{TP@k}{TP@k+FP@k}Precision@k=TP@k+FP@kTP@k​取值范围[0,1],越大越好。例子:Precision

2021-11-03 11:35:58 143642 6

原创 [深度学习] Recurrent Units详细计算过程——LSTM

文章大部分基于Christopher Olah的Understanding LSTM Networks。(题外话:不知道为什么,每次看到好论文或好文章,我都很喜欢“人肉”一下大牛的来历,结果查了下这篇文章的作者,从LinkedIn里看到简历,教育背景里写着University of Real Life Experience,难道是没上大学?目前他就职Google Brain作为Research

2021-10-16 23:01:40 1274

原创 [Spark] GraphX入门

目前,原生Spark的GraphX只有Scala接口,如果想要用Python,可以使用GraphFames。1、安装GraphFrames首先根据Spark版本到SparkPackages下载合适的版本,因为我使用的是Spark 2.2,所以我这里下载的是graphframes-0.6.0-spark2.2-s_2.11.jar。可以使用Maven来下载该包以及依赖包。新建pom.xml文件,从SparkPackages里复制模板并修改版本为你需要的版本:<?xml version="1.0

2021-09-15 15:03:14 1056

原创 [机器学习] 手撕XGBoost超参数

本文以XGBoost 1.4.2版本为例,以具体例子,详解XGBoost中超参数的含义以及用法。import osimport pandas as pdimport xgboost as xgbfrom sklearn.tree import export_graphvizcols = ['height', 'weight', 'chinese', 'math', 'english', 'gk']feature_names = ['height', 'weight', 'chinese',

2021-09-07 03:31:32 2296

原创 [机器学习] XGBoost和传统GBDT的区别

XGBoost(eXtreme Gradient Boosting)是GBDT方法的一种高效、灵活、便携的工程化实现。注意,XGBoost不是一种算法的名称,而是同属于GBDT框架下,一种Boosting的思想。另外,随着代码版本的迭代,很多新特性也被借鉴进来,比如LightGBM中的直方图方法,在2017年就被加入到了XGBoost中。相比传统的GBDT实现,XGBoost(以版本1.4.2为例)区别有以下几点:1、XGBoost损失函数使用二阶泰勒展开作为近似。2、支持自定义损失函数,需要函数一

2021-09-07 01:28:50 653

原创 [机器学习] 面试官:听说你对GBDT很熟?

直接看参考文章[1],简单易懂,给作者一个大大的赞。参考文章:[1] GBDT算法原理以及实例理解[2] 梯度提升树(GBDT)原理小结

2021-08-31 09:34:40 131 3

原创 [Spark] persist和checkpoint

了解Spark的缓存机制对提高作业的计算速度和可靠性具有非常大的帮助。persist和cachepersist和cache都是可以将数据(RDD)缓存到内存或持久化到磁盘的方法。虽然这两个方法都是惰性计算,但严格来说,persist和cache既不是转换算子,也不是行动算子,只是标记了当前RDD要进行缓存。cache是persist的特殊用法,即参数为MEMORY_ONLY。persist(storageLevel=StorageLevel(False, True, False, False, 1)

2021-08-30 00:25:33 276

原创 [推荐系统] SVD、FunkSVD、BiasSVD和SVD++

FunkSVDFunkSVD方法是Simon Funk在Netflix电影推荐比赛中使用并取得良好效果,因此得名。不同传统SVD分解成3个矩阵,FunkSVD为了简化运算,只分解为2个矩阵:Mm×n=Pm×kTQk×nM_{m \times n} = P_{m \times k}^T Q_{k \times n}Mm×n​=Pm×kT​Qk×n​那么怎么得到矩阵P和Q呢?这里巧妙地利用了优化的思想:假设函数:y=qjTpiy = q_j^Tp_iy=qjT​pi​损失函数:L=∑i,

2021-08-29 23:34:04 1470

原创 [Spark] 手撕Job、Stage、Task划分机制

Spark中:1、根据算子是否是行动(Action)算子,来划分Job;2、根据算子运算是否需要洗牌(Shuffle),来划分Stage;3、根据RDD的分区数,来划分Task。下面以例子来进行说明。首先启动一个Spark的Application:pyspark --queue gldDriver的核数和内存,Executor的实例数、核数和内存都是默认值,即–driver-cores=1, --driver-memory=1G, --num-executors=2, --executor-

2021-08-29 01:08:24 2900

原创 [推荐系统] Wide & Deep模型

模型总体架构Wide部分:Deep部分:模型本身的结构是非常简单的,但是需要根据具体问题决定哪些特征放在Wide部分,哪些放在Deep部分。Wide部分的特征,上图绿色部分输入是用户安装的App(User Installed App)和当前曝光App(Impression App)的交叉特征,这两个都是类别型特征(Categorical Feature),而且App的数量一般都是百万级别,因此这里维数会非常高Deep部分的特征,上图红色部分对于类别型特征(Categorical Featu

2021-08-05 04:24:36 161

原创 [推荐系统] 手撕FM模型

基本形式FM模型在线性模型的基础上,增加了一个二次项:y=w0+∑i=1nwixi+∑i=1n−1∑j=i+1nwijxixjy = w_0 + \sum^{n}_{i=1} w_i x_i + \sum^{n-1}_{i=1} \sum^{n}_{j=i+1} w_{ij} x_i x_jy=w0​+i=1∑n​wi​xi​+i=1∑n−1​j=i+1∑n​wij​xi​xj​w0w_0w0​ 是常数项,这里有1个参数需要训练;∑i=1nwixi\sum^{n}_{i=1} w_i x_i∑i

2021-08-03 02:23:51 141

原创 [基础算法] 快速排序

def quick_sort(nums, left, right): pivot = nums[left] i = left j = right while i < j: while nums[j] >= pivot and j > i: j -= 1 if j > i: nums[i] = nums[j] i += 1 while

2021-06-22 14:32:06 154

原创 [Hive] Mapper和Reducer数量确定

一、Mapper数分为两种情况:Situation 1: 如果hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat,采用文件分割算法,即针对每一个输入文件做以下循环:1、 文件大小/splitSize>1.1,创建一个Map,这个Map的大小=splitSize,文件剩余大小=文件大小-splitSize2 、文件剩余大小/splitSize<1.1,剩余的部分作为一个Map从这里可以知道,Mapper数肯定大于或

2021-06-15 04:41:20 759

原创 [Spark] 固定资源申请和动态资源分配

本文假设Spark部署方式为YARN。一个Container包含一个Executor(即一个JVM进程)。

2021-06-15 01:27:50 1593

原创 [Spark] 手撕适用于RDD的30个常用算子

转换(Transformation)算子行动(Action)算子

2021-06-14 22:01:33 425

原创 [PMML] LightGBM模型保存为PMML文件,通过Java或者Python调用

LightGBM多分类import osimport lightgbm as lgbfrom sklearn import datasetsfrom sklearn.model_selection import train_test_splitiris = datasets.load_iris()X = iris.datay = iris.targetX_train, X_test, y_train, y_test = train_test_split(X, y, test_size

2021-06-01 20:00:36 3552 2

原创 Windows 10安装xLearn 0.44

准备工作:1、首先下载安装Visual Studio 2017,注意一定是2017版本,社区版都可以,注意选择C++开发环境,我这里用的就是社区版2、下载安装CMake,我用的版本是cmake-3.20.1-windows-x86_64.msi源码编译:$ git clone https://github.com/aksnzhy/xlearn.git # 从Git下载源码,当前是0.44版本$ cd xlearn # 切换到xlearn目录下$ mkdir build # 新建一个build目录

2021-05-13 19:49:13 207

原创 Shell脚本快速入门

Shell脚本快速入门

2021-01-04 01:41:10 54

原创 CentOS7使用快速入门

查看系统版本。

2020-11-27 02:00:44 3819 1

原创 [Windows开发] 用C++创建第一个窗口程序

Win32 API(也称为Windows API)是Windows比较原生态的C++ API。#ifndef UNICODE#define UNICODE#endif#include <windows.h>LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE, PWSTR

2020-10-30 04:00:02 4207

原创 Stanford CoreNLP 3.6.0 使用入门

Stanford CoreNLP由Java语言开发,是斯坦福大学自然语言处理小组的研究成果。 包含自然语言处理的基本任务:分词、词性标注、依存句法分析、命名实体识别等等,支持多语言。项目地址:GitHub本文主要记录使用注意事项。Stage 1首先我们要下载 CoreNLP Java包。 然后在Eclipse里面的Classpath里面引入jar文件。如下图红色框所示: CoreNLP只需

2020-10-01 17:03:06 15191 7

原创 [TensorFlow 2.0] Keras三种搭建模型的方式——序列式、函数式、Model子类

数据集:# coding = utf-8import numpy as npimport tensorflow as tffrom tensorflow import keras# Prepare data X_train: ndarray,(60000, 28, 28) y_train: ndarray, (60000,)(X_train, y_train), (X_valid, y_valid) = keras.datasets.fashion_mnist.load_data()X_t

2020-05-31 18:55:18 1951 1

原创 B+树

MySQL中B+树和B树的不同之处:1、非叶节点如果有k个元素,则必有k个孩子节点;2、所有父节点元素都同时存在于子节点元素中,在子节点元素中是最大或最小的元素;3、所有的叶子节点包含了全部元素,且从小到大排序,节点间用指针链接起来。例子,下面是[1, 2, 3, 5, 6, 8, 9, 11, 13, 15]构成的一棵B+树:参考:[1] 漫画:什么是B+树?...

2020-02-13 18:52:33 302

原创 B树

MongoDB索引主要用的数据结构是B树。B树(Balance Tree,B-Tree),是一棵多路平衡查找树。一个m阶的B树具有如下几个特征:1、根节点包含的元素数量范围:1≤k≤m−11 \le k \le m-11≤k≤m−1;比如5阶B树,1≤k≤41 \le k \le 41≤k≤42、非根节点包含的元素数量范围:m/2≤k≤m−1m/2 \le k \le m-1m/2≤k≤m...

2020-02-13 18:11:35 549

原创 PuLP—线性规划高级例子

文章来自Optimization Modeling in Python: PuLP, Gurobi, and CPLEX,加入个人见解。问题:min∑i=1n∑j=1mcijxijs.t.∑i=1naijxij≤bj∀jxij≥lij∀i,jxij≤uij∀i,j\begin{aligned}& min& \quad \sum_{i=1}^{n} \sum_{j=1}^{...

2020-02-11 13:58:18 1266

原创 使用高斯混合模型进行聚类

如下图所示是600个数据点:生成模拟数据import numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom sklearn.mixture import GaussianMixturen_samples = 300# generate random sample, two componentsnp....

2020-01-20 19:19:03 1024

原创 Linux实用命令

Linux常用命令

2019-11-05 11:27:38 73229 2

原创 随机森林可视化

环境:Windows 10,Python 3.7首先需要安装Graphviz,这里我们使用的是graphviz-2.38.msi,安装在D:\Program Files (x86)\Graphviz2.38。代码:import osfrom sklearn.datasets import load_irisfrom sklearn.ensemble import RandomForest...

2019-09-22 10:50:22 11624 3

原创 手撕随机森林的超参数

from sklearn.ensemble import RandomForestRegressor# 默认参数model = RandomForestRegressor(n_estimators=10, criterion="mse", max_depth=None, min_samples_split=2, min_...

2019-09-20 10:15:51 5706

原创 Git常用命令

Git命令

2019-09-18 11:11:21 1158 1

原创 基于遗传算法的车辆路径规划问题

pointdemandxyn12.3-57n21.60-10.1n3n4n5n6n7n8n9总共有9个点,简单起见,我们编号为1、2、…、9,起点编号为0。一个方案就是一个个体(Individual),比如下面是三个个体:个体编码Individ...

2019-09-09 01:36:50 11689 8

LSTM详细计算过程.pptx

LSTM详细计算过程.pptx

2021-10-17

jpmml-lightgbm-executable-1.3.7.jar

jpmml-lightgbm-executable-1.3.7.jar

2021-10-11

Android源码下载工具repo

下载Android源码必须工具 version 1.21

2015-01-08

LoaderManagerExample

LoaderManagerExample

2014-09-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除