Mạng thần kinh Python

Bạn có muốn tạo mạng thần kinh của riêng mình từ đầu bằng Python không?. Vâng, bạn đang ở đúng nơi. Trong bài viết này, chúng tôi sẽ tạo một mạng lưới thần kinh nhân tạo từ đầu trong python. Mạng nơ-ron nhân tạo mà chúng ta sẽ phát triển ở đây là mạng sẽ giải quyết vấn đề phân loại. Vì vậy, hãy duỗi ngón tay của bạn và bắt đầu

Lưu ý thú vị

Mạng thần kinh nhân tạo [ANN] là một phần của học máy được giám sát, nơi chúng tôi sẽ có đầu vào cũng như đầu ra tương ứng trong tập dữ liệu của mình. Toàn bộ mục đích của chúng tôi là tìm ra cách ánh xạ đầu vào này tới đầu ra tương ứng. ANN có thể được sử dụng để giải quyết cả vấn đề hồi quy và phân loại

Từ quan điểm của blog này, chúng tôi sẽ phát triển một ANN để giải các bài toán phân loại

Điều kiện tiên quyết để triển khai mạng nơ-ron nhân tạo

Sau đây sẽ là các thư viện và phần mềm mà chúng ta sẽ cần để triển khai ANN

1. Trăn – 3. 6 hoặc muộn hơn

2. Jupyter Notebook [cũng có thể sử dụng Google Colab]

3. gấu trúc

4. Nặng nề

5. Tenorflow 2. x

6. Scikit-Tìm hiểu

Hiểu Báo cáo Vấn đề cho Mạng Nơ-ron Nhân tạo

Ở đây chúng tôi đang xử lý một tập dữ liệu từ miền tài chính. Chúng tôi có một tập dữ liệu trong đó chúng tôi có tổng cộng 14 thứ nguyên và 100000 bản ghi. Các kích thước mà chúng ta sẽ giải quyết như sau. -

  1. Số lượng hàng. - Đại diện cho số hàng
  2. ID khách hàng. - Đại diện cho ID khách hàng
  3. Họ. - Thể hiện họ của khách hàng
  4. Điểm tín dụng. - Thể hiện điểm tín dụng của khách hàng
  5. Môn Địa lý. - Đại diện cho thành phố mà khách hàng thuộc về
  6. Giới tính. - Thể hiện giới tính của khách hàng
  7. Lứa tuổi. - Thể hiện độ tuổi của khách hàng
  8. Nhiệm kỳ. - Thể hiện thời hạn của khách hàng với ngân hàng
  9. THĂNG BẰNG. - Thể hiện số dư do khách hàng nắm giữ
  10. số lượng sản phẩm. - Thể hiện số lượng dịch vụ ngân hàng mà khách hàng sử dụng
  11. HasCrCard. - Đại diện nếu khách hàng có thẻ tín dụng hay không
  12. Thành viên đang hoạt động. - Đại diện nếu một khách hàng là một thành viên tích cực hay không
  13. Mức lương ước tính. - Thể hiện mức lương ước tính của khách hàng
  14. đã thoát. - Đại diện nếu một khách hàng sẽ thoát khỏi ngân hàng hay không

Cấu trúc của tập dữ liệu

Như chúng ta có thể thấy từ từ điển dữ liệu ở trên, chúng ta đang xử lý tổng cộng 14 thứ nguyên

Ở đây, mục tiêu chính của chúng tôi là tạo ra một mạng lưới thần kinh nhân tạo sẽ xem xét tất cả các biến độc lập [13 biến đầu tiên] và dựa vào đó sẽ dự đoán liệu khách hàng của chúng tôi có rời khỏi ngân hàng hay không [Đã thoát là biến phụ thuộc ở đây]

Khi chúng tôi hiểu các bước để xây dựng mạng lưới thần kinh, chúng tôi cũng có thể trực tiếp triển khai các bước tương tự đó cho các bộ dữ liệu khác

Một trong những cách mà chúng ta có thể tìm thấy các bộ dữ liệu như vậy là kho lưu trữ học máy của UCI. Các bộ dữ liệu này được phân loại thành các bài toán hồi quy và phân loại. Vì chúng tôi đang triển khai mạng thần kinh này để giải quyết các vấn đề về phân loại, nên bạn có thể tải xuống bất kỳ tập dữ liệu phân loại nào từ đó và có thể áp dụng các bước tương tự trên bất kỳ tập dữ liệu nào bạn chọn. Làm thế nào là mát mẻ đó?

Nhập các thư viện cần thiết cho mạng nơ-ron nhân tạo

Hãy nhập tất cả các thư viện cần thiết tại đây

#Importing necessary Libraries
import numpy as np
import pandas as pd
import tensorflow as tf

Nhập tập dữ liệu

Trong bước này, chúng tôi sẽ nhập tập dữ liệu của mình. Vì tập dữ liệu của chúng tôi ở định dạng csv, nên chúng tôi sẽ sử dụng phương thức read_csv[] của pandas để tải tập dữ liệu

#Loading Dataset
data = pd.read_csv["Churn_Modelling.csv"]

Tạo ma trận các tính năng [X]

Nguyên tắc cơ bản trong khi tạo mô hình học máy là tạo X còn được gọi là Ma trận tính năng. X này về cơ bản chứa tất cả các biến độc lập của chúng tôi. Hãy tạo điều tương tự ở đây

Mã Python

Ở đây tôi đã sử dụng phương pháp iloc của khung dữ liệu Pandas cho phép chúng tôi tìm nạp các giá trị mong muốn từ cột mong muốn trong tập dữ liệu. Ở đây, chúng ta có thể thấy rằng chúng ta đang tìm nạp tất cả dữ liệu từ cột thứ 3 cho đến cột cuối cùng trừ đi một cột. Lý do cho điều đó là 3 cột đầu tiên tôi. e RowNumber, CustomerId và Họ không liên quan gì đến việc quyết định liệu khách hàng có thoát ra hay không. Do đó, trong trường hợp này, chúng tôi bắt đầu tìm nạp tất cả các giá trị từ cột thứ 3 trở đi. Cuối cùng, vì cột cuối cùng của chúng ta về cơ bản là một biến phụ thuộc, do đó chúng ta đã đề cập đến -1 trong phương thức iloc bằng cách sử dụng phương thức này cho phép chúng ta loại trừ cột cuối cùng khỏi bị đưa vào ma trận các tính năng X của chúng ta

Tạo vectơ biến phụ thuộc [Y]

Theo cách tương tự khi chúng tôi đã tạo ma trận các tính năng [X] cho biến độc lập, chúng tôi cũng phải tạo một vectơ biến phụ thuộc [Y] sẽ chỉ chứa các giá trị biến phụ thuộc của chúng tôi

#Generating Dependent Variable Vectors
Y = data.iloc[:,-1].values

Mã hóa biến phân loại Giới tính

Bây giờ chúng tôi đã xác định X và Y của mình, từ thời điểm này, chúng tôi sẽ bắt đầu với một trong những giai đoạn tốn rất nhiều thời gian trong bất kỳ giải quyết vấn đề học máy nào. Giai đoạn này được gọi là kỹ thuật tính năng. Để định nghĩa nó một cách đơn giản, kỹ thuật tính năng là một giai đoạn trong đó chúng tôi tạo các biến mới từ các biến hiện có hoặc sửa đổi các biến hiện có để sử dụng chúng trong mô hình học máy của chúng tôi.

Trong hình ảnh trên mô tả cấu trúc của tập dữ liệu, chúng ta có thể thấy rằng hầu hết các biến đều có bản chất là số, ngoại trừ một số ít – Giới tính, Quốc gia. Về cơ bản, mô hình học máy là một công thức toán học sẽ chỉ chấp nhận các chữ số làm đầu vào. Vì vậy, chúng tôi cố gắng tạo một mô hình ML bằng cách sử dụng tập dữ liệu này chứa hỗn hợp dữ liệu [số + chuỗi], mô hình của chúng tôi sẽ không thành công trong chính quá trình tạo. Do đó, chúng ta cần chuyển đổi các giá trị chuỗi đó thành số tương đương mà không làm mất đi ý nghĩa của chúng

Một trong những cách hiệu quả nhất để làm điều này là sử dụng một kỹ thuật gọi là mã hóa. Đó là một quá trình sẽ chuyển đổi các chuỗi hoặc danh mục trực tiếp thành số tương đương của chúng mà không làm mất đi ý nghĩa

Ở đây cột giới tính của chúng ta chỉ có 2 danh mục là nam và nữ, chúng ta sẽ sử dụng Mã hóa nhãn. Loại mã hóa này sẽ đơn giản chuyển đổi cột này thành cột có giá trị 0 và 1. Để sử dụng Mã hóa nhãn, chúng tôi sẽ sử dụng lớp LabelEncoder từ thư viện sklearn

#Encoding Categorical Variable Gender
from sklearn.preprocessing import LabelEncoder
LE1 = LabelEncoder[]
X[:,2] = np.array[LE1.fit_transform[X[:,2]]]

Ở đây, chúng tôi đã áp dụng mã hóa nhãn trên cột Giới tính trong tập dữ liệu của mình

Mã hóa quốc gia biến phân loại

Bây giờ, hãy xử lý một cột phân loại khác có tên quốc gia. Cột này có số lượng là 3 có nghĩa là nó có 3 danh mục riêng biệt hiện tại. e Pháp, Đức, Tây Ban Nha

Ở đây chúng ta có 2 lựa chọn. -

1. Chúng ta có thể sử dụng Mã hóa nhãn tại đây và chuyển đổi trực tiếp các giá trị đó thành 0,1,2 như thế

2. Chúng ta có thể sử dụng One Hot Encoding tại đây sẽ chuyển đổi các chuỗi đó thành luồng vectơ nhị phân. Ví dụ – Tây Ban Nha sẽ được mã hóa là 001, Pháp sẽ là 010, v.v.

Cách tiếp cận đầu tiên dễ thực hiện và nhanh hơn. Tuy nhiên, một khi các giá trị đó được mã hóa, chúng sẽ được chuyển đổi thành 0,1,2. Tuy nhiên, tồn tại một phương pháp mã hóa khác được gọi là mã hóa một lần nóng. Trong một mã hóa nóng, tất cả các giá trị chuỗi được chuyển đổi thành các luồng nhị phân 0 và 1. Mã hóa một lần nóng đảm bảo rằng thuật toán máy học không cho rằng các số cao hơn là quan trọng hơn

#Encoding Categorical variable Geography
from sklearn.compose import ColumnTransformer
from sklearn.preprocessing import OneHotEncoder
ct =ColumnTransformer[transformers=[['encoder',OneHotEncoder[],[1]]],remainder="passthrough"]
X = np.array[ct.fit_transform[X]]

Ở đây chúng tôi đã sử dụng lớp OneHotEncoder từ sklearn để thực hiện mã hóa một lần nóng. Bây giờ bạn có thể có một truy vấn ở đây. Công dụng của ColumnTransformer là gì?

Tách tập dữ liệu thành tập dữ liệu huấn luyện và kiểm tra

Trong bước này, chúng tôi sẽ chia tập dữ liệu của mình thành tập dữ liệu đào tạo và thử nghiệm. Đây là một trong những nền tảng của toàn bộ quá trình học máy. Tập dữ liệu đào tạo là tập dữ liệu mà mô hình của chúng ta sẽ đào tạo trong khi tập dữ liệu thử nghiệm là tập dữ liệu mà chúng ta sẽ kiểm tra hiệu suất của mô hình

#Splitting dataset into training and testing dataset
from sklearn.model_selection import train_test_split
X_train,X_test,Y_train,Y_test = train_test_split[X,Y,test_size=0.2,random_state=0]

Ở đây chúng tôi đã sử dụng hàm train_test_split từ thư viện sklearn. Chúng tôi đã chia tập dữ liệu của mình thành một cấu hình sao cho 80 phần trăm dữ liệu sẽ ở đó trong giai đoạn đào tạo và 20 phần trăm dữ liệu sẽ ở giai đoạn thử nghiệm

Ngoài ra, phần hay nhất khi sử dụng hàm train_test_split từ sklearn là trong khi chia tách, nó cũng sẽ thực hiện xáo trộn dữ liệu để tạo tập dữ liệu tổng quát hơn

Thực hiện nhân rộng tính năng

Bước cuối cùng trong giai đoạn kỹ thuật tính năng của chúng tôi là mở rộng quy mô tính năng. Đó là một thủ tục trong đó tất cả các biến được chuyển đổi thành cùng một tỷ lệ. Tại sao bạn có thể hỏi?. Đôi khi trong tập dữ liệu của chúng tôi, một số biến nhất định có giá trị rất cao trong khi một số biến nhất định có giá trị rất thấp. Vì vậy, có khả năng trong quá trình tạo mô hình, các biến có giá trị cực cao lấn át các biến có giá trị cực thấp. Do đó, có khả năng các biến có giá trị thấp đó có thể bị mô hình của chúng tôi bỏ qua và do đó cần phải mở rộng quy mô tính năng

Bây giờ tôi sẽ trả lời một trong những câu hỏi quan trọng nhất được hỏi trong một cuộc phỏng vấn về máy học. ” Khi nào nên thực hiện chia tỷ lệ tính năng – trước khi phân tách thử nghiệm đào tạo hoặc sau khi phân tách thử nghiệm đào tạo?”

Chà, câu trả lời là sau khi chúng tôi chia tập dữ liệu thành tập dữ liệu huấn luyện và kiểm tra. Lý do là, tập dữ liệu đào tạo là thứ mà mô hình của chúng ta sẽ tự đào tạo hoặc tự học. Mặc dù tập dữ liệu thử nghiệm là thứ mà mô hình của chúng tôi sẽ được đánh giá. Nếu chúng tôi thực hiện chia tỷ lệ tính năng trước khi phân tách kiểm tra tập huấn thì điều đó sẽ gây ra rò rỉ thông tin trên các bộ dữ liệu thử nghiệm, điều này sẽ bỏ qua mục đích có tập dữ liệu thử nghiệm và do đó chúng tôi phải luôn thực hiện chia tỷ lệ tính năng sau khi phân chia kiểm tra tập huấn

Bây giờ chúng ta sẽ thực hiện nhân rộng tính năng như thế nào? . Hai kỹ thuật hiệu quả nhất trong ngữ cảnh là. -

1. tiêu chuẩn hóa

2. bình thường hóa

Bất cứ khi nào tiêu chuẩn hóa được thực hiện, tất cả các giá trị trong tập dữ liệu sẽ được chuyển đổi thành các giá trị nằm trong khoảng từ -3 đến +3. Trong trường hợp chuẩn hóa, tất cả các giá trị sẽ được chuyển đổi thành một phạm vi từ -1 đến +1

Có rất ít điều kiện về kỹ thuật nào sẽ được sử dụng và khi nào. Thông thường, Chuẩn hóa chỉ được sử dụng khi tập dữ liệu của chúng tôi tuân theo phân phối bình thường trong khi tiêu chuẩn hóa là một kỹ thuật phổ biến có thể được sử dụng cho mọi tập dữ liệu bất kể phân phối. Ở đây chúng ta sẽ sử dụng Tiêu chuẩn hóa

#Performing Feature Scaling
from sklearn.preprocessing import StandardScaler
sc = StandardScaler[]
X_train = sc.fit_transform[X_train]
X_test = sc.transform[X_test]

Ở đây chúng tôi đã sử dụng lớp StandardScalar từ thư viện sklearn để thực hiện chuẩn hóa

Bây giờ chúng tôi đã hoàn thành giai đoạn kỹ thuật tính năng của mình. Bây giờ chúng ta có thể bắt đầu với việc tạo mạng thần kinh nhân tạo từ điểm tiếp theo trở đi

Khởi tạo mạng nơ ron nhân tạo

Đây là bước đầu tiên khi tạo ANN. Ở đây chúng ta sẽ tạo đối tượng ann của mình bằng cách sử dụng một lớp Keras nhất định có tên Sequential

#Initialising ANN
ann = tf.keras.models.Sequential[]

Là một phần của tensorflow 2. 0, Keras hiện được tích hợp với tensorflow và hiện được coi là thư viện con của tensorflow. Lớp Sequential là một phần của mô-đun mô hình của thư viện Keras, hiện là một phần của thư viện tensorflow

Tạo các lớp ẩn

Khi chúng tôi khởi tạo ann của mình, bây giờ chúng tôi sẽ tạo các lớp cho cùng một. Ở đây chúng ta sẽ tạo một mạng có 2 lớp ẩn, 1 lớp đầu vào và 1 lớp đầu ra. Vì vậy, hãy tạo lớp ẩn đầu tiên của chúng ta

________số 8

Ở đây chúng ta đã tạo lớp ẩn đầu tiên bằng cách sử dụng lớp Dense là một phần của mô-đun lớp. Lớp này chấp nhận 2 đầu vào. -

1. các đơn vị. - số lượng tế bào thần kinh sẽ có mặt trong lớp tương ứng

2. kích hoạt. - chỉ định chức năng kích hoạt nào sẽ được sử dụng

Đối với đầu vào đầu tiên, tôi đã thử nghiệm với nhiều giá trị trong quá khứ và giá trị tối ưu mà tôi đã tìm thấy là 6. Rõ ràng, chúng ta có thể thử với bất kỳ giá trị nào khác vì không có quy tắc cứng nhắc nào về số lượng nơ-ron nên có trong lớp

Đối với đầu vào thứ hai, chúng tôi sẽ luôn sử dụng “relu”[đơn vị tuyến tính được chỉnh lưu] làm chức năng kích hoạt cho các lớp ẩn. Vì chúng ta sẽ tạo hai lớp ẩn, nên chúng ta cũng sẽ lặp lại bước này để tạo lớp ẩn thứ hai

 #Adding Second Hidden Layer
ann.add[tf.keras.layers.Dense[units=6,activation="relu"]]

Tạo lớp đầu ra

Trong bước này, chúng ta sẽ tạo lớp đầu ra cho ann. Lớp đầu ra sẽ chịu trách nhiệm cung cấp đầu ra

#Loading Dataset
data = pd.read_csv["Churn_Modelling.csv"]
0

Ở đây một lần nữa, chúng ta sẽ sử dụng lớp Dense để tạo lớp đầu ra. Hai điều quan trọng cần nhớ ở đây. -

1. Trong một vấn đề phân loại nhị phân [như vấn đề này], nơi chúng tôi sẽ chỉ có hai lớp làm đầu ra [1 và 0], chúng tôi sẽ chỉ phân bổ một nơ-ron để đưa ra kết quả này. Đối với vấn đề phân loại nhiều lớp, chúng ta phải sử dụng nhiều hơn một nơ-ron trong lớp đầu ra. Ví dụ: nếu đầu ra của chúng tôi chứa 4 danh mục thì chúng tôi cần tạo 4 nơ-ron khác nhau [một cho mỗi danh mục]

2. Đối với các vấn đề phân loại nhị phân, hàm kích hoạt luôn được sử dụng là sigmoid. Đối với vấn đề phân loại nhiều lớp, chức năng kích hoạt nên được sử dụng là softmax

Ở đây vì chúng ta đang xử lý phân loại nhị phân do đó chúng ta chỉ phân bổ một nơ-ron trong lớp đầu ra và hàm kích hoạt được sử dụng là softmax

Biên dịch mạng nơ ron nhân tạo

Bây giờ chúng tôi đã tạo các lớp cho mạng lưới thần kinh của mình. Trong bước này, chúng tôi sẽ biên dịch ANN của chúng tôi

#Loading Dataset
data = pd.read_csv["Churn_Modelling.csv"]
1

Chúng tôi đã sử dụng phương thức biên dịch của đối tượng ann để biên dịch mạng của chúng tôi. Phương thức biên dịch chấp nhận các đầu vào bên dưới. -

1. trình tối ưu hóa. - chỉ định trình tối ưu hóa nào sẽ được sử dụng để thực hiện giảm dần độ dốc ngẫu nhiên. Tôi đã thử nghiệm với nhiều trình tối ưu hóa khác nhau như RMSProp, adam và tôi nhận thấy rằng trình tối ưu hóa adam là một công cụ đáng tin cậy có thể được sử dụng với bất kỳ mạng thần kinh nào

2. thua. - chỉ định hàm mất mát nào sẽ được sử dụng. Đối với phân loại nhị phân, giá trị phải là binary_crossentropy. Đối với phân loại nhiều lớp, nó phải là categorical_crossentropy

3. chỉ số. - số liệu hiệu suất nào sẽ được sử dụng để tính toán hiệu suất. Ở đây chúng tôi đã sử dụng độ chính xác làm thước đo hiệu suất

Lắp mạng nơ ron nhân tạo

Đây là bước cuối cùng trong quy trình tạo ann của chúng tôi. Ở đây chúng ta sẽ huấn luyện ann của mình trên tập dữ liệu huấn luyện

#Loading Dataset
data = pd.read_csv["Churn_Modelling.csv"]
2

Ở đây chúng tôi đã sử dụng phương pháp phù hợp để đào tạo ann của chúng tôi. Phương thức phù hợp đang chấp nhận 4 đầu vào trong trường hợp này. -

1. X_train. - Ma trận các đặc trưng của tập dữ liệu huấn luyện

2. Y_train. - Các vectơ biến phụ thuộc cho tập dữ liệu huấn luyện

3. batch_size. nên có bao nhiêu quan sát trong lô. Thông thường, giá trị cho tham số này là 32 nhưng chúng tôi cũng có thể thử nghiệm với bất kỳ giá trị nào khác

4. kỷ nguyên. Mạng lưới thần kinh sẽ được đào tạo bao nhiêu lần. Ở đây, giá trị tối ưu mà tôi đã tìm thấy từ kinh nghiệm của mình là 100

Bạn có muốn xem quy trình đào tạo diễn ra như thế nào không?

Đào tạo mạng nơ-ron nhân tạo

Ở đây chúng ta có thể thấy rằng trong mỗi kỷ nguyên, tổn thất của chúng ta đang giảm dần và độ chính xác của chúng ta đang tăng lên. Như chúng ta có thể thấy ở đây độ chính xác cuối cùng của chúng ta là 86. 59, điều này khá đáng chú ý đối với một mạng lưới thần kinh với sự đơn giản này

Đó là nó. ]. Chúng tôi đã tạo mạng thần kinh nhân tạo của mình từ đầu bằng Python

Như một phần thưởng bổ sung, tôi đính kèm mã bên dưới để cho phép chúng tôi thực hiện dự đoán một điểm cho bất kỳ giá trị đầu vào tùy chỉnh nào

Dự đoán kết quả cho Quan sát một điểm

#Loading Dataset
data = pd.read_csv["Churn_Modelling.csv"]
3

đầu ra

#Loading Dataset
data = pd.read_csv["Churn_Modelling.csv"]
4

Ở đây, mạng thần kinh của chúng tôi đang cố gắng dự đoán liệu khách hàng của chúng tôi có thoát ra hay không dựa trên giá trị của các biến độc lập

Mẹo CHUYÊN NGHIỆP

iPhone 13 Pro Max- Hình ảnh được lấy từ Apple. com

Bây giờ chúng tôi đã tạo ra mô hình của chúng tôi. Bây giờ tôi đang cung cấp cho bạn một mẹo chuyên nghiệp về cách bạn có thể lưu mạng thần kinh đã tạo của mình

#Loading Dataset
data = pd.read_csv["Churn_Modelling.csv"]
5

Đó là nó. Sử dụng một dòng mã này cho phép chúng tôi lưu mô hình ML của mình. Bạn có thể có một truy vấn ở đây?

Định dạng tệp h5 là gì? . Sử dụng định dạng này, chúng ta có thể lưu trực tiếp mạng thần kinh của mình dưới dạng một đối tượng được tuần tự hóa. Nó tương tự như triển khai định dạng tệp pickle mà chúng tôi sử dụng để lưu trữ các mô hình máy học truyền thống

Chà, đó là tất cả về cách triển khai mạng thần kinh từ đầu trong Python

Phần kết luận

Hy vọng bạn thích bài viết này

https. //www. linkin. com/in/shrish-mohadarkar-060209109/

Phương tiện hiển thị trong bài viết này không thuộc sở hữu của Analytics Vidhya và được sử dụng theo quyết định của Tác giả

Python có tốt cho mạng lưới thần kinh không?

Nếu bạn mới bắt đầu trong thế giới trí tuệ nhân tạo [AI], thì Python là một ngôn ngữ tuyệt vời để học vì hầu hết các công cụ đều được xây dựng bằng ngôn ngữ này. Deep learning is a technique used to make predictions using data, and it heavily relies on neural networks.

Làm cách nào để đào tạo mạng lưới thần kinh trong Python?

Cách tạo mạng nơ-ron trong Python – Có và không có máy ảnh .
Nhập thư viện. .
Xác định/tạo dữ liệu đầu vào. .
Thêm trọng số và độ lệch [nếu có] vào các tính năng đầu vào. .
Huấn luyện mạng dựa trên dữ liệu tốt, đã biết để tìm các giá trị chính xác cho trọng số và độ lệch

Mạng thần kinh là AI hay ML?

Mạng nơ-ron là một phương pháp trong trí tuệ nhân tạo dạy máy tính xử lý dữ liệu theo cách lấy cảm hứng từ bộ não con người. Đó là một loại quy trình máy học, được gọi là học sâu, sử dụng các nút hoặc tế bào thần kinh được kết nối với nhau trong một cấu trúc phân lớp giống như bộ não con người.

OpenCV có phải là mạng thần kinh không?

Phân loại bằng OpenCV DNN và DenseNet được đào tạo trước. OpenCV có thể được sử dụng để giải quyết các vấn đề phân loại hình ảnh. Thư viện OpenCV cung cấp mô-đun Mạng nơ-ron sâu [DNN] , tạo điều kiện thuận lợi cho việc sử dụng các chức năng liên quan đến học sâu trong OpenCV.

Chủ Đề