ESP8266 wifi configuration with AP mode

#ESP8266 wifi configuration with AP mode Thanks for the github repository: tzapu/WiFiManager Although we all know that we can use the AP mode to configure the wifi password for ESP8266, it still takes time to implement the specific code line by line. Now, with the help of this project, I just need to share the steps to get this project running on our own ESP8266 chip. Note that the ESP8266 SmartConfig is another covenient way for wifi password broadcasting. wifikit8 https://heltec.

READ MORE

简单的python web服务器(附编码设置)

A basic web server implemented by python3.6 Note: the encoding-related configuration in line: ​ self.send_header('Content-type','text/html; charset=utf-8') 注意:python web服务器 编码问题 import csv from http.server import BaseHTTPRequestHandler, HTTPServer class handler(BaseHTTPRequestHandler): Page = '''\ <html> <meta content="text/html;charset=utf-8" http-equiv="Content-Type"> <meta content="utf-8" http-equiv="encoding"> <body> <p>Hello, I am great Chinese!</p> </body> </html> ''' def parse_csv(self): lines = [] with open('my_content.csv', 'r') as file: reader = csv.reader(file) for row in reader: lines.append(row) file.close() return str(lines[0]) def do_GET(self): self.send_response(200) self.send_header('Content-type','text/html; charset=utf-8') self.end_headers() message = self.parse_csv() #message = 'Hello beijing 北京' self.

READ MORE

中国计算机学会(CCF)推荐国际学术期刊目录(2019)

#中国计算机学会(CCF)推荐国际学术期刊目录(2019) Table of contents 中国计算机学会(CCF)推荐国际学术期刊目录(2019) (数据库/数据挖掘/内容检索) (人工智能) (交叉/综合/新兴) (计算机体系结构/并行与分布计算/存储系统) (计算机网络) (网络与信息安全) (软件工程/系统软件/程序设计语言) (计算机科学理论) (计算机图形学与多媒体) (人机交互与普适计算) (数据库/数据挖掘/内容检索) 一、A类 ####### 序号 刊物简称 刊物全称 出版社 网址 1 TODS ACM Transactions on Database Systems ACM http://dblp.uni-trier.de/db/journals/tods/ 2 TOIS ACM Transactions on Information Systems ACM http://dblp.uni-trier.de/db/journals/tois/ 3 TKDE IEEE Transactions on Knowledge and Data Engineering IEEE http://dblp.uni-trier.de/db/journals/tkde/ 4 VLDBJ The VLDB Journal Springer http://dblp.uni-trier.de/db/journals/vldb/ 二、B类 序号 刊物简称 刊物全称 出版社 网址 (^1) TKDD ACM Transactions on Knowledge Discovery from Data ACM http://dblp.uni-trier.de/db/journals/tkdd/ (^2) TWEB ACM Transactions on the Web ACM http://dblp.

READ MORE

中国计算机学会(CCF)推荐国际学术会议目录(2019)

中国计算机学会(CCF)推荐国际学术会议目录(2019) (数据库/数据挖掘/内容检索) 一、A类 序号 会议简称 会议全称 出版社 网址 (^1) SIGMOD ACM Conference on Management of Data ACM http://dblp.uni-trier.de/db/conf/sigmod/ (^2) SIGKDD ACM Knowledge Discovery and Data Mining ACM http://dblp.uni-trier.de/db/conf/kdd/ (^3) ICDE IEEE International Conference on Data Engineering IEEE http://dblp.uni-trier.de/db/conf/icde/ (^4) SIGIR International Conference on Research on Development in Information Retrieval ACM http://dblp.uni-trier.de/db/conf/sigir/ (^5) VLDB International Conference on Very Large Data Bases Morgan Kaufmann//ACM http://dblp.uni-trier.de/db/conf/vldb/ 二、B类 序号 会议简称 会议全称 出版社 网址 (^1) CIKM ACM International Conference on Information and Knowledge Management ACM http://dblp.

READ MORE

Getting started with Graph Convolutional Networks as an Amateur

Getting started with Graph Convolutional Networks as an Amateur https://zhuanlan.zhihu.com/p/27587371 https://www.cnblogs.com/wangxiaocvpr/p/8306519.html https://www.cnblogs.com/wangxiaocvpr/p/8299336.html https://towardsdatascience.com/how-to-do-deep-learning-on-graphs-with-graph-convolutional-networks-7d2250723780 GCN是一种强大的神经网络,旨在直接在图上工作并利用其结构信息。这篇文章是关于如何用图卷积网络(GCN)在图上进行深度学习的系列文章的第一篇。该系列的包含: 本篇:一个高层级的GCN介绍 谱图卷积的半监督学习 最基本的代码实现GCN – 一个高层级的GCN介绍 In this post, I will illustrate how information is propagated through the hidden layers of a GCN using coding examples. 看看GCN是如何从前几层聚合信息的,以及这种机制是如何产生图中节点的有用特征表示的。 ref link in Chinese中文 看看GCN的输入是啥 Given a graph $G = (V, E)$ , a GCN takes as input: adjacency matrix $\mathbf{A}$ of $G$. N × N an input feature matrix, $N × F⁰$ feature matrix, $\mathbf{X}$, where N is the number of nodes and F⁰ is the number of input features for each node 图示是一个例子

READ MORE

install usbmount on debian for orangePi / raspberryPi

install usbmount on debian for orangePi / raspberryPi USBmount was removed from Debian a while back because the version from the repositories no longer works. It’s still available in Ubuntu, but it does not work properly in Ubuntu 18.04 and newer. The bug was fixed in the USBmount git though, so you can build your own updated USBmount package that works in both Debian and Ubuntu (and on Raspbian / Ubuntu MATE for Raspberry Pi). Start by installing Git and downloading the latest USBmount Git code:

READ MORE

Implementing comment for jekyll blog with github pull request

利用pull request实现 jekyll 博客评论功能 Implementing comment for jekyll blog with github pull request 1. The refered blogs: https://damieng.com/blog/2018/05/28/wordpress-to-jekyll-comments https://haacked.com/archive/2018/06/24/comments-for-jekyll-blogs/ The github repos that needed: https://github.com/damieng/jekyll-blog-comments This is for the static layout/html contents supporting comment functions. https://github.com/haacked/jekyll-blog-comments-azure This is for the dynamic Azure Function code, which is forked from: https://github.com/Azure-Functions/jekyll-blog-comments 2. Steps and notes for jekyll comment box building The idea is use data files in Jekyll to store comments and some liquid templates to render them. That all can be static.

READ MORE

抛弃清华源,使用SJTU的镜像 for Anaconda

使用SJTU的Anaconda镜像 清华TUNA的Anaconda镜像不稳,好的时候一切顺利,坏的时候一个24K的包下5分钟;Anaconda的官方源则更惨,连repo.json都下不下来; 今天又是清华的源大姨妈的一天:Pytorch下载到100MB就超时,折腾了三个小时也装不上。而同在华东的SJTU的镜像就很稳定,这次全线换成SJTU啦。 首先执行 conda config --set show_channel_urls yes 在/usr下生成.condarc文件,然后将其内容替换为 channels: - defaults show_channel_urls: true channel_alias: https://anaconda.mirrors.sjtug.sjtu.edu.cn default_channels: - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/main - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/free - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/r - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/pro - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/msys2 custom_channels: conda-forge: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud msys2: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud bioconda: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud menpo: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud pytorch: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud simpleitk: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud 再运行conda clean -i清除索引缓存即可。 终于装上Pytorch了,可喜可贺😂

READ MORE

High performance optimization and acceleration for randomWalk, deepwalk, node2vec (Python)

deepwalk、node2vec的高性能优化 转自知乎: https://zhuanlan.zhihu.com/p/348778146 原作者:马东什么 首先是graph的存储问题,看了很多实现node2vec或deepwalk的library,大都是以networkx或是类似的python class对象为graph的存储形式进行开发,首先我们需要知道目前单机版的deepwalk和node2vec的主要的性能瓶颈在random walk部分,因为底层的word2vec基本上都是直接调用的gensim的word2vec(gensim的word2vec基于c++开发,目前新版的gensim的word2vec的fast version使用了cython代替了原来的一些逻辑实现,个人感觉从word2vec层面再去做优化太复杂了,也很难比gensim做的更好,除此之外另一个思路就是用tf.keras或torch来实现word2vec,借用gpu的算力来试图击败gensim,然而看完这几篇,我心灰意冷了: Word2vec on GPU slower than CPU · Issue #13048 · tensorflow/tensorflow[github.comDoes Gensim library support GPU acceleration?stackoverflow.com![图标](https://pic1.zhimg.com/v2-2d47e939feed796bcf7483d306661c88_ipico.jpghttps://www.reddit.com/r/learnmachinelearning/comments/88eeua/why_is_gensim_word2vec_so_much_faster_than_keras/www.reddit.com ) graph通常以相互引用的内存指针的方式存储在内存中,这意味着每个节点在内存中都位于不同的位置,这种基于基于链表的思想,使得内存访问的速度成为了主要的瓶颈,因为每次从一个节点移动到另一个节点,都需要在内存中寻址和查询,一种更好的方式是把节点都打包到数组中,因为数据的内存地址一般是连续的,在内存访问上的开销要小很多;(这里还没有提到networkx本身用纯python编写导致的较低效的编译效率问题,具体可见: 马东什么:为什么python这么慢?numba解决了什么问题? ) 一个较好的解决方案就是使用scipy.sparse.csr_matrix对graph进行存储和后续的访问等, csr_matrix可见下: 马东什么:scipy sparse 中稀疏矩阵的常见存储方式zhuanlan.zhihu.com 可以看到,通过将graph转化为csr_matrix,利用其巧妙地存储方式,可以大大提高节点和节点之间的访问效率。 下面就来看一个非常nice的小众的graph library,csr_graph和nodevectors,nodevectors基本上是对csr_graph做的封装,底层的逻辑直接使用了csr_graph的接口api,所以直接研究csr_graph即可。 VHRanger/CSRGraphgithub.com![图标](https://pic4.zhimg.com/v2-9b74ff2ecca657554aa17776a6083d37_ipico.jpg 整个csr graph的核心在于graph的重构: class csrgraph(): """ This top level python class either calls external JIT'ed methods or methods from the JIT'ed internal graph """ def __init__(self, data, nodenames=None, copy=True, threads=0): """ A class for larger graphs. NOTE: this class tends to "steal data" by default.

READ MORE

How to add conda env into jupyter notebook installed by pip

How to add conda env into jupyter notebook installed by pip ref: https://medium.com/@nrk25693/how-to-add-your-conda-environment-to-your-jupyter-notebook-in-just-4-steps-abeab8b8d084 If your linux server has no Anaconda installed but conda installed. You don’t want to install Anaconda for just installing jupyter notebook. You just installed jupyter notebook with pip3 with this link 1. check the env on which jupyter notebook is runing: which pip3 where pip3 #for windows cmd 2. add your Conda environment to your jupyter notebook: Step 1: Create a Conda environment. conda create --name firstEnv

READ MORE