BÀI TOÁN PHÂN LOẠI PHONG CÁCH THIẾT KẾ
Quy trình thiết kế nhà
Chất lượng cuộc sống của con người ngày càng được nâng cao nhờ sự phát triển của công nghệ, dẫn đến nhu cầu về nhà ở không chỉ là nơi để sống mà còn phải đẹp, tiện nghi, an toàn và tiết kiệm Thiết kế nhà hiện nay yêu cầu phải có chất lượng cao, đầy đủ chi tiết, nhưng việc này không hề dễ dàng Vì vậy, chúng tôi đã nghiên cứu sâu về quy trình thiết kế nhà để đáp ứng những nhu cầu ngày càng cao của cuộc sống.
Hình 1.1: Quy trình thiết kế nhà
Quy trình thiết kế nhà hiện nay thường có 5 bước cơ bản:
• Khách hàng liên hệ mô giới tư vấn, đưa ra yêu cầu, ý tưởng
• Mô giới liên hệ nhà thiết kế, đưa ra yêu cầu của khách hàng
• Nhà thiết kế tiếp nhận yêu cầu, tiến hành thiết kế, gửi bản thiết kế cho nhà sản xuất
• Nhà sản xuất nhận bản vẽ, kiểm tra tính khả thi, thống kê và báo giá cho khách hàng
• Khách hàng nhận thông tin từ nhà sản xuất, yêu cầu chỉnh sửa, thống nhất ý kiến
Quy trình lặp lại đến khi khách hàng hoàn toàn thống nhất ý tưởng với các bên mô giới, nhà thiết kế, nhà sản xuất
Qua khảo sát, quy trình trên gặp phải một số vấn đề quan trọng:
• Lãng phí nhiều thời gian
• Lãng phí nhiều chi phí
• Thiếu thông tin trong quá trình trao đổi.
1.1.3 Giải pháp Ứng dụng công nghệ thông tin cho bài toán thiết kế nhà nhằm:
• Thêm thông tin về các mẫu thiết kế
• Thêm thông tin về các nhà thiết kế
Để đáp ứng nhu cầu khách hàng trong thiết kế và nhận diện thương hiệu, cần có một giải pháp hỗ trợ hiệu quả Bài viết này sẽ chia sẻ một số mẫu thiết kế nổi bật và giới thiệu những nhà thiết kế uy tín, giúp khách hàng có cái nhìn rõ ràng và lựa chọn tốt nhất cho dự án của mình.
Mô hình kinh tế chia sẻ
1.2.1 Mô hình kinh tế chia sẻ là gì?
Kinh tế chia sẻ, hay còn gọi là Sharing Economy, đề cập đến việc chia sẻ quyền truy cập vào hàng hóa và dịch vụ Đây là một hệ thống kinh tế mà trong đó, các tài sản và dịch vụ được chia sẻ có thể được sử dụng chung và có thể tính phí hoặc không, thông qua Internet Mô hình này mở ra cơ hội cho người tham gia làm việc tự do, từ đó giúp họ tăng thu nhập một cách linh hoạt, có thể là bán thời gian hoặc toàn thời gian.
Hình 1.2: Mô hình Kinh tế chia sẻ.
Chia sẻ tài sản và dịch vụ không chỉ giúp người dùng tiếp cận những nguồn lực mà họ không sở hữu, mà còn tối ưu hóa hiệu quả sử dụng tài sản nhàn rỗi Mô hình này góp phần vào sự phát triển bền vững và nâng cao phúc lợi xã hội.
Phương pháp này giúp giảm lãng phí tiêu dùng và tối ưu hóa tài nguyên thông qua việc ứng dụng công nghệ Nó không chỉ góp phần xây dựng một thế giới kết nối mạnh mẽ mà còn tạo ra việc làm và cơ hội kiếm tiền cho mọi người trên toàn cầu.
1 Kinh tế chia sẻ – Wikipedia tiếng Việt
1.2.2 Các loại hình kinh tế chia sẻ
Kinh tế chia sẻ đang nổi lên như một xu hướng quan trọng trong bối cảnh cách mạng công nghệ thông tin, trở thành một trong những trụ cột của nền kinh tế số Các hình thức kinh tế chia sẻ đã phát triển mạnh mẽ trong thời gian gần đây, góp phần thúc đẩy sự đổi mới và phát triển bền vững.
• Hệ thống sản phẩm dịch vụ: Hàng hóa được sở hữu bởi tư nhân có thể chia sẻ hoặc cho thuê thông qua chợ Peer-to-peer
Thị trường phân phối lại là một hệ thống tiêu thụ sản phẩm, nơi hàng hóa hoặc dịch vụ được chuyển giao từ những nơi không còn cần thiết sang những nơi có nhu cầu, thay vì sản xuất thêm sản phẩm mới Hệ thống này tập trung vào việc tái sử dụng và sửa chữa các sản phẩm đã qua sử dụng, cho phép người tiêu dùng trao đổi trực tiếp hoặc bán lấy tiền mặt thông qua các nền tảng như Ebay và Chợ Tốt.
Lối sống hợp tác là một hệ thống kết nối những cá nhân có nhu cầu tương đồng, cho phép họ chia sẻ và trao đổi các tài sản không hiện hữu như thời gian, không gian, kỹ năng và tiền bạc.
1.2.3 Tác động của nền kinh tế chia sẻ với thị trường Việt Nam 2
Mô hình kinh tế chia sẻ đã cách mạng hóa hoạt động kinh doanh toàn cầu, và Việt Nam là một trong những quốc gia tiên phong tại Đông Nam Á trong việc thử nghiệm ứng dụng kết nối vận tải như Uber và Grab từ năm 2014 Kể từ đó, nhiều ứng dụng công nghệ số đã phát triển mạnh mẽ, bao gồm dịch vụ chia sẻ phòng, du lịch, và sửa chữa điện tử, điện lạnh.
Sự huy động các phương tiện và tài sản nhàn rỗi vào sản xuất, kinh doanh có ảnh hưởng tích cực đến nguồn lực xã hội, góp phần nâng cao hiệu quả sử dụng nguồn lực và thúc đẩy sự phát triển kinh tế.
Mô hình kinh doanh gọi xe và giao thức ăn trực tuyến tại Việt Nam đang thúc đẩy sự phát triển của thị trường, tạo ra nhiều cơ hội kinh doanh và tăng cường sự tham gia của các chủ thể Theo báo cáo nghiên cứu của Google năm 2019, doanh thu từ lĩnh vực này đạt 1,1 tỷ USD, tăng gấp 5 lần so với năm 2015, và dự báo sẽ đạt 4 tỷ USD vào năm 2025, cho thấy tiềm năng phát triển lớn của mô hình này trong tương lai.
2 Kinh tế chia sẻ: Thực trạng và các đề xuất đối với Việt Nam
Phạm vi
1.3.1 Mục tiêu Đề tài tập trung nghiên cứu ứng dụng lĩnh vực của công nghệ thông tin là học sâu vào phân tích hỗ trợ nhận diện và hỗ trợ nhu cầu của khách hàng
Hình 1.3: Bài toán phân loại
Xây dựng ứng dụng website theo mô hình kinh tế chia sẻ nhằm cung cấp cái nhìn toàn diện về thiết kế nội thất, kết nối trực tiếp giữa nhà thiết kế và khách hàng Ứng dụng tích hợp công cụ dự đoán hình ảnh dựa trên học sâu và sử dụng thuật toán đề xuất bài viết phù hợp với thói quen của người dùng.
Hình 1.4: Mô hình ứng dụng Website.
1.3.2 Các loại phong cách thiết kế thông dụng
Phong cách ArtDecor là một trường phái nghệ thuật và trang trí được hình thành ở Paris vào những năm 1920 và lan rộng toàn thế giới vào những năm 1930
Art Deco là phong cách nghệ thuật nổi bật với các tuyến hình đơn giản và khối hình học kinh điển, lấy cảm hứng từ chủ nghĩa lập thể Phong cách này mang đến sự mạnh mẽ và cá tính, đồng thời gợi nhớ đến lối kiến trúc Đức cổ điển.
Một phông nền cơ bản của phong cách này sẽ bao gồm:
• Cành hoa lá kết hợp với da thú
• Ưa chuộng các đường thẳng ngang
• Hình tứ giác góc cạnh, như: hình bình hành, hình chữ nhật…
• Hình ảnh mô hình động vật cách điệu
• Góc nhọn trong hình học, hay hình ảnh của những tòa cao ốc cách điệu
• Họa tiết quân đội và họa tiết zigzac
• Một số lại đặc trưng cho những bước tiến trong thương mại, tiến bộ khoa học, kỹ thuật Đặc điểm của phong cách ArtDecor
Phong cách Art Deco nổi bật với sự sử dụng màu sắc đậm và tương phản cao, bao gồm các gam màu như vàng (vàng sáng hoặc retro), đỏ, xanh lá cây, xanh da trời, hồng pha bạc, đen và các sắc màu ánh kim khác.
- Ngoài ra, các màu sắc tương phản với độ bóng của gỗ và nội thất sơn mài cũng thường được sử dụng trong phong cách này
• Về chất liệu sử dụng:
3 Nội dung của phong cách ArtDecor được tham khảo từ website:
Phong cách Art Deco trong thiết kế nội thất & Art Deco là gì?
- Với phong cách Art Deco này, sẽ có một số chất liệu mà bạn không thể nào bỏ qua như thép không gỉ, thủy tinh, hay da thú,…
- Những chất liệu cực đắt tiền như đá cẩm thạch, gỗ quý,…được sử dụng như làm tăng thêm vẻ đẹp sa hoa, lộng lẫy
- Những chủ đề về thiên nhiên như hoa, lá, cành, chim chóc,…
- Hình ảnh những tòa cao ốc cách điệu, thể hiện sự tiến bộ của khoa học kỹ thuật Đặc biệt, phong cách khỏa thân cũng thường được sử dụng
- Không rườm rà phức tạp, đơn giản nhẹ nhàng nhưng mạnh mẽ quyến rũ
- Dáng vẽ cũng không quá cầu kì
• Về các chi tiết như vải, đèn, phụ kiện:
- Thường sử dụng các tấm thảm với hình khối lớn để che phủ sàn gỗ
- Đèn trang trí thường sử dụng pha lê để chúng lúc nào cũng sáng và mới
- Vải trang trí dùng các hình học và màu tưởng phản để tăng giá trị trang trí cho phòng
Hình 1.5: Ảnh minh họa phong cách ActDecor 1.
Hình 1.6: Ảnh minh họa phong cách ActDecor 2.
Hình 1.7: Ảnh minh họa phong cách ActDecor 3.
Kiến trúc Hitech đã bùng nổ vào cuối thế kỷ XX và đầu thế kỷ XXI, nhanh chóng lan rộng đến nhiều quốc gia Phong cách này đặc biệt phát triển mạnh mẽ tại Nhật Bản và các nước phương Tây.
Hitech, hay còn gọi là Công Nghệ Cao, là phong cách kiến trúc sử dụng vật liệu và thiết bị hiện đại, kết hợp với đồ nội thất tiên tiến Phong cách này chú trọng vào việc ứng dụng công nghệ mới nhất để tạo ra không gian sống và làm việc tiện nghi, hiện đại.
Cũng như bao phong cách nội thất khác, Hitech cũng có những đặc trưng cơ bản để phân biệt với những phong cách nội thất còn lại:
• Phô trương giá trị thẩm mỹ qua việc sử dụng công nghệ cao
• Màu sắc đơn giản khiến không gian hiện đại
• Trang trí nội thất đơn giản toát ra sự phóng khoáng, tinh tế
• Đem lại sự tiện nghi tối đa Đặc điểm của phong cách HiTech
- Phong cách thiết kế nội thất Hitech luôn luôn sử dụng những gàm màu sắc vô cùng đơn giản với nhiều đường nét trong thiết kế
- Trong đó, những tông màu mộc mạc luôn được ưa chuộng và sử dụng nhiều hơn Màu sắc chủ đạo trong thiết kế thường là màu xám, trắng, đen
Những gam màu trung tính mang lại không gian sống độc đáo, làm nổi bật tính tương phản màu sắc và nâng cao tính thẩm mỹ khi kết hợp với các vật liệu cao cấp.
4 Nội dung của phong cách HiTech được tham khảo từ website:
Phong cách thiết kế nội thất Hitech & Nội thất hitech là gì? Đặc trưng cơ bản của phong cách nội thất hitech
Phong cách thiết kế nội thất Hitech không hạn chế đồ nội thất và màu sắc như phong cách tối giản, mà thay vào đó tập trung vào sự đơn giản, phóng khoáng và tinh tế Những mẫu nhà theo phong cách này luôn thể hiện sự hiện đại và không yêu cầu sự cầu kỳ, phức tạp như phong cách Cổ điển.
Sự tối giản trong thiết kế nội thất không chỉ thể hiện qua màu sắc và bố cục mà còn ở họa tiết trang trí, tạo nên sự đồng bộ và hài hòa cho không gian Những mẫu nội thất đơn giản nhưng mang lại sức sống mạnh mẽ, giúp không gian trở nên sống động và thu hút hơn.
Sử dụng vật liệu nhân tạo và công nghệ cao trong thiết kế và thi công nội thất, như kính, kim loại và đá, đang trở thành xu hướng phổ biến Những vật liệu này không chỉ mang lại tính thẩm mỹ cao mà còn đảm bảo độ bền và khả năng ứng dụng linh hoạt trong không gian sống.
Các vật liệu phẳng và thẳng mang đến sự mạnh mẽ và dứt khoát cho không gian Nội thất phong cách Hitech không chỉ thể hiện vẻ đẹp thanh tao từ bên ngoài mà còn phản ánh sự tinh tế từ bên trong.
Nội thất phong cách Hitech nổi bật với sự đơn giản và tinh tế, không có sự cầu kỳ hay rườm rà trong thiết kế Các đường nét thanh thoát, không uốn lượn phức tạp, mang lại cảm giác phóng khoáng và hiện đại Chính sự giản dị này phản ánh gu thẩm mỹ riêng biệt của mỗi gia chủ, tạo nên không gian sống đầy ấn tượng.
Nội thất hiện đại tập trung vào các đường nét thẳng, bề mặt trơn và ít họa tiết, mang lại sự hài hòa thay vì màu sắc sặc sỡ hay kiểu dáng phức tạp Phong cách này ngày càng được ưa chuộng bởi những người yêu thích sự đơn giản và phóng khoáng trong không gian sống của mình.
Sử dụng các yếu tố kỹ thuật để tạo hiệu ứng ánh sáng rực rỡ, kiến trúc sư thể hiện sự mạnh mẽ và mềm mại từ bên trong ra bên ngoài Đèn âm trần và đèn dowlight được kết hợp khéo léo với nội thất, tạo nên không gian tràn ngập ánh sáng và sống động.
Ánh sáng đóng vai trò quan trọng trong việc tổ chức không gian, nâng cao hiệu ứng thẩm mỹ và tạo nên một môi trường sống hàng ngày vừa đẹp, vừa thoáng đãng và an toàn.
• Thiết bị điện tử thông minh:
TỔNG QUAN VỀ HỌC MÁY, HỌC SÂU
Học máy là gì?
Machine learning, a subset of artificial intelligence, is a branch of computer science that enables computers to learn from data without being explicitly programmed This field focuses on developing algorithms that allow machines to improve their performance through experience, making it a crucial component of modern technological advancements.
2.1.1 Các bài toán cơ bản trong Học Máy
Nhiều bài toán phức tạp có thể được giải quyết bằng học máy Dưới đây là một số bài toán phổ biến:
Phân loại là một trong những bài toán phổ biến nhất trong học máy, trong đó chương trình cần xác định lớp hoặc nhãn của một điểm dữ liệu từ nhiều nhãn khác nhau.
Các bài toán phân loại phổ biến: phân loại ảnh chữ viết tay, phân loại email rác
Một bài toán hồi quy được định nghĩa khi nhãn không được phân thành các nhóm mà là một giá trị thực cụ thể, với miền giá trị liên tục.
Hầu hết các bài toán dự báo (giá cổ phiếu, giá nhà, …) thường được xếp vào bài toán hồi quy
Trong máy dịch (machine translation), chương trình máy tính được yêu cầu dịch văn bản từ ngôn ngữ này sang ngôn ngữ khác, sử dụng dữ liệu huấn luyện là các cặp văn bản song ngữ Những văn bản này có thể chỉ bao gồm hai ngôn ngữ hoặc có thêm các ngôn ngữ trung gian Gần đây, giải pháp cho bài toán này đã có nhiều tiến bộ đáng kể nhờ vào các thuật toán deep learning.
8 Vũ Hữu Tiệp, “Machine Learning cơ bản”, machinelearningcoban.com, 2020 Link here
9 Tham khảo từ: Machine learning - Simple English Wikipedia, the free encyclopedia
Phân cụm (clustering) là quá trình chia dữ liệu thành các nhóm nhỏ dựa trên sự tương đồng giữa các dữ liệu trong mỗi nhóm Trong phương pháp này, dữ liệu huấn luyện không có nhãn, và mô hình tự động phân chia dữ liệu thành các cụm khác nhau Hình ảnh dễ hiểu là việc yêu cầu một đứa trẻ sắp xếp các mảnh ghép với nhiều hình dạng và màu sắc mà không cần biết mảnh nào thuộc về hình nào hay màu nào Dù không có hướng dẫn cụ thể, trẻ vẫn có khả năng phân loại các mảnh ghép theo màu sắc hoặc hình dạng.
Hoàn thiện dữ liệu (data completion) là quá trình dự đoán các trường dữ liệu còn thiếu trong bộ dữ liệu, điều này thường xảy ra khi việc thu thập thông tin cho từng điểm dữ liệu không khả thi, như khi một bức ảnh bị xước hoặc thông tin về tuổi khách hàng không được thu thập Nhiệm vụ của bài toán này là sử dụng mối tương quan giữa các điểm dữ liệu để dự đoán các giá trị thiếu, và hệ thống khuyến nghị là một ví dụ điển hình cho loại bài toán này.
2.1.2 Phân nhóm các thuật toán Học Máy
Học có giám sát (supervised learning) là một thuật toán machine learning, trong đó mô hình dự đoán mối quan hệ giữa đầu vào và đầu ra được xây dựng dựa trên các cặp (đầu vào, đầu ra) đã biết trong tập huấn luyện Đây là nhóm thuật toán phổ biến nhất trong machine learning, với các ví dụ điển hình là thuật toán phân loại và hồi quy.
Trong một số thuật toán machine learning, dữ liệu huấn luyện chỉ bao gồm đầu vào mà không có đầu ra tương ứng Mặc dù không thể dự đoán chính xác đầu ra, các thuật toán này vẫn có khả năng trích xuất thông tin quan trọng từ mối liên hệ giữa các điểm dữ liệu Nhóm thuật toán này được gọi là học không giám sát.
Trang | 27 không giám sát (unsupervised learning) Các thuật toán giải quyết bài toán phân cụm và giảm chiều dữ liệu là các ví dụ điển hình của nhóm này
Ranh giới giữa học có giám sát và học không giám sát thường không rõ ràng, với một số thuật toán sử dụng cả cặp (đầu vào, đầu ra) và dữ liệu chỉ có đầu vào Các thuật toán này được biết đến với tên gọi học bán giám sát (semi-supervised learning).
Một nhóm các thuật toán machine learning không cần dữ liệu huấn luyện là học củng cố (reinforcement learning), trong đó mô hình học cách ra quyết định thông qua việc giao tiếp với môi trường xung quanh Các thuật toán này liên tục đưa ra quyết định và nhận phản hồi từ môi trường để tự củng cố hành vi của mình.
Học sâu là gì?
Deep learning đã cách mạng hóa khả năng của máy tính, cho phép chúng thực hiện những nhiệm vụ mà cách đây mười năm vẫn được coi là không thể Công nghệ này hiện có thể phân loại hàng ngàn vật thể trong ảnh, tự động tạo chú thích, bắt chước giọng nói và chữ viết, giao tiếp với con người, chuyển đổi ngôn ngữ và thậm chí sáng tác văn thơ và âm nhạc.
Hình 2.1: Mối quan hệ giữa AI, ML, và DL 11
Deep Learning, mặc dù chỉ là một nhánh nhỏ của Machine Learning, đã trở thành một xu hướng nổi bật trong cuộc cách mạng AI trong khoảng 5 năm qua Sự gia tăng chú ý đối với Deep Learning xuất phát từ nhiều lý do quan trọng.
Deep learning đã bùng nổ trong việc khai thác dữ liệu lớn (Big Data) với độ chính xác vượt trội so với các phương pháp Machine Learning truyền thống, đặc biệt là trong lĩnh vực xử lý hình ảnh.
Sự ra mắt của GPU GTX 10 series của NVIDIA vào năm 2014 đã mang lại hiệu năng tính toán cao với mức giá phải chăng, giúp nhiều người dễ dàng tiếp cận công nghệ này Điều này đã thúc đẩy sự phát triển mạnh mẽ trong nghiên cứu Deep Learning.
10 Nguyễn Thanh Tuấn, “Deep Learning Cơ Bản”, nttuan8.com, 2020 Link here
11 The Difference Between AI, Machine Learning, and Deep Learning? | NVIDIA Blog
Trang | 29 không còn là những bài toán chỉ được nghiên cứu trong các phòng lab đắt tiền của các trường Đại học danh giá và các công ty lớn.
Một số thuật toán học sâu phổ biến nhất là:
Giới thiệu về Artificial Neural Networks
Là thành phần căn bản quan trọng nhất của toàn bộ lĩnh vực Deep Learning, là thuật toán căn bản mà Deep Learning sử dụng
2.3.1 Mạng Neural nhân tạo là gì?
Mô hình Machine Learning này được phát triển dựa trên cấu trúc của các nơ-ron sinh học trong não người, thường được gọi là mạng lưới dây thần kinh.
Các nhà khoa học đã đưa ra giả thuyết về khả năng lưu trữ, xử lý và phân tích thông tin của não người, cho rằng các tế bào não liên kết với nhau để truyền thông tin Trong lĩnh vực công nghệ thông tin, đặc biệt là trí tuệ nhân tạo, người ta cũng mô phỏng cách hoạt động của bộ não Khi nhận thông tin đầu vào, nó sẽ lan tỏa qua các nơ-ron và cuối cùng cho ra kết quả.
Một số minh họa tiêu biểu về ứng dụng của trí tuệ nhân tạo trong cuộc sống hàng ngày bao gồm công cụ tìm kiếm hình ảnh Google Image, công nghệ nhận diện giọng nói như Siri của Apple và hệ thống đề xuất video ưa thích của YouTube, giúp người dùng dễ dàng tìm kiếm và khám phá nội dung phù hợp.
2.3.2 Neural sinh học (Biological Neurons)
Hình 2.2: Mô hình mạng nơ-ron sinh học
Các thành phần bản gồm:
• Thân của nhân tế bào (Cell body)
• Và các axon làm nhiệm vụ truyền dẫn xung điện để truyền tín hiệu
Hình 2.3: Hình ảnh vỏ não của con người
2.3.3 Thần kinh nhân tạo (Artificial Neurons)
Dựa trên cấu trúc của mạng thần kinh sinh học ở con người, các nhà khoa học đã phát triển một mạng neuron nhân tạo trên máy tính Hình ảnh dưới đây minh họa sự tương đồng giữa một neuron sinh học và một neuron nhân tạo.
• Nhân sẽ nhận đầu vào xử lý
• Sau khi xử lý nhân sẽ trả các kết quả đầu ra cho các neuron khác
Sự tương đồng này giúp con người tạo ra các có hiệu suất tốt và có thể tốt hon hẳn so với con người
Hình 2.4: Sự tương đồng cưa neurons sinh học và neurons nhân tạo
2.3.4 Mạng thần kinh nhân tạo (Artificial Neurons Networks - ANN)
Hình 2.5: Mạng thần kinh nhân tạo (ANN).
Ta kết hợp nhiều neurons nhân tạo ta sẽ tạo ra một Artificial Neurons Networks –
ANN có 3 thành phần chính:
Khi có nhiều layer trong phần hidden layer lớn hơn >10 hoặc là lớn thì ta sẽ gọi mạng này là DeepNet.
A Fully Connected Layer, also known as a Dense Layer, is characterized by complete connections between neurons in adjacent layers When all layers in a neural network are Fully Connected Layers, the network is referred to as Fully Connected.
Mạng nơ-ron có thể được coi là một "hộp đen", nơi đầu vào được gửi vào và thông tin sẽ lan truyền bên trong, tương tự như cách hoạt động của mạng thần kinh sinh học Cuối cùng, hộp đen này sẽ trả về một kết quả Chúng ta có thể hiểu hộp đen này như một hàm phức tạp 𝐹(𝑥), có khả năng mô phỏng hoạt động của bộ não con người.
2.3.5 Đầu ra của một Neural Network: Forward propagation
Forward propagation enables the calculation of the output across all layers of a neural network, facilitating predictions This process sequentially computes the output for each layer, starting from the input data.
Dữ liệu đầu vào được ký hiệu là 𝑋, và qua công thức tính toán cho từng lớp, đầu ra được xác định là ℎ(𝑋) = 𝜙(𝑋𝑊 + 𝑏) Kết quả đầu ra từ lớp đầu tiên là 𝑋′, sẽ được sử dụng làm đầu vào cho lớp thứ hai với công thức ℎ(𝑋′) = 𝑋′′ Quá trình này tiếp tục lặp lại, sử dụng kết quả đầu ra của lớp trước làm đầu vào cho lớp tiếp theo thông qua công thức đã nêu.
2.3.6 Huấn luyện Neural Network: Backpropagation
Backpropagation là thuận toán dùng để training mô hình neural network Nó trải qua các bước chính:
• Khởi tạo các parameters (giá trị sẽ random)
Lặp lại các bước sau cho đến khi hội tụ:
• Thực hiện tạo kết quả dự đoán của một instances networks: Ta sẽ đưa dữ liệu huấn luyện vào và để tạo ra prediction
• Tính các tỷ số error và loss: Ta sẽ tính các sai số và so sánh với nhãn thực tế
• Cập nhật các parameters để giảm sai số error: Dựa vào bước 2 ta sẽ cập nhật lại các parametters để giảm các sai số, gồm hai bước:
• Tính đạo hàm của network’s error cho mỗi parameters
• Và cập nhật lại parameters sử dụng gradient descent formula
Một số loss funtion phổ biến:
• Huber loss (kết hợp MSE và MAE)
Mạng nơ-ron tích chập (CNN)
Mạng nơ-ron tích chập (CNN) ra đời từ nghiên cứu về thị giác trên vỏ não vào những năm 1980 và đã phát triển vượt bậc trong những năm gần đây nhờ công nghệ tiên tiến và hệ thống máy tính mạnh mẽ Hiện nay, CNN không chỉ xuất sắc trong nhận diện hình ảnh mà còn đạt hiệu suất cao trong nhận diện vật thể phức tạp, ô tô tự lái, hệ thống phân loại video tự động và nhiều ứng dụng khác Bên cạnh đó, CNN còn thành công trong lĩnh vực nhận dạng giọng nói và xử lý ngôn ngữ tự nhiên.
Hình 2.8: Kiến trúc cơ bản của CNN.
2.4.1 Lớp tích chập ( Convolutional Layers ) Để tạo nên một mạng CNN thì không thể khối Convolutional Layer, trong Convolutional đầu tiên, các neural không được kết nối với tất cả các pixel trong hình ảnh đầu vào Trong mỗi lần quét, mỗi neuron của lớp Convolutional thứ hai chỉ được kết nối với các neuron nằm trong hình chữ nhật nhỏ ở lớp Convolutional đầu tiên Kiến trúc này cho phép mạng tập trung vào những feature “small low-level” ở những Layer đầu tiên và sau đó tập hợp chúng lại thành các feature “larger higher-level” ở những lớp tiếp theo Cấu trúc phân lớp này phổ biến trong những hình ảnh thực tế, đó là lý do để CNN hoạt động hiệu quả trong việc nhận dạng hình ảnh
12 Yann LeCun, Léon Bottou, YoShua Bengio and Patrick Haffner, "Gradient-Based Learning Applied to Document Recognition"
Hình 2.9: Các lớp Convolutional và các Receptive field trong hình chữ nhật
Mạng nơ-ron nhiều lớp thường chuyển đổi hình ảnh đầu vào thành dạng một chiều trước khi xử lý, trong khi mạng CNN giữ nguyên cấu trúc hình ảnh hai chiều Sự khác biệt này tạo ra sự tương đồng giữa các nơ-ron trong mạng CNN và các đầu vào tương ứng của chúng, giúp cải thiện khả năng nhận diện và phân tích hình ảnh.
Mỗi nơ-ron tại vị trí (𝑖, 𝑗) trong một lớp được kết nối với các nơ-ron ở lớp trước, nằm trong khoảng từ hàng 𝑖 đến 𝑖 + 𝑓ℎ − 1 và từ cột 𝑗 đến 𝑗 + 𝑓𝑤 − 1, với 𝑓ℎ và 𝑓𝑤 là chiều rộng và chiều dài của trường tiếp nhận (Receptive field) Để đảm bảo các lớp có cùng kích thước với lớp trước, người ta sử dụng phương pháp "Zero-padding" bằng cách thêm các số 0 xung quanh ảnh đầu vào.
Hình 2.10: Kết nối giữa các layers và zero-padding
Có thể kết nối các lớp đầu vào lớn với lớp nhỏ hơn bằng cách điều chỉnh bước của trường tiếp nhận (Receptive fields), giúp giảm độ phức tạp và tính toán cho CNN Khi thay đổi bước trượt của các trường tiếp nhận, được gọi là Stride, lớp ảnh đầu vào kích thước (5x7) kết hợp với Zero-padding sẽ kết nối với lớp sau có kích thước (3x4) thông qua các trường tiếp nhận kích thước (3x3) với Stride = 2 Stride có thể giống nhau hoặc khác nhau theo chiều dài và chiều rộng tùy thuộc vào người sử dụng Một nơ-ron tại vị trí (𝑖, 𝑗) ở lớp trên sẽ kết nối với các nơ-ron ở lớp dưới từ vị trí 𝑖 × 𝑠 ℎ đến 𝑖 × 𝑠 ℎ + 𝑓 ℎ − 1 và từ 𝑗 × 𝑠 𝑤 đến 𝑗 × 𝑠 𝑤 + 𝑓 𝑤 − 1, trong đó 𝑠 ℎ và 𝑠 𝑤 là các bước stride theo chiều ngang và dọc.
Hình 2.11: Giảm kích thường bằng cách sử dụng Stride = 2
Trọng số của một nơ-ron được thể hiện qua hình ảnh nhỏ tương ứng với kích thước của trường tiếp nhận Hình 2.12 minh họa hai bộ trọng số khác nhau, gọi là các filters hay convolution kernels Filter đầu tiên có dạng một ma trận 7 × 7, trong đó có một hình vuông màu đen và một đường thẳng màu trắng ở giữa, với các giá trị 0 và 1 (1 biểu thị cho màu trắng, 0 cho màu đen) Khi áp dụng ma trận này, các nơ-ron chỉ chú ý đến đường dọc màu trắng trong trường tiếp nhận, bỏ qua mọi phần khác do các giá trị 0.
Một hình vuông màu đen với một đường ngang màu trắng ở giữa cho phép các nơ-ron trong ma trận bỏ qua mọi thứ ngoại trừ đường ngang trắng Khi tất cả các nơ-ron trong một lớp sử dụng cùng một bộ lọc, chúng sẽ tạo ra các bức ảnh khác nhau, như thể hiện trong Hình 2.12 Điều này cho thấy rằng một lớp với các nơ-ron sử dụng cùng một bộ lọc có khả năng trích xuất các feature map khác nhau, làm nổi bật các vùng và khung ảnh để thể hiện rõ các đặc trưng của ảnh tùy thuộc vào bộ lọc được sử dụng Trong quá trình huấn luyện, các lớp Convolutional sẽ tự động học hỏi và phát triển những feature map này.
Hình 2.12: Sử dụng 2 filter khác nhau để có hai feature map
2.4.3 Xếp chồng nhiều feature map lên nhau
Trong lớp Convolutional, nhiều filter chồng lên nhau để tạo ra các feature map khác nhau, với tất cả các nơ-ron trên mỗi pixel chia sẻ các tham số như weights và bias Mỗi nơ-ron trong các feature map khác nhau sử dụng các tham số riêng biệt Cách trường tiếp nhận (Receptive field) của nơ-ron kết hợp với các feature map từ các lớp trước, cho phép lớp Convolutional phát hiện nhiều đặc trưng ở mọi vị trí trong hình ảnh một cách đồng thời.
Hình ảnh đầu vào bao gồm nhiều lớp khác nhau, mỗi lớp thể hiện một màu trong không gian màu RGB Đối với hình ảnh xám, chỉ có một kênh màu duy nhất Ngoài ra, hình ảnh vệ tinh còn có thêm lớp con để đại diện cho tần số hồng ngoại.
Hình 2.13: Các lớp Convolutional với nhiều Feautre map chồng lên nhau với ảnh đầu vào 3 kênh màu
Một nơ-ron có vị trí (𝑖, 𝑗) trên feature map 𝑘 nằm trong lớp Convolution 𝑙 kết nối với các nơ-ron ở lớp 𝑙 − 1 trước đó có vị trí từ 𝑖 × 𝑠 ℎ đến 𝑖 × 𝑠 ℎ + 𝑓 ℎ − 1 và 𝑗 × 𝑠 𝑤 đến
𝑗 × 𝑠 𝑤 + 𝑓 𝑤 − 1, các nơ-ron nằm ở các feature map khác nhau được kết nối với các nơ- ron giống nhau trong lớp trước đó
Lớp Pooling được đặt giữa các lớp Convolutional để giảm số lượng tham số, giúp tính toán hiệu quả hơn và tránh tràn bộ nhớ Tương tự như các lớp Convolutional, mỗi nơ-ron trong lớp Pooling kết nối với một số nơ-ron nhất định từ lớp trước, nằm trong một trường tiếp nhận hình chữ nhật nhỏ Cần xác định kích thước, stride và padding như trong lớp Convolution, nhưng các nơ-ron trong lớp Pooling không có trọng số Lớp này thực hiện tổng hợp các nơ-ron đầu vào bằng cách sử dụng các hàm như Max hoặc trung bình Ví dụ, lớp MaxPooling với Kernel = (2 × 2) và Stride = 2, không sử dụng Padding, giúp giảm kích thước hình ảnh xuống còn một nửa so với hình ảnh ban đầu.
Hình 2.14: Lớp MaxPooling với kernel = (2 x 2), Stride =1 và không Padding
Sử dụng lớp Pooling giữa các lớp Convolutional giúp tối ưu hóa số lượng tham số và giảm khối lượng tính toán Ba loại lớp Pooling phổ biến bao gồm Max Pooling, Average Pooling và Global Average Pooling.
Global Average Pooling hoạt động bằng cách tính toán giá trị trung bình trên toàn bộ feature map, tạo ra một con số duy nhất cho mỗi feature map Mặc dù phương pháp này làm mất đi nhiều thông tin từ các feature map, nhưng nó lại rất hiệu quả cho các lớp đầu ra Sau khi trải qua nhiều lớp, thông tin trên feature map thường giảm đi, do đó việc loại bỏ thông tin không cần thiết giúp giảm đáng kể số lượng tham số và hạn chế rủi ro về bộ nhớ.
Kiến trúc CNN
Các kiến trúc điển hình của CNN bao gồm các lớp Convolutional và Pooling chồng lên nhau, giúp giảm kích thước hình ảnh nhưng tăng cường khả năng biểu diễn đặc trưng Các lớp Convolution sử dụng hàm kích hoạt phi tuyến như ReLU và tanh để tối ưu hóa trọng số trong các node, tạo ra thông tin trừu tượng cho các lớp tiếp theo Sau khi trải qua nhiều lớp Convolutional và Pooling, các đặc điểm này được chuyển đến lớp Fully connected, nơi chúng được kết hợp để đưa ra kết quả cuối cùng Nhờ vào quá trình này, mô hình có khả năng đọc và phân tích nhiều thông tin từ hình ảnh.
Hình 2.15: Kiến trúc cơ bản của CNN
ỨNG DỤNG HỌC SÂU ĐỂ GIẢI QUYẾT BÀI TOÁN PHÂN LOẠI PHONG CÁCH THIẾT KẾ NỘI THẤT
Một số nghiên cứu liên quan
3.1.1 Nghiên cứu về “Tiếp cận và trích xuất đặc điểm của nội thất” 13 3.1.1.1 Tóm tắt nghiên cứu
Báo cáo này đề xuất phương pháp tiếp cận dựa trên Học Sâu để tự động nhận dạng các đặc điểm thiết kế nội thất thông qua hình ảnh kỹ thuật số Kỹ thuật nhận dạng hình ảnh sử dụng mạng nơ-ron tích tụ đã đạt được thành công lớn trong nhiều lĩnh vực Các mã nguồn mở và mô hình nhận dạng hình ảnh được đào tạo trước giúp dễ dàng tùy chỉnh cho bất kỳ nền tảng nào Báo cáo cũng trình bày cách áp dụng các kỹ thuật này vào quy trình thiết kế nội thất và cung cấp kết quả minh họa Đồ nội thất, đặc biệt là ghế, có nhiều đặc điểm thiết kế như phong cách, hình dạng và vật liệu Bài viết nêu rõ cách đào tạo lại mô hình để trích xuất thông tin thiết kế hiệu quả Tổng cộng có 3933 bộ dữ liệu hình ảnh ghế và 6 mô hình nhận dạng đã được sử dụng để đào tạo lại, với sự kết hợp của các mô hình này để thực hiện suy luận.
3.1.1.2 Kết quả của nghiên cứu
Nghiên cứu này tập trung vào việc phát triển phương pháp trích xuất tự động thiết bị và tính năng thiết kế nội thất từ hình ảnh, nhằm ứng dụng vào thiết kế nội thất Qua các nghiên cứu cần thiết, việc phát hiện các yếu tố nội thất đã đạt được độ chính xác cao Bài báo này mô tả các khảo sát kỹ thuật và phương pháp tiếp cận cơ bản cho bước phát triển tiếp theo.
13 JIN SUNG KIM, JAE YEOL SONG và JIN KOOK LEE, 2018, “Approach to the extraction of design features of interior design elements using image recognition technique”, Department of Interior Architecture &
Built Environment, Yonsei University, Republic of Korea Link here
Trang 43 sử dụng dữ liệu để kiểm tra và đào tạo lại mô hình học sâu, nhằm nhận diện các thiết bị trong thiết kế nội thất cùng với các tính năng thiết kế của chúng.
Nhóm nghiên cứu đã khảo sát các kỹ thuật như CNN và thư viện nhận dạng hình ảnh để áp dụng vào việc nhận diện thiết bị thiết kế nội thất, cụ thể là ghế, sofa và ghế đẩu Các tính năng thiết kế được giới hạn ở những đặc điểm có thể nhận dạng trực quan từ hình ảnh Dữ liệu hình ảnh phục vụ cho việc đào tạo được thu thập từ tìm kiếm trên Google và từ các trang web chuyên nghiệp như Houzz, một trong những nền tảng thương mại điện tử nội thất hàng đầu Quy trình nghiên cứu được tóm tắt như sau:
Đào tạo và trích xuất tự động các đặc điểm thiết kế của ghế là một quá trình quan trọng trong ngành nội thất Đồ nội thất và các tính năng của nó được xác định thông qua các đặc điểm tiêu chí có thể kiểm tra bằng mắt Để thực hiện điều này, một tập dữ liệu hình ảnh đã được xây dựng từ nhiều nguồn trên web, giúp cải thiện độ chính xác trong việc nhận diện Nhiều mô hình nhận dạng hình ảnh cũng được đào tạo lại cho từng loại thiết bị nội thất, nâng cao khả năng phân loại và nhận diện.
Tự động hóa trong thiết kế sử dụng các mô hình đào tạo lại để tích hợp nhiều mô hình khai thác, cho phép suy ra các tính năng thiết kế khác nhau từ hình ảnh đã cho.
Hình 3.1: Phạm vi công việc khai thác tự động các thiết bị trong thiết kế nội thất và các tính năng thiết kế của chúng
3.1.2 Nghiên cứu về “Công cụ tìm kiếm đa phương thức cho thiết kế thời trang và nội thất” 14
Nhóm nghiên cứu đã phát triển một công cụ tìm kiếm đa phương thức mang tên DeepStyle, kết hợp giữa đặc điểm trực quan và văn bản để truy xuất các mặt hàng thời trang như quần áo và đồ nội thất từ cơ sở dữ liệu đa phương tiện Khác với các công cụ tìm kiếm hiện tại chỉ xem văn bản là thông tin bổ sung cho hình ảnh, DeepStyle cho phép người dùng tìm kiếm một cách trực quan hơn, ví dụ như "cùng một chiếc áo thun nhưng bằng vải cotton" Phương pháp này sử dụng kiến trúc mạng nơ-ron để mô hình hóa sự phụ thuộc ngữ cảnh giữa các tính năng khác nhau, giúp giảm thiểu thiếu sót trong quá trình tìm kiếm Kết quả thử nghiệm cho thấy DeepStyle vượt trội hơn 20% so với các phương pháp cơ bản trên hai tập dữ liệu thách thức về thời trang và nội thất Công cụ này đã được triển khai thương mại và có sẵn thông qua một ứng dụng web.
3.1.2.2 Kết quả của nghiên cứu
Trong bài viết này, chúng tôi giới thiệu một phương pháp mới cho truy vấn đa phương thức, sử dụng kiến trúc mạng nơ-ron Siamese để phân tích sự tương đồng về phong cách Phương pháp này khai thác thông tin ngữ cảnh thực nghiệm, cụ thể là tần suất xuất hiện của các mục trong cùng một ngữ cảnh phong cách Nghiên cứu của chúng tôi cho thấy phương pháp này vượt trội hơn so với các phương pháp truyền thống, mang lại kết quả tốt hơn trong việc tạo ra các nhóm mặt hàng tương thích về mặt phong cách.
14 IVONA TAUTKUTE (s16352 at pjwstk.edu.pl), TOMASZ TRZCIŃSKI, (Member, IEEE), ALEKSANDER
P SKORUPA, ŁUKASZ BROCKI, AND KRZYSZTOF MARASEK, “DeepStyle: Multimodal Search Engine for
1 Institute of Multimedia, Polish-Japanese Academy of Information Technology, 02-008 Warsaw, Poland
3 Institute of Computer Science, Warsaw University of Technology, 00-661 Warsaw, Poland
Received May 1, 2019, accepted June 6, 2019, date of publication June 17, 2019, date of current version July 15,
Phương pháp này mang lại hai ưu điểm nổi bật: đầu tiên, nó cho phép mở rộng truy vấn trực quan thông qua đầu vào văn bản tùy ý, giúp người dùng tìm kiếm sản phẩm phù hợp hơn bằng cách cung cấp thông tin bổ sung không có trong dữ liệu hình ảnh Thứ hai, nó truy xuất các kết quả tương tự về mặt phong cách, nâng cao trải nghiệm tìm kiếm của người dùng.
Phương pháp này gặp nhược điểm lớn là cần một lượng lớn dữ liệu hình ảnh có gán nhãn về ngữ cảnh, tức là thông tin về sự xuất hiện của các mục trong cùng một bối cảnh Tuy nhiên, các phương pháp học tập bán giám sát có thể giúp giảm thiểu yêu cầu về dữ liệu này, tùy thuộc vào công việc trong tương lai của chúng tôi.
Nghiên cứu đã áp dụng thành công phương pháp luận cho các ứng dụng trong lĩnh vực thương mại, thời trang và thiết kế nội thất, thông qua việc khai thác hình ảnh sản phẩm cùng với siêu dữ liệu liên quan Nhóm nghiên cứu đã triển khai một website thông minh để giới thiệu sản phẩm và phát hành bộ dữ liệu mới về các mặt hàng nội thất của IKEA.
Hình 3.2: Tổng quan cấp cao về kiến trúc Early-fusion Blending
Hình 3.3: Kiến trúc của mạng DeepStyle-Siamese của nhóm nghiên cứu
Phương pháp đề xuất
Hình 3.4: Tổng quan phương pháp đề xuất.
Một số mô hình CNN
Hình 3.5: Kiến trúc của mô hình DenseNet.
DenseNet là một kiến trúc mạng nơ-ron tích chập (CNN) tiên tiến, được huấn luyện trên các tập dữ liệu phân loại như CIFAR, SVHN và ImageNet, với số lượng tham số tối thiểu Bằng cách áp dụng cơ chế Residual tương tự như ResNet, DenseNet cho phép xây dựng các mạng nơ-ron sâu hơn và dễ dàng tối ưu hóa hơn so với các mô hình truyền thống.
Kiến trúc DenseNet được cấu trúc từ các khối Dense, trong đó các lớp được kết nối chặt chẽ với nhau Mỗi lớp nhận thông tin từ tất cả các lớp trước đó, giúp tối ưu hóa việc truyền tải thông tin Việc áp dụng kỹ thuật Residual trong DenseNet đóng vai trò quan trọng trong việc kiểm soát thông tin, ngăn chặn sự mất mát dữ liệu qua các lớp.
Mỗi một khối Dense bao gồm nhóm các FC layer kết nối với các layer trước đó:
Tác giả mô hình cho thấy rằng sử sụng Batch Normalization ở trước có hiệu quả hơn ở cuối lớp
Thay vì tính tổng như ResNet thì DenseNet kết hợp tất cả các feature map lại Transition layer bao gồm :
Hình 3.6: Kiến trúc các phiên bản của mô hình DenseNet.
Sau khi kết nối các lớp, với CNN truyền thống nếu chúng ta có L layer thì sẽ có L connection, còn trong mô hình DenseNet sẽ có 𝐿(𝐿 + 1)/2 connection
DenseNet có các phiên bản khác nhau được đặt tên DenseNet với số lớp tương ứng
Kiến trúc Inception, do Christian Szegedy và nhóm Google Research phát triển, đã giành chiến thắng tại cuộc thi ILSVRC 2014 với tỷ lệ lỗi dưới 7% Mô hình này nổi bật nhờ vào độ sâu vượt trội so với các mạng CNN trước đó và việc sử dụng các Inception Module, giúp giảm số lượng tham số xuống 10 lần so với AlecNet mà vẫn duy trì hiệu quả cao.
Các tín hiệu đầu vào được sao chép và đưa vào bốn lớp khác nhau, với tất cả các lớp Convolutional sử dụng hàm kích hoạt ReLU Ký hiệu “3 x 3 + 1 (S)” biểu thị rằng lớp sử dụng Kernel 3x3, Stride = 1 và Padding “same” Các lớp Convolutional với kích thước Kernel khác nhau ([1 x 1], [3 x 3], [5 x 5]) giúp mô hình nhận diện các mẫu ở các tỷ lệ khác nhau Do mỗi lớp đều sử dụng Stride = 1 và Padding “same”, kích thước đầu ra của module này tương đương với kích thước đầu vào, cho phép nối tất cả đầu ra lại với nhau theo chiều sâu.
Mô-đun Inception bao gồm các lớp tích chập với kernel 1 x 1, giúp quan sát các mẫu theo chiều sâu mà không cần quan sát diện rộng trên hình ảnh Điều này cho phép xuất ra các feature maps ít hơn so với đầu vào, giảm thiểu tính toán và số lượng tham số, từ đó tăng tốc độ đào tạo mô hình và cải thiện khả năng học tổng quát Mỗi cặp lớp tích chập kết hợp ([1 x 1, 3 x 3] và [1 x 1]) tạo thành một lớp tích chập mạnh mẽ, có khả năng nhận diện các mẫu phức tạp hơn.
Kiến trúc của Inception có 9 Module Inception với sáu số đại diện cho số Feature Maps Output của mỗi Convolutional Layers (các Layers này đều sử dụng 𝑅𝑒𝐿𝑈 activation):
Trong lớp đầu tiên của mô hình, kích thước ảnh được chia cho 4 nhằm giảm khối lượng tính toán Lớp Convolutional đầu tiên sử dụng kích thước bộ lọc [7x7] lớn hơn để đảm bảo không mất mát nhiều thông tin quan trọng.
• Sau đó ảnh được chuyển đến lớp Local Response Normalization để đảm bảo lớp trước đó học được nhiều mẫu khác nhau
• Hai lớp Convolutional tiếp theo hoạt động giống như một “cổ chai” giúp số lượng tham số và khối lượng tính toán giảm
• Một lần nữa ảnh được chuyển đến lớp Local Response Normalization
• Tiếp theo ảnh được đi qua một lớp MaxPooling để kích thước hình ảnh được giảm đi 2 lần để tăng tốc độ tính toán
• Sau đó qua một qua một ngăn xếp cao gồm 9 Module Inception được xe kẽ một vài lớp MaxPooling để giảm kích thước và tăng tốc độ cho mạng
• Tiếp theo lớp Global Avarage Pooling tính ra giá trị trung bình của mỗi feature map : điều này làm giảm các thông tin không gian,
• Sau đó được qua một lớp FC có 1000 units vì có 1000 classes và qua một lớp Softmax Activation để tính xác xuất các lớp kết quả đầu ra
Inception có nhiều biến thể khác nhau như InceptionV3, InceptionV4 sử dụng các Module Inception khác nhau để đạt hiệu suất tốt hơn
InceptionV3 primarily focuses on reducing computational parameter volume by altering the architecture of the previous Inception Module, an idea proposed in the 2015 paper "Rethinking the Inception Architecture for Computer Vision" by Christian Szegedy, Vincent Vanhoucke, Sergey Ioffe, and Jonathon Shlens Notably, InceptionV3 differs from its predecessors through key algorithmic changes, including the incorporation of RMSprop, Label Smoother, and Batch Normalization (BN), which significantly enhance its performance.
Một trong những phiên bản biến thể nổi trội của GoogleLeNet (cũng còn có tên là Inception-V1) được Google phát triển đó là Xception (viết tắt của Extreme Inception)
Xception, được giới thiệu bởi François Chollet vào năm 2016, là Á quân của cuộc thi ILSVRC 2017, vượt trội hơn Inception-V3 trong việc phân loại trên tập dữ liệu lớn với 350 triệu hình ảnh và 17.000 lớp khác nhau Mô hình này kết hợp các yếu tố từ GoogleLeNet và ResNet, tương tự như Inception-V4, nhưng sử dụng lớp tích chập theo chiều sâu (Depthwise Separable Convolution) thay vì các mô-đun inception truyền thống.
Sự khác nhau của Convolution layer và Separable Convolution layer
Trong các lớp tích chập (Convolution layer) của mô hình CNN, bộ lọc (filters) được sử dụng để học các mẫu không gian (spatial patterns) khác nhau như hình tròn, hình bầu dục và đường thẳng, cũng như các mẫu kênh chéo (cross-channel patterns) như sự kết hợp giữa mắt, mũi và miệng để nhận diện khuôn mặt.
Các lớp tích chập phân tách (Separable Convolutional layer) cho phép phân tách và tạo ra các giả định về các mẫu không gian và mẫu kênh chéo, giúp mô hình hóa theo cách riêng biệt Lớp này bao gồm hai phần chính.
- Phần đầu tiên áp dụng một bộ lọc không gian duy nhất cho feature map đầu vào
Phần thứ hai của bài viết sẽ tập trung vào các mẫu kênh chéo, được hiểu là một lớp tích hợp thông thường sử dụng bộ lọc 1 × 1, giúp học hỏi từ các bản đồ đặc trưng.
16 Viết tắt của “Extreme Inception”, Tham khảo từ: Francois Chollet, 2017, “Xception: Deep Learning with Depthwise Separable Convolutions”, Google, Inc
Cuộc thi 17 là một sự kiện nhằm tìm kiếm các giải pháp phân loại hình ảnh, chủ yếu sử dụng mạng nơ-ron tích chập (CNN), trên quy mô lớn Cuộc thi này sử dụng một phần nhỏ của tập dữ liệu ImageNet, bao gồm khoảng 1.2 triệu hình ảnh với 1000 nhãn khác nhau Trong đó, khoảng 1.2 ngàn hình ảnh trung bình cho mỗi nhãn được sử dụng làm tập huấn luyện, 50,000 hình ảnh cho tập xác thực và 150,000 hình ảnh cho tập kiểm tra, với cả tập xác thực và tập kiểm tra đều có 1000 nhãn tương tự như tập huấn luyện.
Hình 3.9: Depthwise Separable Convolutional layer (Separable Convolutional layer)
Vì các lớp tích chập phân tách chỉ có một bộ lọc không gian cho mỗi kênh đầu vào, nên không nên sử dụng chúng sau các lớp có quá ít kênh, chẳng hạn như lớp đầu vào Do đó, kiến trúc Xception bắt đầu với 2 lớp tích tụ thông thường, sau đó sử dụng 34 lớp chập trùng tách biệt, cùng với một số lớp max pooling và các lớp cuối thông thường, bao gồm một lớp pooling trung bình toàn cục và một lớp đầu ra dày đặc.
Separable Convolution layer tốt hơn Convolution layer?
• Có nhiệm vụ tính toán các convolution
• Chỉ là các layer đơn
• Số lượng tham số ít hơn so với Convolutional layers
• Độ chính xác cao hơn vì độ sâu được tăng lên
• Học được các đặc điểm nhờ việc xuyên qua các features map
• Có 2 thành phần là: Spacial filter và Cross channel pattern
• Dùng nhiều layer Convolutional để tạo ra
Kiến trúc của mô hình Xception
Hình 3.10: Kiến trúc mô hình Xception.
Hình 3.11: Kiến trúc Xception và InceptionV3
Phương pháp học tập chuyển giao ( Tranfer learning)
Phương pháp học tập chuyển giao là kỹ thuật tái sử dụng các mô hình đã được đào tạo trước đó để giải quyết vấn đề mới Phương pháp này ngày càng trở nên phổ biến trong lĩnh vực Deep Learning, nhờ khả năng đào tạo các mạng thần kinh sâu hơn ngay cả khi dữ liệu hạn chế Điều này đặc biệt hữu ích trong khoa học dữ liệu, nơi mà dữ liệu thực tế thường khan hiếm và không hoàn toàn chính xác.
Trong học tập chuyển giao, kiến thức từ mô hình đã học được sẽ được áp dụng cho các bài toán liên quan, nhằm cải thiện khả năng khái quát trong nhiệm vụ mới Thay vì huấn luyện lại từ đầu, phương pháp này tận dụng các mô hình đã được huấn luyện trước (pretrained model) để giải quyết các nhiệm vụ tương tự, khai thác hiệu quả những gì đã học được từ các nhiệm vụ trước.
Các mạng nơ-ron thông thường nhận diện các đặc trưng góc cạnh ở các lớp đầu, hình dạng ở lớp giữa và tính năng cụ thể ở lớp cuối Trong quá trình transfer learning, các lớp đầu và giữa được giữ nguyên, trong khi chỉ đào tạo lại các lớp cuối, giúp tận dụng kiến thức đã học từ các lớp trước.
Hình 3.12: Hoạt động của tranfer learning
Trang | 58 Ưu điểm của học tập chuyển giao :
Việc áp dụng các mô hình đã được huấn luyện trước (pretrained model) giúp tiết kiệm thời gian trong việc phát triển một mô hình mới cho các nhiệm vụ khác nhau, dựa trên kiến thức và kinh nghiệm từ các nhiệm vụ đã được học trước đó.
Việc đào tạo mô hình trên tập dữ liệu lớn tiêu tốn nhiều tài nguyên máy tính, trong khi transfer learning giúp giảm thiểu thời gian đào tạo mô hình hiệu quả.
Phương pháp học tập chuyển giao đã chứng minh hiệu quả trong việc cải thiện chất lượng dự đoán so với việc đào tạo mô hình từ đầu Các mô hình đã được đào tạo sẵn thường sử dụng dữ liệu lớn, giúp chúng học được khả năng khái quát hóa tốt hơn.
Hình 3.13: So sánh việc sử dụng tranfer learning và không sử dụng
Nhược điểm của tranfer learning:
Trong quá trình điều chỉnh kiến trúc của các mô hình đã được đào tạo sẵn, việc thêm hoặc bớt các lớp không đúng có thể dẫn đến độ chính xác thấp khi đào tạo Do đó, cần kiểm tra lại quá trình chỉnh sửa các lớp Chỉ nên sử dụng các mô hình đã được đào tạo sẵn cho những nhiệm vụ cũ có liên quan đến nhiệm vụ mới.
Phương pháp tăng cường dữ liệu
3.5.1 Tăng cường dữ liệu là gì và để làm gì?
Trong lĩnh vực Machine Learning, đặc biệt là Deep Learning, dữ liệu đóng vai trò cực kỳ quan trọng Khi số lượng dữ liệu huấn luyện hạn chế, việc tạo ra dự đoán chính xác trở nên khó khăn, ngay cả với các thuật toán phức tạp Để khắc phục vấn đề này, kỹ thuật tăng cường dữ liệu (Data augmentation) được áp dụng nhằm làm phong phú thêm tập dữ liệu hiện có.
3.5.2 Kỹ thuật tăng cường dữ liệu
Việc tăng cường dữ liệu giúp mở rộng kích thước tập huấn luyện bằng cách tạo ra nhiều biến thể từ dữ liệu gốc, từ đó giảm thiểu hiện tượng overfitting trong quá trình huấn luyện mô hình Các kỹ thuật như xoay, dịch chuyển, phóng to, làm nhiễu và thay đổi kích thước dữ liệu có thể được áp dụng với số lượng khác nhau, tùy thuộc vào tính chất và tính hợp lý của dữ liệu Tuy nhiên, việc lạm dụng các kỹ thuật này có thể dẫn đến kết quả không mong muốn.
Các phương thức chính trong kỹ thuật tăng cường dữ liệu:
• Lật ảnh (Flip): lật ảnh theo chiều dọc, ngang đảm bảo ý nghĩa của dữ liệu không thay đổi
Cắt ngẫu nhiên (Random Crop) là kỹ thuật cắt một phần của bức ảnh, nhưng cần chú ý giữ lại các thành phần cốt lõi Trong nhận diện vật thể, việc cắt mất đối tượng chính trong ảnh sẽ không hợp lý.
• Xoay ảnh (Rotation): Xoay ảnh theo góc độ mong muốn
Hình 3.14: Minh họa xoay ảnh trong tăng cường dữ liệu
• Chuyển đổi màu (Color Shift): Chuyển đổi màu của bức ảnh bằng các thay đổi giá trị vào 3 kênh RGB
Thêm nhiễu vào bức ảnh là một kỹ thuật quan trọng trong chỉnh sửa hình ảnh, bao gồm nhiều loại như nhiễu ngẫu nhiên, nhiễu có mẫu, nhiễu cộng, nhiễu nhân, nhiễu do nén ảnh, cũng như nhiễu mờ do chụp không lấy nét và nhiễu mờ do chuyển động Mỗi loại nhiễu này mang đến những hiệu ứng khác nhau, giúp tạo ra sự phong phú và chiều sâu cho hình ảnh.
• Mất thông tin (Information loss): Một phần của bức hình bị mất
• Đổi độ tương phản (Constrast change): thay độ tương phản của bức hình, độ bão hòa…
Hình 3.15: Minh họa đổi độ tương phản trong tăng cường dữ liệu
Hình 3.16: Ví dụ về tăng cường dữ liệu
Tối ưu hóa mô hình bằng thư viện TensorFlow Lite converter
Hình 3.17: TensorFlow Lite được phát triển bởi TensorFlow
TensorFlow Lite, được Google giới thiệu vào tháng 5 năm 2017, là công cụ hỗ trợ các nhà phát triển triển khai mô hình trí tuệ nhân tạo trên thiết bị di động và IoT trong môi trường hạn chế bộ nhớ Các cải tiến mới bao gồm lượng tử hóa có chọn lọc tham số, giúp giảm kích thước mô hình và tăng tốc độ xử lý Nhờ vào lượng tử hóa, một số mô hình trí tuệ nhân tạo có thể được nén đến 4 lần so với kích thước ban đầu.
Phương pháp biểu quyết tổng hợp
Voting Classifier là một mô hình học máy kết hợp nhiều mô hình khác nhau để đưa ra dự đoán đầu ra dựa trên xác suất cao nhất của các lớp Thay vì phát triển các mô hình chuyên dụng với độ chính xác cao, Voting Classifier tổng hợp kết quả từ các mô hình có độ chính xác trung bình và dự đoán kết quả dựa trên đa số phiếu bầu của chúng cho mỗi loại đầu ra Phương pháp này giúp cải thiện độ tin cậy của dự đoán thông qua việc sử dụng sức mạnh của nhiều mô hình khác nhau.
Hình 3.18: Phương pháp biểu quyết tổng hợp
Voting Classifier hỗ trợ hai loại biểu quyết :
Trong phương pháp Soft Voting, lớp đầu ra được xác định bằng cách tính giá trị trung bình của xác suất dự đoán từ mỗi mô hình Cụ thể, xác suất dự đoán cho lớp được tổng hợp từ các mô hình khác nhau để đưa ra kết quả cuối cùng.
Lớp A có các mô hình với giá trị (0.80, 0.77, 0.68) và lớp B có giá trị (0.2, 0.23, 0.32) Điểm trung bình của lớp A là 0.75, trong khi lớp B chỉ đạt 0.25 Do đó, lớp A được chọn là kết quả cuối cùng vì nó có xác suất trung bình cao nhất trong các mô hình dự đoán.
Hình 3.19: Minh họa cho phương pháp Soft Voting
Hard Voting là phương pháp trong đó lớp đầu ra được xác định dựa trên lớp có số phiếu bầu cao nhất từ các mô hình dự đoán Ví dụ, nếu bốn mô hình đưa ra kết quả dự đoán lần lượt là (A, B, A, C), lớp A sẽ được chọn làm kết quả cuối cùng vì nó nhận được số phiếu bầu nhiều nhất.
Hình 3.20: Minh họa cho Hard Voting.
Thuật toán TF-IDF
TF-IDF (Tần suất từ - Tần suất ngược tài liệu) là một kỹ thuật khai phá dữ liệu quan trọng, giúp đánh giá mức độ quan trọng của từ trong văn bản Giá trị TF-IDF cao cho thấy từ ngữ đó có vai trò lớn trong nội dung Kỹ thuật này cũng được áp dụng để loại bỏ các từ dừng (stopwords) trong các nhiệm vụ như tóm tắt và phân loại văn bản.
Tần suất xuất hiện của từ (TF) là số lần một từ xuất hiện trong văn bản Do độ dài văn bản có thể khác nhau, một số từ có thể xuất hiện nhiều lần trong văn bản dài hơn so với văn bản ngắn Vì vậy, để đảm bảo tính chính xác, tần suất xuất hiện của từ thường được chia cho độ dài của văn bản.
𝑡𝑓(𝑡, 𝑑): tần suất xuất hiện của từ t trong văn bản d
𝑓(𝑡, 𝑑): Số lần xuất hiện của từ t trong văn bản d
𝑚𝑎𝑥({𝑓(𝑤, 𝑑) ∶ 𝑤 ∈ 𝑑}): Số lần xuất hiện của từ có số lần xuất hiện nhiều nhất trong văn bản d
IDF (Nghịch đảo tần suất của văn bản) là một chỉ số quan trọng trong việc đánh giá mức độ quan trọng của các từ trong văn bản Khi tính toán TF (Tần suất của từ), mọi từ đều được xem như có giá trị như nhau Tuy nhiên, những từ như “is”, “of” và “that” thường xuất hiện với tần suất cao nhưng không mang lại giá trị thông tin cao Do đó, cần giảm độ quan trọng của các từ này để cải thiện chất lượng phân tích văn bản.
𝑖𝑑𝑓(𝑡, 𝐷): giá trị idf của từ t trong tập văn bản
18 Tham khảo từ: TF-IDF là gì? Code demo thuật toán TF-IDF với dữ liệu tiếng Việt (nguyenvanhieu.vn)
|𝐷|: Tổng số văn bản trong tập D
|{𝑑 ∈ 𝐷 ∶ 𝑡 ∈ 𝑑}|: thể hiện số văn bản trong tập D có chứa từ t
Công thức cuối cùng của 𝑇𝐹 − 𝐼𝐷𝐹 là :
Các từ có giá trị TF-IDF cao là những từ xuất hiện thường xuyên trong văn bản cụ thể và ít xuất hiện trong các văn bản khác Điều này giúp loại bỏ các từ phổ biến, đồng thời giữ lại những từ có giá trị cao, tức là từ khóa quan trọng của văn bản.
Đề xuất mô hình website ứng dụng
Nhận thấy hiệu quả của mô hình kinh tế, ứng dụng trên nền tảng Web được triển khai với các chức năng chính nhằm tối ưu hóa lợi ích của mô hình Ứng dụng kết nối chủ nhà với kiến trúc sư thông qua các bài viết nghệ thuật theo từng phong cách thiết kế nội thất Tích hợp công cụ dự đoán hình ảnh sử dụng học sâu giúp khách hàng phân biệt dễ dàng các phong cách thiết kế Ứng dụng cho phép tạo lịch hẹn giữa kiến trúc sư và chủ nhà theo yêu cầu của chủ nhà, lựa chọn kiến trúc sư phù hợp với các bài viết trước đó Kiến trúc sư có thể đăng bài viết và chia sẻ ý tưởng, mang đến sự đa dạng cho chủ nhà khi tìm kiếm thông tin Ứng dụng không chỉ là cầu nối giữa chủ nhà và kiến trúc sư mà còn tạo việc làm, tăng thu nhập cho kiến trúc sư, giúp chủ nhà dễ dàng tìm được bản vẽ phù hợp.
Hình 3.21: Mô hệ thống website đề xuất