
基础知识
Lu_Junhao
这个作者很懒,什么都没留下…
展开
-
python sqlalchemy入门
参考:Python SQLAlchemy入门教程(基本用法)SQLAlchemy入门和进阶sqlalchemy是一个ORM–Object Relational Mapping(对象关系映射)工具,同样的工具还有pymysql,Django ORM1 概念与数据类型概念:常见数据类型2 定义数据库表类为了代码易读结构清晰,建议将定义数据库表的类单独放在一个文件中,比如models.py# models.pyfrom sqlalchemy import Column, Text, S原创 2020-09-03 15:37:18 · 307 阅读 · 0 评论 -
哈夫曼树与哈夫曼编码
哈夫曼树1. 定义节点的路径长度:从根节点到该节点的路径上的连接数。树的路径长度:树的叶子节点的路径长度之和。节点带权路径长度:节点的路径长度与节点的权值的乘积。树的带权路径长度:WPL(Weighted Path Length)是树中所有叶子节点的带权路径长度之和。定义:给定n个权值作为n个叶子节点,构造一棵二叉树,若这棵二叉树的带权路径长度达到最小,则称这样的二叉树为最优二叉树,也称为Huffman树。2. 构建哈夫曼树**WPL的值越小,构造出来的二叉树的性能越优。**如何构造最优二原创 2020-07-30 14:42:13 · 474 阅读 · 0 评论 -
推荐系统-协同过滤
UserCF流程整理(结合代码)代码源1 数据处理1.1 加载数据loadfile(filename)函数,功能是利用yield迭代的给后面的generate_dataset()函数逐条的提供数据。主要代码如下:def loadfile(filename): ''' load a file, return a generator. ''' fp = open(filename, 'r') for i, line in enumerate(fp): yield原创 2020-07-23 22:14:01 · 379 阅读 · 0 评论 -
推荐系统离线评估指标
推荐系统离线评估指标1 评分预测指标符号定义:对于测试集中的一个用户u和物品i,令ruir_{ui}rui是用户u对物品i的实际评分,而 r^ui\hat r_{ui}r^ui是推荐算法给出的预测评分1.1 均方根误差(Root Mean Squared Error,RMSE)RMSE=∑u,i∈T(rui−r^ui)2∣T∣\mathrm{RMSE}=\frac{\sqrt{\sum_{u, i \in T}\left(r_{u i}-\hat{r}_{u i}\right)^{2}}}{|T原创 2020-07-23 21:56:43 · 1367 阅读 · 2 评论 -
推荐算法-因式分解机FM
Factorization Machines参考1. 刘建平的博客: https://www.cnblogs.com/pinard/p/6370127.html2. Tracholar的博客: https://tracholar.github.io/machine-learning/2017/03/10/factorization-machine.html3. 知乎小孩不笨的文章: https://zhuanlan.zhihu.com/p/504262921 准备通常,我们的机器学习模型是学习一原创 2020-07-23 21:53:05 · 769 阅读 · 0 评论 -
逻辑回归笔记
Logistic Regression1 前言怎么将n维向量x=[x1,x2,...,xn]x=[x_1,x_2,...,x_n]x=[x1,x2,...,xn]映射成一个点y呢?很容易想到就是将向量xxx与另一个向量做内积。这个向量我们称为参数θ\thetaθ,即θ=[θ0,θ1,...,θn]\theta=[\theta_0, \theta_1, ...,\theta_n]θ=[θ0,θ1,...,θn]。所以做内积就是x⋅θx\cdot\thetax⋅θ【即行向量X乘以(行向量θ\th原创 2020-07-23 21:47:11 · 250 阅读 · 0 评论 -
梯度下降笔记
Gradient Descent1 梯度下降简单理解在微积分里面,对多元函数的参数求∂偏导数,把求得的各个参数的偏导数以向量的形式写出来,就是梯度。比如函数f(x,y)f(x,y)f(x,y), 分别对x,y求偏导数,求得的梯度向量就是(∂f/∂x,∂f/∂y)T(\partial f/ \partial x, \partial f/ \partial y)^T(∂f/∂x,∂f/∂y)T,简称grad f(x,y)或者∇f(x,y)\nabla f(x,y)∇f(x,y)。对于在点(x0,y0)(x_原创 2020-07-23 21:13:52 · 238 阅读 · 0 评论 -
线性回归笔记
Regression对数值的趋势做预测输入为一系列相关特征值,输出我们的预测结果1 定义一个model即定义一个合理的function set,这里的set表示很多组参数形成的很多function,后续我们需要用梯度下降来选择最好的function所谓Liner Model,即一个函数f(⋅)f( \cdot )f(⋅)可以表示成如下形式f(w,b)=b+∑wixif(w, b)=b+\sum w_{i} x_{i}f(w,b)=b+∑wixi则我们称这样的函数为一个Liner Funct原创 2020-07-23 20:54:07 · 182 阅读 · 0 评论 -
python面向对象小记
class定义一个类,面向对象开发有三大特征:封装、继承、多态1. 封装根据职责将属性和方法 封装到一个抽象的类中。封装是定义类的准则。2. 继承实现代码的重用, 相同的代码不需要重复的编写。设计类的技巧;子类继承父类所有属性和方法,然后还可针对自己特有的需求,添加或改写特定的属性和方法(其实这里就是多态);3. 多态不同的子类对象,调用相同的父类方法,产生不同的执行结果。多态可以增加代码的灵活度以继承和重写父类方法为前提是调用方法的技巧,不会影响到类的内部设计类的原创 2020-08-22 12:34:59 · 462 阅读 · 0 评论