Tải bản đầy đủ (.doc) (32 trang)

Báo Cáo Thực Tập Doanh Nghiệp Đề Tài Trợ Lý Ảo Ai.doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.4 MB, 32 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
VÀ TRUYỀN THƠNG VIỆT - HÀN
KHOA KHOA HỌC MÁY TÍNH

BÁO CÁO THỰC TẬP
DOANH NGHIỆP
ĐỀ TÀI:

TRỢ LÝ ẢO AI


MỞ ĐẦU
Là một sinh viên năm 3 của Khoa Khoa Học Máy Tính – Trường Đại
Học Cơng Nghệ Thơng Tin và Truyền Thông Việt – Hàn. Em nhận thưc rõ tầm
quan trong cũng như sự cần thiết của thực tập doanh nghiệp.
Trong quá trình học tại trường, em đã được đào tạo về những kiến
thức cơ bản và chuyên sâu về cơng nghệ thơng tin cụ thể là lập trình. Sau khi
nhận thấy Công ty Global Design IT Co., Ltd là một cơng ty lớn, có uy tín về
lĩnh vực cơng nghệ thơng tin trong và ngồi nước, là một nơi có mơi trường
tốt để em thực tập tích lũy kinh nghiệm cho bản thân do đó em quyết định
chọn công ty làm nơi thực tập. Cho em rèn luyện các kỹ năng và củng cố kiến
thức của mình. Thực tập chính là cơ hội tốt cho em rèn luyện kỹ năng cũng
như vận dụng các kiến thức đã học được trong thời gian học tập tại tường
đại học. Bên cạnh đó, thực tập là khoảng thời gian quý báu để chúng em tiếp
cận và làm quen với môi trường làm việc chuyên nghiệp tại các công ty cũng
như năm bắt các kỹ năng cần thiết mà chúng em phải có để có được sự
chuyên nghiệp trong suy nghĩ cũng như hành động để chuẩn bị cho mỗi các
nhận một hành trang vững chắc bước vào cuộc sống đầy thử thách sau khi
rời ghế nhà trường. Hơn nữa thực tập còn là cơ hội tốt để cá nhận em khám
phá ra được những lợi thế của mình, từ đó định hướng chính xác hơn cho sự


nghiệp sau này, khai thác tốt hơn năng lực của bản thân.
Trong thời gian thực tập em đã nhận được sự giúp đỡ tận tình của các
anh chị trong team tại công ty Global Design IT Co., Ltd và sự hướng dẫn của
anh Bống Hòa Trung để em có thể hồn thành q trình thực tập và báo cáo
thực tập này.
Em xin chân thành cảm ơn!


LỜI CẢM ƠN

Là sinh viên năm 3 của Trường Đại Học Công Nghệ Thông Tin và Truyền Thông
Việt – Hàn. Em đã ý thức được việc phát triển bản thân, những kỹ năng và điều thiết
yếu trong quá trình làm đồ án. Tiếp thu và hoàn thiện những kỹ năng cịn thiếu trong
q trình đang học tập tại trường. Để có thể tạo ra những sản phẩm báo cáo hồn
thiện trong môn thực tập doanh nghiệp này.
Em xin gửi lời cảm ơn đến giảng viên Ngô Lê Quân – giảng viên hướng dẫn báo
cáo thực tập doanh nghiệp đã trang bị cho em những kiến thức, kỹ năng cơ bản cần
có để hồn thành đề tài này.
Tuy nhiên trong q trình nghiên cứu đề tài, do kiến thức chuyên ngành cịn
hạn chế nên em vẫn cịn nhiều thiếu sót khi tìm hiểu, đánh giá và trình bày về đề tài.
Rất mong nhận được sự quan tấm và góp ý của thầy/cô bộ môn để tài của em được
đầy đủ và hoàn chỉnh hơn.
Em xin chân thành cảm ơn!


MỤC LỤC
Trang
Chương 1 GIỚI THIỆU VỀ GLOBAL DESIGN IT Co., Ltd........................................1
1.1 Cơ quan thực tập......................................................................................1
1.2 Giới thiệu chung.......................................................................................1

1.3 Mục tiêu hoạt động..................................................................................2
1.4 Lĩnh vực hoạt động...................................................................................2
1.5 Các sản phẩm, phương án, giải pháp.......................................................3
Chương 2 NHỮNG VẤN ĐỀ TỒN ĐỌNG..............................................................5
2.1 Vấn đề khi đặt ra mục tiêu.......................................................................5
Chương 3 ĐỀ XUẤT GIẢI PHÁP CÔNG VIỆC.........................................................6
3.1 Giải pháp..................................................................................................6
3.2 Đề xuất phương pháp xây dựng...............................................................7
3.2.1 Ngơn ngữ lập trình Python................................................................7
3.2.2 Machine Learning..............................................................................8
3.2.3 Thư viện OpenCV...............................................................................8
3.3 Thực hiện sản phẩm.................................................................................9
3.3.1 Chức năng chuyển văn bản thành âm thanh.....................................9
3.3.2 Chức năng chuyển âm thanh thành văn bản...................................10
3.3.3 Chức năng giao tiếp, chào hỏi..........................................................12
3.3.4 Chức năng hiển thị thời gian............................................................13
3.3.5 Chức năng mở ứng dụng hệ thống, Google và tìm kiếm từ khóa....13
3.3.6 Chức năng xem dự báo thời tiết......................................................14
3.3.7 Chức năng nghe nhạc, xem video trên Youtube..............................16
3.3.8 Chức năng nhận dạng danh tính người dùng..................................16
3.3.8.1 Tạo cơ sở dữ liệu thông tin người dùng.......................................16
3.3.8.2 Huấn luyện tập dữ liệu thông tin người dùng..............................20
3.3.8.3 Nhận dạng người dùng qua khuôn mặt camera với bộ huấn luyện22
3.3.9 Sơ đồ code hoàn thiện.....................................................................22
Chương 4 KẾT QUẢ THỰC NGHIỆM..................................................................23
4.1 Kết quả...................................................................................................23
Chương 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN..................................................25
DANH MỤC TÀI LIỆU THAM KHẢO.......................................................................26



DANH MỤC HÌNH
Trang
Hình 1 Global Design IT Co., Ltd...........................................................................13
Hình 2 Sản phẩm Website Ban xúc tiền và Hỗ trợ đầu tư Đà Nẵng.....................15
Hình 3 Hệ thống GMS..........................................................................................15
Hình 4 Ứng dụng du lịch dành cho người nước ngồi.........................................16
Hình 5 Ứng dụng di lịch Global Design IT.............................................................16
Hình 6 Giải pháp Trợ Lý Ảo..................................................................................18
Hình 7 Ngơn ngữ lập trình Python.......................................................................19
Hình 8 Machine Learning.....................................................................................20
Hình 9 Chức năng chuyển văn bản thành âm thanh............................................22
Hình 10 Code thực hiện chuyển văn bản thành giọng nói...................................22
Hình 11 Sơ đồ q trình chuyển giọng nói thành văn bản...................................23
Hình 12 Code thực hiện chức năng chuyển giọng nói thành văn bản..................24
Hình 13 Chức năng giao tiếp................................................................................24
Hình 14 Code thực hiện chức năng lấy thời gian.................................................25
Hình 15 Chức năng mở ứng dụng, tìm kiếm........................................................25
Hình 16 Code thực hiện chức năng mở ứng dụng hệ thống................................26
Hình 17 Code thực hiện chức năng tìm kiếm.......................................................26
Hình 18 Code thực hiện chức năng tìm kiếm bằng Google..................................26
Hình 19 Chức năng xem thời tiết.........................................................................27
Hình 20 Code thực hiện chức năng xem thời tiết................................................28
Hình 21 Chức năng nhận dạng khn mặt...........................................................28
Hình 22 Thuật tốn huấn luyện bộ phân loại Haar Cascade................................29
Hình 23 Phát hiện khn mặt bằng Haar Cascade...............................................30
Hình 24 Code thực hiện chức năng lấy thơng tin người dùng.............................31
Hình 25 Sơ đồ thơng tin người dùng...................................................................31
Hình 26 Thơng tin ảnh của người dùng................................................................31
Hình 27 Chức năng trích chọn đặc trưng khn mặt LBP....................................32
Hình 28 Cách hoạt động của thuật tốn trích chọn đặc trưng LBP......................33

Hình 29 Code thực hiện chức năng huấn luyện ảnh............................................33
Hình 30 Code thực hiện chức năng nhận dạng....................................................34
Hình 31 Sơ đồ nhánh của hệ thống Trợ lý ảo.......................................................34
Hình 32 Giao diện chính của Trợ lý ảo.................................................................35
Hình 33 Thực hiện tìm kiếm bằng câu hỏi...........................................................35
Hình 34 Server bắt đầu khởi động hệ thống........................................................36


DANH MỤC CỤM TỪ VIẾT TẮT
STT
1
2
3
4
5
6
7
8
9
10

Cụm từ
Content Mamagement System
Bridge Software Engineer
Artificial Intelligence
GDIT Management System
Natural Language Processing
Application Programming Interface
Region of Interest
Histogram of Oriented Gradients

Local Binary Patterns Histograms
Local Binary Pattern

Viết tắt
CMS
BrSE
AI
GMS
NLP
API
ROI
HOG
LBPH
LBP


Chương 1

GIỚI THIỆU VỀ GLOBAL DESIGN IT Co., Ltd

1.1 Cơ quan thực tập
Tên Công ty: Global Design IT.
Tên Tiếng việt: Cơng ty TNHH MTV CNTT Thiết Kế Tồn Cầu.
Địa chỉ: Khu A, tầng 17, tịa nhà Cơng viên phần mềm, 02 Quang Trung,
Phường Thạch Thang, Quận Hải Châu, Thành Phố Đà Nẵng, Việt Nam.
Điện thoại: 0236.3868778.

Hình 1 Global Design IT Co., Ltd.

1.2 Giới thiệu chung

Công ty mẹ: Global Design
Công ty Global Design tại Nhật Bản được thành lập vào ngày 20 tháng 01
năm 1997. Cơng ty Global Design hiện có trụ sở chính tại Shizuoka Nhật Bản
và các văn phịng đại diện tại Tokyo, Yamanashi. Từ năm 2016, Công ty đã
đầu tư và thành lập Công ty Global Design IT tại TP. Đà Nẵng.
Thế mạnh nổi bật của Công ty Global Design là sản phẩm CMS (Hệ thống
quản lý nội dung) và thiết kế website thông tin, tin tức phục vụ cho các cơ
quan, đoàn thể Nhà nước tại Nhật Bản.
Thông tin liên hệ: GLOBAL DESIGN INC.
Địa chỉ: tầng 16, tịa nhà AOI, Shizuoka, Nhật Bản.
Website: />Cơng ty tại Việt Nam:
Công ty Global Design IT (GDIT) là Công ty 100% vốn đầu tư Nhật Bản,
được thành lập vào ngày 16 tháng 03 năm 2016. Công ty Global Design IT là
Công ty thành viên của Global Design Inc. (Nhật Bản).


1.3 Mục tiêu hoạt động
Thế mạnh của công ty Global Design IT chính là đội ngũ Kỹ sư cầu nối
(BrSE) có năng lực chun mơn cao với nhiều kinh nghiệm làm việc tại Nhật
Bản.
Các kỹ sư này sẽ hỗ trợ từ giai đoạn phân tích yêu cầu, viết tài liệu thiết
kế để việc phát triển diễn ra thuận lợi.
3 Thế mạnh của Global Design IT:
 Kinh nghiệm phát triển phong phú: Trong phát triển dành cho doạnh
nghiệp Nhật Bản, chất lượng sản phẩm cũng sẽ thay đổi tùy thuộc vào
mức độ dày dặn kinh nghiệm phát triển.
 Global Design IT có năng lực phân tích, diễn đạt cũng như đã đạt
nhiều thành tích về phát triển và coding tại thị trường nội địa Nhật
Bản.
 Các đề án giảm thiểu chi phí: đưa ra các đề án với cấu trúc chi phí thấp

để phù hợp với từng nhu cầu của khách hàng.
 Không chỉ Offshore ở Đà Nẵng mà cả phát triển onsite tại thị trường
Nhật Bản chúng tôi cũng sẽ cung cấp các đề án đáp ứng theo yêu cầu
của quý khách hàng.
 Đối ứng ở cả quy mô nhỏ: Global Design IT có thể thực hiện đối ứng
linh hoạt từ những dự án có quy mơ từ 3-5 người. Dĩ nhiên những dự
án quy mô 100man/month vẫn đảm bảo thực hiện đối ứng.

1.4 Lĩnh vực hoạt động
Lĩnh vực hoạt động của Công ty GDIT:
 Thiết kế, phát triển Website, Web app, phát triển mơ hình Labor
Offshore.
 Xây dựng, phát triển phần mềm quản lý nội dung website (CMS), phần
mềm quản lý doanh nghiệp (GMS).
 Dịch vụ tư vấn giải pháp phần mềm theo nhu cầu sản xuất, kinh của
Khách hàng.


1.5 Các sản phẩm, phương án, giải pháp
Dưới đây là các sản phẩm về App, Website, Service do GlobalDesignIT đã
phát triển và tạo ra.
 Ban xúc tiến và Hỗ trợ Đầu tư Đà Nẵng
IPA-Đà Nẵng (Ban Xúc tiến và Hỗ trợ Đầu tư Đà Nẵng) được Ủy ban
nhân dân thành phố Đà Nẵng thành lập vào năm 2000, nhằm mục
đích xúc tiến đầu tư nước ngoài vào thành phố Đà Nẵng-Việt Nam. Với
tư cách là kênh liên lạc-giao dịch duy nhất của các cơ quan hành chính
của thành phố Đà Nẵng, IPA-Đà Nẵng hỗ trợ hoạt động đầu tư của các
nhà đầu tư và các doanh nghiệp ở mọi giai đoạn.

Hình 2 Sản phẩm Website Ban xúc tiền và Hỗ trợ đầu tư Đà Nẵng


 GDIT Management System (G.M.S)
G.M.S GIẢI PHÁP DÀNH CHO CÁC DOANH NGHIỆP
G.M.S (GDIT Management System) được phát triển bởi đội ngũ kỹ sư
của Công ty GDIT, đây là một Web app như là công cụ mang lại những
giải pháp hữu ích với các tính năng vượt trội, là một giải pháp hữu
hiệu trong công tác quản lý doanh nghiệp.
G.M.S đang được sử dụng tại Công ty GDIT đã mang hiệu quả tích cực,
tiết kiệm được nhiều thời gian cho các bộ phận. Trong năm nay, GDIT
sẽ tiến hành triển khai dịch vụ này cho các khách hàng.

Hình 3 Hệ thống GMS


 Ứng dụng du lịch dành cho khách nước ngoài
Với ứng dụng này bạn có thể tìm kiếm nhiều thơng tin bằng nhiều
cách khách nhau như xác nhận thông theo phân chia khu vực hay
dùng Map để tìm kiếm thơng tin, do vậy rất dễ dàng để tìm kiếm
thơng tin theo mong muốn của bạn.

Hình 4 Ứng dụng du lịch dành cho người nước ngoài

 Ứng dụng du lịch Global Design IT
Với việc cài đặt ứng dụng này trên thiết bị di động của mình, bạn có thể
dễ dàng tìm thấy tất cả thông tin về các quán cà phê phong cách hay các
địa điểm tham quan tiêu biểu ở Đà Nẵng mọi lúc mọi nơi. Bạn cũng có thể
tạo lịch trình du lịch của riêng mình hoặc chia sẻ kế hoạch du lịch có các
địa điểm đề xuất đã được tổng hợp. Kế hoạch du lịch của bạn cũng có thể
được giới thiệu cho nhiều người dung khác trên


Hình 5 Ứng dụng di lịch Global Design IT


Chương 2

NHỮNG VẤN ĐỀ TỒN ĐỌNG

Trong quá trình đi thực tập doanh nghiệp tại công ty Global Design IT, được
sự hướng dẫn của một lập trình viên đã có nhiều năm kinh nghiệm về phần
mềm. Em đã tiếp thu được nhiều kiến thức quan trọng trong quá trình thực tập
tại công ty. Được sự tư vấn, hướng dẫn và chuẩn bị kỹ càng, người hướng dẫn
đã đưa ra nhiều vấn đề công nghệ hiện đang bị vướng mắc tại thị trường Việt
Nam. Khiến cho sản phẩm công nghệ này bị lạc hậu tại Việt Nam và chưa có
bước tiến triển lớn trong khâu đột phá. Đó là sử dụng Trợ lý ảo để áp dụng cho
hầu hết các máy tính, điện thoại để tăng sự nhanh chóng cho người dùng.

2.1 Vấn đề khi đặt ra mục tiêu
Sự bùng nổ của cách mạng 4.0 cùng với các vấn đề liên quan như Trí Tuệ
Nhân Tạo, Điện Tốn Đám Mây, Internet Vạn Vật và BigData. Hiện nay Trí Tuệ
Nhân Tạo đang là một xu hướng có tiềm năng trong lĩnh vực cơng nghệ
thông tin và là yếu tố then chốt với vô số ứng dụng trong mọi khía cạnh của
cuộc sống như Smart Home, xe tự hành, hệ thống nhận dạng.
Trợ lý ảo là một tác tử phần mềm có khả năng thực hiện các tác vụ hoặc
dịch vụ cho cá nhân người sử dụng. Cịn có tên gọi khác là “ChatBot” để chỉ
các trợ lý ảo được truy cập phần mềm chat online.
Ngày nay, sự xuất hiện các “trợ lý ảo” của smartphone như Apple Siri,
Microsoft Cortana và Google now đã được nhiều biết đến, tuy nhiên rất ít
người dùng Việt Nam sử dụng những “trợ lý ảo” này do chúng khơng tối ưu
cho người Việt và chưa phân tích và nhận diện được ý định của người dùng
trong câu lệnh nói tiếng Việt.

Điều gì làm cho trợ lý ảo chưa thực sự nổi trội tại Việt Nam?
Thứ nhất, Siri, Cortana hay Google Now chưa thực sự hiểu ngôn ngữ Việt.
Phân tích và hiểu ngơn ngữ tự nhiên từ lâu đã là hướng nghiên cứu khó khăn
và đầy thử thách bởi sự đa dạng, phong phú trong cách con người diễn đạt
vấn đề cũng như sự nhập nhằng về mặt câu từ. Đây là khó khăn chung cho
mọi ngơn ngữ và đối với tiếng Việt, việc xử lý cịn khó khăn hơn nhiều do
chúng ta đi sau và còn thiếu nhiều tài nguyên quan trọng. Điều quan trọng
nhất là đưa ra các giải pháp gọn nhẹ nhưng hiệu quả để vượt qua những khó
khăn trên.
Thứ hai, Siri, Cortana, … chưa tối ưu về mặt thơng tin và tính địa phương
hóa cho người Việt. Rất nhiều tính năng, thơng tin người dùng Việt cần
nhưng chưa và không được hỗ trợ trên các trợ lý ảo.
Vì thế trong báo cáo thực tập này, em sẽ phát triển sản phẩm này với mong
muốn đưa ra kết quả mang lại sự tiện lợi trong công việc và trải nghiệm cho
người dùng.


Chương 3

ĐỀ XUẤT GIẢI PHÁP CÔNG VIỆC

3.1 Giải pháp
Giải pháp đưa ra hiện tại là tạo ra một phần mềm hệ thống có khả năng
nhận diện giọng nói, các văn bản (chat online), các tin nhắn nhanh được
đưa vào từ phía người dùng và được xử lý sau đó sẽ gửi về cho người dùng
câu trả lời từ những lệnh thực thi sẵn. Trợ lý ảo sử dụng dụng công nghệ
xử lý ngôn ngữ tự nhiên để chuyển các văn bản và giọng nói của người
dùng thành các câu lệnh thực thi có sẵn. Nâng cao hơn cịn có cả năng tiếp
tục học thêm nhiều câu lệnh khác bằng công nghệ trí tuệ nhân tạo, trong đó
có phương pháp học máy.

Các trợ lý ảo này có thể cung cấp rất nhiều các dịch vụ, trong báo cáo
này em thiết lập Trợ lý ảo có khả năng như:
 Giao tiếp, chào hỏi
 Cho bạn biết thời gian hiện tại
 Khởi chạy ứng dụng hệ thống và mở bất kỳ trang web nào trên trình
duyệt Chrome
 Mở Google search và tìm kiếm thay cho bạn
 Gửi email đến những người trong danh bạ của bạn
 Cho bạn biết thời tết và nhiệt độ hiện tại của hầu hết mọi thành phố
 Phát cho bạn một bài hát trên Youtube
 Nhận dạng danh tính của người dùng
 Cho bạn biết tin tức mới nhất
 Nói cho bạn về hấu hết mọi thứ bạn yêu cầu

Hình 6 Giải pháp Trợ Lý Ảo

3.2 Đề xuất phương pháp xây dựng
AI - Artificial Intelligence hay còn gọi là Trí tuệ nhân tạo là một ngành
khoa học, kỹ thuật chế tạo máy móc thơng minh, đặc biệt là các chương trình


máy tính thơng minh. AI được thực hiện bằng cách nghiên cứu cách suy nghĩ
của con người, cách con người học hỏi, quyết định và làm việc trong khi giải
quyết một vấn đề nào đó, và sử dụng những kết quả nghiên cứu này như
một nền tảng để phát triển các phần mềm và hệ thống thơng minh, từ đó áp
dụng vào các mục đích khác nhau trong cuộc sống. Nói một cách dễ hiểu thì
AI là việc sử dụng, phân tích các dữ liệu đầu vào nhằm đưa ra sự dự đoán rồi
đi đến quyết định cuối cùng.
Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) là một nhánh
của trí tuệ nhân tạo tập trung vào các ứng dụng trên ngơn ngữ của con

người. Trong trí tuệ nhân tạo thì xử lý ngơn ngữ tự nhiên là một trong những
phần khó nhất vì nó liên quan đến việc phải hiểu ý nghĩa ngơn ngữ-cơng cụ
hồn hảo nhất của tư duy và giao tiếp.
3.2.1 Ngơn ngữ lập trình Python
Python là một ngơn ngữ lập trình bậc cao cho các mục đích lập trình đa
năng, do Guido van Rossum tạo ra và lần đầu ra mắt vào năm 1991. Python
được thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ. Python là ngơn
ngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới
học lập trình. Cấu trúc của Python cịn cho phép người sử dụng viết mã lệnh
với số lần gõ phím tối thiểu.
Python hồn tồn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động;
do vậy nó tương tự như Perl, Ruby, Scheme, Smalltalk, và Tcl. Python được
phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận Python Software
Foundation quản lý.
Ban đầu, Python được phát triển để chạy trên nền Unix. Nhưng rồi theo
thời gian, Python dần mở rộng sang mọi hệ điều hành từ MS-DOS đến Mac
OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix. Mặc dù
sự phát triển của Python có sự đóng góp của rất nhiều cá nhân, nhưng Guido
van Rossum hiện nay vẫn là tác giả chủ yếu của Python. Ơng giữ vai trị chủ
chốt trong việc quyết định hướng phát triển của Python.

Hình 7 Ngơn ngữ lập trình Python


3.2.2 Machine Learning
Học máy (tiếng Anh: machine learning) là một lĩnh vực của trí tuệ nhân
tạo liên quan đến việc nghiên cứu và xây dựng các kĩ thuật cho phép các hệ
thống "học" tự động từ dữ liệu để giải quyết những vấn đề cụ thể. Ví dụ như
các máy có thể "học" cách phân loại thư điện tử xem có phải thư rác (spam)
hay khơng và tự động xếp thư vào thư mục tương ứng. Học máy rất gần với

suy diễn thống kê (statistical inference) tuy có khác nhau về thuật ngữ.
Học máy có liên quan lớn đến thống kê, vì cả hai lĩnh vực đều nghiên cứu
việc phân tích dữ liệu, nhưng khác với thống kê, học máy tập trung vào sự
phức tạp của các giải thuật trong việc thực thi tính tốn. Nhiều bài tốn suy
luận được xếp vào loại bài tốn NP-khó, vì thế một phần của học máy là
nghiên cứu sự phát triển các giải thuật suy luận xấp xỉ mà có thể xử lý được.
Học máy có hiện nay được áp dụng rộng rãi bao gồm máy truy tìm dữ
liệu, chẩn đốn y khoa, phát hiện thẻ tín dụng giả, phân tích thị trường
chứng khốn, phân loại các chuỗi DNA, nhận dạng tiếng nói và chữ viết, dịch
tự động, chơi trò chơi và cử động rơ-bốt (robot locomotion).

Hình 8 Machine Learning

3.2.3 Thư viện OpenCV
OpenCv (Open Source Computer Vision) là một thư viện mã nguồn mở về
thị giác máy với hơn 500 hàm và hơn 2500 các thuật toán đã được tối ưu về
XLA, và các vấn đề liên quan tới thị giác máy. OpenCv được thiết kế một cách
tối ưu, sử dụng tối đa mạnh của các dòng chip đa lõi… để thực hiện các phép
tính tốn trong thời gian thực, nghĩa là tốc độ đáp ứng của nó thể đủ nhanh
cho các ứng dụng thông thường.
OpenCv là thư viện được thiết kế để chạy trên nhiều nền tảng khác
nhau (cross-platform), nghĩa là nó có thể chạy trên hệ điều hành Window,
Linux, Mac, iOS… Việc sử dụng thư viện OpenCv tuân theo các quy định về sử
dụng phần mềm mã nguồn mở BSD do đó bạn có thể sử dụng thư viện này
một cách miễn phí cho các mục đích phi thương mại lẫn thương mại.
Dự án về OpenCv được khởi động từ những năm 1999, đến năm 2000
nó được giới thiệu trong một hội nghị của IEEE về các vấn đề trong thị giác
máy và nhận dạng, tuy nhiên bản OpenCV 1.0 mãi tới tận năm 2006 mới
chính thức được cơng bố và năm 2008 bản 1.1 (prerelease) mới được ra đời.
Tháng 10 năm 2009, bản OpenCV thế hệ thứ hai ra đời (thường gọi là phiên

bản 2.x), phiên bản này có giao diện của C++ (khác với phiên bản trước có
giao diện của C) và có nhiều điểm khác biệt so với phiên bản thứ nhất.


Thư viện OpenCV ban đầu được sự hỗ trợ từ Intel, sau đó được hỗ trợ
bởi Willow Garage, một phịng thí nghiệm chun nghiên cứu về cơng nghệ
robot. Cho đến nay, OpenCV vẫn là thư viện mở, được phát triển bởi nguồn
quỹ không lợi nhuận (none-profit foundation) và được sự hưởng ứng rất lớn

của cộng đồng.

3.3 Thực hiện sản phẩm
Xây dựng một con trợ lý với tất cả các chức năng là điều khó khăn cho em
trong lúc phát triển ban đầu. Được sự hướng dẫn của Công ty, xây dựng
những chức năng mang tính cần thiết nhất cho một trợ lý nên có.
3.3.1 Chức năng chuyển văn bản thành âm thanh
Đây là một chức năng vơ cùng hữu ích trong việc xây dựng. Là chuyển
một đoạn văn bản thành âm thanh và đọc nó lên trên máy tính. Được tích
hợp khá phổ biến trong các thiết bị điện tử, thiết bị di động và ngày càng
được cải tiển để hỗ trợ người dùng. Ngồi ra các cơng ty cơng nghệ cũng
đang tập trung phát triển những phần mềm chuyển đổi giọng nói thành văn
bản với những tính năng ưu việt hơn nhằm đáp ứng nhu cầu ngày càng cao
của người sử dụng.
Ưu điểm và lợi ích của cơng nghệ Text to Speech:
Nâng cao khả năng tiếp cận: Công nghệ chuyển đổi văn bản thành giọng
nói cung cấp quyền truy cập cho những người không thể đọc do khiếm
khuyết hoặc mù chữ bằng cách cung cấp một cách thức khác để họ có thể
tiếp cận được thơng tin.
Học tập nâng cao: Bằng cách cho phép cả hình ảnh và âm thanh cùng xuất
hiện, công nghệ chuyển đổi văn bản thành giọng nói có thể giúp cải thiện khả

năng hiểu, ghi nhớ, kỹ năng từ vựng, tạo ra động lực và sự tự tin. Công nghệ
này đang được áp dụng cho các tài liệu trực tuyến để tạo điều kiện cho việc
học trực tuyến trở nên dễ dàng hơn.
Đi động và Tự do: Chuyển đổi văn bản thành giọng nói có thể biến bất kỳ
nội dung kỹ thuật số nào thành các trải nghiệm đa phương tiện, vì vậy người
dùng có thể nghe tin tức, bài viết trên blog hoặc thậm chí là một tài liệu PDF


dài khi đang di chuyển hoặc trong khi đang làm các việc khác mà không cần
quá chú tâm vào màn hình.
Nhanh chóng và phải chăng: Cơng nghệ điện tốn đám mây đã giúp người
đầu bắt đầu nhanh chóng và dễ dàng làm quen với việc chuyển văn bản
thành giọng nói, và tính kinh tế của điện tốn đám mây cũng có nghĩa rằng
cơng nghệ chuyển đổi văn bản này cũng sẽ được sử dụng với giá cả phải

Hình 9 Chức năng chuyển văn bản thành âm thanh

chăng.
Giao diện SpeechSynthesis là API web theo tập lệnh để kiểm soát đầu ra
chuyển văn bản thành giọng nói. Với các tính chất được kế thừa từ giao diện.
 SpeechSynthesisUtterance.rate: Nhận và đặt tốc độ mà lời nói sẽ
nói ra
 SpeechSynthesisUtterance.lang: Nhận và thiết lập ngơn của lời nói
 SpeechSynthesisUtterance.text: Nhận và đặt văn bản sẽ được
tổng hợp khi phát biểu được đọc
 SpeechSynthesis.speak: Nhận và đọc văn bản được đưa vào ra
màn hình chính của trợ lý ảo

Hình 10 Code thực hiện chuyển văn bản thành giọng nói


3.3.2 Chức năng chuyển âm thanh thành văn bản
Chức năng này có chức năng ngược lại với chức năng ở trên đã giới thiệu
là chuyển âm thanh thành văn bản. Chức năng này là dịch vụ phiên âm đoạn
thơng tin từ bản ghi âm giọng nói sang môt đoạn văn bản. Tiếng Việt được
coi là một ngơn ngữ khó học với người nước ngồi bởi ngữ pháp, thanh điệu
và đặc trưng vùng miền.
Những lợi ích khi sử dụng chức năng chuyển âm thanh thành văn bản:
 Người dùng không cần phải ghi lại các thông tin trong cơng việc và
được chuyển đổi tức thì thành văn bản ngay lúc đọc.
 Rút ngắn được 10 lần thời gian ghi thơng tin nhờ khả năng chuyển đổi
giọng nói thành văn bản chỉ mất thời gian ngắn,


 Giảm rủi ro sai lệch thông tin nhờ chất lượng thông tin được đồng
nhất với người sử dụng.
 Hỗ trợ đa ngôn ngữ phù hợp cho người dùng địa phương và người
nước ngồi.

Hình 11 Sơ đồ q trình chuyển giọng nói thành văn bản

SpeechRecognition giao diện của API Web Speech là giao diện điều khiển
cho dịch vụ nhận dạng và cũng xử lý cho SpeechRecognitionEvent được gửi
từ dịch vụ nhận dạng
SpeechRecognition.SpeechRecognition():
SpeechRecognition đối tượng mới.

Bắt

đầu


tạo

ra

một

 SpeechRecognition.lang: Trả về và đặt ngôn ngữ hiện tại
SpeechRecognition. Nếu không được chỉ định, điềsu này sẽ mặc đinh
thành .lang giá trị thuộc tính HTML hoặc cài đặt ngôn ngữ của người
dùng nếu ngôn ngữ khơng cài đặt thêm.
 SpeechRecognition.continuous: Kiểm sốt xem kết quả liên tục được
trả về cho mỗi lần nhận dạng hay chỉ một kết quả duy nhất. Mặc định
là đơn (false.)
 SpeechRecognition.serviceURI: Chỉ định vị trí của dịch vụ nhận dạng
giọng nói được hiện tại sử dụng SpeechRecognitionđể xử lý nhận dạng
thực tế. Mặc định là dịch vụ giọng nói mặc định của tác nhân người
dùng.
Các phương pháp sử dụng trong Speech to Text:



SpeechRecognition.abort(): Dừng dịch vụ nhận dạng giọng nói nghe
âm thanh và khơng tìm cách trả lại SpeechRecognitionResult
SpeechRecognition.start(): Bắt đầu dịch vụ nhận dạng giọng nói nghe
âm thanh đến với mục đích nhận dạng ngữ pháp liên quan đến hiện
tại SpeechRecognition.





SpeechRecognition.stop(): Dừng dịch vụ nhận dạng giọng nói nghe âm
thanh đến và cố gắng trả lại SpeechRecognitionResultbằng âm thanh
đã thu được cho đến nay.

Nghe các sự kiện bằng cách sử dụng addEventListener() hoặc bằng cách
chỉ định một trình nghe sự kiện cho thuộc tính của giao diện. audiostart
được kích hoạt khi người dùng bắt đầu thu âm thanh, audioend được kích
hoạt khi người dùng đã hịa tất thu âm thanh và cuối cùng là end kích hoạt
khi dịch vụ nhận dạng giọng nói đã ngắt kết nối.

Hình 12 Code thực hiện chức năng chuyển giọng nói thành văn bản

Trong đó các sự kiện soundstart được kích hoạt khi phát hiện bất kỳ âm
thanh – giọng nói có thể nhận dạng hoặc khơng – đa được phát hiện.
soundend được kích hoạt khi âm thanh được dịch vụ nhận dạng giọng nói
nhận dạng là giọng nói đã được phát hiện. speechstart kích hoạt khi âm
thanh được dịch vụ nhận dạng giọng nói là giọng nói đã phát hiện.
speechend kích hoạt khi giọng nói được dịch vụ nhận dạng giọng nói khơng
phát hiện được.
3.3.3 Chức năng giao tiếp, chào hỏi
Nội dung của chức năng này là để giao tiếp thông thường giữa người và
máy tính. Đơn giản như: chào hỏi, hỏi thăm tình hình sức khỏe hay nói về
thơng tin trợ lý ảo. Sử dụng thời gian của máy tính để có thể xác định buổi
sáng, buổi trưa, buổi chiều và buổi tối. Chức năng được sử dụng kết hợp với
học máy, đưa ra câu trả lời chính xác nhất cho người dùng khi người dùng
đưa vào đoạn câu hỏi. Bộ cơ sở dữ liệu câu hỏi và câu trả lời được tạo ra từ
trước với các câu hỏi dự đoán sẵn. Độ chính sác phụ thuộc vào khả năng so

Hình 13 Chức năng giao tiếp


sánh tỷ lệ các từ, ký tự trong câu hỏi của người dùng.


Mặc định khi vừa kích hoạt trợ lý ảo, người dùng sẽ nhận được một câu
hỏi từ trợ lý ảo để chào hỏi người dùng và bắt đầu sử dụng hệ thống. Nếu
người dùng trong một thời gian khơng có bất kỳ tác động tới trợ lý ảo sẽ tự
động ngắt.
3.3.4 Chức năng hiển thị thời gian
Nội dung của chức năng này là để hiển thị thời gian thực tế của quốc gia
người dùng đang đứng. Thông tin thời gian địa điểm hiện tại trong ngày
được lưu lại và xử lý, trợ lý ảo sẽ gửi về phía người dùng. Người dùng muốn
thực hiện xem thời gian bằng cách nhập vào đoạn văn bản “Hơm nay là ngày
gì” hay “Bây giờ là máy giờ”.
Bằng cách sử dụng thư datetime để lưu thông tin thời gian tại địa điểm
hiện tại trong ngày. Với địa điểm có thể tùy chỉnh phù hợp với người dùng.
Với định dạng của thời gian là giờ, phút, giây sau đó được trả về trợ lý ảo để
gửi về cho người dùng.

Hình 14 Code thực hiện chức năng lấy thời gian

3.3.5 Chức năng mở ứng dụng hệ thống, Google và tìm kiếm từ khóa
Đây là một chức năng khá đặc biệt trong trợ lý ảo. Chức năng chính là sẽ
mở một ứng dụng được cài đặt sẵn trong máy tính hay điện thoại. Ví dụ như:
mở phần mềm Microsoft Word hay Microsoft Excel, … hoặc các phần mềm
chuyên dụng của đồ họa như Adobe PhotoShop, Adobe Premiere hoặc
Adobe After Effect và còn nhiều phần mềm khác.
Bằng cách sử dụng các thư viện có sẵn của Python để truy cập phần mềm
tại máy tính. Truy cập các file .exe của phần mềm. Trợ lý ảo có thể mở lên
bằng lệnh gọi của người dùng như “Mở Google Chorme”, “Microsoft Word”.
Tìm kiếm từ khóa được sử dụng khi người dùng muốn tìm kiếm câu hỏi nào

đó. Câu hỏi sẽ đưa từ khóa lên Google và đưa câu trả lời đúng nhất cho
người dùng.

Hình 15 Chức năng mở ứng dụng, tìm kiếm


Khi xuất hiện các từ khóa đặc biệt như google, word, photoshop hay
media trong câu hỏi của người dùng, trợ lý ảo sử dụng hàm os.startfile() để
mở các file ứng dụng của hệ hệ thống. Để tăng độ chính xác cho việc mở ứng
dụng, trợ lý ảo sẽ tìm thêm từ khóa phía trước như “mở”, “kích hoạt” để
khơng nhầm lẫn với các chức năng khác.

Hình 16 Code thực hiện chức năng mở ứng dụng hệ thống

Với chức năng mở website bất kỳ, sử dụng hàm re.search để tách phần
domain trong đoạn hỏi của người dùng trong text và ghép với phần tiền tố
https://www. Để tạo thành đường dẫn đến trang web. Sử dụng
webbroser.open(url) để mở trang web người dùng yêu cầu.

Hình 17 Code thực hiện chức năng tìm kiếm

Với chức năng tìm kiếm từ khóa trên Google. Thực hiện việc tách từ khóa
phía sau chữ “tìm kiếm” trong đoạn text của người dùng gửi vào. Gọi hàm
webdriver.Chorme(path) để mở dụng Google Chrome và vào trang chủ
google.com. Thực hiện sử dụng hàm driver.find_element_by_path() để lấy
thẻ giá trị và lưu giá trị. Cuối cùng tìm kiếm từ khóa search_for và trả về kết
quả trên google

Hình 18 Code thực hiện chức năng tìm kiếm bằng Google




×