导入必要的包 import pandas as pd import numpy as np 读入数据 data = pd.read_csv("./datasets/Data.csv") data.head() Country Age Salary Purchased 0 France 44.0 72000.0 No 1 Spain 27.0 48000.0 Yes 2 Germany 30.0 54000.0 No 3 Spain 38.0 61000.0 No 4 Germany 40.0 NaN Yes 确定X,Y变量 X = data.iloc[:,:-1].values Y = data.iloc[:,3].values 数据空值处理
sql学习 连接数据库 mysql -u root -p 输入密码即可 显示所有的数据库 show databases; use databasename 使用某个数据库 CREATE DATABASE xxx; 创建数据库 drop database xxx; 删除数据库 show tables; 显示这个数据库下的所有数据
KNN 参考:https://cuijiahua.com/blog/2017/11/ml_1_knn.html 《统计学习方法》李航(kd树) 简介 k
主题模型 主题模型也可以看成一种词向量表达,主要有LSA、PLSA、LDA。按照这个顺序来逐渐发展的 词袋模型 将所有词语装进一个袋子里,不考虑其
Transformer \[ -\log \frac{\exp({\operatorname{sim}\left(\mathbf{h}_i, \mathbf{h}_i^{+}\right) / \tau})}{\sum_{j=1}^N\left(\exp({\operatorname{sim}\left(\mathbf{h}_i, \mathbf{h}_j^{+}\right) / \tau})+\exp({\operatorname{sim}\left(\mathbf{h}_i, \mathbf{h}_j^{-}\right) / \tau}\right))} \] 背景 先从word2vec开始说起,word2vec可以看作是一个预训练模型,但是它有个问题就是它没有办法解决一词
最大子序和 https://leetcode-cn.com/problems/maximum-subarray/ 一开始直接暴力,结果tle了最后 class Solution: def maxSubArray(nums): res = -float('inf') for i in range(len(nums)): for j in range(i,len(nums)): res = max(res,sum(nums[i:j+1])) return res 这说明在leetcode尽量不要嵌套循环,大概率Tle class
使用最小花费爬楼梯 每日一题刷到的。 动态规划类型的题目,重点就是找状态转移方程,因为我不太熟练,对动态规划的题目做的比较少,所以WA了好几次。
Hermite插值法 公式 代码 import matplotlib.pyplot as plt import numpy as np #计算基函数的导数值 def dl(i, xi): result = 0.0 for j in range(0,len(xi)): if j!=i: result += 1/(xi[i]-xi[j]) result *= 2 return result #计算基函数值 def l(i, xi, x): deno = 1.0 nu = 1.0 for
CRF 概率图模型与无向图 图是由结点和连接结点的边组成的集合。结点和边分别记作v和e,结点和边的集合分别记作V和E,图记作\(G=(V, E)\)。
分段线性插值 利用线性函数作插值 每一段的线性函数: \[ F1 = \frac{x-x_{i+1}}{x_i-x_{i+1}}f(x_i)+\frac{x-x_i}{x_{i+1}-x_i}f(x_{i+1}) \] 代码 import numpy as np import matplotlib.pyplot as plt #分段线性插值闭包 def get_line(xn, yn): def line(x): index = -1 #找出x所在的区间 for i in range(1, len(xn)):