Khóa học

Tất cả chúng ta đều biết về mức độ phổ biến của ChatGPT và cách mọi người đang dùng nó để tăng năng suất. Nhưng nếu bạn là người mới, đáng để đăng ký bản demo miễn phí của ChatGPT và thử nghiệm những gì nó có thể làm. Bạn cũng nên tham gia khóa học Introduction to ChatGPT của chúng tôi để học các thực tiễn tốt nhất khi xây dựng prompt hiệu quả và khám phá các trường hợp sử dụng doanh nghiệp phổ biến để khai thác công cụ AI mạnh mẽ này.
Trong hướng dẫn này, chúng ta sẽ học cách sử dụng ChatGPT để thực hiện một dự án khoa học dữ liệu end-to-end. Chúng ta sẽ dùng nhiều prompt để tạo đề cương dự án, viết mã Python, nghiên cứu và gỡ lỗi ứng dụng. Ngoài ra, chúng ta sẽ học mẹo viết prompt ChatGPT hiệu quả. Nếu bạn hứng thú với việc dùng AI cho nhiều mục đích khác nhau, hãy xem hướng dẫn về các dự án trí tuệ nhân tạo cho mọi trình độ.
Sử dụng ChatGPT cho một dự án Khoa học Dữ liệu End-to-End
Trong dự án, chúng ta sẽ sử dụng Dữ liệu khoản vay từ DataLab và lập kế hoạch dự án khoa học dữ liệu xoay quanh bộ dữ liệu này.
ChatGPT thực hiện 80 phần trăm công việc ở đây, chúng ta chỉ cần thành thạo kỹ thuật prompt để mọi thứ chính xác, và cho việc đó, chúng ta có ChatGPT Cheat Sheet cho Khoa học Dữ liệu tuyệt vời. Tài liệu này có hơn 60 prompt ChatGPT cho các tác vụ khoa học dữ liệu dựa trên SQL, R và Python.
Lập kế hoạch dự án
Đây là phần quan trọng nhất của dự án, nơi chúng ta xem xét các nguồn lực sẵn có và mục tiêu để đưa ra chiến lược tối ưu.
Bạn có thể vào chat.openai.com và bắt đầu một cuộc trò chuyện mới. Sau đó, chúng ta sẽ nêu bộ dữ liệu khoản vay hiện có và yêu cầu ChatGPT đưa ra các bước để xây dựng một dự án danh mục đầu tư tổng quát end-to-end.
Prompt: “Tôi có một bộ dữ liệu khoản vay gồm 9500 dòng và 14 cột: ['credit.policy', 'purpose', 'int.rate', 'installment', 'log.annual.inc','dti', 'fico', 'days.with.cr.line', 'revol.bal', 'revol.util', 'inq.last.6mths', 'delinq.2yrs', 'pub.rec', 'not.fully.paid']. Bạn có thể liệt kê các bước tôi phải làm theo để phát triển một dự án end-to-end cho danh mục của tôi không.”
Chúng ta đã nhận được danh sách, nhưng quên đề cập đến vấn đề mất cân bằng lớp và mục tiêu dự án, đó là dự đoán chính xác “khoản vay không được trả hết”.
Prompt cập nhật: “Vui lòng bao gồm vấn đề mất cân bằng lớp và dự đoán chính xác liệu một khoản vay sẽ không được trả hết thay vì liệu một khoản vay được trả hết.”
Mặt khác, chúng ta không quan tâm đến việc giám sát mô hình, và chúng ta muốn xây dựng một ứng dụng Gradio và triển khai trên Hugging Face Spaces.
Prompt cập nhật: “Chúng ta sẽ tạo một ứng dụng web bằng Gradio và triển khai nó trên Spaces và chúng ta sẽ không giám sát mô hình trong môi trường vận hành.”

Gif của Tác giả | Danh sách cuối cùng các bước trong một dự án
Chúng ta nhận được danh sách 9 bước như trên và lời giải thích chi tiết về cách tiếp cận từng bước.
Dưới đây là danh sách các tác vụ mà chúng ta sẽ thực hiện trong hướng dẫn này:
- Làm sạch và tiền xử lý dữ liệu. Xử lý giá trị khuyết, chuyển đổi biến phân loại thành biến số, chuẩn hóa/chuẩn chỉnh dữ liệu, và xử lý các ngoại lệ hoặc bất thường trong dữ liệu. Ngoài ra, bạn sẽ muốn giải quyết vấn đề mất cân bằng lớp bằng cách oversample lớp thiểu số (các khoản vay không được trả hết) hoặc undersample lớp đa số (các khoản vay được trả hết).
- Phân tích dữ liệu khám phá (EDA). Khám phá bộ dữ liệu để thu được thông tin chi tiết, như phân phối của các biến, tương quan giữa các biến và xác định bất kỳ mẫu nào trong dữ liệu.
- Kỹ thuật đặc trưng. Tạo đặc trưng mới hoặc biến đổi đặc trưng hiện có để cải thiện khả năng dự đoán của mô hình.
- Lựa chọn mô hình. Thử một số mô hình như cây quyết định, rừng ngẫu nhiên, hồi quy logistic, hoặc máy vector hỗ trợ (SVM).
- Huấn luyện và đánh giá mô hình. Huấn luyện mô hình đã chọn trên dữ liệu và đánh giá hiệu năng bằng các chỉ số như accuracy, precision, recall và F1 score.
- Tinh chỉnh siêu tham số. Tinh chỉnh siêu tham số của mô hình đã chọn để cải thiện hiệu năng.
- Tạo ứng dụng web bằng Gradio. Khi bạn đã chọn được mô hình tốt nhất, bạn có thể tạo ứng dụng web bằng Gradio.
- Triển khai ứng dụng web trên Spaces. Sau khi tạo ứng dụng web bằng Gradio, bạn có thể triển khai nó trên Spaces.
- Kiểm thử ứng dụng web. Kiểm thử để đảm bảo ứng dụng hoạt động như mong đợi.
Phân tích dữ liệu khám phá (EDA)
EDA là về thao tác dữ liệu, phân tích thống kê và trực quan hóa dữ liệu. Chúng ta có thể hoàn thành bằng cách viết một prompt tiếp theo để viết mã Python cho EDA trên bộ dữ liệu của mình.
Prompt tiếp theo: “Vui lòng viết mã Python để tải và thực hiện Exploratory data analysis (EDA) trên bộ dữ liệu khoản vay”
Bot sẽ hiểu ngữ cảnh và đưa ra mã Python kèm chú thích và giải thích chi tiết cách hoạt động.

Gif của Tác giả | Mã Python cho EDA
- Tải và hiển thị bộ dữ liệu dưới dạng dataframe Pandas.
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
loan_df = pd.read_csv("loan_data.csv")
loan_df.head()

- Hiển thị số lượng dòng và cột và tóm tắt thống kê cho các biến số.
# Display the number of rows and columns in the dataset
print("Number of rows and columns:", loan_df.shape)
# Display summary statistics for numerical variables
print(loan_df.describe())
Number of rows and columns: (9578, 14)
credit.policy int.rate ... pub.rec not.fully.paid
count 9578.000000 9578.000000 ... 9578.000000 9578.000000
mean 0.804970 0.122640 ... 0.062122 0.160054
std 0.396245 0.026847 ... 0.262126 0.366676
min 0.000000 0.060000 ... 0.000000 0.000000
25% 1.000000 0.103900 ... 0.000000 0.000000
50% 1.000000 0.122100 ... 0.000000 0.000000
75% 1.000000 0.140700 ... 0.000000 0.000000
max 1.000000 0.216400 ... 5.000000 1.000000
- Hiển thị giá trị khuyết ở mỗi cột. Như ta thấy, không có giá trị nào.
print(loan_df.isnull().sum())
credit.policy 0
purpose 0
int.rate 0
installment 0
log.annual.inc 0
dti 0
fico 0
days.with.cr.line 0
revol.bal 0
revol.util 0
inq.last.6mths 0
delinq.2yrs 0
pub.rec 0
not.fully.paid 0
- Trực quan hóa phân phối của biến mục tiêu “not.fully.paid”
sns.countplot(x="not.fully.paid", data=loan_df)
plt.show()

- Trực quan hóa tương quan giữa các biến.
corr = loan_df.corr()
sns.heatmap(corr, annot=True, cmap="coolwarm")
plt.show()

- Tìm hiểu phân phối mục đích vay.
sns.countplot(x="purpose", data=loan_df)
plt.xticks(rotation=90)
plt.show()

- Tìm hiểu phân phối lãi suất theo mục đích vay.
sns.boxplot(x="purpose", y="int.rate", data=loan_df)
plt.xticks(rotation=90)
plt.show()
Kỹ thuật đặc trưng
Thay vì tiền xử lý và làm sạch dữ liệu, chúng ta sẽ thực hiện kỹ thuật đặc trưng để đơn giản hóa tác vụ tiền xử lý.
Prompt tiếp theo: “Viết mã Python để thực hiện kỹ thuật đặc trưng”
Chúng ta đã nhận giải pháp đúng, nhưng có kèm mã không liên quan, nên phải viết prompt cập nhật để chỉnh sửa mã.
Prompt cập nhật: “chỉ thêm phần kỹ thuật đặc trưng.”
# Perform feature engineering
loan_df["installment_to_income_ratio"] = (
loan_df["installment"] / loan_df["log.annual.inc"]
)
loan_df["credit_history"] = (loan_df["delinq.2yrs"] + loan_df["pub.rec"]) / loan_df[
"fico"
]
ChatGPT đã gợi ý hai đặc trưng mới: “installment_to_income_ratio” và “credit_history”.
Tiền xử lý và cân bằng dữ liệu
Một lần nữa, ChatGPT nắm ngữ cảnh của dự án. Chúng ta không cần giải thích lại mọi thứ. Vì vậy, ta sẽ chỉ yêu cầu viết mã Python để làm sạch và tiền xử lý dữ liệu.
Prompt tiếp theo: “Bây giờ hãy viết mã python để làm sạch và tiền xử lý bộ dữ liệu”
- Loại bỏ các cột không cần thiết và chuyển đổi biến phân loại sang biến số.
from sklearn.preprocessing import LabelEncoder, StandardScaler
loan_df = loan_df.drop(['credit.policy', 'days.with.cr.line', 'purpose'], axis=1)
# Convert categorical variables to numerical using LabelEncoder
le = LabelEncoder()
loan_df['not.fully.paid'] = le.fit_transform(loan_df['not.fully.paid'])
- Chuẩn hóa các biến số bằng Standard Scaler.
scaler = StandardScaler()
numerical_cols = ['int.rate', 'installment', 'log.annual.inc', 'dti', 'fico', 'revol.bal', 'revol.util', 'inq.last.6mths', 'delinq.2yrs', 'pub.rec','credit_history','installment_to_income_ratio']
loan_df[numerical_cols] = scaler.fit_transform(loan_df[numerical_cols])
- Xử lý mất cân bằng lớp bằng phương pháp oversampling của imblearn.
from imblearn.over_sampling import SMOTE
sm = SMOTE(random_state=42)
X = loan_df.drop('not.fully.paid', axis=1)
y = loan_df['not.fully.paid']
X_resampled, y_resampled = sm.fit_resample(X, y)
loan_df = pd.concat([X_resampled, y_resampled], axis=1)
loan_df['not.fully.paid'].value_counts()
Như ta thấy, chúng ta đã cân bằng lớp thành công.
0 8045
1 8045
Name: not.fully.paid, dtype: int64
Lựa chọn mô hình
Ở phần này, chúng ta yêu cầu ChatGPT huấn luyện dữ liệu trên nhiều mô hình để thực hiện nhiệm vụ lựa chọn mô hình.
Prompt tiếp theo: “Viết mã python tiếp theo cho lựa chọn mô hình. Thử cây quyết định, rừng ngẫu nhiên, hồi quy logistic, hoặc máy vector hỗ trợ (SVM). Lưu ý: chỉ bao gồm phần lựa chọn mô hình.”
ChatGPT đã tạo script Python để chia bộ dữ liệu thành tập huấn luyện và kiểm thử và huấn luyện trên các mô hình được chỉ định để hiển thị các chỉ số accuracy.
from sklearn.model_selection import train_test_split
# Split the dataset into training and testing sets
X = loan_df.drop('not.fully.paid', axis=1)
y = loan_df['not.fully.paid']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# Fit and evaluate decision tree classifier
dt = DecisionTreeClassifier(random_state=42)
dt.fit(X_train, y_train)
dt_score = dt.score(X_test, y_test)
print("Decision Tree Classifier Accuracy: {:.2f}%".format(dt_score*100))
# Fit and evaluate random forest classifier
rf = RandomForestClassifier(random_state=42)
rf.fit(X_train, y_train)
rf_score = rf.score(X_test, y_test)
print("Random Forest Classifier Accuracy: {:.2f}%".format(rf_score*100))
# Fit and evaluate logistic regression classifier
lr = LogisticRegression(random_state=42)
lr.fit(X_train, y_train)
lr_score = lr.score(X_test, y_test)
print("Logistic Regression Classifier Accuracy: {:.2f}%".format(lr_score*100))
# Fit and evaluate support vector machine classifier
svm = SVC(random_state=42)
svm.fit(X_train, y_train)
svm_score = svm.score(X_test, y_test)
print("Support Vector Machine Classifier Accuracy: {:.2f}%".format(svm_score*100))
Thuật toán Random Forest vượt trội đáng kể so với các mô hình khác.
Decision Tree Classifier Accuracy: 81.21%
Random Forest Classifier Accuracy: 89.14%
Logistic Regression Classifier Accuracy: 61.32%
Support Vector Machine Classifier Accuracy: 66.54%
Tinh chỉnh siêu tham số và đánh giá mô hình
Chúng ta sẽ chọn mô hình hoạt động tốt hơn và tiến hành đánh giá mô hình. Chúng ta đã chỉ định dùng accuracy, precision, recall và F1 score làm chỉ số và dùng cross-validation để đảm bảo tính ổn định của mô hình.
Prompt tiếp theo: “Chọn RandomForestClassifier và viết mã python để đánh giá mô hình. Dùng accuracy, precision, recall và F1 score làm chỉ số và cross-validation để đảm bảo mô hình không overfit với dữ liệu huấn luyện.”
Chúng ta sẽ cập nhật Python để thêm nhiệm vụ tinh chỉnh siêu tham số và lưu mô hình hoạt động tốt nhất.
Prompt cập nhật: “cũng bao gồm tinh chỉnh siêu tham số trong mã trên và lưu mô hình hoạt động tốt nhất”
Phiên bản cuối của mã sử dụng GridSearchCV để tinh chỉnh siêu tham số với năm lần chia cross-validation và dùng chỉ số f1 để đánh giá nhằm tìm siêu tham số tốt nhất.
Sau đó, ChatGPT tự động thêm mã để chọn mô hình tốt nhất để đánh giá trên tập kiểm thử và hiển thị các siêu tham số hoạt động tốt nhất.
from sklearn.model_selection import GridSearchCV
from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score
# Define the parameter grid for hyperparameter tuning
param_grid = {
'n_estimators': [100, 200, 300],
'max_depth': [10, 20, 30, None],
'min_samples_split': [2, 5, 10],
'min_samples_leaf': [1, 2, 4]
}
# Perform grid search with cross-validation to find the best hyperparameters
grid_search = GridSearchCV(rf, param_grid, cv=5, scoring='f1')
grid_search.fit(X_train, y_train)
# Get the best model and its hyperparameters
best_model = grid_search.best_estimator_
best_params = grid_search.best_params_
# Evaluate the best model on the testing set
y_pred = best_model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
precision = precision_score(y_test, y_pred)
recall = recall_score(y_test, y_pred)
f1 = f1_score(y_test, y_pred)
# Print the results
print("Random Forest Classifier Evaluation Results:")
print("Accuracy: {:.2f}%".format(accuracy * 100))
print("Precision: {:.2f}%".format(precision * 100))
print("Recall: {:.2f}%".format(recall * 100))
print("F1 Score: {:.2f}%".format(f1 * 100))
print("Best hyperparameters:", best_params)
Chúng ta có một mô hình ổn định với điểm accuracy 89,35. Cả Precision và Recall đều tương tự nhau.
Random Forest Classifier Evaluation Results:
Accuracy: 89.35%
Precision: 89.92%
Recall: 88.33%
F1 Score: 89.12%
Best hyperparameters: {'max_depth': None, 'min_samples_leaf': 1, 'min_samples_split': 2, 'n_estimators': 300}
Cuối cùng, chúng ta sẽ lưu mô hình bằng joblib.
import joblib
# Save the best model to disk
joblib.dump(best_model, 'loan_classifier.joblib')
Bạn có thể tìm mã nguồn kèm kết quả tại DataLab workbook này; bạn có thể dễ dàng tạo bản sao để chỉnh sửa và chạy mã ngay trên trình duyệt, không cần cài đặt gì trên máy tính.
Tạo ứng dụng web bằng Gradio
Giờ đến phần thú vị nhất. Chúng ta sẽ chỉ dùng các prompt để tạo một ứng dụng web có thể tùy chỉnh, nhận đầu vào dạng số và hiển thị kết quả bằng mô hình học máy.
ChatGPT đã biết ngữ cảnh, vì vậy chúng ta chỉ cần yêu cầu viết ứng dụng web Gradio cho bộ phân loại dữ liệu khoản vay.
Prompt tiếp theo: “Viết mã Python để tạo ứng dụng web Gradio cho các bộ phân loại dữ liệu khoản vay. Chúng ta không sử dụng các cột ['credit.policy', 'days.with.cr.line', 'purpose'].”
Hãy yêu cầu ChatGPT chỉ bao gồm phần ứng dụng Gradio thay vì huấn luyện rồi đến script suy luận.
Prompt cập nhật: “chỉ bao gồm phần ứng dụng gradio.”
Mã nhận được hiển thị xác suất lớp, nhưng chúng ta muốn hiển thị nhãn phân loại.
Prompt cập nhật: “chỉnh sửa mã để hiển thị phân loại thay vì xác suất lớp.”
Sau khi chạy mã, chúng ta thấy nhiều cảnh báo và lỗi. Bạn có thể cải thiện bằng cách nêu rõ các lỗi cho ChatGPT.
Chúng ta cần hiểu giới hạn của ChatGPT. Nó được huấn luyện trên tập dữ liệu cũ, và nếu bạn kỳ vọng nó cập nhật mã theo API mới nhất, bạn sẽ gặp bế tắc. Thay vào đó, chúng ta phải đọc tài liệu Gradio và cập nhật mã thủ công.
Prompt thất bại: “cập nhật mã Gradio với component từ gradio.components”
Trong ứng dụng Gradio, chúng ta tải mô hình đã lưu và nhận đầu vào từ người dùng để hiển thị dự đoán của mô hình.
Tìm hiểu cách Gradio hoạt động bằng cách đọc Gradio Docs.
import gradio as gr
import joblib
# Load the trained model
model = joblib.load("loan_classifier.joblib")
def predict_loan_status(
int_rate,
installment,
log_annual_inc,
dti,
fico,
revol_bal,
revol_util,
inq_last_6mths,
delinq_2yrs,
pub_rec,
installment_to_income_ratio,
credit_history,
):
input_dict = {
"int.rate": int_rate,
"installment": installment,
"log.annual.inc": log_annual_inc,
"dti": dti,
"fico": fico,
"revol.bal": revol_bal,
"revol.util": revol_util,
"inq.last.6mths": inq_last_6mths,
"delinq.2yrs": delinq_2yrs,
"pub.rec": pub_rec,
"installment_to_income_ratio": installment_to_income_ratio,
"credit_history": credit_history,
}
# Convert the dictionary to a 2D array
input_array = [list(input_dict.values())]
prediction = model.predict(input_array)[0]
if prediction == 0:
return "Loan fully paid"
else:
return "Loan not fully paid"
inputs = [
gr.Slider(0.06, 0.23, step=0.01, label="Interest Rate"),
gr.Slider(100, 950, step=10, label="Installment"),
gr.Slider(7, 15, step=0.1, label="Log Annual Income"),
gr.Slider(0, 40, step=1, label="DTI Ratio"),
gr.Slider(600, 850, step=1, label="FICO Score"),
gr.Slider(0, 120000, step=1000, label="Revolving Balance"),
gr.Slider(0, 120, step=1, label="Revolving Utilization"),
gr.Slider(0, 10, step=1, label="Inquiries in Last 6 Months"),
gr.Slider(0, 20, step=1, label="Delinquencies in Last 2 Years"),
gr.Slider(0, 10, step=1, label="Public Records"),
gr.Slider(0, 5, step=0.1, label="Installment to Income Ratio"),
gr.Slider(0, 1, step=0.01, label="Credit History"),
]
outputs = [gr.Label(num_top_classes=2)]
title = "Loan Approval Classifier"
description = (
"Enter the details of the loan applicant to check if the loan is approved or not."
)
gr.Interface(
fn=predict_loan_status,
inputs=inputs,
outputs=outputs,
title=title,
description=description,
).launch()
Bạn có thể lưu mã trên vào tệp `app.py` và khởi chạy ứng dụng trong trình duyệt bằng cách chạy script `python app.py` trong terminal.

Gif của Tác giả | Ứng dụng phân loại phê duyệt khoản vay
Mặc dù ứng dụng của chúng ta hoạt động tốt, ChatGPT đã bỏ sót hoàn toàn việc chúng ta đã chuẩn hóa các biến số. Vì vậy, thay vì yêu cầu cập nhật mã, bạn có thể quay lại và lưu các tham số của standard scaler.
scalar = joblib.load('std_scaler.bin')
Sau đó, tải scaler trong ứng dụng của bạn bằng joblib.
input_array = [list(input_dict.values())]
scaled_array = scalar.transform(input_array)
prediction = model.predict(scaled_array)[0]
Vậy tại sao chúng ta làm thủ công? Nếu bạn yêu cầu ChatGPT chỉnh một dòng, nó có thể chỉnh cả đoạn mã và thậm chí đổi tên biến.
Đúng vậy, ChatGPT không hoàn hảo, và nó sẽ không bao giờ thay thế nhà phát triển.
Triển khai ứng dụng web trên Spaces
Bạn có thể đơn giản yêu cầu ChatGPT hướng dẫn cách triển khai một ứng dụng gradio trên Hugging Face Spaces, và nó sẽ liệt kê các bước cần thiết.
Prompt: “cách triển khai ứng dụng gradio lên huggingface spaces.”
- Truy cập trang web Hugging Face và nhấp vào ảnh hồ sơ của bạn ở góc trên bên trái để chọn tùy chọn “New Space”.

Hình ảnh của Tác giả
- Thêm tên và loại giấy phép để tạo kho ứng dụng.
- Nhấp vào Files and Versions tab > + Add file > Upload files để thêm tệp vào kho lưu trữ.
- Kéo các tệp app.py, mô hình và scaler vào và nhấp nút “Commit change to main'' và lưu commit với thông điệp. Tương tự như Git.

Hình ảnh của Tác giả
Nếu bạn gặp lỗi runtime, đó là vì bạn quên thêm tệp requirements.txt. Chọn Files and Versions tab > + Add file > Create a new file và thêm tên tệp cùng các thư viện Python với phiên bản như minh họa bên dưới.

Hình ảnh của Tác giả
Ứng dụng của bạn đã sẵn sàng. Bạn có thể thay đổi đầu vào bằng các thanh trượt và dự đoán khách hàng có nên được cấp khoản vay hay không.
Bạn có thể thử bản demo trực tiếp trên Hugging Face Space của kingabzpro.

Hình ảnh của Tác giả | Loan Classifier
Mẹo viết Prompt ChatGPT hiệu quả
Kỹ thuật prompt trở nên phức tạp khi áp dụng cho các dự án thực tế. Chúng ta cần hiểu các quy tắc về những gì có thể làm hoặc khi nào phải can thiệp để chỉnh ChatGPT.
Dưới đây là một số mẹo giúp bạn cải thiện trải nghiệm với ChatGPT mà không ảnh hưởng đến dự án.
- Luôn viết prompt rõ ràng và súc tích. Hãy đảm bảo bạn giải thích chi tiết những gì cần ngay từ đầu.
- Tạo lịch sử cho dự án. ChatGPT là chatbot, nên để nó hiểu ngữ cảnh hiệu quả, bạn cần thiết lập lịch sử.
- Tiếp tục thử nghiệm. Không có cách viết prompt tiêu chuẩn. Bạn cần bắt đầu với một prompt nền tảng và tiếp tục cải thiện bằng các prompt cập nhật tiếp theo.
- Đề cập lỗi mã. Nếu bạn chạy mã trên máy và gặp lỗi, hãy nêu lỗi trong prompt tiếp theo. ChatGPT sẽ học ngay từ sai sót và đưa ra giải pháp tốt hơn.
- Thực hiện thay đổi thủ công. ChatGPT được huấn luyện trên dữ liệu cũ, và nếu bạn kỳ vọng nó đưa ra ý tưởng hoặc lệnh API mới, bạn sẽ thất vọng. Hãy cố gắng thay đổi thủ công mã của bạn khi có thể vì mã sinh ra không hoàn hảo.
- Dùng cho các tác vụ phổ biến. Khả năng thành công với ChatGPT cao hơn nếu bạn yêu cầu các tác vụ phổ biến.
- Dùng để học điều mới. Luôn yêu cầu ChatGPT giải thích kiến thức mới hoặc các hướng dẫn “làm thế nào”. Nó sẽ cung cấp danh sách bước đơn giản để hoàn thành công việc. Điều này khá hữu ích nếu bạn gặp khó khăn trong học tập.
Nếu bạn quan tâm đến ChatGPT và OpenAI API, hãy đăng ký hội thảo: Getting Started with the OpenAI API and ChatGPT. Bạn sẽ học cách thực hiện các tác vụ tạo ngôn ngữ và mã bằng OpenAI API và nhiều hơn nữa.
Kết luận
Phát triển một bộ phân loại phê duyệt khoản vay chỉ là một trong nhiều ví dụ về việc sử dụng ChatGPT cho các dự án khoa học dữ liệu. Chúng ta có thể dùng nó để tạo dữ liệu tổng hợp, chạy truy vấn SQL, tạo báo cáo phân tích dữ liệu, nghiên cứu học máy và còn nhiều nữa. AI tạo sinh sẽ còn ở lại, và nó sẽ giúp cuộc sống của chúng ta dễ dàng hơn. Thay vì mất hàng tuần, hàng tháng cho một dự án, bạn có thể phát triển, kiểm thử và triển khai ứng dụng khoa học dữ liệu trong vài giờ.
Trong hướng dẫn này, chúng ta đã học cách dùng ChatGPT cho lập kế hoạch dự án, phân tích dữ liệu, làm sạch và tiền xử lý dữ liệu, lựa chọn mô hình, tối ưu siêu tham số, cũng như tạo và triển khai ứng dụng web.
Có một điều cần lưu ý khi dùng ChatGPT. Bạn cần có kinh nghiệm với phân tích thống kê và lập trình Python để hiểu các tác vụ khác nhau trong dự án; nếu không, bạn sẽ như đi trong bóng tối. Hãy bắt đầu hành trình khoa học dữ liệu của bạn bằng cách tham gia lộ trình nghề nghiệp Data Scientist with Python và trang bị các kỹ năng xây dựng sự nghiệp cần thiết để thành công với vai trò nhà khoa học dữ liệu.
