The curse of high dimensionality is usually a major cause of limitations of many machine learning algorithms. A novel algorithm called Neighborhood Margin Fisher Discriminant Analysis (NMFDA) is proposed for supervised linear dimensionality reduction. For every point, NMFDA tries to enlarge the margin of the farthest point with the same class label and the nearest point with the different class label. Also the Kernel NMFDA is proposed for nonlinear dimensionality reduction. The contrastive experiments on several benchmark face database show the effectiveness of proposed method.