avatar
Articles
20
Tags
30
Categories
5

Home
Categories
About
技术杂货铺
Home
Categories
About

技术杂货铺

Accelerate Your NumPy Matrix Operations with Cython
Created2023-03-31|Python
Introduction Python is widely used for scientific computing, data analysis, and machine learning tasks due to its ease of use and rich ecosystem. NumPy, a popular library for numerical computations in Python, provides a powerful array object and a variety of functions to operate on these arrays. However, performance can sometimes be a bottleneck when working with large datasets or complex operations. Cython, a superset of the Python language, allows you to write Python code with optional C-like ...
2. 基于Django Rest框架构建API
Created2022-12-31|Python
1. 什么是API? 简单看一下百科的解释: API之主要目的是提供应用程序与开发人员以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。提供API所定义的功能的软件称作此API的实现。API是一种接口,故而是一种抽象。 应用程序接口(英语:ApplicationProgrammingInterface,简称:API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。 简单来说,我们写程序是为了帮用户完成某件事,用户不需要知道我们是怎么完成的。对于用户来说,只需发个指令,譬如,“我想导航到萧山”,那么程序能把路线告诉用户即可。API是什么呢,就是接受用户指令,并返回程序结果的一个工具。 2. 安装djangorestframework包 作为网络开发程序员,我们要为用户提供API 并告诉用户如何使用我们的软件。用于开发API的工具有很多,在Django项目中,一般使用djangorestframework包来开发API。 djangorestframework包直接使用pip安装即可 1pip install djangorestframework 3. 建 ...
1. 基本Django项目构建
Created2022-12-31|Python
1. 创建django项目 可通过如下命令创建名为myproject的django项目, 123django-admin startproject myprojectcd myprojectpython manage.py migrate 备注 python manage.py migrate意思是把数据模型(Python中定义的Model)和数据库同步。 python manage.py makemigrations是当模型的相关代码发生变动时,对变动进行提交保存,后接migrate 2. 创建app 1python manage.py startapp base # 这里base就是app的名字 创建完成后要注册app,在setting.py中找到INSTALLED_APPS,加入app名 1234INSTALLED_APPS = [ 'base', ...] 一个django项目的结构如下 3. 创建数据模型(Model) 在models.py中,建立数据模型,类似于pojo,即一个对象包含哪些字段,这也被称为Schema。 123456fr ...
tmux够用命令
Created2022-12-31|Linux
Tmux is a terminal multiplexer for Unix-like systems. It allows users to create and manage multiple terminal sessions within a single terminal window or console. Tmux provides many features that are useful for working in a command-line environment. For example, it allows users to detach and reattach sessions, which means that users can start a session, disconnect from it and then reconnect to it later. This feature is particularly useful for long-running tasks that continue even after the user h ...
5. 半正定锥
Created2022-04-17|中科大凸优化课程笔记
1. 几个符号 1.1 对称方阵的集合 Sn={X∈Rn×n∣X=XT}\mathbf{S}^{n}= \{ X \in \mathbf{R}^{n \times n} \mid X=X^{T} \} Sn={X∈Rn×n∣X=XT} S for symmetric 1.2 对称半正定方阵的集合 S+n={X∈Sn∣X⪰0}\mathbf{S}^{n}_{+}= \{X \in \mathbf{S}^{n} \mid X \succeq 0 \} S+n​={X∈Sn∣X⪰0} ⪰\succeq⪰表示矩阵的特征值≥0\ge 0≥0 1.3 对称正定方阵的集合 S++n={X∈Sn∣X≻0}\mathbf{S}^{n}_{++}= \{X \in \mathbf{S}^{n} \mid X \succ 0 \} S++n​={X∈Sn∣X≻0} 1.4 证明对称半正定方阵为凸锥 半正定矩阵有: xTAx≥0x^TAx \ge 0 xTAx≥0 代入凸锥的定义即可证 xT(θ1A+θ2B)x=θ1xTAx+θ2xTBx≥0x^{T}\left(\theta_{1} A+\theta_{2 ...
4. 多面体和单纯形
Created2022-04-17|中科大凸优化课程笔记
1. 多面体(Polyhedron) 多面体是一系列线性等式和不等式的解集。 P={x∣ajTx≤bj,j=1,…,m,cjTx=dj,j=1,…,p}\mathcal{P}=\{x \mid a_{j}^{T} x \leq b_{j}, j=1, \ldots, m, c_{j}^{T} x=d_{j}, j=1, \ldots, p\} P={x∣ajT​x≤bj​,j=1,…,m,cjT​x=dj​,j=1,…,p} 向量形式为 P={x∣Ax⪯b,Cx=d}\mathcal{P}= \{x \mid A x \preceq b, C x=d \}P={x∣Ax⪯b,Cx=d} 从定义可以看出,多面体就是超平面和半空间的交集。 有界的多面体称为Polytope。 2. 单纯形(Simplex) 2.1 定义 假设k+1k+1k+1个点v0,…,vk∈Rnv_0, \ldots, v_k \in R^nv0​,…,vk​∈Rn仿射独立,即v1−v0,…,vk−v0v_1-v_0, \ldots, v_k-v_0v1​−v0​,…,vk​−v0​线性不相关,则与这k+1k+1k+ ...
3. 球和椭球
Created2022-04-17|中科大凸优化课程笔记
1. 球(Ball) 1.1 定义 球有两种形式的定义 1.1.1 定义一 B(xc,r)={x∣∥x−xc∥2≤r}={x∣(x−xc)T(x−xc)≤r2}\begin{align} B\left(x_{c}, r\right) & = \{x \mid\left\|x-x_{c}\right\|_{2} \leq r\}\\& = \{x \mid\left(x-x_{c}\right)^{T}\left(x-x_{c}\right) \leq r^{2}\} \end{align} B(xc​,r)​={x∣∥x−xc​∥2​≤r}={x∣(x−xc​)T(x−xc​)≤r2}​​ 其中xcx_cxc​为球心,rrr为半径。 1.1.2 定义二 B(xc,r)={xc+ru∣∥u∥2≤1}B\left(x_{c}, r\right)=\{x_{c}+r u \mid\|u\|_{2} \leq 1\} B(xc​,r)={xc​+ru∣∥u∥2​≤1} 从直观上看,我们都知道球一定是个凸集。下面分别通过两种定义进行证明: 1.2 球为凸集的证明 1.2.1 利用 ...
2. 超平面和半空间
Created2022-04-17|中科大凸优化课程笔记
1. 超平面(hyperplane) 形如{x∣aTx=b}(a≠0)\{x \mid a^Tx=b \}(a \ne 0){x∣aTx=b}(a=0)的就是超平面 可以看成是一系列点的集合,这些点与向量aaa的内积为一个固定的常数。而bbb则是该超平面相对于原点的偏移量,原定义可以写作 {x∣aT(x−x0)=0}\{ x \mid a^T(x-x_0)=0 \} {x∣aT(x−x0​)=0} 其中x0x_0x0​为超平面上一点。 2. 半空间(halfspace) 超平面可以把RnR^nRn分割为两个半空间,形如{x∣aTx≤b}(a≠0)\{x \mid a^Tx \le b \}(a \ne 0){x∣aTx≤b}(a=0)的就是半空间 用定义可证,半空间也是一个凸集([[1. 仿射集-凸集-凸锥#凸集 convex set]]) 3. 子空间(subspace) 要区分子空间和半空间。 所谓子空间,或者空间,即存在以下性质的点集合:对于x1,x2∈Vx_1, x_2 \in Vx1​,x2​∈V,有 αx1+βx2∈V,α,β∈R\alpha x_1 + \bet ...
批量爬取大学课件
Created2022-04-16|Python
国外很多大学的课件放在一个专门的页面上,如下图所示,那么很容易通过一个爬虫批量下载下来。 思路就是识别页面中以pdf结尾的链接,然后进行下载。 单线程版本 123456789101112131415import requestsfrom bs4 import BeautifulSoupurl = 'https://inst.eecs.berkeley.edu/~ee127/fa19/Lectures/'page = requests.get(url).contentsoup = BeautifulSoup(page, 'html.parser')links = soup.find_all('a')for link in links: href = link.get('href') if href.endswith('.pdf'): file_url = url + href with open(href, 'wb') as f: f.write(reque ...
1. 仿射集、凸集、凸锥
Created2022-04-16|中科大凸优化课程笔记
1. 仿射集(affine set) 1.1 直线(line) 通过两个点x1≠x2x_1 \ne x_2x1​=x2​,可构造一条直线 y=θx1+(1−θ)x2y=\theta x_1 + (1-\theta) x_2 y=θx1​+(1−θ)x2​ 其中θ∈R\theta \in Rθ∈R。若令θ∈[0,1]\theta \in [0,1]θ∈[0,1],则为一条线段。 这个式子可以简单变换为 y=x2+θ(x1−x2)y=x_2 + \theta(x_1 - x_2) y=x2​+θ(x1​−x2​) 表示以x2x_2x2​为基准点,向x1−x2x_1-x_2x1​−x2​方向构造的一系列新的点。 把θ\thetaθ看作变量,上式其实就是对θ\thetaθ的线性变换加上一个常数,这就是仿射.(仿射变换,又称仿射映射,是指在几何中,一个向量空间进行一次线性变换并接上一个平移,变换为另一个向量空间。) 1.2 仿射组合(affine combination) 给定若干点xi(i=1,…,k)x_i(i=1,\ldots,k)xi​(i=1,…,k),定义 y=θ1x1+θ2 ...
12
avatar
技术杂货铺
Articles
20
Tags
30
Categories
5
Follow Me
Announcement
You can contact me via Email 3290701522@qq.com~
Recent Post
Cython浅出:最常用知识点都在这儿了2023-09-17
vim最常用命令2023-08-25
一文搞懂Python排序:sorted() vs list.sort()2023-07-23
深入浅出Python生成器2023-07-22
Linux/Unix常用命令: grep2023-05-16
Categories
  • Java1
  • Linux3
  • Python10
  • 中科大凸优化课程笔记5
  • 优化1
Tags
api shell pybind11 tmux cpp 爬虫 后端框架 maven parallel programming grep solver joblib built-ins linux pip ray python加速 mapstruct pulp python cython 凸优化 django vim mip sorting lombok java generator multiprocessing
Archives
  • September 20231
  • August 20231
  • July 20232
  • May 20233
  • April 20233
  • March 20231
  • December 20223
  • April 20226
Info
Article :
20
UV :
PV :
Last Push :
©2020 - 2023 By 技术杂货铺
Framework Hexo|Theme Butterfly