Chia sẻ Ý tưởng lập trình ứng dụng di động

Chào mọi người. Hiện tại ở trường mình đang học môn Lập trình trí tuệ nhân tạo. Ngoài ra mình cũng tìm hiểu về lập trình android. Mình muốn làm 1 ứng dụng liên quan đến AI. Chức năng chính là giao tiếp với user. Giống như Contana,Siri, google now… Ứng dụng của mình dạng ứng dụng chat với AI.
VD :
USER : Hello, I’m Duong.
AI : Hi, Duong. How are you?
USER : Great. Thank you!
AI : What can I help you?

Có nghĩa là ứng dụng sẽ tự động trả lời tin nhắn với user.

Mình mới có ý tưởng như vậy. Hiện chưa biết cần phải tìm hiểu những lĩnh vực gì hay kiến thức gì để tạo ra một app hoàn chỉnh như vậy. Android cơ bản thì mình cũng đã nắm được. Mong nhận được sự giúp đỡ từ mọi người.
Mình xin cám ơn!

1 Like

giống simsimi ấy nhỹ

ừm. đúng rồi. Để làm được như vậy thì phải tìm hiểu những cái gì vậy?

kaka mình thấy bạn nói giống cái đó thôi… chứ AI mình chưa đùng vào =))=))

Mình nghĩ ứng dụng của bạn khác Simsimi ở chỗ, Simsimi là trả lời ngẫu nhiên dựa trên từ điển có sẵn và “tự học” từ câu chat của người dùng. Khi bạn chat với Simsimi thì nội dung chat của bạn sẽ được lưu lại và nó sẽ dùng chính câu chat của bạn để trả lời cho người dùng khác.

Nếu mục đích của bạn tạo ra một robo chat giống Siri, GGnow thì hơi phức tạp.

Như 1 đoạn ví dụ của bạn. Có thể thấy rất nhiều điều. Như cách để xác định đâu là câu trả lời chứa tên người dùng, làm thế nào để ứng dụng hiểu người dùng đang yêu cầu vấn đề gì.

Giả dụ

  • What can i help you, Duong?
  • What time is it?
  • “Xuất ra thời gian hiện tại”
  • Weather?
    -“Xuất ra thời tiết hôm nay sau đó hỏi tiếp”
  • Do you want know weather at next day, Duong? Let’s say Yes or No

Bạn có thể thấy được bản thân ứng dụng sẽ cần dữ liệu thông tin thời gian thực hiện tại, thời tiết trong tuần. Những thứ rất dơn giản hằng ngày :slight_smile:

Bạn cứ đặt ra câu hỏi và câu trả lời, sau đó phân tích xem mình cần những dữ liệu gì để xây dựng cơ sở dữ liệu phù hợp.

Với dạng robo chat, từ điển là rất quang trọng, nó là công cụ giúp robo chat hiểu được câu hỏi của người dùng một cách chính xác, bạn có thể xây dựng nó dưới dạng “từ khóa” để dễ dàng khai thác. Đôi khi người dùng sẽ hỏi những câu hỏi không đúng ngữ pháp, với dạng “từ khóa” sẽ rất dễ loại bỏ lỗi sai ngữ pháp và trả về kết quả chính xác nhất.

Ví dụ

Weather now!
“Ứng dụng sẽ dựa vào " từ khóa” weather để tìm kiếm trên CSDL, sau đó sẽ tiếp tục với “từ khóa” dạng thời gian là Now để đưa ra thời tiết hiện tại, thay vì hiển thị 1 loạt thời tiết của cả tuần hoặc vài giờ trước.

Quay trở lại màn chào hỏi. Giả dụ mình sẽ viết như sau:

Hi, I’m student!

Robochat của bạn sẽ trả lời như thế nào? Đây là vấn đề :grin: Liệu robochat của bạn có trả lời là “Hi, Student!” không?

1 Like

Cám ơn ý kiến của bạn. Nếu như vậy có nghĩa là mình sẽ phải thu thập dữ liệu người dùng chat với bot của mình. rồi phân tích dựa trên từ khóa và trả lời cũng như thêm vào từ điển dữ liệu. Như vậy ban đầu thì mình nên bắt đầu từ đâu?

1 Like

Xây dựng cơ sở dữ liệu đơn giản trước, bắt tay vào làm ứng dụng. Trước mắt chỉ để ứng dụng hoạt động với vài câu hỏi đơn giản trước đã. Như chào hỏi, hỏi tên người dùng, hỏi tuổi, vậy là được rồi. Sau đó mình mới nghiên cứu phát triển tính năng thông minh hơn.

1 Like

Mình không làm về bên này nên cũng không nắm rõ về kỹ thuật :sweat_smile:, nhưng bạn có thể tìm với từ khóa “NLP question answering system”, hoặc xem khóa học này https://class.coursera.org/nlp/lecture/preview

1 Like

Có thể tìm hiểu về Semantic Network (Mạng ngữ nghĩa)

1 Like

cám ơn bạn rất nhiều !

cho mình tham khảo ngoài lề 1 tý,bạn đã bao giờ làm về các ứng dụng dạng quản lý nhiệm vụ,quản lý thời gian chưa,ví dụ như EVERNOTE,ANY.DO,hoặc giống như ứng dụng LỜI NHẮc trên APP STORE

nó cũng giống như cái báo thức thôi mà bạn

mình đang có ý tưởng làm một app như vậy chuyên dùng cho những người tập gym,ăn kiêng,hay đang trong chế độ chăm sóc sức khỏe,app sẽ nhắc về thời gian tập luyện ăn uống một cách phù hợp,nhưng mình chưa biết cách làm app

1 Like

android hay ios v ban?

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?