Gán nhãn từ loại (Part-of-Speech tagging POS)

Tagging problem
Tagging problem

Trong nhiều tác vụ của Xử lý ngôn ngữ tự nhiên (XLNNTN), ta mong muốn xây dựng được một mô hình mà chuỗi các quan sát đầu vào (từ, ngữ, câu,…) đi kèm với chuỗi các nhãn đầu ra (từ loại, ranh giới ngữ, tên thực thể,…) gọi là pairs of sequences.

Gán nhãn từ loại (Part-of-speech tagging – POS) có lẽ là bài toán sớm nhất được nghiên cứu và được mọi người biết đến khi nhập môn chuyên ngành XLNNTN. Trong bài viết này, ta sẽ tìm hiểu về bài toán gán nhãn từ loại, các hướng tiếp cận và thuật toán cơ bản để giải quyết vấn đề này.

Continue reading “Gán nhãn từ loại (Part-of-Speech tagging POS)”

Language Modeling là gì

Language model
Language model

Trong bài viết này, ta sẽ tìm hiểu thế nào là một mô hình ngôn ngữ (language modeling). Làm sao để xây dựng được một mô hình ngôn ngữ từ tập các mẫu câu của một ngôn ngữ bất kỳ (Anh, Việt, Nhật, …). Mô hình ngôn ngữ ban đầu được ứng dụng trong nhận dạng tiếng nói (speech recognition) và đã được áp dụng vào trong những tác vụ khác liên quan trong lĩnh vực Xử lý ngôn ngữ tự nhiên (Natural Language Processing – NLP) như gán nhãn từ loại (tagging), phân tích cây cú pháp (parsing), dịch máy (machine translation), …

Tại sao chúng ta cần mô hình ngôn ngữ? Lý do thứ nhất, mô hình này cung cấp cho bạn thông tin về phân bố xác suất tiền nghiệm (prior distribution) p(x_1...x_n) để xét xem câu gồm các từ đầu vào có phù hợp hay không với ngôn ngữ xác định. Ví dụ, ta sẽ có xác suất của câu p(toi \ nay \ duoc \ di \ choi \ roi \ vui \ qua) > p(qua \ roi \ vui \ di \ choi \ toi \ nay \ duoc) nhờ vậy mà ta xác định được câu “tối nay được đi chơi rồi vui quá” sẽ phù hợp hơn với ngôn ngữ tiếng Việt hơn câu hai “quá rồi vui đi chơi tối”. Thứ hai, các kĩ thuật liên quan đến ước lượng tham số cho mô hình thông qua tập dữ liệu huấn luyện cho trước được sử dụng trong các mô hình khác như Hidden Markov Model, Natural Language Parsing. Và cuối cùng, đây là một trong những cơ sở kiến thức để các bạn đọc hiểu được các bài viết liên quan đến Long short-term memory (LSTM).

Continue reading “Language Modeling là gì”

Các bước phân tích dữ liệu

Các bước phân tích dữ liệu

Trong quá khứ, khi bắt đầu nghiên cứu một vấn đề nào đó, ta thường phải tìm kiếm hay thu thập dữ liệu tương ứng với bài toán mà ta đề ra. Nhờ có tiến bộ của internet mà ngày nay ta được tiếp cận với nhiều thông tin hơn, đến nỗi quá nhiều, quá Big khiến cho vấn đề không còn nằm ở chỗ thiếu thông tin nữa mà là làm sao rút trích được những thông tin hữu ích và súc tích nhất cho câu hỏi ban đầu.

Khi đó ta thường đối mặt với những thách thức về dữ liệu như:

  • Làm sao tìm được dữ liệu cho bài toán của mình?
  • Phân tích dữ liệu thu thập được như thế nào?
  • Sau khi phân tích, ta có thể đưa ra được kết luận thú vị nào không cho bài toán đề ra?

Mặc dù mỗi lĩnh vực nghiên cứu khác nhau sẽ có những đòi hỏi và mục tiêu khác nhau, nhưng nhìn chung, ta có thể áp dụng cùng một phương pháp hữu ích như tôi sắp trình bày bên dưới để có thể tiến hành một quy trình phân tích dữ liệu thành công.

Continue reading “Các bước phân tích dữ liệu”

Ý nghĩa của việc học

Universal
Universal

Tôi xin dành ra mục này để tổng hợp lại những phát biểu nói lên ý nghĩa của việc học. Từ đó, hy vọng chúng ta sẽ có thêm động lực để trao dồi thêm nhiều kiến thức và thực hiện nghiên cứu hằng ngày.

work hard
work hard

Được đi học chắc chắn là đỡ cực nhọc hơn rất nhiều so với việc “kiếm sống”. Quan trọng hơn, khi có kiến thức, bạn mới cảm thấy “cuộc sống này có nhiều điều tốt đẹp” và “đáng sống”.

Một nghề thì sống đống nghề thì chết.

thinker vs doer
thinker vs doer

Xã hội không dùng được kiến thức trong đầu chúng ta, chỉ khi nào ta biến kiến thức đó thành sản phẩm dùng được thì khi đó kiến thức mới thực sự có giá trị.

Học mà không hành thì học vô ích, hành mà không học thì hành không trôi chảy

Tự học là thuộc tính của trí tuệ gắn liền với bản năng sinh tồn

Stupid vs Smart
Stupid vs Smart

Tri thức tự nó là sức mạnh

Người thích tự học thường có lối sống theo lý tính hơn là sống theo cảm tính vốn thường gắn liền với các bản năng; họ nhận ra được cái giá trị của đời sống tinh thần.

Người trí thì vui, người nhân từ thì sống lâu.

Ai có khả năng tự học thường tự tin, tri túc và tự trọng.

Người tự học vì nhu cầu trí tuệ biết tự đánh giá mình nên tự chủ, dễ nhận ra rằng “càng học càng thấy mình dốt” cho nên thường khiêm tốn.

Kẻ nào không phấn phát tìm hiểu thì ta không giảng cho, không ráng lên để phát biểu ý kiến thì ta không khai phát cho, ta nêu ra một góc cạnh (của vấn đề) mà không tự suy nghĩ tìm ra ba góc kia, thì ta không dạy cho nữa. Cần trở nên năng động , sáng tạo , không ỷ lại, không phụ thuộc vào người khác

The research cycle
The research cycle

Tự học là một công việc gian khổ , đòi hỏi lòng quyết tâm và sự kiên trì .Càng cố gắng tự học con người càng trau dồi được nhân cách và tri thức của mình .Chính vì vậy tự học là một việc làm độc lập gian khổ mà không ai có thể học hộ ,học giúp. Bù lại, phần thưởng của tự học thật xứng đáng : đó là niềm vui, niềm hạnh phúc khi ta chiếm lĩnh được tri thức. Biết bao những con người nhờ tự học mà tên tuổi của họ được tạc vào lịch sử

Học tập những trải nghiệm từ sách để trở thành một người vững vàng, có tầm hiểu biết và dễ dàng vượt qua những thử thách trong cuộc sống tương lai, khi đã bước vào tuổi trưởng thành.

be patient
be patient

Có thể bạn đi sau, đi chậm hơn bạn bè nhưng không sao cả, quan trọng là cái đích bạn hướng tới. Can đảm lên bạn nhé

Bạn vẫn còn tương lai đang rộng mở ở phía trước, ánh mắt cha mẹ đang mong ngóng thành công của chính bạn và cho cuộc sống của đất nước sau này.

Machine Learning cho người bắt đầu

Bắt đầu học Machine Learning

Những bạn yêu thích Machine Learning và không biết mình nên bắt đầu từ đâu có thể tham khảo bài viết này. Mọi câu hỏi, các bạn có thể comment bên dưới, mình luôn sẵn sàng ở đây để hỗ trợ.

Khởi động

Bạn cần làm quen với một vài điểm cơ bản để bắt đầu cuộc hành trình của mình.

Machine learning là gì

Tại sao cần Machine learning

AI, Machine Learning, Deep Learning phân biệt như thế nào cho đúng

Kĩ năng phân tích dữ liệu

Bạn cần học và thực hành tiến trình áp dụng machine learning vào bài toán cụ thể. Chuẩn bị dữ liệu > Huấn luyện > Đánh giá và lựa chọn mô hình.

Cách xác định bài toán trong Machine Learning

Tiền xử lý dữ liệu (Horse Colic dataset)

Lấy và làm sạch dữ liệu: Xử lý dữ liệu ngoại lai (Outliers)

Đánh giá mô hình (Model evaluation)

Big data

Một vài kiến thức và kĩ năng giúp bạn bắt đầu làm việc với Big Data.

Bắt đầu Big Data từ đâu và như thế nào?

FAQ: Big data cho người mới bắt đầu

Làm việc với Spark DataFrames – Truy vấn cơ bản

Kỹ năng hệ thống

Bạn cũng nên chuẩn bị cho mình phương pháp quản lý dự án và thao tác nhanh với hệ thống.

Git notes

Command line thường dùng

Soạn slides bằng Beamer

Viết luận văn bằng LaTeX

Continue reading “Machine Learning cho người bắt đầu”

Làm việc với Spark DataFrames – Truy vấn cơ bản

Spark DataFrames
Spark DataFrames

DataFrame là một kiểu dữ liệu collection phân tán, được tổ chức thành các cột được đặt tên. Về mặt khái niệm, nó tương đương với các bảng quan hệ (relational tables) đi kèm với các kỹ thuật tối ưu tính toán.

DataFrame có thể được xây dựng từ nhiều nguồn dữ liệu khác nhau như Hive table, các file dữ liệu có cấu trúc hay bán cấu trúc (csv, json), các hệ cơ sở dữ liệu phổ biến (MySQL, MongoDB, Cassandra), hoặc RDDs hiện hành. API này được thiết kế cho các ứng dụng Big Data và Data Science hiện đại. Kiểu dữ liệu này được lấy cảm hứng từ DataFrame trong Lập trình R và Pandas trong Python hứa hẹn mang lại hiệu suất tính toán cao hơn.

Spark DataFrames Performance
Spark DataFrames Performance

Trong bài viết này, tôi sẽ tiến hành thực nghiệm một vài truy vấn cơ bản để làm quen với kiểu dữ liệu DataFrames. Ở các bài viết sau, ta sẽ đi sâu hơn vào các truy vấn nâng cao và phức tạp hơn.

Continue reading “Làm việc với Spark DataFrames – Truy vấn cơ bản”

Kinh nghiệm làm việc với Big Data

Working with Big Data
Working with Big Data

Đã bao giờ bạn cảm thấy quá tải khi làm việc với Big Data chưa? Đã bao giờ bạn phải ngồi hàng giờ chỉ để transfer dữ liệu từ server này sang server khác chỉ để test thuật toán của mình? Hay những lúc chán chường khi nhìn script của mình bắt đầu chạy hàng giờ và cuối cùng phát hiện ra mình đã sai đâu đó? Mình nghĩ rằng tất cả những ai khi mới bắt đầu làm việc với Big Data đều có những cảm nhận như vậy. Trong bài viết này, tôi xin góp một chút kinh nghiệm của mình để làm việc với Big Data hiệu quả hơn, kể cả cá nhân hay làm việc nhóm.

Continue reading “Kinh nghiệm làm việc với Big Data”

Machine Learning và Real-Time Bidding

Real-Time Bidding
Real-Time Bidding

Real-Time Bidding (RTB) tạm dịch là “Đấu gía thời gian thực”. RTB là việc mua bán lượt hiển thị quảng cáo online thông qua cơ chế thời gian thực xảy ra vào lúc trang web đang tải. Những cuộc đấu giá diễn ra dễ dàng hơn bởi ad exchange, demand-side platforms và supply-side platforms (SSP).

RTB khác với các mô hình quảng cáo truyền thống như thế nào? Tại sao chúng ta cần RTB? RTB mang lại lợi ích gì cho các trang mạng (publishers) và các nhà quảng cáo (advertisers)? Machine learning áp dụng vào các hệ thống RTB như thế nào? Qua bài viết này, tôi sẽ trả lời các câu hỏi trên cũng như trình bày những thách thức về Big Data trong RTB và tình hình nghiên cứu hiện nay của Machine Learning vào RTB. Continue reading “Machine Learning và Real-Time Bidding”

Dành cho các bạn sắp bước chân vào lĩnh vực Công nghệ thông tin

project_manager

Bài viết này dành cho những bạn sắp bước chân vào lĩnh vực Công nghệ thông tin, hay những bạn còn đang phân vân về chuyên ngành mà mình sẽ chọn trước khi bước vào năm 3 Đại học. Đối với các bạn còn ở phổ thông, có lẽ các bạn còn mơ hồ về lĩnh vực này, nhiều bạn tưởng tượng mình sẽ học thêm về word, excel, hay sửa chữa, lắp ráp máy tính, chỉnh sửa ảnh photoshop, làm game, làm web này nọ hay cao siêu hơn là làm hacker như những phim hành động bạn thường xem và người nhà của bạn cũng nghĩ như vậy.

Trong khi đó, các bạn năm nhất ít nhiều cũng sẽ đọc được các comment hay bài viết đại loại như học khoa học máy tính là đi bán sách dạo, hệ thống thông tin thì sau này chỉ đi nhập dữ liệu, kĩ thuật phần mềm thì chỉ có mở tiệm bán đĩa CD, mạng máy tính thì đi cắt dây điện hay mở tiệm net, đọc xong nhiều bạn sẽ có suy nghĩ có lẽ khỏi đi học thì hơn.

Ngoài ra, ắt hẳn nhiều bạn sẽ đọc được bài viết thần thánh “Lập Trình Viên Không Có Gì Cao Sang”, đây là bài viết rất dễ khiến bạn nản lòng và thoái chí. Còn lỡ đọc được cuốn sách “Dạy con làm giàu” thì các bạn cũng đừng quá ảo tưởng mà đánh mất chính mình và hoài bão ban đầu khi đã quyết định dấn thân vào IT. Hãy luôn giữ vững lập trường.

Do vậy, mình sẽ liệt kê ra tất cả những ngành học mà các bạn sẽ bắt gặp khi bước chân vào lĩnh vực IT thông qua việc so sánh giữa một suy nghĩ còn non nớt (trẻ trâu) và một suy nghĩ đã từng trải. Thêm vào đó, mình chân thành đưa ra một vài lời khuyên như sau:

  • Đừng sợ coding vì nó là một phần sự nghiệp của bạn, dù có né tránh cũng không được, hãy tập “yêu” việc coding.
  • Đừng sợ và chán ghét toán học vì nó là một phần kĩ năng của bạn, nếu càng cố gắng né trành thì chỉ càng thêm hối hận về sau mà thôi.
  • Hãy đi “học ké” nhiều lớp không thuộc chuyên ngành của mình để mở mang kiến thức và tầm nhìn của mình về thực trạng cũng như xu hướng hiện tại trong ngành. Nếu bạn đang học kĩ thuật phần mềm thì bạn có thể học ké thêm về hệ thống thông tin (thiết kế, truy vấn, và xử lý cơ sở dữ liệu), mạng máy tính (bảo mật, cài đặt, quản trị hệ thống mạng), hay khoa học máy tính (trí tuệ nhân tạo, machine learning, computer vision, natural language processing). Từ đó, bạn có thể tạo ra những ứng dụng phần mềm chất lượng cao, chạy ổn định, cũng như có nhiều nội dung AI trong đó.
  • Nếu muốn học lên cao học (thạc sĩ, tiến sĩ) hay theo đuổi sự nghiệp nghiên cứu, thì các bạn nên học kĩ về toán và AI vì các kì thi đầu vào lúc nào cũng đụng đến hai môn này.
  • Nếu có dự định startup thì hãy khai thác thị trường trong nước, xem quê nhà mình cần giải quyết gì để startup theo hướng đó. Đừng mơ mọng, ảo tưởng về nước Mĩ nữa.

Continue reading “Dành cho các bạn sắp bước chân vào lĩnh vực Công nghệ thông tin”

Giới thiệu các công cụ Xử lý ngôn ngữ tự nhiên

NLP tools
NLP tools

Nếu bạn đang làm việc và nghiên cứu trên ngôn ngữ tiếng Anh thì ta có thể sử dụng các thư viện/module NLP của Python được liệt kê bên dưới. Mục đích của bài viết này được dùng để liệt kê những thư viện/module và những chức năng hữu ích trong NLP. Các bạn có thể tham khảo danh sách các thuật ngữ liên quan đến các chức năng ở bài viết này.

Continue reading “Giới thiệu các công cụ Xử lý ngôn ngữ tự nhiên”

Các thuật ngữ trong Xử lý ngôn ngữ tự nhiên

Natural Language Processing
Natural Language Processing

Vai trò của Xử lý ngôn ngữ tự nhiên-XLNNTN (Natural Language Processing-NLP) trong khai thác Big Data là không thể phủ nhận trong bối cảnh phát triển của doanh nghiệp hiện nay. Đối với ngôn ngữ tiếng Anh, ta đã được kế thừa nhiều tri thức cũng như nhiều công cụ có sẵn để áp dụng ngay vào thực tiễn. Tuy nhiên, đối với ngôn ngữ tiếng Việt, ta vẫn còn gặp nhiều khó khăn (nhân sự có chuyên môn còn hạn chế, ngữ liệu để huấn luyện chưa đủ lớn) bên cạnh những cơ hội rất lớn (thị trường Việt Nam chưa được khai thác) cho những ai đam mê lĩnh vực này.

Vì vậy, trong bài viết này, tôi xin lập ra danh sách các thuật ngữ thường gặp trong NLP để tiện tham khảo cũng như giúp cho những bạn mới bắt đầu có thể nhanh chóng tra cứu sơ để tiến hành nghiên cứu ngay các tài liệu khoa học. Bài viết sẽ luôn được cập nhật. Nếu có các thuật ngữ chưa rõ, các bạn có thể comment để chúng ta tiếp tục mở rộng thêm danh sách này.

Continue reading “Các thuật ngữ trong Xử lý ngôn ngữ tự nhiên”

Lấy và làm sạch dữ liệu: Xử lý dữ liệu ngoại lai (Outliers)

Outlier
Outlier

Các phần tử ngoại lai (Outliers hay anomalies) có ảnh hưởng lớn đến độ chính xác của các mô hình dự đoán. Phát hiện và xử lý các điểm ngoại lai là một bước quan trọng trong quá trình chuẩn bị dữ liệu cho mô hình dự đoán. Trong bài viết này, ta sẽ tìm hiểu thế nào là điểm ngoại lai trong thống kê cũng như liệt kê một số phương pháp để xử lý các điểm dữ liệu này.

Continue reading “Lấy và làm sạch dữ liệu: Xử lý dữ liệu ngoại lai (Outliers)”

Danh sách Deep Learning Tools nổi bật

torch
torch

Deep Learning đang là chủ đề “hot” trong ngành Trí tuệ nhân tạo và Machine learning với nhiều thành tựu đạt được trong thời gian qua. Như chủ trương của blog này, từ thực nghiệm, quan sát và đánh giá ta sẽ có thêm kĩ năng làm việc cũng như thấu hiểu hơn về mô hình Deep Learning. Trong bài viết này, tôi mượn kết quả khảo sát của KDnuggets Software Poll (2015) để liệt kê ra danh sách Deep Learning Tools nổi bật nhất.

  • Pylearn2 (55 users)
  • Theano (50)
  • Caffe (29)
  • Torch (27)
  • Cuda-convnet (17)
  • Deeplearning4j (12)
  • Other Deep Learning Tools (106)

Danh sách trên, có một vài công cụ tôi chưa sử dụng qua. Tuy nhiên, tôi sẽ cố gắng tổng hợp lại thông tin dựa trên trang chủ mà họ cung cấp.

Continue reading “Danh sách Deep Learning Tools nổi bật”

Trải nghiệm tập dữ liệu Big Data ở đâu

repository
repository

Nếu bạn đang là một newbie và có mong muốn trang bị cho mình một chút kinh nghiệm về xử lý Big Data để có thể theo đuổi sự nghiệp như một data scientist thì bạn sẽ đặt câu hỏi đầu tiên đó là “Lấy dữ liệu Big Data ở đâu để mà thực tập?”.

Hiện nay, bạn không cần phải là một thành viên của một công ty hay tổ chức nào để được quyền truy xuất vào tập dữ liệu Big Data của họ. Đã có nhiều tập dữ liệu Big Data được public ra công chúng cho các nhà nghiên cứu làm phân tích và xử lý thông tin trực tiếp mà không đòi hỏi bất kỳ quyền hạn nào. Dưới đây, tôi xin liệt kê danh sách các nguồn dữ liệu Big Data mà bạn có thể download về.

  1. KDNuggets repository
  2. Data.gov 
  3. US Census Bureau 
  4. European Union Open Data Portal 
  5. Data.gov.uk 
  6. The CIA World Factbook 
  7. Healthdata.gov 
  8. NHS Health and Social Care Information Centre 
  9. Amazon Web Services public datasets 
  10. Facebook Graph 
  11. Gapminder 
  12. Google Trends 
  13. Google Finance 
  14. Google Books Ngrams 
  15. National Climatic Data Center 
  16. DBPedia 
  17. Topsy 
  18. Likebutton 
  19. New York Times 
  20. Freebase 
  21. Million Song Data Set 

Tham khảo thêm:

Soạn slides bằng Beamer

latex beamer
latex beamer

Ngoài chức năng soạn thảo văn bản, LaTex còn có Beamer là một định dạng dùng để soạn slide trình chiếu. Do đặc thù của báo cáo khoa học là chú trọng nội dung và kết quả nghiên cứu hơn là trình chiếu animation sinh động như thường được thấy tại các buổi triễn lãm bán hàng. Beamer hướng đến sự đơn giản trong cách dàn trang cũng như tập trung nhiều vào việc hiển thị các công thức toán và bảng biểu. Trong bài viết này, tôi xin chia sẻ cấu trúc một slide trình chiếu đơn giản sử dụng định dạng Beamer của LaTeX.

Github: https://github.com/ongxuanhong/latex-thesis-template

Continue reading “Soạn slides bằng Beamer”

Viết luận văn bằng LaTeX

latex vs word
latex vs word

LaTeX là một công cụ được khuyến nghị để viết luận văn và các bài báo khoa học. Do có cơ chế quản lý nội dung văn bản mạnh mẽ, hỗ trợ đầy đủ việc hiển thị các biểu thức toán học, cộng với rất nhiều thư viện đi kèm để vẽ biểu đồ và đồ thị dạng vector nên LaTeX được các nhà khoa học trên thế giới sử dụng.

Nếu bạn đang sử dụng Word để soạn thảo luận văn, có lẽ bạn đang mất rất nhiều thời gian và công sức để canh chỉnh từng li từng tí các dòng. Trong khi nội dung các chương ngày càng nhiều và phức tạp, bạn cảm thấy mọi thứ trở nên quá rối rắm. Lúc này, LaTeX chính là công cụ cứu cánh cho bạn. Trong bài viết này, tôi xin chia sẻ cấu trúc cơ bản nhất gồm các file và folder cần thiết để tiến hành viết và quản lý luận văn bằng LaTeX.

Github: https://github.com/ongxuanhong/LaTeX-thesis-template

Continue reading “Viết luận văn bằng LaTeX”

Kinh nghiệm viết luận văn

writting thesis
writting thesis

Bài viết này nhắm đến đối tượng là những bạn sinh viên sẽ và đang viết luận văn tốt nghiệp. Cũng như các bạn sinh viên khác, khi tìm kiếm các hướng dẫn về viết luận văn, đa số các bài viết chỉ trình bày các thủ tục, lý do, mục đích và định dạng luận văn như thế nào. Tuy nhiên, những gì tôi tìm kiếm là những kinh nghiệm thực tế trong quá trình viết luận văn. Do vậy, trong bài viết này, tôi xin chia sẻ với mọi người một vài kinh nghiệm mà tôi đã góp nhặt được khi viết luận văn tốt nghiệp.

Github: https://github.com/ongxuanhong/latex-thesis-template

Continue reading “Kinh nghiệm viết luận văn”

Git notes

git
git

Git là phần mềm dùng để quản lý và kiểm tra các phiên bản khác nhau trong quá trình phát triển mã nguồn. Tôi thường sử dụng Git để quản lý code cũng như để hoàn thành luận văn gần đây của mình. Trong bài viết này, tôi xin tổng hợp lại ghi chú các thao tác lệnh thường dùng trong Git.

Continue reading “Git notes”

Cài đặt Neural Network với Python

Neural Network
Neural Network

Trong bài viết này, tôi sẽ hướng dẫn mọi người cài đặt mô hình mạng nơ-ron đơn giản với ngôn ngữ lập trình Python. Tôi giả định mọi người đã biết sơ qua các khái niệm cơ bản về giải tích cũng như machine learning (thế nào là classification, regularization, tại sao sử dụng gradient descent để tối thiểu hóa độ lỗi, …).

Việc cài đặt lại Neural Network từ đầu sẽ giúp cho chúng ta hiểu được mô hình này hoạt động như thế nào. Từ đó, ta có thể mở rộng ra các mô hình tiên tiến hơn như Deep learning trong các bài viết sắp tới. Ngoài ra, khi áp dụng vào các dự án thực tế, ta có thể sử dụng các thư viện như Theano hay PyBrain để tăng tốc độ xử lý cũng như tiết kiệm thời gian cài đặt.

Notebooks: ann.

Lập trình Spark với Scala

stackoverflow
stackoverflow

Với chế độ cài đặt Standalone, Spark có thể xử lý được một tập dữ liệu khổng lồ dù cho bạn đang sử dụng một chiếc laptop có RAM chỉ khoảng 4-8GB. Trong bài viết này, tôi sẽ hướng dẫn mọi người lập trình Spark với Scala.

Cho trước tập dữ liệu là các bài post trên stackoverflow.com, nhiệm vụ của chúng ta là xây dựng một mô hình phân lớp để dự đoán xem câu hỏi của user khi post lên thuộc nhóm nào, nhờ vậy mà trang web có thể đưa ra những tags gợi ý thông minh hơn cho user.

Continue reading “Lập trình Spark với Scala”