原创 [GAN01]GAN原理介紹並使用Keras實現DCGAN基於Mnist數據集的圖像生成

前言 打算開坑實現一系列GAN,並基於這些模型對GAN的原理進行深入理解與挖掘。 第一篇是DCGAN。 理論部分 GAN的原理 從圖中可以看到,GAN分爲兩部分,生成器和辨別器。 生成器與辨別器 生成器的目的是利用噪音生成以假亂真

原创 Linux:深入理解文件系統及其實現

文章目錄Linux:Proc文件系統和實現Abstractfile_operationsproc_create[^5]seq_fileLinux 鏈表seq_filesingleConclusion Linux:Proc文件系統和

原创 Python List,Numpy和Tensorflow的加法運算符

a + b 對於Python List, Numpy 和Tensorflow的表現不同,這有時會導致一些困惑。 List:拼接 Numpy:element-wise plus 要求a與b的size相同或者相容。 Tenso

原创 [Pytorch官方NLP實驗解惑03]基於lstm的seq2seq單詞標註器

序列到序列(seq2seq)是nlp任務中重要的一類,它和其他任務的根本區別在於它以序列作爲處理對象,而序列由彼此獨立又相互聯繫的單詞組成,爲了處理這種關係,需要在層與層之間記憶和傳遞狀態,以表達單詞之間的聯繫,深度學習使用rnn

原创 [AllenNLP框架下工程化的AI實驗01]以語言模型爲例

摘要 搭建語言模型,說明AllenNLP的疑點和潛規則。 默認讀者瞭解NLP基本概念,本文從NLP基本概念到AllenNLP抽象概念,預計閱讀15分鐘。 核心概念 instance和vocabulary是字典的字典,請在閱讀的過程

原创 [Pytorch官方NLP實驗解惑02]NGram語言模型

該實驗不僅介紹了語言模型,還引出了word embedding,前者在nlp中稱爲下游任務,後者稱爲預處理,預處理+下游任務的二階段模型是現在nlp實驗的常用框架。 這篇博客是對https://pytorch.org/tutori

原创 windows pycharm代碼遷移到Linux服務器

前言 最近實驗喫緊,在用自己電腦訓練的同時,也需要用機房電腦訓練baseline,所以需要將運行在Windows下pycharm的代碼遷移到Linux,主要需要做這兩步: 構建層次關係 將\\改成/ 構建層次關係 pychar

原创 最好的AI實驗方式?AllenNLP介紹與評價

介紹 AllenNLP是由AllenAI提出的基於pytorch的NLP框架,與ELMO師出同門。據項目領導人Matt Gardner所說,該框架是在問題“NLP實驗的最優實踐方式”下提出的。 在EMNLP2018上,AllenA

原创 [Pytorch官方NLP實驗解惑01]詞袋分類器

Pytorch官方實驗的食用方法 pytorch官網上關於NLP的實驗有兩類,https://pytorch.org/tutorials/index.html#text和https://pytorch.org/tutorials/

原创 Pycharm遠程調試服務器

最近每天調transformer,自己的顯卡承受不了,需要鏈接遠程服務器,但是寫好再傳到服務器比較麻煩,也沒辦法裝圖形化IDE。 幸虧Pycharm提供了非常優秀的遠程調試方法,和在本機操作沒有任何區別。 設置遠程python解釋

原创 GPT/BERT訓練:Creating MTGP constants failed

這個bug有兩種原因。 一是在pytorch早期版本中,使用了超過512的序列長度,見:訓練bert中的一些坑。 二是config文件和model不相符,有可能是你添加了special token,但是沒有添加到model的emb

原创 Linux:模塊加載與參數傳遞

Linux:模塊加載與參數傳遞 Abstract Linux內核是模塊化的,由一個儘可能小的基本內核,和一堆實現進階功能的內核模塊組成。 支持模塊的好處有三個,一是讓基本內核非常精簡,二是允許在運行時添加功能,三是支持設備的熱插拔

原创 優雅地使用批處理技巧大幅提升數據處理速度

假設,你遇到一份包含26萬句子的數據集需要處理 而處理速度僅僅爲1it/s 如果順序執行,需要三四天的時間。 一個解決辦法就是,分而治之,分成n份並行執行,處理完之後再合併。 具體流程如下: 生成一個包含n個命令的批處理文

原创 Windows下安裝使用Spacy英文庫en_core_web_md,解決Warning: no model found for 'en_core_web_md'

spacy是一個強大的NLP數據處理工具,它使用二步的安裝步驟:先安裝spacy,再安裝對應的語言包,但是第二步默認下載速度慢,手動安裝常出問題。 在Windows下安裝,可以先使用conda安裝spacy,注意不要像一些教程那樣

原创 理解VHDL基本概念

An Introduction To VHDL Abstract FPGA(現場可編程邏輯陣列),是一種領先的硬件設計方式,簡單地說,用戶可以根據需要爲開發板設計功能,並且可以隨着需求的改變隨時改變功能,而對開發板功能的編程,就是