Tìm hiểu về kiến trúc và cấu trúc vi điều khiển trong lập trình nhúng

Trong lập trình nhúng, kiến trúc vi điều khiển là rất quan trọng. Hãy tìm hiểu về vi điều khiển, máy tính tích hợp trên một chip, được sử dụng để điều khiển các thiết bị điện tử.

Trong lập trình nhúng, kiến trúc vi điều khiển là rất quan trọng. Nếu nói lập trình là tạo ra trí thông minh cho máy tính, thì việc hiểu rõ cấu trúc, cấu tạo của máy tính sẽ giúp chúng ta hiểu cách vận hành của chúng. Từ đó điều khiển chúng một cách dễ dàng và mượt mà hơn.

Đây là những kiến thức bắt buộc phải học đối với mỗi một kĩ sư nhúng. Vậy, cùng tìm hiểu nhé!

Vi điều khiển là gì ?

Vi điều khiển là một máy tính được tích hợp trên một chip, nó thường được sử dụng để điều khiển các thiết bị điện tử. Vi điều khiển, thực chất, là một hệ thống bao gồm một vi xử lý có hiệu suất đủ dùng và giá thành thấp (khác với các bộ vi xử lý đa năng dùng trong máy tính) kết hợp với các khối ngoại vi như bộ nhớ, các module vào/ra, các module biến đổi số sang tương tự và tương tự sang số,…

Vi điều khiển thường được sử dụng để xây dựng các hệ thống nhúng. Nó cũng được sử dụng trong các thiết bị điện, điện tử như máy giặt, lò vi sóng, điện thoại, đầu đọc DVD, thiết bị đa phương tiện hay dây chuyền sản xuất tự động,…

Các họ vi điều khiển

Họ vi điều khiển Atmel

Đây là một dòng đã quá quen thuộc khi các bạn học vi điều khiển trên ghế nhà trường, điển hình của nó là họ 8051. Ngoài ra còn có các dòng như sau:

  • Dòng 8051 (8031, 8051, 8751, 8951, 8032, 8052, 8752, 8952)
  • Dòng Atmel AT91 (Kiến trúc ARM THUMB)
  • Dòng AT90, Tiny & Mega – AVR (Atmel Norway design)
  • Dòng Atmel AT89 (Kiến trúc Intel 8051/MCS51)
  • Dòng MARC4

Họ vi điều khiển STMicroelectronics

Đây là dòng chip chủ đạo trong các bài học của mình, đại diện chính là dòng STM32 huyền thoại

  • ST 62
  • ST7
  • STM8
  • STM32 (Cortex-Mx)

Họ vi điều khiển Microchip

Quá quen thuộc với các dòng PIC huyền thoại. VD:

  • PIC 8-bit (xử lý dữ liệu 8-bit, 8-bit data bus)
    • Từ lệnh dài 12-bit (Base-line): PIC10F, PIC12F và một vài PIC16F
    • Từ lệnh dài 14-bit (Mid-Range và Enhance Mid-Range): PIC16Fxxx, PIC16F1xxx
    • Từ lệnh dài 16-bit (High Performance): PIC18F
  • PIC 16-bit (xử lý dữ liệu 16-bit)
    • PIC điều khiển động cơ: dsPIC30F
    • PIC có DSC: dsPIC33F
    • Phổ thông: PIC24F, PIC24E, PIC24H
  • PIC 32-bit (xử lý dữ liệu 32-bit): PIC32MX

Các dòng vi điều khiển khác

Ngoài ra còn có các dòng ít gặp của các hãng khác như:

  • Họ vi điều khiển Cypress MicroSystems
  • Họ vi điều khiển AMCC (Applied Micro Circuits Corporation)
  • Họ vi điều khiển Freescale Semiconductor.
  • Họ vi điều khiển Intel
  • Họ vi điều khiển National Semiconductor
  • Họ vi điều khiển Philips Semiconductors

Phân loại vi điều khiển

Phân loại theo độ dài thanh ghi

Dựa vào độ dài của các thanh ghi và các lệnh của VĐK mà người ta chia ra các loại vi điều khiển 8 bit, 16 bit hay 32 bit …

Các loại VĐK 16 bit do có độ dài lệnh lớn hơn nên các tập lệnh cũng nhiều hơn, phong phú hơn. Tuy nhiên bất cứ chương trình nào viết băng VĐK 16 bit chúng ta đều có thể viết trên vi điều khiển 8 bit với chương trình thích hợp.

Phân loại theo kiến trúc CISC và RISC

Vi điều khiển CISC là vi điều khiển có tập lệnh phức tạp. Các VĐK này có một số lượng lớn các lệnh nên giúp cho người lập trình có thể linh hoạt và dễ dàng hơn khi viết chương trình.

Vi điều khiển RISC là vi điều khiển có tập lệnh đơn gian. Chúng có một số lượng nhỏ các lệnh đơn giản. Do đó, chúng đòi hỏi phần cứng ít hơn, giá thành thấp hơn, và nhanh hơn so với CISC. Tuy nhiên nó đòi hỏi người lập trình phải viết các chương trình phức tạp hơn, nhiều lệnh hơn.

Kiến trúc Harvard và kiến trúc Von-Neumann

Kiến trúc Harvard sử dụng bộ nhớ riêng biệt cho chương trình và dữ liệu. Bus địa chỉ và bus dữ liệu độc lập với nhau nên quá trình truyền nhận dữ liệu đơn giản hơn. Kiến trúc Von-Neumann sử dụng chung bộ nhớ cho chương trình và dữ liệu. Điều này làm cho VĐK gọn nhẹ hơn, giá thành rẻ hơn.

Tại sao chúng ta hay nhầm lẫn giữa vi điều khiển và vi xử lý

Chúng ta thường bị nhầm giữa vi điều khiển và vi xử lý. Vậy rốt cuộc chúng giống và khác nhau gì

Điểm giống nhau

Vi điều khiển và vi xử lý đều xử lý thông tin điều khiển sự hoạt động của máy tính hoặc mạch điện.

Chúng có kịch thước và hình dáng khá giống nhau.

Vì vậy nên sẽ rất dễ nhầm lẫn 2 khái niệm này với nhau. Vậy chúng khác nhau như thế nào?

Điểm khác biệt

Nếu ví vi điều khiển như một con người thì vi xử lý chính là bộ não.

  • Vi điều khiển có thể hoạt động độc lập, tương tác với thế giới bên ngoài bằng các ngoại vi như ADC, các chân IO, các chuẩn giao tiếp I2C, SPI,…. Còn vi xử lý chỉ có thể tiếp nhận thông tin, phân tích và điều khiển qua các bus dữ liệu.
  • Vi điều khiển là sự tích hợp của vi xử lý và nhiều các thành phần khác nhau nữa như bộ nhớ, ngoại vi, bộ định thời,… Đối với vi xử lý, để hoạt động được chúng cần có các bộ nhớ ngoài như RAM, ổ cứng,…. các bộ định thời như RTC…
  • Lập trình vi điều khiển thường được sử dụng để làm các thiết bị tự động, còn lập trình vi xử lý thường để làm các hệ điều hành dùng trong máy tính hoặc các sản phẩm tương tự máy tính. Tuy vậy vi xử lý cũng có thể sử dụng trong các thiết bị như máy tính nhúng, có thể kể đến như Ras PI, Jetson…
  • Vi xử lý sẽ quan trọng phần hiệu năng làm việc, vi xử lý càng có hiệu năng tốt thì càng mạnh mẽ, còn vi điều khiển sẽ quan trọng phần tối ưu giữa công xuất và hiệu năng, bởi các ứng dụng nhúng đôi khi không cần tốc độ làm việc quá cao mà sẽ quan tâm tới việc tiết kiệm năng lượng và ổn định.

Cấu trúc tổng quan của vi điều khiển

Cấu trúc vi điều khiển

CPU hay Vi xử lý

CPU (Center Programing Unit) hay bộ xử lý trung tâm là bộ não của vi điều khiển. CPU chịu trách nhiệm nạp lệnh, giải mã và thực thi. Tất cả những hành vi của vi điều khiển đều là do CPU điều khiển.

Chúng giao tiếp với các phần khác trong vi điều khiển thông qua hệ thống Bus.

Ocscillator Circuit

Nếu CPU là bộ não thì Ocscillator Circuit hay còn gọi là Clock được coi là trái tim của vi điều khiển. Để mọi thứ có thể hoạt động, bắt buộc chúng ta phải cấp xung, trái tim hoạt động mới có thể bơm máu cho toàn bộ cơ thể hoạt động được.

Chúng ta thường nghe quảng cáo dòng vi xư lý có tốc độ bao nhiêu Ghz gì gì đó, chính là tốc độ Clock mà vi xử lý đó có thể đáp ứng được, tốc độ xung càng cao thì tốc độ xử lý của CPU cũng tăng lên. Đương nhiên mọi thứ đều có giới hạn của nó.

Memory – Bộ nhớ

Bộ nhớ có thể coi là một phần không thể thiếu, chúng là nơi lưu trữ chương trình nạp lên hoặc dùng làm nơi chứa các thông tin tức thời mà CPU cần dùng tới. Có 2 kiểu bộ nhớ cơ bản:

  • RAM (Random access memory) là bộ nhớ lưu các dữ liệu mà CPU cần dùng để tính toán, đưa ra quyết định, chúng sẽ bị xóa khi mất điện
  • ROM/EPROM/EEPROM hoặc Flash: là bộ nhớ lưu trữ chương trình hay trí khôn của vi điều khiển, chúng được ghi khi chúng ta nạp chương trình vào vi điều khiển, không bị mất khi tắt điện hoặc reset.

Timer/counter

Một vi điều khiển có thể có nhiều bộ đếm thời gian và bộ đếm. Bộ đếm thời gian và bộ đếm có chức năng đếm thời gian tạo ra các sự kiện để vi điều khiển hoạt động đúng thời điểm.

Các ngoại vi của vi điều khiển

I/O Ports – Input/ouput

Có thể coi I/O Port là tay chân của vi điều khiển, chúng giúp cho vi điều khiển tương tác với các thành phần khác ngoài môi trường.

Cổng đầu vào / đầu ra được sử dụng chủ yếu điều khiển hoặc giao tiếp các thiết bị như màn hình LCD, đèn LED, máy in, …cho vi điều khiển.

Các chuẩn giao tiếp

Giống như miệng và tai vậy. Vi điều khiển sẽ sử dụng các chuẩn giao tiếp khác nhau để liên lạc với nhau hoặc liên lạc với các phâng tử khác trên mạch. Có thể kể đến như I2C, SPI, UART, USB, ….

Bộ chuyển đổi analog sang digital (ADC)

Bộ chuyển đổi ADC được sử dụng để chuyển đổi tín hiệu analog sang dạng digital. Tín hiệu đầu vào trong bộ chuyển đổi này phải ở dạng analog (ví dụ: đầu ra cảm biến) và đầu ra từ thiết bị này ở dạng digital. Đầu ra digital có thể được sử dụng cho các ứng dụng kỹ thuật số (ví dụ: các thiết bị đo lường).

Bộ chuyển đổi Digital sang Analog (DAC)

Hoạt động của DAC là đảo ngược của ADC. DAC chuyển đổi tín hiệu digital thành định dạng analog. Nó thường được sử dụng để điều khiển các thiết bị analog như động cơ DC, các ổ đĩa…

Interrupt control hay quản lý sự kiện

Ngoài việc thực thi chương trình, vi điều khiển còn phải tương tác với các tác nhân bên trong và bên ngoài. Các tác nhân này sẽ tạo ra các sự kiện gọi là Ngắt, để quản lý nó cần có một khối quản lý ngắt ( Interrupt control)

Special functioning block

Một số vi điều khiển chỉ được sử dụng cho một số ứng dụng đặc biệt (ví dụ: hệ thống không gian và rô bốt) các bộ điều khiển này có chứa các cổng bổ sung để thực hiện các hoạt động đặc biệt đó. Đây được coi là khối chức năng đặc biệt.

Tiếp cận với vi điều khiển như thế nào?

Vậy để bắt đầu lập trình vi điều khiển chúng ta cần làm những gì? Cùng tìm hiểu nhé!

Chọn dòng vi điều khiển nào?

Khi đặt câu hỏi này, chúng ta nghĩ ngay đến tính năng, số chân, và kích thước cần thiết của vi điều khiển. Và chúng ta phải lựa chọn được con vi điều khiển chúng ta cần dùng, tất nhiên kèm theo ngay sau đó là chúng ta có thể mua được nó nữa.

Tùy theo ứng dụng, giá cả, chức năng, độ ổn định chúng ta cần chọn cho mình một hoặc 2 loại để bắt đầu.

  • Nếu bạn muốn học sâu về vi điều khiển mình khuyên các bạn nên học từ những con đơn giản như 8051, lập trình sử dụng thanh ghi của nó. Bạn sẽ hiểu sâu về vi điều khiển, sau đó thì có thể chuyển qua dòng khác một cách rất đơn giản.
  • Nếu bạn muốn sử dụng nó để làm sản phẩm, các bạn có thể chọn STM32, STM8,…. Các dòng vi điều khiển này có bộ thư viện và công cụ giúp chúng ta làm sản phẩm 1 cách nhanh chóng.

Tham khảo: Học lập trình STM32 từ A tới Z

  • Nếu bạn muốn làm các ứng dụng IOT các bạn nên sử dụngc các chip có hỗ trợ các chuẩn truyền thông không dây (wifi, ble, zigbee…) như ESP32, ESP8266, NRF52832….

Tham khảo: Học lập trình ESP32 từ A tới Z

  • Còn nếu bạn chỉ muốn DIY các sản phẩm đơn giản hoặc dùng để làm quen với lập trình nhúng, các bạn có thể sử dụng Arduino hay các dòng có hỗ trợ thư viện Arduino.

Lập trình cho dòng vi điều khiển đó

Nếu vi điều khiển chỉ là thân xác, thì việc lập trình chính là các bạn đang tạo ra linh hồn cho nó.

Để lập trình vi điều khiển thì bắt buộc các bạn phải học ngôn ngữ C, vì ngôn ngữ C có thể can thiệp tới tầng thấp nhất của phần cứng, điều mà các ngôn ngữ khác không làm được.

Tham khảo: Lập trình C từ A tới Z

Bản chất của lập trình vi điều khiển chỉ là tạo ra các hành động cụ thể cho nó. Như việc con người chúng ta tương tác với thế giới xung quanh như thế nào vậy. Mọi thao tác đó được lập trình viên viết ra bằng ngôn ngữ lập trình C hoặc ngôn ngữ khác.
Sau đó ngôn ngữ đó được thông dịch lại cho vi điêu khiển hiểu, quá trình đó gọi là biên dịch. Thường thì sẽ tạo ra file .hex hoặc .bin

Muốn làm được điều này, các bạn cần có một trình biên dịch, hoặc môi trường lập trình tích hợp (IDE). Có thể kể đến như KeilC, Arduino, VScode, ….

Nạp chương trình

Bạn viết chương trình trên máy tính, bạn đã dịch ra được file thực thi .hex, để vi điều khiển có thể hiểu được bạn muốn làm gì. Vậy làm sao để đưa nội dung đó vào cho vi điều khiển?

Các bạn cần có một mạch nạp và một chương trình nạp phù hợp với mạch nạp đó. Công việc nạp được cụ thể hoá bằng việc cắm mạch nạp vào máy tính, bật chương trình nạp, load file .HEX vào chương trình nạp, lựa chọn vi điều khiển cần nạp, cài đặt các thông số nạp, và nạp vào vi điều khiên đó

Các mạch nạp có thể kể đến như: ST Link, JTAG, ISP, ….

Debug chương trình

Cuối cùng là công đoạn gian nan mà mỗi lập trình viên đều phải làm, đó là Debug. Hay nói các khác là sửa những lỗi lập trình khiển code của bạn không hoạt động đúng.

Một lập trình viên giỏi không phải là người viết code nhanh, viết đc nhiều code. Mà là người có thể fix đc hết Bug hoặc nhiều Bug nhất có thể.

Tham khảo: Các công cụ Debug trên Keil C

Ưu và nhược điểm của vi điều khiển

Ưu điểm của vi điều khiển

  • Những ưu điểm chính của vi điều khiển là:
  • Vi điều khiển hoạt động như một máy vi tính không có bất kỳ bộ phận kỹ thuật số nào.
  • Tích hợp cao hơn bên trong vi điều khiển làm giảm chi phí và kích thước của hệ thống.
  • Việc sử dụng vi điều khiển rất đơn giản, dễ khắc phục sự cố và bảo trì hệ thống.
  • Hầu hết các chân được lập trình bởi người dùng để thực hiện các chức năng khác nhau.
  • Dễ dàng kết nối thêm các cổng RAM, ROM, I/O.
  • Cần ít thời gian để thực hiện các hoạt động.

Nhược điểm của vi điều khiển

  • Vi điều khiển có kiến trúc phức tạp hơn so với vi xử lý.
  • Chỉ thực hiện đồng thời một số lệnh thực thi giới hạn.
  • Chủ yếu được sử dụng trong các thiết bị vi mô.
  • Không thể trực tiếp giao tiếp các thiết bị công suất cao.

Ưng dụng của vi điều khiển

Vi điều khiển hiện hữu trên rất nhiều mặt của cuộc sống.

Bạn có thể tìm thấy vi điều khiển trong tất cả các loại thiết bị điện tử hiện nay. Bất kỳ thiết bị nào liên quan đến đo lường, lưu trữ, điều khiển, tính toán hoặc hiển thị thông tin đều phải có chip vi điều khiển bên trong.

Ứng dụng lớn nhất của vi điều khiển là trong ngành công nghiệp ô tô (vi điều khiển được sử dụng rộng rãi để kiểm soát động cơ và điều khiển công suất trong ô tô).

Bạn cũng có thể tìm thấy vi điều khiển bên trong bàn phím, chuột, modem, máy in và các thiết bị ngoại vi khác. Trong thiết bị thử nghiệm, vi điều khiển giúp bạn dễ dàng thêm các tính năng như khả năng lưu trữ số đo, tạo và lưu trữ các thói quen của người dùng và hiển thị thông báo cũng như dạng sóng.

Sản phẩm tiêu dùng sử dụng bộ vi điều khiển bao gồm máy quay kỹ thuật số, đầu phát quang, màn hình LCD / LED…

Hay đến với thời đại 4.0 các bạn sẽ thấy vi điều khiển trong các thiết bị IOT, giúp con người kết nối mọi máy móc từ xa thông qua Internet

Kết

Hiểu được cấu trúc của vi điều khiển là một phần tất yếu khi học lập trình nhúng. Nếu bạn vẫn đang mông lung khi gặp các khái niệm mình đã nêu trên thì nên tìm hiểu kĩ càng lại từ đầu. Bởi nếu không hiểu chúng ta đang làm việc với cái gì, thì rất khó để làm nó chạy một cách chính xác, rất khó tìm ra lỗi, nguyên nhân khiến code của bạn không chạy.

Cám ơn bạn đã đón đọc, cùng vào hội Anh Em Nghiện Lập Trình để cùng trao đổi nhé

Ngành Kỹ thuật máy tính: Khái niệm, đào tạo và kiến thức cơ bản

Ngành Kỹ thuật máy tính kết hợp Điện tử và Công nghệ thông tin, tập trung nghiên cứu thiết bị và phần mềm. Sinh viên được đào tạo kiến thức cơ bản và chuyên sâu về ngành này.

Kỹ thuật máy tính là một ngành khá mới, với những thông tin sau đây hi vọng sẽ giúp ích cho các bạn trẻ trên hành trình chọn ngành học phù hợp với bản thân.

Khái niệm

Ngành Kỹ thuật máy tính (Computer Engineering) là ngành học có sự kết hợp giữa khối kiến thức Điện tử và khối kiến thức Công nghệ thông tin, tập trung nghiên cứu cách xây dựng và phát triển thiết bị cùng với đó là các phần mềm phục vụ cho sự hoạt động của các thiết bị phần cứng đó. Đây là ngành liên quan chặt chẽ đến vật lý, kỹ thuật điện và khoa học máy tính. Kỹ sư máy tính cần giải quyết các vấn đề giữa phần cứng và phần mềm, từ thiết kế các mạch điện tử đơn giản đến thiết kế vi xử lý, máy tính cá nhân và cả các siêu máy tính, đặc biệt là thiết kế các hệ thống nhúng dùng trong hầu hết các thiết bị điện – điện tử.

Sinh viên ngành Kỹ thuật máy tính được đào tạo gì

Chương trình đào tạo ngành này cung cấp những kiến thức cơ bản về toán học, vật lý, điện tử số, cơ sở dữ liệu và thuật toán, hệ thống thông tin. Đồng thời kết hợp kiến thức chuyên ngành về cơ chế kết nối, hạ tầng, điều khiển, vận hành hệ thống máy tính và mạng truyền dữ liệu. Cụ thể như sau:

  • Kiến thức nền tảng cũng như chuyên sâu về công nghệ thông tin nói chung và kỹ thuật máy tính nói riêng.
  • Kỹ năng thiết kế, xây dựng hệ thống phần cứng và phần mềm trong các lĩnh vực: điện tử, thiết kế vi mạch, hệ thống nhúng, robot, điều khiển tự động…
  • Kỹ năng lập trình trên thiết bị di động, tablet, máy tính, các hệ thống nhúng.
  • Năng lực
  • Kinh nghiệm làm việc trong môi trường thực tế thông qua 2 kỳ thực tập tại các doanh nghiệp, công ty hàng đầu trong lĩnh vực máy tính, vi mạch.

Với chương trình đào tạo trên, các bạn trẻ tốt nghiệp chuyên ngành Kỹ thuật máy tính sẽ có năng lực phát hiện và giải quyết các bài toán về xây dựng, triển khai phần cứng lẫn phần mềm của hệ thống máy tính ở các quy mô khác nhau.

Tố chất cần thiết để trở thành Kỹ thuật viên máy tính

  • Có niềm đam mê với công nghệ, máy tính, phần mềm.
  • Tư duy logic, kỹ năng xử lý tình huống linh hoạt.
  • Ham học hỏi, cập nhật xu hướng.
  • Có thể làm việc lâu dài với máy móc.
  • Kỹ năng làm việc độc lập và làm việc nhóm hiệu quả.
  • Có trình độ ngoại ngữ.

Công việc tương lai của ngành Kỹ thuật máy tính

  • Lập trình viên: hệ thống, các phần mềm nhúng trên thiết bị di động, vi xử lý…
  • Kỹ sư thiết kế mạch điện – điện tử, vi mạch, chip
  • Kỹ sư lắp đặt, quản lý và vận hành các hệ thống máy tính
  • Nhân viên kiểm thử ứng dụng, phần mềm nhúng
  • Nghiên cứu và giảng dạy tại các Viện nghiên cứu về CNTT, khoa học máy tính…

Google giới thiệu mô hình trí tuệ nhân tạo tiên tiến Gemini mới

Google đã giới thiệu mô hình trí tuệ nhân tạo tiên tiến Gemini của họ, có khả năng xử lý video, âm thanh và văn bản. Đây là một bước đột phá trong công nghệ AI.

Google hôm 6.12 đã giới thiệu mô hình trí tuệ nhân tạo tiên tiến nhất của mình, một mô hình có khả năng xử lý các dạng thông tin khác nhau như video, âm thanh và văn bản.

Trí tuệ nhân tạo mới của Google đã được ra mắt. Ảnh: Chụp màn hình

Alphabet, công ty mẹ của Google cho biết, mô hình AI được gọi là Gemini mới của công ty đã rất được mong đợi trong thời gian gần đây với khả năng suy luận và hiểu thông tin phức tạp. Đồng thời, nó có thể trả lời bằng nhiều sắc thái hơn so với công nghệ trước đây của Google.

Sundar Pichai – CEO của Alphabet – viết trong một bài đăng trên blog: “Mô hình mới này đại diện cho một trong những nỗ lực khoa học và kỹ thuật lớn nhất mà chúng tôi đã thực hiện với tư cách là một công ty”.

Kể từ khi ChatGPT của OpenAI ra mắt khoảng một năm trước, Google đã nỗ lực chạy đua để sản xuất một mô hình AI cạnh tranh với nó.

Google đã bổ sung một phần công nghệ của mô hình Gemini mới vào trợ lý AI Bard và cho biết, họ có kế hoạch phát hành phiên bản Gemini tiên tiến nhất thông qua Bard vào đầu năm tới.

Alphabet cũng thông tin thêm rằng, họ đang tạo ra ba phiên bản Gemini khác nhau, mỗi phiên bản được thiết kế để sử dụng một lượng sức mạnh xử lý khác nhau.

Theo đó, phiên bản mạnh nhất được thiết kế để chạy trong các trung tâm dữ liệu và phiên bản nhỏ nhất sẽ chạy hiệu quả trên thiết bị di động.

Gemini là mô hình AI lớn nhất mà đơn vị DeepMind AI của Google từng tạo ra, nhưng chi phí vận hành của nó lại rẻ hơn đáng kể so với các mô hình trước đây của công ty, Phó Chủ tịch DeepMind Eli Collins cho biết.

“Nó không chỉ có khả năng cao hơn mà còn hoạt động hiệu quả hơn nhiều” – ông Collins nói.

Alphabet cũng đã công bố thế hệ chip AI mới của mình. Chip Cloud TPU v5p được thiết kế để đào tạo các mô hình AI lớn và được ghép lại với nhau thành các nhóm gồm 8.960 chip nhỏ.

Hướng dẫn cấu hình Router Mikrotik trên mạng Viettel, VNPT, FPT

Trong bài viết này, chúng tôi sử dụng Router Mikrotik 750GR3 để kết nối Internet thông qua giao thức PPPoE. Sau đây chúng tôi sẽ hướng dẫn cách cấu hình Router Mikrotik trên mạng Viettel, VNPT, FPT. PPPoE (viết tắt của Point-to-Point Protocol over Ethernet) là giao thức kết nối điểm tới điểm qua công […]

Trong bài viết này, chúng tôi sử dụng Router Mikrotik 750GR3 để kết nối Internet thông qua giao thức PPPoE. Sau đây chúng tôi sẽ hướng dẫn cách cấu hình Router Mikrotik trên mạng Viettel, VNPT, FPT.

PPPoE (viết tắt của Point-to-Point Protocol over Ethernet) là giao thức kết nối điểm tới điểm qua công nghệ Ethernet, sử dụng khá phổ biến bởi các ISP (nhà cung cấp dịch vụ Internet). Giao thức này phổ biến đến nỗi tất cả các đường truyền Internet ngày nay chúng ta đang sử dụng, đều sử dụng giao thức PPPoE để hoạt động.
Hướng dẫn cách quay PPPOE Router Mikrotik trên mạng Viettel, VNPT, FPT.
Các ISP bây giờ đã và đang triển khai hệ thống mạng cáp quang FTTH tốc độ cao phủ sóng đến mọi miền của đất nước.

Thực ra, công nghệ PPPoE có một lợi thế hơn so với các công nghệ trước đây là khả năng kết nối nhiều luồng trên một sợi cáp và dữ liệu trên đó hoàn toàn tách biệt nhau, an toàn và bảo mật hơn. Ngoài ra, công nghệ này còn cho phép việc quản lí các kết nối tiện lợi hơn, dễ dàng tích hợp với các công nghệ bảo mật hiện đại sau này.

Hướng dẫn cách quay PPPOE Router Mikrotik trên mạng Viettel, VNPT, FPT.

Bước 1 chuẩn bị

Trước khi kết nối PPPoE, chúng tôi cần liên hệ với kỹ thuật viên nhà mạng tại khu vực hoặc các điểm giao dịch nhà mạng để tiến hành chuyển đổi chế độ hoạt động trên Modem sang chế độ Bridge Mode. Chế độ Bridge Mode được bật, thì Modem đóng vai trò là thiết bị chuyển đổi tín hiệu và không thực hiện các chức năng của Router. Chúng tôi sẽ kết nối PPPoE trên Router Mikrotik và biến thiết bị này thành bộ định tuyến trung tâm.

Sau khi chuyển đổi chúng ta có thông tài khoản của nhà mạng cấp cho khách hàng có kiểu tương tự như sau: ví dụ tài khoản để quay PPPOE của nhà mạng Viettel:

  • Username: hung_gftth_090
  • Password: vienthongaz2023

Thông tin này sử dụng để thực hiện quay số PPPoE trên Router Mikrotik.

  • Với nhà cung cấp dịch vụ Internet Viettel, bạn cần trao đổi kỹ với kỹ thuật nhà mạng (thông thường kỹ thuật viên là người hỗ trợ bạn chuyển đổi Modem về chế độ Bridge Mode) về việc có tạo VLAN 35 khi quay số PPPoE hay không.
  • Với nhà mạng FPT, bạn cần ghi nhận địa chỉ MAC cổng Ethernet của Router Mikrotik và gửi sang kỹ thuật để cập nhật trên thiết bị quản lí người dùng PPPEoE (BRAS).
  • Các bước khởi tạo VLAN35 hoặc xác định địa chỉ MAC Router được đề cập ở bước kế tiếp

Bước 2. Cấu hình trên Router Mikrotik.

Sau khi đã hoàn tất các bước trước đó, chúng ta kết nối cáp mạng Ethernet từ cổng Ether1 tới Modem, hãy đảm bảo đã cấp nguồn cho thiết bị Router Mikrotik thông qua bộ chuyển đổi nguồn AC-DC. Thiết bị này cũng hỗ trợ cấp nguồn qua PoE, nếu bạn hỏng bộ chuyển đổi nguồn, bạn có thể sử dụng cổng Ether1 để cấp nguồn cho Router.

– Tải công cụ điều khiển Router Mikrotik – Winbox.

Bạn có thể tải công cụ hoàn toàn miễn phí tại liên kết https://mikrotik.com/download.

Hướng dẫn cách cấu hình Router Mikrotik trên mạng Viettel, VNPT, FPT

  1. Kết nối máy tính với Router Mikrotik bằng cáp mạng Ethernet qua cổng Ether bất kỳ, chẳng hạn cổng Ether5.
  2. Mở công cụ Winbox đã tải về và chọn vào thẻ Neighbors: Địa chỉ MAC của Router xuất hiện. Chúng ta chọn vào địa chỉ MAC và nhấn Connect.

– Một cửa sổ thông báo xuất hiện, hiển thị các thông tin cấu hình mặc định được cài đặt sẵn từ nhà sản xuất.

Cấu hình mặc định này phù hợp với người dùng mới quen sử dụng Router Mikrotik. Mặc dù các thiết lập có sẵn này khá thuận tiện với người dùng, nhưng trong bài viết này chúng ta sẽ thiết lập từ đầu, với thiết bị chưa có bất kỳ thiết lập sẵn nào.
Nhấn OK để đóng cửa sổ này lại.

– Bước tiếp theo là khôi phục thiết bị về trạng thái xuất xưởng không có cấu hình.

Tại Menu System – Reset, chọn mục No Default Configuration, nhấn ô Reset Configuration và nhấn Yes để hoàn tất quá trình khôi phục.

Bước 3. Kết nối PPPoE (Hay là quay PPPOE) với nhà mạng Viettel, VNPT và FPT.

Với nhà mạng Viettel.

Có VLAN35 (Đối với khu vực không có VLAN35, thiết lập cài đặt PPPoE hoàn toàn tương tự với nhà mạng VNPT).

Sau khi quá trình Reset thành công, chúng ta kết nối Winbox trở lại thông qua địa chỉ MAC (trong thẻ Neighbors).

Chọn vào Menu Interfaces chọn Thẻ VLAN và nhấn dấu + để khởi tạo VLAN35.

Trong đó, mục Interfaces chọn  ether1 là cổng Ethernet mà chúng ta cần khởi tạo VLAN trên đó!. Mục VLAN ID=35 là chỉ số VLAN yêu cầu từ nhà mạng Viettel.

Trong cửa sổ Winbox, thiết lập kết nối PPPoE có trong Menu PPP – Thẻ Interfaces. Nhấn vào dấu + và chọn mục PPPoE Client để thêm một kết nối mới.

Kết nối Internet thành công, biểu tượng chữ “R” xuất hiện trước mục pppoe-out1.

Với nhà mạng VNPT.

  • Sau khi quá trình Reset thành công, chúng tôi kết nối Winbox trở lại thông qua địa chỉ MAC (trong thẻ Neighbors)
  • Trong cửa sổ Winbox, để thiết lập kết nối PPPoE có trong Menu PPP – Thẻ Interfaces.
  • Nhấn vào dấu + và chọn mục PPPoE Client để thêm một kết nối mới.

Trong đó, mục Interfaces chúng ta chọn ether1 là cổng Ethernet mà chúng tôi kết nối tới Modem nhà mạng (Kết nối Internet);

Mục User và Password là thông tin tài khoản PPPoE (Tài khoản này mình đã nhắc ở bước chuẩn bị)

Nhấn vào Apply để lưu lại và nhấn OK để đóng hộp thoại này.

Kết nối Internet thành công, biểu tượng chữ “R” xuất hiện trước mục pppoe-out1.

Nhà mạng FPT.

Sau khi quá trình Reset thành công, chúng tôi kết nối Winbox trở lại thông qua địa chỉ MAC (trong thẻ Neighbors)
Trong cửa sổ Winbox, chúng tôi chọn vào Menu Interfaces và chọn cổng Ether1. Địa chỉ MAC là:74:4D:28:45:BA:E1
Hãy gửi địa chỉ MAC này cho kỹ thuật viên nhà mạng FPT.

Trong cửa sổ Winbox, để thiết lập kết nối PPPoE có trong Menu PPP – Thẻ Interfaces; Nhấn vào dấu + và chọn mục PPPoE Client để thêm một kết nối mới.

Kết nối Internet thành công, biểu tượng chữ “R” xuất hiện trước mục pppoe-out1.

Bước 4. Gán các cổng trong mạng LAN, gán máy chủ DNS và khởi chạy dịch vụ DHCP Server.

Trong hướng dẫn này chúng ta sử dụng cổng ether1 để kết nối Internet và 4 cổng Ethernet còn lại sử dụng trong cùng mạng LAN. Một ý tưởng nảy sinh là tạo một nhóm và đưa các cổng này vào nhóm đó.
Tại Menu Bridge – Thẻ Bridge và nhấn dấu +. Ở thẻ General ở mục Name chúng ta đặt tên cho nhóm là BridgeLAN (Tên anh em có thể tùy đặt gì cũng được)

Di chuyển sang thẻ Port kế bên, thực hiện gán các cổng ether2, ether3, ether4 và ether5 vào nhóm BridgeLAN vừa khởi tạo.

Tab Port: Mục Interface chọn từng cổng từ ether2 đến ether5 (Làm 4 lần tương tự). Nhấn OK

Tiếp theo, chúng ta cần gán địa chỉ IP cho mạng LAN, chẳng hạn địa chỉ IP mạng LAN: 192.168.1.1/24 , ứng với số lượng dải IP sẽ cấp phát cho máy khách là 254 IP….

Tại Menu IP chọn Address:

Chúng ta lưu ý: Nếu bạn muốn tạo một mạng LAN để cấp cho 500 người dùng thì, thay vì bạn sử dụng 192.168.1.1/24, hãy sử dụng địa chỉ 192.168.1.1/23; nếu bạn mong muốn tạo ra dải địa chỉ IP cho 1000 người dùng, hãy gán địa chỉ IP: 192.168.1.1/22 và cũng thực hiện trong Menu IP – Address này.

Tiếp theo, chúng ta khởi chạy dịch vụ DHCP Server. Dịch vụ cấp phát địa chỉ IP tự động hay DHCP Server là dịch vụ cho phép Router Mikrotik tự động lựa chọn dải địa chỉ IP tự động để phân phối đến máy khách.

Tại Menu IP chọn DHCP Server, nhấn mục DHCP Setup.

Tại đây bạn nhập thông số như hình. Lưu ý ở mục DHCP Server Interface chọn nhóm BridgeLAN đã khởi tạo ở trên rồi nhấn Next, Next… để hoàn tất.

Tiếp theo, chúng ta cần NAT để cho phép mạng LAN có thể truy cập Internet thông qua kết nối PPPoE vừa khởi tạo trước đó. Bằng cách truy cập vào Menu IP – Firewall và chọn Thẻ NAT. Nhấn dấu +.

Lưu ý: Ở bước 6 là chọn cái Tên đã đặt ở mục quay PPPOE

Đến bước này là đã xong. Chúng ta tiến hành test mạng bằng cách vào một trang web bất kỳ. Ở 4 cổng Ether còn lại đều đã có mạng.

Bước 5. Cài đặt bảo mật Router Mikrotik và tối ưu hóa hiệu suất.

Trước tiên, bạn cần đổi mật khẩu truy cập vào Router Mikrotik. Mặc định tất cả các sản phẩm trong hệ sinh thái sử dụng hệ điều hành RouterOS của Mikrotik đều sử dụng chung thông tin đăng nhập vào RouterOS, tên truy cập (Username) = admin và mật khẩu (Password ) = để trống.

Để thay đổi mật khẩu, truy cập vào Menu System chọn User.

Tiếp theo, bạn cần tắt các dịch vụ không cần thiết trên Router Mikrotik, bằng cách truy cập vào Menu IP – Services.
Với người dùng cá nhân, chúng tôi khuyên bạn chỉ nên để dịch vụ Winbox(8291) để hoạt động. Các dịch vụ còn lại, bạn nên tắt.

Để giảm tải hiệu suất CPU, chúng ta nên sử dụng tính năng Fasttrack, có sẵn trên Tường lửa Mikrotik.
Tại Menu IP – Firewall và thẻ Filter Rules, nhấn dấu + để khởi tạo.

Python và các bước học lập trình Python trong 1 ngày

Nhắc đến ngôn ngữ lập trình phổ biến nhất thì Python luôn luôn được xếp trong top đầu trong hầu hết các bảng xếp hạng. Với sự phát triển của khoa học dữ liệu hiện nay, Python lại càng được ưa chuộng hơn nhờ tốc độ xử lý dữ liệu của mình. Bài viết hôm […]

Nhắc đến ngôn ngữ lập trình phổ biến nhất thì Python luôn luôn được xếp trong top đầu trong hầu hết các bảng xếp hạng. Với sự phát triển của khoa học dữ liệu hiện nay, Python lại càng được ưa chuộng hơn nhờ tốc độ xử lý dữ liệu của mình. Bài viết hôm nay mình sẽ cùng các bạn tìm hiểu xem Python là gì?các bước để tự học lập trình Python nhé.

Python là gì?

Hiểu đơn giản, Python là một ngôn ngữ lập trình bậc cao, mã nguồn mở và đa nền tảng. Python được Guido van Rossum giới thiệu vào năm 1991 và đã trải qua 3 giai đoạn phát triển khác nhau tương ứng với các version, mới nhất hiện nay là Python version 3x.

Ngay cả khi chưa đọc bài này chắc bạn cũng “hòm hòm” đoán được Python là gì rồi nhỉ. Tuy nhiên, bạn cần nhiều hơn về những thông tin liên quan đến Python. Nếu Python là ngôn ngữ lập trình thì nó có đặc điểm gì? Ứng dụng của nó ra sao? Học Python từ đâu? Bạn tiếp tục theo dõi các thông tin bên dưới nhé!

Đặc điểm của Python

Python được thiết kế với tư tưởng giúp người học dễ đọc, dễ hiểu và dễ nhớ; vì thế ngôn ngữ Python 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. Cấu trúc của Python 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, nói cách khác thì so với các ngôn ngữ lập trình khác, chúng ta có thể sử dụng ít dòng code hơn để viết ra một chương trình trong Python.

Ban đầu, Python được phát triển để chạy trên nền Unix, vì thế nó là mã nguồn mở. Sau này qua thời gian phát triển, Python mở rộng và hiện nay đã hỗ trợ hầu hết các nền tảng khác như Window hay MacOS. 

Python là một ngôn ngữ lập trình đa mẫu hình, nó hỗ trợ hoàn toàn mẫu lập trình hướng đối tượng và lập trình cấu trúc; ngoài ra về mặt tính năng, Python cũng hỗ trợ lập trình hàm và lập trình hướng khía cạnh. Nhờ vậy mà Python có thể làm được rất nhiều thứ, sử dụng trong nhiều lĩnh vực khác nhau.

Ứng dụng của Python

Python là ngôn ngữ được ứng dụng đa dạng trong các lĩnh vực.

  • Làm Web với các Framework của Python: Django và Flask là 2 framework phổ biến hiện nay dành cho các lập trình viên Python để tạo ra các website. 
  • Tool tự động hóa: các ứng dụng như từ điển, crawl dữ liệu từ website, tool giúp tự động hóa công việc được các lập trình viên ưu tiên lựa chọn Python để viết nhờ tốc độ code nhanh của nó.
  • Khoa học máy tính: Trong Python có rất nhiều thư viện quan trọng phục vụ cho ngành khoa học máy tính như: OpenCV cho xử lý ảnh và machine learning, Scipy và Numpys cho lĩnh vực toán học, đại số tuyến tính, Pandas cho việc phân tích dữ liệu, …
  • Lĩnh vực IoT: Python có thể viết được các ứng dụng cho nền tảng nhúng, đồng thời cũng được lựa chọn cho việc xử lý dữ liệu lớn. Vì thế Python là một ngôn ngữ quen thuộc trong lĩnh vực Internet kết nối vạn vật
  • Làm game: Pygame là một bộ module Python cross-platform được thiết kế để viết game cho cả máy tính và các thiết bị di động

Triết lý thiết kế Python?

Triết lý thiết kế của Python nằm trong câu châm ngôn: “chỉ nên có một và tốt nhất là chỉ một cách rõ ràng để làm việc này”. Thay vì việc tích hợp tất cả các tính năng vào phần cốt lõi, Python được thiết kế để dễ dàng mở rộng bằng các module, đồng thời trình thông dịch của Python cũng dễ dàng được mở rộng.

Nếu so về tốc độ độc lập, Python sẽ chậm hơn Java hay C, nhưng nếu bạn cần tốc độ, các bạn có thể chuyển các hàm đó sang các module mở rộng viết bằng C. Phần lõi của Python luôn hướng đến những cú pháp đơn giản, gọn gàng và sẽ luôn chứa chỉ một lời giải rõ ràng nhất cho bài toán của bạn.

Những thư viện và framework Python bạn nên biết

Thư viện Python

  • Matplotlib: thư viện giúp hiển thị dữ liệu dưới dạng đồ họa (2D và 3D) cho các ứng dụng khoa học máy tính
  • Pandas: thư viện giúp đọc, ghi, xử lý dữ liệu cho các tác vụ phân tích dữ liệu và machine learning
  • NumPy: thư viện giúp thực hiện các phép toán đại số tuyến tính
  • Requests: thư viện cung cấp các hàm hữu ích cho việc phát triển Web
  • OpenCV: thư viện cho các tác vụ liên quan đến xử lý ảnh
  • Keras: thư viện mạng Neural cho việc xử lý dữ liệu

 Framework Python

  • Django: framework fullstack phát triển ứng dụng Web trên quy mô lớn
  • Flask: framework micro để phát triển các ứng dụng Web nhỏ
  • TurboGears: framework phát triển Web
  • Apache MXNet: framework xây dựng các ứng dụng Deep Learning
  • Pytorch: framework xây dựng dựa trên thư viện Torch giúp xây dựng  các ứng dụng NLP, xử lý ảnh, …

Các bước để bắt đầu tự học Python.

Như đã đề cập ở trên, Python là một ngôn ngữ lập trình dễ học và gần gũi với lập trình viên. Python dễ học nhưng lại có thể làm được rất nhiều thứ, vì thế trước khi bắt đầu bước vào thế giới Python, hãy lựa chọn cho mình hướng phát triển sau này.

Nếu muốn học Python để làm web, hãy tìm hiểu các framework như Django hay Flask; nếu muốn trở thành một Data Analyst, hãy tìm hiểu các thư viện phân tích dữ liệu sẵn có của Python.

Tiếp theo, bạn hãy bắt đầu bằng những project nhỏ để có thể training cú pháp, khái niệm, câu lệnh cơ bản của Python. Python cũng có hầu hết các kiểu dữ liệu cơ bản, các function trong các ngôn ngữ lập trình khác, dù vậy thì cách sử dụng, các case study tất nhiên sẽ khác nhau phụ thuộc vào từng bài toán mà bạn gặp phải.

Vì thế hãy luyện tập bằng cách giải quyết các bài toán lập trình bằng các project nhỏ, chúng sẽ giúp bạn không mất thời gian khi vào thực tế các project lớn hơn của bạn hay khách hàng.

Tập trung vào tìm hiểu các thư viện, module trong Python. Có thể nói mỗi thư viện của Python là một tập hợp các function xử lý hầu hết các bài toán trong một lĩnh vực nhất định – đấy cũng là điểm mạnh giúp Python khác biệt so với các ngôn ngữ khác. Vì vậy, việc nắm bắt, hiểu rõ các function trong một thư viện là điều bắt buộc nếu bạn muốn làm việc với Python.

Chẳng hạn nếu bạn sử dụng thư viện OpenCV để xử lý ảnh trong Python, gần như tất cả các giải thuật về xử lý ảnh đã được tích hợp trong đó, bạn chỉ cần gọi hàm, truyền tham số và sử dụng. Hiểu đúng về giải thuật cũng như tham số truyền vào sẽ giúp bạn sử dụng đúng và hiệu quả để giải quyết bài toán của mình.

Kết bài

Với Python, bạn có thể làm được tất cả mọi thứ – đây là câu mô tả không hề quá khi nói về ngôn ngữ lập trình này. Hy vọng bài viết này đã mang lại cho các bạn những thông tin hữu ích để trả lời cho câu hỏi Python là gì? và nếu có dự định trở thành một lập trình viên Python, đừng bỏ qua các bước tự học Python ở trên.

Hoặc, bạn có thể tham khảo tin tuyển dụng Python mọi cấp độ tại đây, để có thể hình dung về những nhiệm vụ, yêu cầu của một lập trình viên Python nhé!

Cảm ơn các bạn đã đọc, hẹn gặp lại trong các bài viết tiếp theo của mình.

Photoshop: Hướng dẫn cơ bản

  Nội dung bài viết Giới thiệu chung về Photoshop Photoshop sử dụng được trên những thiết bị nào? Kiến thức cơ bản về Photoshop: Hướng dẫn cài đặt Kiến thức cơ bản về Photoshop: Hướng dẫn sử dụng  Đăng nhập tài khoản Các cài đặt ban đầu Điều chỉnh giao diện Kiến thức cơ […]

Dù ra mắt đã lâu nhưng cho đến nay, Photoshop vẫn chễm chệ nằm trong top những phần mềm “đỉnh” nhất trong lĩnh vực thiết kế đồ họa. Bạn là một newbie muốn nắm bắt các kiến thức cơ bản về Photoshop và sử dụng nó để tạo ra những bản thiết kế của riêng mình? Vậy thì bài viết dưới đây là dành cho bạn đó. Cùng chúng mình tìm hiểu ngay nào!

Giới thiệu chung về Photoshop

Adobe Photoshop là một phần mềm chỉnh sửa ảnh raster được các designer, thậm chí là các họa sĩ và nhiếp ảnh gia chuyên nghiệp vô cùng ưa thích. Photoshop có rất nhiều chức năng phục vụ công cuộc thiết kế của bạn, trong đó quan trọng nhất phải kể tới đó là tạo, cắt ghép và chỉnh sửa ảnh.

Photoshop sử dụng được trên những thiết bị nào?

Để có thể vận dụng các kiến thức cơ bản về Photoshop, bạn cần một chiếc máy tính có bộ xử lý và card đồ họa tương đối mạnh mẽ. Phần mềm hỗ trợ cả hai hệ điều hành là macOS và Windows. CPU core i5, RAM 8GB, ổ cứng kết hợp là những điều kiện cần để Photoshop có thể chạy mượt mà trên thiết bị của bạn.

Ngoài ra, một số công cụ riêng biệt trong Photoshop cũng được Adobe tạo thành các ứng dụng riêng như: Photoshop Lightroom, Photoshop Mix, Photoshop Sketch, Photoshop Express. Chúng đặc biệt nhẹ nên bạn có thể tải về và sử dụng ngay trên điện thoại di động.  

Kiến thức cơ bản về Photoshop: Hướng dẫn cài đặt

Trước khi làm quen với các kiến thức cơ bản về Photoshop, bạn cần phải tải phần mềm về thiết bị. Hiện nay, có rất nhiều bài viết, video hướng dẫn cài đặt Photoshop bản crack cho PC. Ngoài vấn đề vi phạm bản quyền thì nó cũng tiềm ẩn nguy cơ lây nhiễm virus rất lớn cho thiết bị cho bạn. Vì thế, chúng mình khuyên bạn nên sử dụng phiên bản Photoshop chính thức có trả phí được tải trực tiếp từ Adobe.

Bạn truy cập vào adobe.com, tạo tài khoản rồi chọn biểu tượng Photoshop và nhấp vào “Free Trial”. Trang web sẽ cho bạn lựa chọn các gói thanh toán với giá tiền khác nhau. Chọn phương thức thanh toán, tải về là bạn đã có thể sử dụng ứng dụng.

Ngoài ra, nếu bạn có nhu cầu sử dụng nhiều hơn các ứng dụng đến từ Adobe, hãy mua gói Adobe Creative Cloud để tiết kiệm chi phí.

Kiến thức cơ bản về Photoshop: Hướng dẫn sử dụng 

Đăng nhập tài khoản

Tài khoản được đăng nhập qua email và bạn KHÔNG thể sử dụng chung một tài khoản đồng thời trên nhiều thiết bị. 

Các cài đặt ban đầu

Các thiết lập ban đầu bao gồm việc sắp xếp không gian làm việc. Chương trình cho phép bạn chọn, hiển thị bất kỳ công cụ và chức năng nào trên menu chính. Việc sắp xếp bộ công cụ phù hợp sẽ giúp tiết kiệm thời gian thiết kế, nhất là đối với những người mới bắt đầu. 

Điều chỉnh giao diện

Có 4 tùy chọn màu sắc cho giao diện (nền làm việc của chương trình): xám nhạt, xám đen, đen và trắng. Để màu sắc của hình ảnh hiển thị chính xác hơn, mình khuyên bạn nên chọn giao diện xám nhạt. Bạn cũng có thể điều chỉnh một số chức năng như:

  • Brush: Tùy chỉnh bàn chải để vẽ.
  • Bảng hiển thị: Tắt các cửa sổ không cần thiết
  • Lựa chọn đơn vị đo lường: Để đổi inch thành milimet, hãy chọn vào “Đơn vị và thước”. Thao tác này sẽ tạo điều kiện cho việc định hướng thêm trên trang tính.

Kiến thức cơ bản về Photoshop: menu chính

Menu chính bao gồm 10 nhóm lệnh:

  • “File”. Bao gồm các lệnh nhằm mục đích làm việc với các tài liệu bên ngoài (“Lưu”, “Xuất”, “In”, v.v.).
  • “Edit”. Các tùy chọn của nhóm này phụ trách các cài đặt chung khi làm việc với đối tượng đang được chỉnh sửa.
  • “Image”: Chỉnh sửa hình ảnh
  • “Layer”: làm việc với các lớp.
  • “Type”: các công cụ liên quan đến chữ
  • “Select”. Làm việc với các đường viền và điều chỉnh độ rõ nét của một đối tượng.
  • “Filter”. Danh sách các hiệu ứng có thể được áp dụng cho bitmap. Nếu cần, các tài nguyên bổ sung có thể được tải xuống từ Internet.
  • “View”: Tùy chọn cách đối tượng sẽ được hiển thị trên màn hình.
  • “Window”: Điều chỉnh số lượng công cụ trên không gian làm việc.
  • “Help”. Một nhóm lưu trữ tất cả thông tin về chương trình.

Các thao tác và công cụ chính trong Photoshop

Mở ảnh

Cách 1: File => Open

Cách 2: Dùng phím tắt Ctrl + O.

Thay đổi độ phân giải

Kiểm tra chất lượng hình ảnh là bước quan trọng trước khi tiến hành các thao tác khác, đặc biệt là trong thiết kế in ấn. Điều này đảm bảo hình ảnh sẽ không bị kém chất lượng khi in (cần 300 pixel / inch để in).

Layer

  • Tạo Layer: Ấn vào biểu tượng cùng tên ở cuối bảng điều khiển hoặc dùng phím tắt “Ctrl + Shift + N”.
  • Xóa layer: Chọn layer cần xóa sau đó kéo đến biểu tượng thùng rác. 
  • Di chuyển: Bạn có thể thay đổi thứ tự layer bằng cách ấn giữ chuột vào layer đó rồi di chuyển lên hoặc xuống. 
  • Sao chép. Sử dụng phím tắt “Ctrl + J” hoặc nút “Copy” trong menu chuột phải.

Hủy bỏ các hành động

Tổ hợp “Ctrl + Z” sẽ giúp bạn quay lại một bước. Trong phần “History”, bạn có thể hoàn tác bất kỳ hành động nào đã được thực hiện trước đó. “Alt + Ctrl + Z” sẽ hoàn tác nhiều lần và “Shift + Ctrl + Z” sẽ khôi phục chúng.

Văn bản và phông chữ

Sử dụng công cụ Type để thêm chữ, sau đó bắt đầu nhập. Bạn có thể điều chỉnh font chữ, kích thước của các chữ cái. Để chỉnh sửa chi tiết, hãy nhấn “Window” – “Paragraph” .

Trong Photoshop, phông chữ có thể được tải xuống từ tài nguyên của bên thứ ba. Bạn chỉ cần cài đặt các phông chữ trên máy tính như thông thường, nó sẽ tự động được sử dụng trong Photoshop. 

Lưu hình ảnh

Bạn có thể đặt định dạng tài liệu (JPEG, TIFF, PSD, PDF) và đặt nó vào thư mục mong muốn thông qua nút tắt “Save As” trong nhóm “File”.

Trong bài viết trên, chúng mình đã giới thiệu đến bạn những kiến thức cơ bản về Photoshop. Tuy nhiên, để có thể tìm hiểu chuyên sâu về phần mềm này, bạn sẽ cần nhiều thời gian và tâm huyết hơn nữa. Đặc biệt, nếu có một người thầy bên cạnh, mình tin chắc rằng hành trình học Photoshop của bạn sẽ đơn giản và bớt trừu tượng đi rất nhiều.

Tìm hiểu về Deep Learning: Ứng dụng, thuật toán và kỹ thuật phổ biến

Deep Learning là một chức năng của trí tuệ nhân tạo (AI) tạo ra các mẫu từ dữ liệu và đưa ra quyết định. Bài viết này giải thích về Deep Learning và các thuật toán phổ biến trong lĩnh vực này.

Deep Learning là một chức năng của trí tuệ nhân tạo (AI), bắt chước cách bộ não con người hoạt động để xử lí dữ liệu, tạo ra các mẫu để sử dụng cho việc đưa ra quyết định. Vậy Deep Learning là gì? Bài viết này sẽ cung cấp những kiến thức cơ bản nhất về Deep Learning, ứng dụng của nó cũng như một số thuật toán và kỹ thuật phổ biến trong lĩnh vực này.

Deep Learning là gì?

Deep Learning (học sâu) có thể được xem là một lĩnh vực con của Machine Learning (học máy) – ở đó các máy tính sẽ học và cải thiện chính nó thông qua các thuật toán. Deep Learning được xây dựng dựa trên các khái niệm phức tạp hơn rất nhiều, chủ yếu hoạt động với các mạng nơ-ron nhân tạo để bắt chước khả năng tư duy và suy nghĩ của bộ não con người.
Thật ra các khái niệm liên quan đến mạng nơ-ron nhân tạo và Deep Learning đã xuất hiện từ khoảng những năm 1960, tuy nhiên nó lại bị giới hạn bởi khả năng tính toán và số lượng dữ liệu lúc bấy giờ. Trong những năm gần đây, những tiến bộ trong phân tích dữ liệu lớn (Big Data) đã cho phép ta tận dụng được tối đa khả năng của mạng nơ-ron nhân tạo.

Mạng nơ-ron nhân tạo chính là động lực chính để phát triển Deep Learning. Các mạng nơ-ron sâu (DNN) bao gồm nhiều lớp nơ-ron khác nhau, có khả năng thực hiện các tính toán có độ phức tạp rất cao. Deep Learning hiện đang phát triển rất nhanh và được xem là một trong những bước đột phá lớn nhất trong Machine Learning. Trong phần dưới đây, Vietnix sẽ làm rõ khái niệm Deep Learning là gì thông qua cơ chế hoạt động, ưu và nhược điểm của nó.

Deep Learning là một phương pháp của Machine Learning. Mạng nơ-ron nhân tạo trong Deep Learning được xây dựng để mô phỏng khả năng tư duy của bộ não con người.

Một mạng nơ-ron bao gồm nhiều lớp (layer) khác nhau, số lượng layer càng nhiều thì mạng sẽ càng “sâu”. Trong mỗi layer là các nút mạng (node) và được liên kết với những lớp liền kề khác. Mỗi kết nối giữa các node sẽ có một trọng số tương ứng, trọng số càng cao thì ảnh hưởng của kết nối này đến mạng nơ-ron càng lớn.

Mỗi nơ-ron sẽ có một hàm kích hoạt, về cơ bản thì có nhiệm vụ “chuẩn hoá” đầu ra từ nơ-ron này. Dữ liệu được người dùng đưa vào mạng nơ-ron sẽ đi qua tất cả layer và trả về kết quả ở layer cuối cùng, gọi là output layer.
Trong quá trình huấn luyện mô hình mạng nơ-ron, các trọng số sẽ được thay đổi và nhiệm vụ của mô hình là tìm ra bộ giá trị của trọng số sao cho phán đoán là tốt nhất.

Các hệ thống Deep Learning yêu cầu phần cứng phải rất mạnh để có thể xử lý được lượng dữ liệu lớn và thực hiện các phép tính phức tạp. Nhiều mô hình Deep Learning có thể mất nhiều tuần, thậm chí nhiều tháng để triển khai trên những phần cứng tiên tiến nhất hiện nay.

Ưu nhược điểm của Deep Learning

Dưới đây là một số ưu và nhược điểm của Deep Learning:

Ưu điểm

Deep Learning là một bước ngoặt to lớn trong lĩnh vực trí tuệ nhân tạo, cho phép khác nhà khoa học dữ liệu xây dựng nhiều mô hình có độ chính xác rất cao trong lĩnh vực nhận dạng ảnh, xử lý ngôn ngữ tự nhiên, xử lý giọng nói,… Một số ưu điểm vượt trội của Deep Learning gồm có:

  • Kiến trúc mạng nơ-ron linh hoạt, có thể dễ dàng thay đổi để phù hợp với nhiều vấn đề khác nhau.
  • Có khả năng giải quyết nhiều bài toán phức tạp với độ chính xác rất cao.
  • Tính tự động hoá cao, có khả năng tự điều chỉnh và tự tối ưu.
  • Có khả năng thực hiện tính toán song song, hiệu năng tốt, xử lý được lượng dữ liệu lớn.

Nhược điểm

Bên cạnh những ưu điểm, mặt khác, hiện nay Deep Learning vẫn còn nhiều khó khăn và hạn chế, chẳng hạn như:

  • Cần có khối lượng dữ liệu rất lớn để tận dụng tối đa khả năng của Deep Learning.
  • Chi phí tính toán cao vì phải xử lý nhiều mô hình phức tạp.
  • Chưa có nền tảng lý thuyết mạnh mẽ để lựa chọn các công cụ tối ưu cho Deep Learning.

Deep Learning giải quyết những vấn đề gì?

Kiến trúc mạng nơ-ron trong Deep Learning được ứng dụng trong các công việc yêu cầu sức mạnh tính toán cao, xử lý nhiều dữ liệu và độ phức tạp lớn. Trong phần này, ta sẽ cùng tìm hiểu 5 ứng dụng thân thuộc nhất của Deep Learning trong đời sống hàng ngày:

Xe tự lái

Một trong những công nghệ mới và hấp dẫn nhất hiện nay là xe tự động lái, nó được xây dựng dựa trên các mạng nơ-ron cấp cao. Nói một cách đơn giản, các mô hình Deep Learning sẽ nhận diện các đối tượng ở môi trường xung quanh xe, tính toán khoảng cách giữa xe và các phương tiện khác, xác định vị trí làn đường, tín hiệu giao thông,… từ đó đưa ra được các quyết định tối ưu và nhanh chóng nhất. Một trong những hãng xe tiên phong trong việc sản xuất xe tự lái hiện nay là Tesla

Phân tích cảm xúc

Đây là lĩnh vực phân tích cảm xúc của con người thông qua việc xử lý ngôn ngữ tự nhiên, phân tích văn bản và thống kê. Các công ty có thể ứng dụng Deep Learning để hiểu và phán đoán cảm xúc của khách hàng dựa trên những đánh giá, bình luận, tweet,… từ đó đưa ra những chiến lược kinh doanh và marketing phù hợp với từng nhóm đối tượng.

Trợ lý ảo

Trợ lý ảo đang được ứng dụng rất nhiều trong đời sống hàng ngày, trong đó phổ biến gồm có chatbot, giảng viên online, Google Assistant, Siri, Cortana,… Các trợ lý ảo được xây dựng dựa trên Deep Learning với các thuật toán nhận diện văn bản, xử lý ngôn ngữ tự nhiên, nhận dạng giọng nói.

Mạng xã hội

Một số nền tảng mạng xã hội lớn như Twitter cũng ứng dụng các thuật toán Deep Learning để cải thiện các dịch vụ của mình. Cụ thể, những trang này sẽ phân tích một lượng lớn dữ liệu thông qua mạng nơ-ron nhân tạo để tìm hiểu về các tuỳ chọn của người dùng. Ngoài ra, Instagram cũng sử dụng Deep Learning để tránh các hành vi bạo lực trên không gian mạng, chặn các bình luận vi phạm, không phù hợp,…

Facebook cũng không nằm ngoài danh sách các mạng xã hội ứng dụng Deep Learning vào sản phẩm của mình. Các thuật toán mạng nơ-ron sâu được sử dụng để gợi ý trang, bạn bè, dịch vụ, nhân diện khuôn mặt,…

Chăm sóc sức khoẻ

Deep Learning cũng có đóng góp không nhỏ vào lĩnh vực y tế, trong đó phổ biến gồm có các mô hình dự đoán tình trạng bệnh, chẩn đoán ung thư, phân tích kết quả MRI, X-ray,…

Khi nào nên sử dụng Deep Learning?

Tiến sĩ Scott Clark, đồng sáng lập và CEO của SigOpt, cho rằng Deep Learning hiệu quả nhất đối với các dữ liệu không tuân theo một cấu trúc cụ thể. Một số ví dụ phổ biến gồm có văn bản, video, hình ảnh hay dữ liệu dạng thời gian. Các thuật toán Deep Learning có khả năng tự động xây dựng và khai thác các mẫu có trong dữ liệu để đưa ra được quyết định tối ưu. Tuy nhiên, việc này cần rất nhiều dữ liệu và tài nguyên tính toán để có được độ chính xác tốt nhất.
Mỗi mô hình mạng nơ-ron nhân tạo có thể bao gồm hàng trăm, thậm chí hàng triệu tham số khác nhau. Vì vậy việc tối ưu các tham số này đòi hỏi người xây dựng mô hình phải có kiến thức chuyên sâu và nhiều kinh nghiệm. Bên cạnh đó, các mạng nơ-ron nhân tạo sử dụng nhiều hàm phi tuyến có độ phức tạp cao nên việc hiểu và diễn giải các kết quả từ mô hình cũng là một thách thức lớn với các chuyên gia. Vì vậy, với những dự án yêu cầu nhiều tương tác và phản hồi từ con người thì Deep Learning không hẳn là một lựa chọn lý tưởng.

Có nên sử dụng Deep Learning thay cho Machine Learning?

Mặc dù có hiệu năng và độ chính xác vượt trội nhờ vào nhiều mô hình phức tạp và nguồn dữ liệu khổng lồ, Deep Learning không hẳn là lựa chọn duy nhất cho các bài toán trong lĩnh vực trí tuệ nhân tạo và học máy. Việc quyết định có nên ứng dụng Deep Learning hay không phụ thuộc phần lớn vào mục tiêu và chiến lược kinh doanh cụ thể, số lượng dữ liệu, tài nguyên,… Vậy những yếu tố nên cân nhắc trước khi quyết định sử dụng các mô hình Deep Learning là gì? Hãy cùng tìm hiểu tiếp ở trong phần dưới đây.

Độ phức tạp và mục tiêu của dự án

Một trong những lợi thế lớn nhất của Deep Learning chính là khả năng giải quyết các vấn đề phức tạp, phân tích và học được những mỗi quan hệ ẩn trong dữ liệu. Deep Learning đặc biệt hữu ích nếu dự án cần xử lý nhiều dữ liệu ở dạng phi cấu trúc, chẳng hạn như phân loại hình ảnh, xử lý ngôn ngữ tự nhiên, nhận diện giọng nói,…

Mặt khác, đối với những vấn đề có độ phức tạp vừa phải, không yêu cầu nặng về mặt tính toán, ít tài nguyên và dữ liệu,… thì các thuật toán Machine Learning sẽ là một lựa chọn hợp lý hơn.

Tài nguyên

Bùng nổ dữ liệu lớn trong những năm gần đây đã giúp việc xây dựng các mô hình Deep Learning trở nên dễ dàng hơn. Tuy nhiên, đây vẫn là một lĩnh vực vô cùng phức tạp và tốn kém. Vì phải xử lý lượng dữ liệu vô cùng lớn nên các mô hình Deep Learning thường rất nặng về mặt tài nguyên tính toán và GPU để có được hiệu năng tốt nhất.

Mặt khác, những thuật toán Machine Learning cổ điển chỉ cần một CPU và phần cứng vừa phải, tốc độ nhanh hơn và có thể dễ dàng thử nghiệm nhiều kỹ thuật, mô hình khác nhau mà không cần lo ngại về tài nguyên và thời gian tính toán.

Số lượng dữ liệu

Thuật toán Deep Learning có thể tìm ra được các mối quan hệ ẩn sâu trong những bộ dữ liệu. Tuy nhiên việc này cũng đồng nghĩa với lượng dữ liệu đầu vào (dữ liệu đã được gán nhãn) phải lớn hơn nhiều so với các thuật toán Machine Learning. Việc gán nhãn dữ liệu cũng yêu cầu nguồn lực và thời gian lớn, đặc biệt là trong lĩnh vực y tế phải yêu cầu chuyên môn cao mới có khả năng gán nhãn dữ liệu chính xác. Trong những trường hợp này, ta có thể nghĩ đến việc sử dụng các thuật toán Machine Learning cổ điển thay vì Deep Learning.

Các kỹ thuật Deep Learning

Có rất nhiều kỹ thuật và thuật toán Deep Learning khác nhau, từ đơn giản đến vô cùng phức tạp, có thể ứng dụng vào hầu hết các bài toán trong lĩnh vực trí tuệ nhân tạo hiện nay. Ở phần cuối của bài viết, ta sẽ tìm hiểu một số kỹ thuật Deep Learning phổ biến nhất hiện nay.

Mạng nơ-ron cổ điển

Kiến trúc cổ điển của mạng nơ-ron là mạng kết nối đầy đủ, thường được xác định bằng các perceptron đa lớp. (Perceptron là một thuật toán đơn giản, cho phép tìm một ranh giới siêu phẳng cho các bài toán phân lớp nhị phân). Mạng nơ-ron cổ điển được thiết kế bởi Fran Rosenblatt vào năm 1958, chủ yếu được sử dụng cho các bài toán phân lớp nhị phân. Có ba loại hàm thường được sử dụng trong mô hình này là:

  • Hàm tuyến tính.
  • Hàm phi tuyến: gồm có hàm sigmoid, hàm tanh và hàm ReLU (Rectified Linear Unit).

Kiến trúc mạng nơ-ron cổ điển tương đối đơn giản, phù hợp nhất với các bộ dữ liệu có dạng bảng hoặc những bài toán phân loại, hồi quy có đầu vào là giá trị thực.

Mạng nơ-ron tích chập (CNN)

Mạng nơ-ron tích chập (Convolutional Neural Network – CNN) là một kiến trúc Neural Network nhân tạo nâng cao, được xây dựng để giải quyết các bài toán phức tạp, đặc biệt là liên quan đến xử lý hình ảnh.

Tích chập là một khái niệm trong xử lý tín hiệu số nhằm biến đổi thông tin đầu vào qua một phép tích chập với bộ lọc, nhằm trả về đầu ra là một tín hiệu mới. Tín hiệu này sẽ giảm bớt những đặc trưng mà bộ lọc không quan tâm, giữ lại những đặc trưng chính và quan trọng nhất.

Bên cạnh input layer và output layer, mô hình CNN còn có thêm một sampling layer để giới hạn số lượng nơ-ron tham gia vào các layer tương ứng. Việc xây dựng mô hình trải qua ba giai đoạn chính:

  • Quá trình tích chập (convolution): Thông qua các tích chập giữa ma trận đầu vào với bộ lọc để tạo thành các đơn vị trong một tầng mới. Quá trình này có thể diễn ra liên tục ở phần đầu của mạng và thường sử dụng kèm với hàm kích hoạt ReLU. Mục tiêu của tầng này là trích suất đặc trưng hai chiều.
  • Quá trình tổng hợp (max pooling): Giảm kích thước khối ma trận đầu vào thông qua việc tìm ra 1 giá trị đại diện cho mỗi một vùng không gian mà bộ lọc đi qua sẽ không làm thay đổi các đường nét chính của bức ảnh nhưng lại giảm được kích thước của ảnh.
  • Quá trình kết nối hoàn toàn (fully connected): Sau khi đã giảm kích thước đến một mức độ hợp lý, ma trận cần được trải phẳng (flatten) thành một vector và sử dụng các kết nối hoàn toàn giữa các tầng. Tầng kết nối hoàn toàn cuối cùng (fully connected layer) sẽ có số lượng đơn vị bằng với số lớp.

Dựa vào những đặc điểm của mình, các ứng dụng phổ biến nhất của mạng CNN gồm có: Nhận diện, phân tích và phân khúc hình ảnh, phân tích video, xử lý ngôn ngữ tự nhiên,…

Mạng nơ-ron hồi quy (RNN)

Recurrent Neural Network (RNN) là một thuật toán nổi tiếng trong lĩnh vực xử lý ngôn ngữ tự nhiên. Trong các mô hình mạng nơ-ron truyền thống, đầu vào và đầu ra độc lập với nhau, tuy nhiên RNN thực hiện cùng một tác vụ cho tất cả phần tử của một chuỗi với đầu ra phụ thuộc vào cả các phép tính trước đó. Vì vậy mạng RNN có khả năng nhớ các thông tin được tính toán trước đó.

Có hai thiết kế chính của RNN:

  • LSTM (Long Short-Term Memory): Được dùng để dự đoán dữ liệu dạng chuỗi thời gian, có khả năng bỏ đi hoặc thêm các thông tin cần thiết, được điều chỉnh bởi các nhóm được gọi là cổng (gate): Input, Output và Forget.
  • Gated RNN: Cũng là một thiết kế phổ biến trong lĩnh vực dự đoán dữ liệu của chuỗi thời gian, có hai cổng là Update và Reset.

Các dạng bài toán RNN:

  • One to one: Chỉ có một input kết nối với một output duy nhất, chẳng hạn như các bài toán phân loại hình ảnh.
  • One to many: Một input liên kết với nhiều chuỗi output, phổ biến là các bài toán đặt caption cho ảnh.
  • Many to One: Nhiều input nhưng chỉ có output, ví dụ phổ biến là bài toán phân loại cảm xúc.
  • Many to many: Nhiều input và nhiều output, chẳng hạn như phân loại video.

Mạng sinh đối nghịch (GAN)

Generative Adversarial Networks (GAN) là lớp mô hình có mục tiêu tạo ra dữ liệu giả giống với thật, tên của mạng được dựa trên kiến trúc gồm hai mạng có mục tiêu đối nghịch nhau: Generator và Discriminator. Trong đó Generator học cách sinh dữ liệu giả để lừa mô hình Discriminator, còn Discriminator lại học cách phân biệt giữa dữ liệu giả và dữ liệu thật. Thông qua quá trình huấn luyện thì cả hai mô hình này đều cùng cải thiện được khả năng của mình.

Một số ứng dụng phổ biến của GAN là: Tạo khuôn mặt người, thay đổi độ tuổi khuôn mặt, sinh ảnh vật thể, tạo nhân vật hoạt hình,…

Boltzmann machine

Đây là một mô hình mạng không có hướng xác định, vì vậy các node của mạng này được liên kết với nhau thành một hình tròn. Dựa vào kiến trúc này, máy Boltzmann (Boltzmann machine) thường được sử dụng để tạo ra các tham số cho mô hình. Các ứng dụng phổ biến nhất của mô hình là: giám sát hệ thống, xây dựng hệ thống khuyến nghị nhị phân,…

Học tăng cường sâu

Deep Reinforcement Learning là quá trình mà các tác tử (agent) tương tác với môi trường để thay đổi trạng thái của chính nó. Các tác tử có thể quan sát và thực hiện những hành động phù hợp, từ đó giúp mạng đạt được mục tiêu.

Mô hình mạng này gồm một input layer, output layer và nhiều hidden layer khác, trong đó trạng thái của môi trường chính là input layer. Mô hình sẽ huấn luyện liên tục để dự đoán điểm đạt được sau mỗi hành động được thực hiện trong từng trạng thái nhất định.

Mô hình học tăng cường sâu được ứng dụng chủ yếu trong các game cờ vua, poker, xe tự lái, robot,…

Autoencoder

Autoencoder là một trong những kỹ thuật Deep Learning phổ biến nhất hiện nay, có khả năng học các biểu diễn của dữ liệu đầu vào mà không cần nhãn, hay nói cách khác thì mạng này có khả năng học không giám sát (unsupervised learning).

Một số loại autoencoder chính gồm có:

  • Sparse (thưa): Số lượng hidden layer lớn hơn số lượng input layer nhằm hạn chế hiện tượng quá khớp (overfitting). Phương pháp này giới hạn hàm mất mát và ngăn không cho autoencoder lạm dụng tất cả các node có trong mạng.
  • Denoising (lọc nhiễu): Một phiên bản input được chuyển thành 0 ngẫu nhiên.
  • Contractive: Bổ sung hệ số phạt vào hàm mất mát để hạn chế overfitting trong trường hợp số lượng hidden layer lớn hơn input layer.
  • Stacked: Xếp chồng nhiều hidden layer lên nhau để tạo thành một mạng autoencoder.

Các ứng dụng phổ biến: Phát hiện đặc trưng, xây dựng hệ thống khuyến nghị, bổ sung đặc trưng cho tập dữ liệu,…

Backpropagation

Lan truyền ngược (backpropagation) là một trong những kỹ thuật quan trọng nhất của mạng nơ-ron. Về cơ bản thì đây là phương pháp giúp tính gradient ngược từ layer cuối cùng đến layer đầu tiên của mạng. Trước hết, mạng sẽ phân tích các tham số rồi điều chỉnh thông qua hàm mất mát. Tiếp theo, giá trị lỗi được tính toán sẽ lan truyền ngược lại để điều chỉnh các tham số cho phù hợp.

Gradient Descent

Trong Deep Learning và tối ưu hoá, ta thường phải tìm giá trị nhỏ nhất (hoặc lớn nhất) của một hàm số nào đó. Tuy nhiên việc tìm các điểm tối ưu toàn cục của hàm mất mát thường rất phức tạp, đôi khi là bất khả thi. Do đó ta có thể cố gắng tìm những điểm cực tiểu địa phương và có thể xem là nghiệm cần tìm của bài toán.

Các điểm cực tiểu địa phương về mặt toán học là nghiệm học phương trình đạo hàm bằng 0, tuy nhiên việc giải phương trình đạo hàm bằng 0 gần như là không thể trong Machine Learning hay Deep Learning. Một cách tiếp cận phổ biến là xuất phát từ một điểm mà ta coi là gần với nghiệm của bài toán, sau đó dùng một phép lặp để tiến dần đến điểm cần tìm. Phương pháp này được gọi là hạ gradient và được sử dụng vô cùng phổ biến trong tối ưu.

Với các mạng nơ-ron hiện đại, nhờ vào thuật toán lan truyền ngược mà gradient descent có thể nhanh hơn hàng triệu lần so với cách truyền thống.

Câu hỏi thường gặp

Deep Learning và AI có giống nhau không?

Trí tuệ nhân tạo là khái niệm tạo ra những cỗ máy thông minh. Mặt khác, Deep Learning là một tập hợp con của trí tuệ nhân tạo giúp bạn xây dựng các ứng dụng dựa trên AI.
Deep Learning là một tập hợp con của Machine Learning sử dụng khối lượng lớn dữ liệu và các thuật toán phức tạp để phát triển một mô hình.

Deep Learning được sử dụng như thế nào trong thế giới thực?

Ngày nay, phương pháp Deep Learning cũng đang được sử dụng trong
các chương trình dịch tự động, chuyển đổi văn bản từ ngôn ngữ này sang ngôn ngữ khác mà không yêu cầu người dùng nhập các từ hoặc cụm từ đã dịch trước đó theo cách thủ công.

Lời kết

Trong bài viết này ta đã tìm hiểu Deep Learning là gì, các ứng dụng phổ biến và những trường hợp nên sử dụng Deep Learning. Phần cuối của bài viết cũng đã khái quát một số kỹ thuật phổ biến và đặc biệt quan trọng trong Deep Learning. Đây không hẳn là một lĩnh vực quá mới mẻ, nhưng sự bùng nổ dữ liệu trong nhiều năm gần đây đã giúp các nhà khoa học tận dụng được tối đa khả năng của các mô hình mạng nơ-ron nhân tạo, tạo tiền đề cho việc giải quyết nhiều bài toán tưởng chừng như là bất khả thi trong nhiều năm về trước. Hy vọng bài viết trên đã cung cấp cho bạn những kiến thức hữu ích. Nếu còn điều gì thắc mắc hay đóng góp ý kiến, bạn hãy bình luận bên dưới nhé.

50 Preset Lightroom Free Đẹp Nhất Chỉnh Ảnh Chân Dung

50 preset lightroom free đẹp nhất chỉnh ảnh chân dung Xin chào các bạn ở bài viết trước mình đã hướng dẫn cho các bạn cách import và export preset lightroom free rồi và cơ bản là các bạn đã biết cách nhập và xuất preset trên phần mềm lightroom 5 hay cc. Vì vậy […]

Xin chào các bạn ở bài viết trước mình đã hướng dẫn cho các bạn cách import và export preset lightroom free rồi và cơ bản là các bạn đã biết cách nhập và xuất preset trên phần mềm lightroom 5 hay cc. Vì vậy hôm nay mình có tổng hợp và chia sẻ cho các bạn tổng hợp 50 preset lightroom free đẹp nhất chỉnh ảnh chân dung mà mình thường hay sử dụng. Ở bộ preset này sẽ chia ra nhiều thể loại ở bên trong file nén nhưng cơ bản là mình đã đánh tên để các bạn đọc và dễ áp dụng. Tuy nhiên trong các preset đó sẽ có các thể loại cơ bản đó là preset ảnh trong trẻo, preset màu hàn quốc, preset chỉnh ảnh HDR, Preset màu film cổ điển (preset vintage, preset retro, preset analog) và các preset free thuộc các thể loại màu cho ảnh cưới.
Sau đây là một vài hình minh họa khi áp dụng preset màu ảnh chân dung trong trẻo trắng hồng:

Ở thể loại ảnh trong trẻo này khi điều chỉnh các bạn chú ý các thanh contrast, dehaze và clarity và saturation nhé.

Tiếp theo là thể loại màu ảnh cổ điển vintage:

Tiếp theo là preset màu hàn quốc nhẹ nhàng :

Hay là preset các màu kiểu cổ điển hòa với hiện đại kiểu màu lạnh nhẹ nhàng:

Và một số preset màu ảnh cưới đẹp:
Đây chỉ là một số hình minh họa cho một trong 50 preset lightroom free đẹp nhất chỉnh ảnh chân dung. Dĩ nhiên là không phải các bạn áp dụng preset là hình là ra đẹp ngay như ảnh mẫu mà các bạn thường thấy trên mạng. Các bạn phải biết cơ bản về các thông số hoặc là cách tùy biến preset. Nếu chưa biết các bạn có thể tham khảo bài viết Cách tùy biến preset lightroom  nhé.

Sau đây là link tải các preset lightroom free mà mình vừa chia sẻ ở đầu bài viết. các bạn bấm vào link 50 PRESET LIGHTROOM FREE ĐẸP  và tải về và áp dụng cũng  như tùy biến preset thử nhé.

Hướng dẫn cài đặt Mikrotik Router OS 6

Mikrotik Router OS là hệ điều hành dung cho phần cứng RouterBoard của Mikrotik. Hướng dẫn cài đặt Mikrotik Router OS trên PC và sử dụng Winbox để quản lý & cấu hình.

Mikrotik Router OS là gì

Mikrotik Router OS là hệ điều hành dung cho phần cứng RouterBoard của Mikrotik.
Router OS có thể được cài đặt trên một máy tính bình thường để biến máy tính thành một con router tích hợp rất nhiều chức năng như: Routing, Firewall, Bandwidth management, wireless access point, backhaul link, hostpot gateway, VPN server,…
Sau đây mình sẽ hướng dẫn cài đặt Mikrotik Router OS trên PC:

Cài đặt cơ bản:

Mikrotik Router OS rất nhẹ nên chỉ cần một máy tính cấu hình thấp chạy là được
Truy cập https://mikrotik.com/download/archive
chọn phiên bản muốn cài đặt, sau đó tải phiên bản file đuôi “ISO”

Sau đó dung chương trình Burn disk như “UltraISO” burn file iso ra đĩa CD và tiến hành cài đặt:

Sau khi boot vào đĩa CD cài đặt, ta được giao diện như sau:

Trên màn hình sẽ hiện một số tùy chọn các gói chức năng, tùy theo nhu cầu sử dụng. ở đây mình bấm phím “a” để chọn hết.

Sau đó nhấn “I” để tiến hành cài đặt.

Nó sẽ hỏi bạn có muốn giữ lại cấu hình cũ không? Chọn N (No)

Và cảnh báo: tất cả dữ liệu sẽ bị xóa! Có tiếp tục không? Chọn Y (Yes)

Quá trình cài đặt hoàn tất, khởi động lại.

Sau khi khởi động lại chương trình, sẽ hiện ra màn hình đăng nhập:

Usernam: admin / Password: mặc định là trống

Màn hình sau khi đăng nhập:

Sử dụng Winbox để quản lý & cấu hình Mikrotik Rouster OS:

Tải Winbox từ link https://mikrotik.com/download

Winbox là tiện ích dung để cấu hình Mikrotik Router OS bằng giao diện đồ họa nhanh chống và đơn giản.

Trước tiên chúng ta cần đặt IP cho Mikrotik Router OS:

Sau đó mở Winbox và nhập địa chỉ IP vào:

Và đây là giao diện của cấu hình của Mikrotik

Chúc các bạn thành công!

“Giới thiệu 1 hệ thống An ninh mạng Ngân hàng”

Hệ thống an ninh mạng ngân hàng đảm bảo an toàn cho tài khoản của bạn.

Hệ thống an ninh mạng ngân hàng là một giải pháp an ninh mạng được thiết kế để giữ cho các hệ thống ngân hàng an toàn và bảo mật. Nó cung cấp một loạt các công cụ và phương thức để ngăn chặn những tấn công mạng, bao gồm phát hiện và phục hồi. Để hiểu rõ hơn về hệ thống an ninh mạng ngân hàng, hãy tiếp tục đọc bài viết này.

1. Giới thiệu Hệ thống An ninh mạng Ngân hàng

Hệ thống an ninh mạng ngân hàng đóng vai trò quan trọng trong việc bảo vệ thông tin và dữ liệu quan trọng của ngân hàng khỏi những tấn công mạng nguy hiểm. Được thiết kế đặc biệt để đáp ứng các yêu cầu đặc thù của ngành ngân hàng, hệ thống này đảm bảo rằng các giao dịch và thông tin của khách hàng được bảo mật tuyệt đối. Một trong những phương thức chính để đảm bảo an ninh mạng ngân hàng là sử dụng các công cụ và kỹ thuật phát hiện tấn công.

Hệ thống này có khả năng giám sát và phân tích lưu lượng mạng, từ đó xác định những hoạt động đáng ngờ và tấn công mạng tiềm năng. Điều này giúp ngân hàng nhanh chóng phát hiện và ngăn chặn các hành vi xâm nhập vào hệ thống, đảm bảo rằng dữ liệu và thông tin của khách hàng không bị đánh cắp hoặc sử dụng một cách trái phép.

Hệ thống an ninh mạng ngân hàng cũng đặc biệt quan tâm đến việc phục hồi sau tấn công. Khi một cuộc tấn công xảy ra, hệ thống này có khả năng nhanh chóng khôi phục lại hệ thống, đảm bảo rằng ngân hàng có thể tiếp tục hoạt động một cách bình thường và không gặp sự gián đoạn lớn.

Việc phục hồi sau tấn công không chỉ bao gồm việc khôi phục dữ liệu và hệ thống, mà còn đảm bảo rằng các lỗ hổng bảo mật được khắc phục để ngăn chặn các cuộc tấn công tương tự trong tương lai. Ngoài ra, hệ thống an ninh mạng ngân hàng cũng có khả năng phát hiện các tấn công mạng độc hại và tiếp cận các bảo mật của ngân hàng.

Bằng cách sử dụng các công cụ phân tích và kiểm tra bảo mật, hệ thống này có thể phát hiện sự tồn tại của các phần mềm độc hại và các lỗ hổng bảo mật trong hệ thống ngân hàng. Điều này giúp ngân hàng đưa ra các biện pháp phòng ngừa và cải thiện bảo mật tổng thể. Tóm lại, hệ thống an ninh mạng ngân hàng là một phần không thể thiếu trong ngành ngân hàng hiện đại.

Nó đảm bảo rằng thông tin và dữ liệu của khách hàng được bảo vệ an toàn, đồng thời giúp ngân hàng phát hiện và ngăn chặn các cuộc tấn công mạng tiềm năng. Sự tồn tại của hệ thống này đóng vai trò quan trọng trong việc tạo ra một môi trường kinh doanh trực tuyến an toàn và tin cậy cho khách hàng ngân hàng.

2. Tính năng An ninh mạng Ngân hàng

Hệ thống an ninh mạng ngân hàng cung cấp nhiều công cụ để bảo vệ hệ thống. Các tính năng bao gồm phát hiện và khắc phục tấn công mạng, bảo vệ dữ liệu và tài khoản ngân hàng, cùng cảnh báo tấn công mạng. Hệ thống có thể cấu hình để phát hiện tấn công mạng độc hại và tiếp cận các bảo mật của ngân hàng.

Hệ thống an ninh mạng ngân hàng là một lĩnh vực quan trọng và không thể thiếu trong thời đại công nghệ thông tin ngày nay. Mục đích chính của nó là đảm bảo an toàn và bảo mật cho các hệ thống ngân hàng, giúp chúng chống lại và ngăn chặn những tấn công mạng nguy hiểm.

Một trong những công cụ quan trọng của hệ thống an ninh mạng ngân hàng là hệ thống phát hiện xâm nhập. Hệ thống này được thiết kế để giám sát và phát hiện các hành vi bất thường trên mạng, như việc cố gắng xâm nhập vào hệ thống, tấn công từ chối dịch vụ, hay thậm chí là việc đánh cắp dữ liệu khách hàng.

Khi phát hiện được một hành vi đáng ngờ, hệ thống sẽ kích hoạt cảnh báo và ngăn chặn tấn công. Hệ thống an ninh mạng ngân hàng cũng có khả năng phục hồi dữ liệu sau một cuộc tấn công. Khi bị tấn công, các hệ thống ngân hàng có thể mất đi một số thông tin quan trọng hoặc bị gián đoạn hoạt động.

Tuy nhiên, với hệ thống an ninh mạng chuyên nghiệp, các ngân hàng có thể khôi phục lại dữ liệu và nhanh chóng khắc phục sự cố.

Việc này giúp giảm thiểu tác động tiêu cực lên hoạt động kinh doanh và tin tưởng của khách hàng. Ngoài ra, hệ thống an ninh mạng ngân hàng còn cung cấp các công cụ để ngăn chặn những tấn công mạng trước khi chúng xảy ra. Có rất nhiều phương pháp và kỹ thuật được sử dụng để đảm bảo an toàn cho hệ thống, bao gồm cả việc sử dụng mã hóa dữ liệu, kiểm tra xác thực người dùng, và cài đặt các tường lửa mạnh mẽ.

Chúng tạo ra một lớp bảo vệ vững chắc giữa hệ thống ngân hàng và các hacker hoặc kẻ xấu. Điều quan trọng cần lưu ý là hệ thống an ninh mạng ngân hàng không chỉ dừng ở mức độ kỹ thuật, mà còn yêu cầu sự tham gia và quan tâm của cả nhân viên và người quản lý. Tất cả đều cần nhận thức về tầm quan trọng của việc bảo vệ thông tin và dữ liệu ngân hàng, và tuân thủ các quy tắc và quy định liên quan.

Tóm lại, hệ thống an ninh mạng ngân hàng là một phần quan trọng không thể thiếu trong ngành ngân hàng hiện đại. Nó không chỉ giúp đảm bảo an toàn cho hệ thống và dữ liệu của ngân hàng, mà còn tạo niềm tin và đáng tin cậy cho khách hàng.

Vì vậy, việc đầu tư và phát triển hệ thống an ninh mạng ngân hàng là một điều cần thiết để duy trì sự phát triển bền vững và thành công của ngành ngân hàng trong thời đại số hóa ngày nay.

Học kiến trúc máy tính cần những gì?

Để học kiến trúc máy tính, bạn cần nắm vững một loạt kiến thức và kỹ năng cơ bản liên quan đến cách máy tính hoạt động, cách các thành phần của máy tính tương tác với nhau và cách tối ưu hóa hiệu suất hệ thống. Dưới đây là danh sách các khái niệm và kỹ năng quan trọng bạn cần phải tìm hiểu

Để học kiến trúc máy tính, bạn cần nắm vững một loạt kiến thức và kỹ năng cơ bản liên quan đến cách máy tính hoạt động, cách các thành phần của máy tính tương tác với nhau và cách tối ưu hóa hiệu suất hệ thống. Dưới đây là danh sách các khái niệm và kỹ năng quan trọng bạn cần phải tìm hiểu:

  1. Kiến thức về Cấu Trúc Máy Tính Cơ Bản:
    • CPU (Central Processing Unit): Hiểu về chức năng của bộ xử lý trung tâm, kiến thức về các loại CPU và kiến thức về cách nó thực hiện các phép toán cơ bản.
    • RAM (Random Access Memory): Hiểu về bộ nhớ RAM, khả năng lưu trữ tạm thời và cách nó làm việc với CPU.
    • Bộ nhớ đệm (Cache): Cách bộ nhớ đệm giúp tối ưu hóa hiệu suất máy tính.
    • Bộ nhớ ổ cứng và lưu trữ: Hiểu về cách lưu trữ dữ liệu và cách hệ thống tương tác với ổ cứng, SSD, và các phương tiện lưu trữ khác.
  2. Kiến thức về Bộ Xử Lý Từng Mức Độ:
    • RISC (Reduced Instruction Set Computer) và CISC (Complex Instruction Set Computer): Hiểu về sự khác biệt giữa kiến trúc RISC và CISC.
    • Pipeline và Superscalar: Kiến thức về cách bộ xử lý sử dụng pipeline và kiến trúc superscalar để tối ưu hóa việc thực hiện các lệnh.
    • SIMD (Single Instruction, Multiple Data) và MIMD (Multiple Instruction, Multiple Data): Hiểu về các kiến trúc cho tính toán đa luồng.
  3. Hệ Thống Mạng và Kết Nối:
    • Kiến thức về mạng máy tính, giao thức mạng, và cách máy tính tương tác với mạng.
    • Kiến thức về giao tiếp giữa các thiết bị và kiến trúc máy tính, bao gồm PCIe, USB, SATA, và các giao tiếp khác.
  4. Hệ Điều Hành:
    • Hiểu về kiến trúc hệ điều hành, cách quản lý tài nguyên, quy trình và luồng, bộ nhớ ảo, và giao tiếp ngắt (interrupt).
    • Các kiến thức về hệ điều hành như Windows, Linux, MacOS, v.v.
  5. Kiến thức về Hiệu Suất và Tối Ưu Hóa:
    • Hiểu về cách tối ưu hóa hiệu suất hệ thống máy tính, cải thiện tốc độ thực hiện và giảm độ trễ.
    • Thực hiện giám sát và đánh giá hiệu suất hệ thống.
  6. Lập Trình Cấu Trúc Máy Tính:
    • Nắm vững một số ngôn ngữ lập trình, đặc biệt là C và C++, để hiểu cách lập trình gần với phần cứng và thao tác với bộ nhớ.
  7. Kỹ năng Giải Quyết Vấn Đề:
    • Học cách phân tích và giải quyết các vấn đề phức tạp trong kiến trúc máy tính.
  8. Bảo Mật Cơ Bản:
    • Hiểu về các khái niệm cơ bản về bảo mật máy tính và cách bảo vệ hệ thống khỏi các mối đe dọa.
  9. Công cụ và Phần Mềm Hỗ Trợ:
    • Sử dụng các công cụ và phần mềm hỗ trợ cho việc kiểm tra hiệu suất, mô phỏng, và phân tích kiến trúc máy tính.
  10. Học Liên Tục:
    • Kiến thức về kiến trúc máy tính luôn thay đổi. Hãy cập nhật kiến thức của bạn bằng cách tham gia vào khóa học, đọc sách, và theo dõi các xu hướng mới.

Học kiến trúc máy tính đòi hỏi sự kiên nhẫn và tập trung vào chi tiết. Hãy bắt đầu với cơ bản và dần dần tiến xa hơn khi bạn cảm thấy thoải mái.

Hướng dẫn cài đặt Proxmox VE 7.3

Proxmox VE (Virtual Environment) là một hệ thống ảo hóa mã nguồn mở được sử dụng để quản lý các máy chủ ảo và điều khiển các hạ tầng ảo hóa. Phiên bản mới nhất của Proxmox VE là 7.3, được phát hành vào tháng 12 năm 2022. Các tính năng trên Proxmox 7.3  Sử […]

Proxmox VE (Virtual Environment) là một hệ thống ảo hóa mã nguồn mở được sử dụng để quản lý các máy chủ ảo và điều khiển các hạ tầng ảo hóa. Phiên bản mới nhất của Proxmox VE là 7.3, được phát hành vào tháng 12 năm 2022.

Các tính năng trên Proxmox 7.3

  •  Sử dụng Debian 12 (Bullseye) làm nền tảng.
  • Cung cấp các tính năng mới để quản lí các thiết bị lưu trữ bao gồm:  ZFS, LVM và Ceph.
  • Giao diện quản lý máy ảo được cập nhật với nhiều tính năng mới, bao gồm tùy chọn chọn CPU, tạo ổ đĩa ảo và hỗ trợ các tùy chọn bảo mật mới.
  • Cải thiện tính năng bảo mật, bổ sung tính năng kiểm tra chữ ký để đảm bảo tính toàn vẹn của các gói phần mềm và tăng cường tính năng giới hạn quyền truy cập.
  • Hỗ trợ cho Open vSwitch cho phép quản lý và cấu hình mạng máy ảo dễ dàng hơn.
  • cải tiến hiệu suất và độ ổn định, cũng như cập nhật các phiên bản của các công nghệ như QEMU, LXC và Ceph.

Hướng dẫn cài đặt:

Chuẩn bị thiết bị

  • Chuẩn bị 1 máy chủ HP, DELL, Supermicro…
  • CPU hỗ trợ công nghệ ảo hóa (Virtualization Technology), như Intel VT-x hoặc AMD-V

Ở trên là cấu hình cho các bạn tham khảo. Nếu các bạn cần nâng cấp hay muốn thay thế các thiết bị của server hãy đến với maychuvina.com để nhận các ưu đãi và giá hợp lí nhất

Chuẩn bị bản cài đặt

1.Tải xuống bản cài đặt

Tải xuống bản cài đặt mới nhất của Proxmox VE 7.3 từ trang web chính thức: https://www.proxmox.com/en/downloads/category/iso-images-pve.

2.Tạo bản cài đặt Proxmox

Để cài đặt Proxmox lên máy tính vật lý, bạn cần tạo bản cài đặt Proxmox trên ổ đĩa USB, sử dụng Rufus (Win) hoặc Etcher (Win / Mac).

Sau khi ổ đĩa USB sẵn sàng, bạn cắm nó vào máy tính đang chờ cài đặt Proxmox. Chỉnh lại BIOS chọn khởi động từ USB để kích hoạt trình cài đặt Proxmox VE.

Cài đặt Proxmox

Gắn USB hoặc ổ đĩa(DVD) vào máy chủ và khởi động. Sau khi khởi động trình cài đặt Proxmox sẽ hiện ra.  Chọn Install Proxmox VE

Chọn I agree để tiếp tục quá trình

Chọn ổ đĩa muốn cài đặt.  Muốn thiết lập các thống số chọn Options. Sau khi thiết lập xong bấm Next

Chọn Country, Timezeon và Keyboard layout, rồi bấm Next

Đặt mật khẩu root cho tài khoản và nhập email. Chọn Next

Thiếp lập IP  cho máy Proxmox. Rồi chọn Next

Kiểm tra các thông tin rồi chọn Install

Quá trình cài đặt có thể kéo dài từ 5 đến 10 phút tùy vào cấu hình từng máy

Giao diện dòng lệnh của Proxmox sau khi cài đặt

Đăng nhập bằng thông tin sau:

  • login: root
  • password: mật khẩu bạn đã thiết lập ở bước cài đặt

Truy cập Proxmox Web UI

Để quản lý Proxmox, chúng ta sẽ sử dụng trình duyệt web truy cập vào giao diện Web UI theo địa chỉ IP đã thiết lập ở bước cài đặt kèm theo port 8006

Đăng nhập bằng tài khoản root và mật khẩu đã được thiết lập ở bước cài đặt

Đây là giao diện của Proxmox VE 7.3

Phần kết

Ở trên mình đã hướng dẫn các bạn cài đặt Proxmox 7.3. Chúc các bạn thành công

Phần Mềm Autocad 2016 – Hướng Dẫn Cài Đặt Chi Tiết

Với các tính năng mạnh mẽ linh hoạt, AutoCAD 2016 là một trong các công cụ thiết kế 2D và 3D hàng đầu dành cho nhà thiết kế kỹ thuật. Bản Autocad 2016 với những cải tiến thông minh giúp bạn thao tác dễ dàng hơn các phiên bản trước đó. LINK DOWNLOAD AUTOCAD 2016 […]

Với các tính năng mạnh mẽ linh hoạt, AutoCAD 2016 là một trong các công cụ thiết kế 2D và 3D hàng đầu dành cho nhà thiết kế kỹ thuật. Bản Autocad 2016 với những cải tiến thông minh giúp bạn thao tác dễ dàng hơn các phiên bản trước đó.

Link Tải Bằng AutoCAD 2016 bản 32bit

Link Tải Bằng AutoCAD 2016 bản 64bit

Cấu hình hệ thống yêu cầu

  • Hệ điều hành: Windows 7/8 / 8.1 /10
  • RAM: 32-bit : 2 GB và 64-bit: 4 GB
  • Dung lượng đĩa cứng: 3GB
  • Bộ xử lý: 3GHz Intel Core 2 Duo trở lên.
  • Màn hình: 1024×768 with True Color
  • .NET Framework Version 4.5
  • Card đồ hoạ: tương thích với DirectX 9 hoặc DirectX 11

Hướng dẫn cài đặt phần mềm AutoCAD 2016

Bước 1: Giải nén file vừa cài đặt → mở file Setup và Chọn Install.

Bước 2: Chọn I Accept và Next

Bước 3: Nhập Serial number: 667-98989898, Product key: 001H1 và chọn Next

Bước 4: Chọn đường dẫn để cài đặt và nhấn Install

và đợi cài đặt

Bước 5: Chọn Finish

Hướng dẫn crack AutoCAD 2016

Trước khi tiến hành crack hãy tắt tất cả phần mềm diệt virus

Bước 1: Chạy AutoCad 2016 bảng active sẽ hiện ra. Chọn Activate

Bước 2: Chọn Request at activation code using offline method

Bước 3: Chọn Back 2 lần

Bước 4: Chọn I have an activation code from autodesk và chọn Next

Bước 5: Giải nén file crack và mở file xf-adsk2016_x64 (64bit) hoặc xf-adsk2016_x86 (32bit) Run as administrator. Và làm theo các bước sau đây:

Bước 6: Bấm Finish để hoàn tất cài đặt

Chúc các bạn cài đặt Autocad 2016 full crack thành công.

Hướng dẫn cài Nas Synology cơ bản

NAS Synology thiết bị vô cùng quan trong đối với mỗi cá nhân và doanh nghiệp. Đây là thiết bị giúp lưu trữ dữ liệu một cách tối ưu, an toàn và hiệu quả. Trong bài viết này sẽ hướng dẫn bạn cách cài đặt NAS Synology cũng như hướng dẫn bạn cách khắc phục […]

NAS Synology thiết bị vô cùng quan trong đối với mỗi cá nhân và doanh nghiệp. Đây là thiết bị giúp lưu trữ dữ liệu một cách tối ưu, an toàn và hiệu quả. Trong bài viết này sẽ hướng dẫn bạn cách cài đặt NAS Synology cũng như hướng dẫn bạn cách khắc phục về những vấn đề phát sinh xảy ra trong quá trình cài đặt một cách đơn giản, dễ dàng thực hiện. Bạn có thể theo dõi Hướng dẫn cài đặt NAS Synology phiên bản mới nhất trong bài viết

Mục lục nội dung

  • Quy trình lắp đặt – Cài đặt NAS Synology
  • Quy trình cài đặt hệ điều hành DSM – Cài đặt NAS Synology
  • Những lưu ý khi tiến hành cài đặt NAS Synology
  • Hướng dẫn tiến hành cài đặt NAS Synology
  • Kết luận:

Quy trình lắp đặt – Cài đặt NAS Synology

Khi bạn đã sở hữu thiết bị NAS, để cài đặt NAS Synology chúng ta cần hình dung ra quy tình lắp đặt sẽ được tiến hành như thế nào để có sự chuẩn bị tốt nhất. Về quy trình lắp đạt sẽ bao gồm 4 bước:

Bước 1: Thực hiện lắp đặt ổ cứng cho thiết bị NAS Synology

Bước 2: Kết nối nguồn điện cho thiết bị NAS Synology của bạn

Bước 3: Kết nối cáp mạng LAN vào thiết bị mạng của bạn (Switch, router, hoặc hub).

Bước 4: Kết nối máy tính vào thiết bị mạng.

Quy trình cài đặt hệ điều hành DSM – Cài đặt NAS Synology

Bước 1: Bật nguồn để khởi động thiết bị NAS Synology.

Bước 2: Vào trình duyệt web trên máy tính, truy cập vào NAS bằng cách nhập link: Find.synology.com để tìm kiếm và truy cập vào thiết bị NAS Synology của bạn

Bước 3: Chọn Connect để bắt đầu quá trình cài đặt và làm theo các hướng dẫn trên màn hình.

Những lưu ý khi tiến hành cài đặt NAS Synology

Trước khi tiến hành cài đặt NAS Synology, chúng ta cần phải lưu ý những nội dung sau để cho quá trình cài đặt NAS synology được thực hiện dễ dàng nhất:

1. Thiết bị Synology NAS phải được kết nối với Internet để cài đặt hệ điều hành DSM khi cài đặt trên trình duyệt Web

2. Trình duyệt khuyên dùng: Chrome, Firefox

3. Cả thiết bị NAS và máy tính phải cùng mạng nội bộ

Nếu như trong quá trình thực hiện, không may bạn bị thoát khỏi quá trình cài đặt trước khi kết thúc. Bạn cũng đùng lo lắng, hãy đăng nhập vào DSM với tài khoản admin (tên tài khoản quản trị mặc định) và mật khẩu để trống.

Hướng dẫn tiến hành cài đặt NAS Synology

Khi bạn đã sở hữu thiết bị lưu trữ NAS Synology, đã chuẩn bị đầy đủ quy trình lắp đặt và quy trình chuẩn bị thì chúng ta sẽ tiến hành cài đặt NAS Synology theo từng bước bên dưới:

Bước 1: Đầu tiên, chúng ta mở trình duyệt web: find.synology.com

Bước 2: Chọn vào Thiết bị và nhấn Connect, Chọn Setup để tiếp tục. Sau đó chọn Install Now để thiết bị bắt đầu cài đặt.

Bước 3: Hãy đánh dấu vào “I understand that all data on these …” và nhấn OK

Bước 4: Quá trình cài đặt sẽ diễn ra trong vài phút và download hệ điều hành. Trong quá trình này cần phải đảm bảo rằng thiết bị của bạn đang được kết nối internet.

Bước 5: Sau khi thực hiện cài đặt Nas Synology xong, thiết bị NAS sẽ tự động khởi động lại.

Bước 6: Sau khi NAS Synology đã khởi động xong sẽ xuất hiện như hình bên dưới.

Bước 6: Tại đây, giao diện cấu hình NAS sẽ xuất hiện bằng tiếng Anh chứ không phải tiếng Pháp.

Đối với một số trường hợp trên trình duyệt web xuất hiện tiếng Pháp, chúng ta vào phần Setting/Option của từng trình duyệt, vào phần ngôn ngữ và chọn remove tiếng Pháp, tại lại trang để thay đổi ngôn ngữ. Vậy là chúng ta đã chỉnh lại ngôn ngữ tiếng Anh thành công. Thực hiện như bên dưới:

Vào Setting (Cài đặt)

Kéo xuống cuối trang Chọn Advanced (Nâng cao)

Kết luận:

Như chúng ta đã biết, thiết bị NAS Synology giúp cho dữ liệu được quản lý dữ liệu tập trung, dễ dàng truy cập mọi lúc, mọi nơi mà không hề giới hạn về dung lượng cũng như số lượng thiết bị truy cập tại cùng một thời điểm.

Bài viết này giúp cho người dùng có thể dễ dàng thực hiện cài đặt NAS Synology khi đã sở hữu thiết bị NAS một cách đơn giản.

SAN là gì? Đặc điểm và lợi ích khi sử dụng SAN Storage

SAN là gì? Tại sao nên sử dụng hệ thống SAN để nâng cao hiệu quả lưu trữ và truy xuất dữ liệu giữa các server và thiết bị với nhau? Bài viết ngay sau đây sẽ cung cấp đầy đủ các thông tin cần thiết để bạn đọc có cái nhìn chi tiết về […]

SAN là gì? Tại sao nên sử dụng hệ thống SAN để nâng cao hiệu quả lưu trữ và truy xuất dữ liệu giữa các server và thiết bị với nhau? Bài viết ngay sau đây sẽ cung cấp đầy đủ các thông tin cần thiết để bạn đọc có cái nhìn chi tiết về SAN Storage. Hãy cùng tìm hiểu!

1. SAN là gì?

SAN là gì? Được biết đến là mạng lưu trữ chuyên biệt, hoàn toàn tách biệt với các mạng LAN và WAN. Storage Area Network là một hệ thống lưu trữ dữ liệu mạnh mẽ, chuyên dụng và độc lập với máy chủ, cung cấp khả năng truy xuất dữ liệu nhanh và hiệu quả hơn so với các hệ thống lưu trữ truyền thống (Xử lý dữ liệu theo kiến trúc dạng khối – Block)

SAN là một giải pháp lưu trữ tập trung, cho phép các thiết bị lưu trữ và các máy chủ kết nối với nhau thông qua các công nghệ mạng đặc biệt như Fibre Channel hay iSCSI. Từ đó, các máy chủ có thể truy cập vào các ổ đĩa cứng, bộ nhớ đệm và các hệ thống lưu trữ khác trên mạng, và chia sẻ các tài nguyên lưu trữ này cho các ứng dụng khác nhau.

SAN là một hệ thống lưu trữ dữ liệu mạnh mẽ, chuyên dụng và độc lập với máy chủ

2. Các thành phần chính trong hệ thống SAN là gì?

Các thành phần chính trong một hệ thống SAN bao gồm:

  • Thiết bị lưu trữ: Bao gồm các ổ đĩa cứng, bộ nhớ đệm và các hệ thống lưu trữ khác, được kết nối với mạng SAN thông qua các thiết bị đầu cuối.
  • Các phần mềm quản lý và phân phối dữ liệu: giúp quản lý và phân phối dữ liệu đến các máy chủ trên mạng SAN.
  • Thiết bị chuyển mạch SAN: Các SAN switch ứng dụng các công nghệ kết nối mạng chuyên dụng như Fibre Channel (FC), iSCSI hoặc FCoE để kết nối các thiết bị lưu trữ với máy chủ.

Một hệ thống SAN bao gồm 3 thành phần chính

3. Chi tiết về từng giao thức kết nối được áp dụng trong SAN Storage

Sau khi đã nắm rõ khái niệm SAN là gì? Bạn đọc có thể tham khảo các giao thức kết nối được áp dụng trong SAN ngay sau đây.

3.1 Fibre Channel (FC)

Fibre Channel là một giao thức kết nối truyền thống được sử dụng trong mạng SAN, có tốc độ truyền dữ liệu cao và độ ổn định cao. Giao thức này sử dụng cáp quang để truyền dữ liệu giữa các thiết bị lưu trữ và máy chủ.

Các thành phần chính của công nghệ FC bao gồm:

  • Host bus adapter (HBA):card mạng đặc biệt được cài đặt trên máy chủ, có chức năng kết nối với các thiết bị lưu trữ trong SAN.
  • Switch: là thiết bị trung gian giữa các HBA và các thiết bị lưu trữ, cho phép các thiết bị truyền dữ liệu với nhau trong mạng SAN.
  • Storage array: là thiết bị lưu trữ chứa các đĩa cứng hoặc ổ đĩa flash, được kết nối với mạng SAN thông qua bộ chuyển mạch switch và HBA.

Trong mạng SAN sử dụng Fibre Channel, các HBA trên máy chủ được kết nối với switch thông qua cáp quang. Từ thiết bị switch, các thiết bị lưu trữ cũng được kết nối với switch thông qua cáp quang. Khi có yêu cầu truy xuất dữ liệu, các HBA sẽ gửi yêu cầu đến switch, từ đó switch sẽ chỉ định các thiết bị lưu trữ phù hợp để truy xuất dữ liệu.
Fibre Channel là một giao thức kết nối truyền thống được sử dụng trong mạng SAN

3.2 Công nghệ kết nối iSCSI

iSCSI hay Internet Small Computer Systems Interface là một giao thức lớp vận chuyển hoạt động dựa trên TCP/IP, cho phép các thiết bị lưu trữ truyền dữ liệu qua mạng IP thay vì sử dụng đường truyền cáp quang như Fibre Channel.

Các thành phần chính của iSCSI bao gồm:

  • iSCSI initiator: Là phần mềm hoặc card mạng được cài đặt trên máy chủ, cho phép máy chủ truy cập các thiết bị lưu trữ iSCSI.
  • iSCSI target: Là thiết bị lưu trữ hỗ trợ giao thức iSCSI, được kết nối với mạng LAN thông qua adapter đặc biệt.

Trong mạng SAN sử dụng iSCSI, các máy chủ được kết nối với iSCSI target thông qua mạng LAN. Các iSCSI initiator trên máy chủ sử dụng giao thức TCP/IP để truyền dữ liệu đến iSCSI target. Các iSCSI target cũng được kết nối với mạng LAN thông qua adapter chuyên dụng và sử dụng giao thức iSCSI để truyền dữ liệu đến các máy chủ.
Công nghệ kết nối iSCSI là một giao thức lớp vận chuyển hoạt động dựa trên TCP/IP

3.3 Công nghệ FCoE

FCoE là một giao thức kết nối đặc biệt, cho phép truyền dữ liệu Fibre Channel thông qua mạng Ethernet. Qua đó giúp giảm chi phí và tăng tính linh hoạt trong mạng lưu trữ SAN.

Các thành phần chính của công nghệ FCoE gồm:

  • Converged Network Adapter (CNA): Là card mạng đặc biệt được cài đặt trên máy chủ, cho phép máy chủ kết nối với mạng Ethernet và truy cập các thiết bị lưu trữ Fibre Channel.
  • Fibre Channel Forwarder (FCF): Là thiết bị trung gian giữa các CNA và các thiết bị lưu trữ, cho phép các thiết bị truyền dữ liệu với nhau trong mạng FCoE.

Cách kết nối: Trong mạng SAN sử dụng FCoE, các CNA trên máy chủ được kết nối với switch Ethernet thông qua các cáp mạng Ethernet. Từ switch Ethernet, các thiết bị lưu trữ Fibre Channel cũng được kết nối với switch thông qua cáp mạng Ethernet. Khi có yêu cầu truy xuất dữ liệu, các CNA sẽ gửi yêu cầu đến FCF, từ đó FCF sẽ chỉ định các thiết bị lưu trữ phù hợp để truy xuất dữ liệu.
FCoE là một giao thức kết nối đặc biệt, cho phép truyền dữ liệu Fibre Channel thông qua mạng Ethernet

4. Tính năng nổi bật của hệ thống lưu trữ SAN Storage System là gì?

Hệ thống mạng lưu trữ SAN cung cấp cho doanh nghiệp rất nhiều những tính năng đáng chú ý như: 

  • Hỗ trợ các công nghệ kết nối tốc độ cao bao gồm FC, iSCSI, FCoE, FC-NVMe.
  • Khả năng nhập xuất dữ liệu với tốc độ cực cao và độ trễ cực thấp.
  • Tách biệt thiết bị lưu trữ và Server nâng cao chất lượng bảo mật.
  • Cung cấp tính năng xác thực, cấp quyền quản lý, điều khiển truy xuất theo vùng.
  • Khả năng ứng dụng cao, cho phép cấu hình các hệ thống mạng phức tạp và chuyên biệt để quản lý lưu trữ nâng cao và ứng dụng kỹ thuật clustering cho server-storage.
  • Dữ liệu được quản lý tập trung giúp dễ dàng chia sẻ lưu trữ cũng như quản lý thông tin.
  • Dễ dàng mở rộng phạm vi lưu trữ bằng cách bổ sung bộ nhớ, không yêu cầu cấu hình lại các thiết bị khác.
  • Cho phép nhiều máy chủ cùng chia sẻ một hoặc nhiều thiết bị lưu trữ.
  • Bảo trì và nâng cấp hạ tầng dễ dàng với tính năng sao lưu dữ liệu nội bộ. Tiết kiệm băng thông mạng LAN với tính năng LAN-free backup.
  • Lựa chọn hàng đầu cho các công việc hay ứng dụng cần tốc độ cao (Xử lý giao dịch trong ngành ngân hàng, tài chính…).

Tuy nhiên hệ thống SAN vẫn tồn tại một số hạn chế như:

  • Đòi hỏi công cụ quản lý chuyên nghiệp cũng như nhân sự có kinh nghiệm chuyên môn cao.
  • Chi phí để triển khai SAN cao hơn rất nhiều so với các giải pháp như thiết bị lưu trữ DAS và NAS bao gồm: Server backup, tape library cổng quang và phần mềm backup trong SAN.

5. Các trường hợp nên sử dụng SAN Storage

Hiện nay các doanh nghiệp đã và đang sử dụng hệ thống lưu trữ SAN vào một số ứng dụng, hệ thống hạ tầng như:

  • Hệ thống quản trị dữ liệu Oracle: Các doanh nghiệp sử dụng hệ thống quản trị dữ liệu Oracle để lưu trữ dữ liệu.
  • SQL Server của Microsoft.
  • Các hệ thống máy ảo như Microsoft Hyper-V, VMware, KVM thường được triển khai với quy mô máy ảo cực lớn, phục vụ các ứng dụng cần hiệu suất cao. 
  • Hệ thống máy tính để bàn ảo siêu lớn VDI: môi trường này thường lên tới quy mô hàng ngàn máy. Thông qua mạng SAN, doanh nghiệp dễ dàng quản lý, truy cập dữ liệu trên tất cả thiết bị client trong mạng.
  • Các môi trường như SAP, ERP hoặc CRM cũng được áp dụng hệ thống SAN nhằm hỗ trợ doanh nghiệp lập kế hoạch quản lý tài nguyên và khối lượng dữ liệu lớn.
  • Xử lý giao dịch ngân hàng, tài chính và website thương mại điện tử: Áp dụng SAN nhằm nâng cao tốc độ xử lý giao dịch với độ trễ thấp nhất.

Hiện nay rất nhiều doanh nghiệp lớn, tập đoàn sử dụng SAN Storage

6. Điểm khác biệt giữa hai mô hình NAS và SAN là gì?

Tiêu chíSANNAS
Giống nhauĐều là các hệ thống lưu trữ, quản lý và chia sẻ tập trung.
Khác nhauMạng kết hợp chặt chẽ của nhiều thiết bị. Sử dụng kết cấu mạng quang tốc độ cao. Lưu trữ dựa trên khối (Block). Sử dụng cả Ethernet và Fibre Channel. Giao thức phổ biến: FCP, iSCSI, FCoE,FC-NVMe. Tập trung vào hiệu suất cao, độ trễ thấp. Khó quản lý yêu cầu kinh nghiệm và chuyên môn caoĐơn giản chỉ là một thiết bị lưu trữ duy nhất. Sử dụng kết cấu mạng TCP/IP Lưu trữ theo kiểu phân vùng, hệ thống tệp. Sử dụng Ethernet để triển khai. Giao thức phổ biến: CIFS / SMB, NFS. Tập trung vào việc dễ sử dụng, khả năng quản lý, mở rộng lưu trữ. NAS thường có thông lượng thấp hơn và độ trễ cao hơn (Có thể được cải thiện khi sử dụng các mạng tốc độ cao). Khả năng quản lý dễ dàng với giao diện hệ điều hành tối giản.

7. Tổng kết

Có thể nói SAN hay Storage Area Network là một hệ thống lưu trữ dữ liệu mạnh mẽ nhất hiện nay, cung cấp khả năng truy xuất dữ liệu nhanh và hiệu quả hơn so với các hệ thống lưu trữ truyền thống dựa trên kiến trúc dạng Block (Khối). Việc áp dụng mạng SAN đã và đang diễn ra tại nhiều doanh nghiệp, tổ chức vừa và nhỏ trên toàn thế giới

Exit mobile version