C(SU )= {pЄ P| p(ƒ )= (ƒ) với tất cả các ƒЄ SU }
ΔL(S, )= L(PSU )– L(PS)
Tại mỗi bước của quá trình xây dựng, mục đích của ta là phải chọn được ứng viên đặc trưng mà làm cực đại ΔL(S, ), nghĩa là ta sẽ chọn ứng viên nào mà khi ta thêm ứng viên này vào tập các đặc trưng tích cực (active features) sẽ cho ta độ tăng lớn nhất của hàm log-likelihood của dữ liệu huấn luyện. Chiến lược trên được thực hiện qua thuật toán sau.
Thuật toán 2: Lựa chọn đặc trưng cơ sở
Input: Tập các ứng viên đặc trưng F, phân phối thực nghiệm
Output: Tập các đặc trưng tích cực S, Mô hình kết hợp các đặc trưng này PS
Bước 1: Bắt đầu với S là tập rỗng,
Bước 2: Với mỗi ứng viên đặc trưng ƒЄ F
Tính mô hình PS U f sử dụng thuật toán 1.
Tính xấp xỉ độ tăng của hàm log-likelihood sử dụng thuật toán tính xấp xỉ độ tăng. (xem phụ lục).
Bước 3: Kiểm tra điều kiện dừng.
Bước 4: Chọn đặc trưng có độ tăng ΔL(S, ) là lớn nhất Bước 5: Thêm vào S.
Bước 6: Tính PS sử dụng thuật toán 1.
Bước 7: Quay lại bước 2
Có một vấn đề còn chưa được giải quyết trong thuật toán này đó chính là điều kiện dừng. Hiển nhiên rằng ta muốn một điều kiện mà áp dụng chính xác khi tất cả các đặc trưng hữu ích đã được chọn. Một tiêu chuẩn dừng hợp lý là yêu cầu các đặc trưng được đưa ra phải được phê chuẩn trên tập dữ liệu mẫu, tập dữ liệu mẫu này được giữ lại từ tập dữ liệu ban đầu. Nếu một đặc trưng không cung cấp một lượng tăng trong hàm log-likelihood của tập dữ liệu được giữ lại thì đặc trưng này sẽ bị loại bỏ.
Tuy nhiên, thuật toán lựa chọn đặc trưng cơ sở ở trên khó có thể áp dụng cho thực tế. Với mỗi ứng viên đặc trưng, ƒ Є F trong bước 2, ta phải tính mô hình cực đại entropy PS U f , một công việc cần chi phí tính toán rất cao ngay cả với thuật toán leo lặp hiệu quả của Darroch và Ratcliff như đã được đề cập ở trên. Do đó, một cải tiến trong thuật toán đã được đưa ra làm cho nó khả thi hơn. Cải tiến ở đây chính là việc thay thế việc tính toán độ tăng của hàm log- likelihood của đặc trưng ƒ với một xấp xỉ. Thuật toán tính xấp xỉ độ tăng được cho trong phần phụ lục [9].