Truy vấn văn bản – Document Retrieval

wikipedia

Giả sử bạn đang đọc một bài viết nào đó, hệ thống truy vấn văn bản sẽ giúp bạn tìm kiếm những bài viết tương tự như bài viết của bạn đang đọc. Vậy làm sao ta có thể tính được độ tương tự giữa các văn bản để tìm kiếm trong vô số các tài liệu có sẵn, tỷ lệ giống nhau về nội dung của các văn bản là bao nhiêu?

Trong bài viết này, ta sẽ sử dụng tập văn bản liên quan đến những người nổi tiếng download từ wikipedia (file csv đã xử lý có thể download ở đây) để xây dựng hệ thống truy vấn văn bản dựa trên nội dung đang đọc.

Tiếp tục đọc

Hệ thống recommend bài nhạc

iTunes

Một trong những công nghệ giúp cho đời sống con người ngày càng dễ dàng hơn đó là recommender system. Recommender system giúp kết nối người dùng với sản phẩm mà họ tìm kiếm được thuận tiện và nhanh chóng hơn từ đó mang lại lợi thế cạnh tranh của sản phẩm so với các đối thủ khác. Bạn có thể bắt gặp hệ thống này ở các trang xem phim, nghe nhạc, mua bán, mạng xã hội, … Về cơ bản, bạn có thể áp dụng ngay kỹ thuật này vào hệ thống của bạn thông qua các hướng tiếp cận như: Popularity – liệt kê top các sản phẩm được nhiều người quan tâm nhất, Classification – dựa vào các chủ đề mà bạn cung cấp để lọc ra danh sách sản phẩm tương ứng. Tuy nhiên, các hướng tiếp cận này đều mang tính đại chúng, không nhắm vào một cá nhân cụ thể nào. Hơn nữa, không ai dễ dàng cung cấp thông tin cá nhân cho ứng dụng của bạn để có thể lọc thông tin phù hợp.

Do đó, trong bài viết này, tôi sẽ đi theo hướng tiếp cận Collaborative Filtering với hai phương pháp gồm Memory-Based Collaborative Filtering và Model-Based Collaborative filtering giúp trả lời hai câu hỏi “user nghe bài nhạc này thì sẽ có xu hướng nghe các bài như…” và “user có gu âm nhạc như bạn thì sẽ có xu hướng nghe các bài nhạc như…”. Trong đó, Model-Based sẽ sử dụng singular value decomposition (SVD) và Memory-Based sử dụng khoảng cách cosine để mô hình hóa hệ thống. Bạn có thể download dữ liệu từ đây Million Song Dataset Challenge.

Source code: Github.

Tiếp tục đọc

TensorFlow – thư viện code Deep Learning

tensorboard

Bài viết này không nhằm vào hướng dẫn lập trình TensorFlow. Lý do, các bạn có thể tìm thấy nhiều source code hướng dẫn khác nhau trên internet, tự cài đặt và lập trình dễ dàng. Nếu các bạn đã có kiến thức cơ bản về Neural Network thì việc nắm bắt công nghệ này cũng sẽ đơn giản hơn rất nhiều.

Thông thường, ta sẽ đi theo flow nghiên cứu sau: vào trang https://www.tensorflow.org/ để xem qua bài giới thiệu chung chung, sau đó tiến hành cài đặt, cài đặt thất bại do conflict thư viện, cài đặt thành công, đọc source code, cài đặt thuật toán từ các tutorial, hiểu sơ sơ, bắt đầu hoang mang do có quá nhiều bài viết cần đọc và cài đặt -> mất hết cảm hứng.

Do đó, mình sẽ hướng các bạn đi theo một tiếp cận khác. Đầu tiên, ta sẽ lấy cảm hứng nghiên cứu thông qua các ứng dụng ngoài thực tế, người thật việc thật của TensorFlow. Tiếp đến, ta sẽ xem mọi người đánh giá như thế nào về mã nguồn này, có đáng để ta tiếp tục nghiên cứu không. Sau cùng, ta sẽ bắt tay vào tiến hành cài đặt và ứng dụng công nghệ cùng với các tài liệu tham khảo chất lượng đã thu thập được.

Tiếp tục đọc