原创 stl源碼剖析之vector,list,deque迭代器分析

一.模型 vector維護的是連續線性空間,當空間大小不足時,另闢一塊更大的內存,將之前空間的所有元素移至新空間,並銷燬釋放原空間。stl中list是一個環狀雙向鏈表,它維護的不是連續空間,而是一個個的節點(__lis

原创 深入理解計算機系統第1章-計算機系統漫遊

第1章 計算機系統漫遊 1. 信息 源程序是由0和1組成的位(bit)序列,8個位組成一個字節。大部分現代系統都用ASCII標準來表示文本字符。 文本文件 二進制文件 2. 編譯過程 爲運行hello.c程序,每條C語句都需要

原创 深入理解計算機系統第8章 異常控制流之一異常與進程

第8章 異常控制流 8.1 異常 當處理器檢測到有事件發生時,它會通過一張叫做異常表的跳轉表,進行一個間接過程調用,到一個專門設計用來處理這類時間的操作系統子程序(異常處理程序)。 1. 異常處理 系統啓動時,操作系統分配和初始化

原创 unix線程

1. 概念 一個unix進程可看成只有一個控制線程。多線程好處: 可爲每種事件分配單獨的處理線程.可採用同步和異步兩種編程模式,同步比異步更簡單。 不同於進程,多線程可自動訪問相同的存儲地址空間和文件描述符,而進程需要操作系統複

原创 深入理解計算機系統第3章-程序的機器級表示

第3章 程序的機器級表示 計算機執行機器代碼。彙編代碼是機器代碼的文本表示。 過程: 過程調用需要棧來支持。 棧幀以兩個指針界定,寄存器%ebp爲幀指針,而%esp爲棧指針。程序執行時,棧指針可以移動。 假設過程P(調用者)調用

原创 xDeepFM模型

xDeepFM模型 介紹 推薦系統中一般將類別特徵(categorical feature)轉換成one-hot向量,如果僅適用原始特徵一般不能達到很好的效果。一種主要的提升方法就是在類別特徵上應用交叉特徵,如FM模型。如一個3階

原创 The Application of Two-level Attention Models in CNN for Fine-grained Image Classification

這篇文章主要講細粒度分類問題。普通的分類問題是類間差距較大,例如將一幅圖像分類爲貓或狗。不同於普通分類,細粒度分類問題類與類之間差異很小,比如將鳥按品種分類。兩個不同品種的鳥之間的差異可能僅僅在於鳥的眼睛,嘴巴,腿等部位,其他部位

原创 stl源碼剖析之traits編程技法

stl中充斥着大量的traits編程技法,要想看stl源碼,不瞭解traits肯定是不行的。 一.引入 stl中迭代器類似於指針,可以說指針是一種特殊的迭代器。 假設我們想要寫一個func函數,它的輸入參數是一個迭代器,並且

原创 stl源碼剖析之vector

vector是一種序列式容器,使用vector時只需要#include <vector> sgi stl 3.0中vector的具體實現定義在stl_vector.h文件中,vector使用的是連續線性空間,vector的迭代器

原创 SPDA-CNN:Unifying Semantic Part Detectiojn and Abstraction for Fine-grained Recognition

這是2016年發表在CVPR中的一篇有關細粒度分類的文章 1. 引入: 1).細粒度分類的挑戰性:微小的視覺差異可能會被其他的因素(如視角、角度等)遮掩。 2).最近有一些CNN-SVM框架的細粒度分類研究工作 思路

原创 用戶ID與文件訪問權限

一.與進程相關聯的ID 與進程相關的ID有6種,分別是實際用戶ID,實際組ID,有效用戶ID,有效組ID,設置用戶ID與設置組ID。 實際用戶ID,實際組ID標記我們實際上是誰,一般在用戶登錄是確定,比如Zhangsa

原创 cs224n第二講:簡單的詞向量表示:word2vec, Glove

第二講:簡單的詞向量表示:word2vec, Glove How do we represent words? 在處理所有NLP任務的時候,我們首先需要解決非常重要的一個問題(可能是最重要的):用什麼方式將詞組輸入到模型中去。早期

原创 cs224n第六講 依存分析

第六講 依存分析 1. 兩種語言結構: 1.1短語結構 如何描述語法,有兩種不同的角度,其中一種是短語結構文法也叫做上下文無關文法(CFGs),通過寫出一定數量的上下文無關的文法規則,通過這些規則分析句子。20世紀和21世紀之交,

原创 Unix信號

信號 1. 概念: 信號是軟件中斷,提供了一種處理異步事件的方法。 2. 產生信號: 終端: 如按Delete鍵,產生SIGINT信號 硬件異常產生信號: 除數爲0,無效的內存引用 進程調用kill函數 kill命令 軟件產生的信號

原创 Unix文件I/O

Unix文件I/O 本節描述的函數經常被稱爲不帶緩衝的I/O. 1 #include <fcntl.h> int open(const char *path, int oflag, ... /* mode_t mode */); i