unknown knowledges
交叉熵:
https://blog.csdn.net/tsyccnh/article/details/79163834
https://www.zhihu.com/question/65288314/answer/244557337
马尔科夫性:
即下一个状态只与当前状态有关,与以前的状态无关
ubuntu tensorflow GPU 资源分配:
https://blog.csdn.net/lgh0824/article/details/77160440
MarkDown
numpy
shape:从方括号 [] 外往里数,有多少元素。将从外到内的方括号的元素个数从左往右写,就是shape 。例如:
>>> x = np.array([1])
>>> x.shape
>>> (1,)
>>> x = np.array([1,2,3])
>>> x.shape
>>> (3,)
>>> x = np.array([[1,2]])
>>> x.shape ##因为这里最外面的方括号只包括一个元素[1,2],而里面一层的方括号包括两个元素1,2 所以 shape 是 (1,2)
>>> (1,2)
>>> x = np.array([[[1,2,3],[4,5,6]]])
>>> x.shape #在这里,x 的最外面的方括号[]包含一个元素:[[1,2,3],[4,5,6]],而往里一层的方括号[] 包含两个元素:[1,2,3],[4,5,6],最里面的方括号包含三个元素:1,2,3 和 4,5,6 所以 shape 应该是 (1,2,3)
>>> (1,2,3)
所以 axis 就是shape 从左往右的坐标,比如说 对于上面的最后一个 x = [[[1,2,3],[4,5,6]]] ,x 的shape 是 (1,2,3)。当 axis = 0时 ,指 shape 中 1 的数字所在的维度;axis = 1 时,指代 shape 中 2 数字所在的维度;axis =2 时,指代 shape 中 3 数字所在的维度。
Windows 全能终端神器:MobaXterm
Linux 标准输入,标准输出,错误输出重定向
在执行长时间任务时可以将输出重定向到一个文件中去查看对应的过程
ubuntu 增加新用户并为其增加sudo权限
增加用户:
adduser: 会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。
useradd:需要使用参数选项指定上述基本设置,如果不使用任何参数,则创建的用户无密码、无主目录、没有指定shell版本。
一般用adduser 用户名
增加sudo权限
为用户添加一个附属组sudo,使用adduser时,默认情况下会创建一个以该新用户名命名的用户组,并将该用户添加到组中。然后可以通过usermod命令将该用户添加到一个附属组sudo中,使其拥有sudo权限。
sudo usermod -aG sudo(组名) 用户名
具体选项用法可以man usermod
另一种方法是修改/etc/sudoers文件夹,在下面位置添加一行,
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
%用户组名 ALL=(ALL:ALL)ALL
使用screen开启新窗口后台执行代码
sreen 命令详解
zookeeper集群报错:Cannot open channel to 2 at election address
zookeeper集群报错:Cannot open channel to 2 at election address 中文
还是歪国人比较给力:How have defined the ip of the local server in each node? If you have given the public ip, then the listener would have failed to connect to the port. You must specify 0.0.0.0 for the current node
server.1=0.0.0.0:2888:3888
server.2=192.168.10.10:2888:3888
server.3=192.168.2.1:2888:3888