-
FRP实现外网访问内网服务器的web服务以及ssh服务
一、使用场景 最近疫情,很多公司都需要远程办公,一些web服务只能在公司访问,那么如何实现在家也能访问公司内网呢? 实验室服务器在跑的代码,回到寝室后想看其运行情况,那么如何实现在寝室也能访问实验室内网呢?二、准备环境 frp使用0.29.0版本:https://github.com/fatedier/frp/releases 内网服务器,云服务器(我这边使用的是ContOS7.6),需要其公网IP三、配置外网服务器 (即阿里云、腾讯云的服务器etc)1、在外网任意目录新建frp文...…
-
KKT条件
Karush-Kuhn-Tucker (KKT)条件是非线性规划(nonlinear programming)最佳解的必要条件。KKT条件将Lagrange乘数法(Lagrange multipliers)所处理涉及等式的约束优化问题推广至不等式。在实际应用上,KKT条件(方程组)一般不存在代数解,许多优化算法可供数值计算选用。这篇短文从Lagrange乘数法推导KKT条件并举一个简单的例子说明解法。1. 等式约束优化问题给定一个目标函数$f:\mathbb{R}^n \rightarro...…
-
《神经网络与深度学习》第一章学习笔记
《神经网络与深度学习》第一章学习笔记深度学习是机器学习的一个分支,是指一类问题以及解决这类问题的方法.首先,深度学习问题是一个机器学习问题,指从有限样例中通过算法总结出一般性的规律,并可以应用到新的未知数据上.其次,深度学习采用的模型一般比较复杂,指样本的原始输入到输出目标之间的数据流经过多个线性或非线性的组件. 因为每个组件都会对信息进行加工,并进而影响后续的组件,所以当我们最后得到输出结果时,我们并不清楚其中每个组件的贡献是多少. 这个问题叫做贡献度分配问题(Credit Assig...…
-
Teamviewer被检测商用行为解决办法
Teamviewer被检测商用行为解决办法Teamviewer在当作个人用户使用时是完全免费的,但如果连接频次过高,时间长的话,会被认为是当作商业用途,出现下图所示状况,必须要进行激活许可证才能正常使用,且是收费的。本文将介绍如何继续免费使用该软件。1 将Teamviewer完全卸载a. 首先要做的就是卸载原来安装的Teamviewer,找到Teamviewer,卸载。b. 打开计算机»>C»>用户»>Administrator»>AppDate»>Roami...…
-
数字图像处理:通道
数字图像的本质1 数字图像的本质是一个多维矩阵.以Lena的 RGB 色彩空间图像为例, 编写如下代码(Lena的全身图特别惊艳,推荐大家去看一下,这里就不放了,我怕被和谐,哈哈哈哈)from PIL import Imageimport numpy as npim = Image.open('lena.png')img = np.array(im) print(img.shape)#(512, 512, 3)说明这个图像有512 行,512列, 以及在色彩上有 3 个分量.进一步分解该图...…
-
Numpy 数组的的计算:通用函数
探索Numpy的通用函数1 数组的运算In[1]: x = np.arange(4) print("x =", x) print("x + 5 =", x + 5) print("x - 5 =", x - 5) print("x * 2 =", x * 2) print("x / 2 =", x / 2) print("x // 2 =", x // 2) # floor divisionx = [0 1 2 3]x + 5 = [5 6 7 8]x - 5...…
-
Numpy 数组拼接和分裂
数组拼接和分裂1 数组的拼接拼接或连接Numpy中的两个数组主要由np.concatenate、np.vstack、np.hstack实现。np.concatenate将数组元祖或数组列表作为第一个参数,如下所示In[1]: x = np.array([1, 2, 3]) y = np.array([3, 2, 1]) np.concatenate([x, y])Out[1]: array([1, 2, 3, 3, 2, 1])你也可以一次性拼接两个以上的数组In[2]: z = [9...…
-
Numpy 数组的变形
改变数组的形状一个数组的形状是由每个轴的元素数量决定的:>>> a = np.floor(10*np.random.random((3,4)))>>> aarray([[ 2., 8., 0., 6.], [ 4., 5., 1., 1.], [ 8., 9., 3., 6.]])>>> a.shape(3, 4)可以使用各种命令更改数组的形状。请注意,以下三个命令都返回一个修改后的数组,但不会...…
-
Numpy 索引与切片
索引一维索引数组上的算术运算符会应用到 元素 级别。下面是创建一个新数组并填充结果的示例:>>>import numpy as np>>>A = np.arange(3,15) #array([ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])>>>A[0]3>>>A[1]4为了获取数组的末尾元素,可以使用负值索引>>>A[-1]14>>>...…
-
Numpy 基础运算
基本操作数组上的算术运算符会应用到 元素 级别。下面是创建一个新数组并填充结果的示例:>>> a = np.array( [20,30,40,50] ) #array([20, 30, 40, 50])>>> b = np.arange( 4 ) ## array([0, 1, 2, 3])加法上述代码中的 a 和 b 是两个属性为 array 也就是矩阵的变量,而且二者都是1行4列的矩阵, 其中b矩阵中的元素分别是从0到3。 如果我们想要求两个矩阵之间...…
-
Numpy 基础知识
NumPy的主要对象是同构多维数组。它是一个元素表(通常是数字),所有类型都相同,由非负整数元组索引。在NumPy维度中称为轴。例如,3D空间中的点的坐标[1, 2, 1]具有一个轴。该轴有3个元素,所以我们说它的长度为3.在下面所示的例子中,数组有2个轴。第一轴的长度为2,第二轴的长度为3。[[ 1., 0., 0.], [ 0., 1., 2.]]NumPy的数组类被调用ndarray。它也被别名所知 array。请注意,numpy.array这与标准Python库类不同array.a...…
-
快速幂
幂运算是非常常见的一种运算,求$a^{n}$最容易想到的方法便是通过循环逐个累乘,其复杂度为$O(n)$,这在很多时候是不够的,所以我们需要一种算法来优化幂运算的过程。快速幂这个东西比较好理解,今天把它系统的总结一下防止忘记.正文:首先,快速幂的目的就是做到快速求幂,假设我们要求$a^{b}$,按照朴素算法就是把a连乘b次,这样一来时间复杂度是$O(b)$,即是$O(n)$级别,快速幂能做到$O(logn)$,快了好多好多.它的原理如下:假设我们要求$a^{b}$,将$b$写为二进制的...…
-
C++ 笔记2 文件读写
可以将顺序文件看作一个有限字符构成的顺序字符流,然后像对cin,cout一样的读写。回顾下输入输出流的层次结构。目录 创建文件 文件的读写指针 文件读写 字符文件读写 二进制文件读写 创建文件#include<fstream> //包含头文件方式1:定义ofstream,在构造函数中给出参数ofstream outFile(“clients.dat”,ios::out|ios::binary);-clients..dat 要创建的文...…
-
C++ 笔记1 输入输出相关的类及流操纵算子
学C++有一年多的时间了,当时有些东西理解不够的深入,也忘记了好多细节的部分,于是出了C++笔记这个专辑吧,哈哈哈!目录 输入输出 与输入输出有关的类 与输入输出有关的类 判断输入流结束 输出重定向 输入重定向 流操纵算子 整数流的基数 控制浮点数精度的流操纵算子 设置宽域的流操纵算子 用户自定义流操纵算子 输入输出与输入输出有关的类istream是用于输入的...…
-
Wifi 定位原理及 iOS Wifi 列表获取
对于大家来说,Wifi 应该是一个很熟悉的词了,我们每天都可能在使用 Wifi 热点。Wifi 除了能给我们提供热点之外同时还有定位的作用, 现在移动设备的对用户的隐私保护是越来越严格了,就如定位功能,必须要经过设备用户的授权才能使用 Location 给这台设备定位。这些严格的隐私政策对用户起到到保护作用,但对开发人员却是一种阻碍,在产品强需求的情况下用户是会授权的,如地图类应用,但是另外一些没有对定位强需求的产品,用户可能就不会给你授权了,这是我们可以考虑下 Wifi 定位了。Wi...…
-
使用 TensorFlow 实现神经网络
介绍 一直关注 数据科学 、 机器学习 的同学,一定会经常看到或听到关于 深度学习 和 神经网络 相关信息。如果你对 深度学习 感兴趣,但却还没有实际动手操作过,你可以从这里得到实践。 在本文中,我将介绍 TensorFlow , 帮你了解 神经网络 的实际作用,并使用 TensorFlow 来解决现实生活中的问题。 读这篇文章前,需要知道 神经网络 的基础知识和一些熟悉编程理念,文章中的代码是使用 Pyhton 编写的,所以还需要了解一些 Python 的基本语法,才能更有利对于文章...…
-
Markdown工具集
什么是 Markdown Markdown 是一种方便记忆、书写的纯文本标记语言,用户可以使用这些标记符号以最小的输入代价生成极富表现力的文档:如您正在阅读的这篇文章。它使用简单的符号标记不同的标题,分割不同的段落,粗体 或者 斜体 某些文字. 很多产品的文档也是用markdown编写的,并且以“README.MD”的文件名保存在软件的目录下面。 一些基本语法标题 H1 :# Header 1 H2 :## Header ...…
-
Mac知识整合
.DS_Store 文件是什么?.DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件,如文件的图标位置或背景色,相当于 Windows 的 desktop.ini。1,禁止.DS_store 生成: 打开 “终端” ,复制黏贴下面的命令,回车执行,重启Mac即可生效。defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE2,恢复.DS_store生成:de...…
-
TensorFlow 在 iOS 平台上的使用(一)
距离上次使用 TensorFlow 在iOS平台上做的小 Demo,已经过了四个月了,今天忽然想再看看,发现 Demo 已经不见了,我只能从头在编一次,这次发现编译 iOS 库,简单多了。 tensorflow 下载地址,tensorflow 最近提交的时间:2016-11-03,commit:7b7c02de56e013482b5fe5ab05e576dc98fe5742 。 下载完成后打开文件,找到目录 tensorflow-master/tensorflow/contrib/...…
-
Jekyll搭建个人博客
介绍 Jekyll 是一个简单的博客形态的静态站点生产机器。它有一个模版目录,其中包含原始文本格式的文档,通过 Markdown (或者 Textile) 以及 Liquid 转化成一个完整的可发布的静态网站,你可以发布在任何你喜爱的服务器上。Jekyll 也可以运行在 GitHub Page 上,也就是说,你可以使用 GitHub 的服务来搭建你的项目页面、博客或者网站,而且是完全免费的 使用 Jekyll 搭建博客之前要确认下本机环境,Git 环境(用于部署到远端)、Ruby 环境(J...…