Repository
mayabot

mayabot/fastText4j

Implementing Facebook's FastText with java

157stars
23forks
12issues
0views

🚀 fastText4j: Phiên bản Java/Kotlin của thư viện FastText từ Facebook

Một bản cài đặt hoàn chỉnh FastText bằng Kotlin & Java, tương thích 100% với mô hình C++ gốc.

fastText4j là một thư viện cài đặt lại thuật toán FastText của Facebook bằng ngôn ngữ Kotlin và Java. FastText là một thư viện mã nguồn mở do Facebook phát triển, chuyên dùng cho đại diện và phân loại văn bản thông qua học sâu mạng ngữ nghĩa. Dự án hỗ trợ đầy đủ các chức năng như huấn luyện mô hình phân loại (supervised), học biểu diễn từ (word embeddings) dạng Skipgram/Cow, kiểm tra độ chính xác, dự đoán nhãn, tìm từ gần nghĩa và thực hiện phép tính lượng từ (analogies).

Mã nguồn dự án hiện đã được chuyển sang quản lý tại dự án Mynlp.

✨ Điểm nổi bật

  • 100% bằng Kotlin & Java: Cài đặt hoàn toàn bằng hai ngôn ngữ này, dễ tích hợp vào dự án JVM.
  • Tương thích mô hình C++ gốc: Hỗ trợ tải và sử dụng trực tiếp các tệp mô hình đã huấn luyện bởi phiên bản C++ chính thức.
  • Hỗ trợ huấn luyện & kiểm tra: Cung cấp API để huấn luyện mô hình phân loại và đánh giá bằng P@k, R@k, F1-Score.
  • Lưu & tải mô hình: Hỗ trợ lưu mô hình định dạng nội bộ và tải lại để sử dụng.
  • Nén mô hình bằng Quantizer: Giảm kích thước mô hình phân loại thông qua kỹ thuật nén định lượng.
  • Dự đoán & tìm kiếm từ gần nghĩa: Dự đoán nhãn cho câu/văn bản mới và tìm các từ có nghĩa tương tự.
  • Hỗ trợ mmap: Đọc tệp mô hình lớn bằng cơ chế ánh xạ bộ nhớ để tiết kiệm RAM.

💡 Vì sao đáng chú ý

Khác với các thư viện wrapper gọi trực tiếp thư viện C++, fastText4j là bản cài đặt nguyên sạch bằng Kotlin/Java, giúp dự án dễ dàng triển khai trên môi trường JVM mà không cần phụ thuộc hệ thống phức tạp. Đặc biệt, khả năng tương thích trực tiếp với mô hình C++ gốc giúp người dùng tận dụng ngay các mô hình đã được huấn luyện mà không cần đào tạo lại.

Phù hợp với các ứng dụng xử lý ngôn ngữ tự nhiên trên nền tảng Java/Kotlin như phân loại tin tức, chatbot, tìm kiếm ngữ nghĩa, hoặc khai thác kiến thức từ mô hình ngôn ngữ lớn.


#FastText #Kotlin #Java #WordEmbeddings #TiniX

Similar Projects

Discover other similar projects and AI models.

RepositoryPython
PrashantRanjan09/WordEmbeddings-Elmo-Fasttext-Word2Vec

Using pre trained word embeddings (Fasttext, Word2Vec)

157
Jun 19, 2018
RepositoryKotlin
lysine-dev/okhttp

A meticulous HTTP client for the JVM, Android, and GraalVM.

47.1k
Oct 22, 2026
RepositoryJava
yuliskov/SmartTube

Browse media content with your own rules on Android TV

35.6k
Oct 26, 2026
RepositoryKotlin
square/leakcanary

A memory leak detection library for Android.

30.0k
Oct 21, 2026
RepositoryPython
duoergun0729/nlp

兜哥出品 <一本开源的NLP入门书籍>

2.5k
Jan 6, 2025
RepositoryJavaScript
loretoparisi/fasttext.js

FastText for Node.js

200
Feb 24, 2026
RepositoryJavaScript
loretoparisi/fasttext.js

FastText for Node.js

200
Feb 24, 2026
RepositoryPython
giacbrd/ShallowLearn

An experiment about re-implementing supervised learning models based on shallow neural network approaches (e.g. fastText) with some additional exclusive features and nice API. Written in Python and fully compatible with Scikit-learn.

198
Aug 8, 2017
RepositoryPython
Andras7/word2vec-pytorch

Extremely simple and fast word2vec implementation with Negative Sampling + Sub-sampling

191
Jan 21, 2021