Các loại dữ liệu cho khoa học dữ liệu trong Python datacamp GitHub

Bạn không phải là người mới làm quen với khoa học dữ liệu, nhưng hãy đảm bảo rằng chúng ta thống nhất với nhau về những điều cơ bản. Như Peter từ DrivenData đã giải thích trong video, bạn sẽ làm việc với dữ liệu ngân sách của học khu. Dữ liệu này có thể được phân loại theo nhiều cách theo các nhãn nhất định, e. g. Hàm số. Tư vấn nghề nghiệp & học tập, hoặc Vị trí_Type. Thủ thư. Mục tiêu của bạn là phát triển một mô hình dự đoán xác suất cho từng nhãn có thể bằng cách dựa vào một số ví dụ được dán nhãn chính xác. Đây là loại vấn đề học máy nào?

Câu trả lời có thể

Học tăng cường, bởi vì mô hình đang học từ dữ liệu thông qua hệ thống phần thưởng và hình phạt

Mục tiêu của thuật toán là gì?

Như bạn đã biết từ các khóa học trước, có nhiều loại bài toán học máy có giám sát khác nhau. Trong bài tập này, bạn sẽ cho chúng tôi biết đây là loại vấn đề học máy có giám sát nào và tại sao bạn lại nghĩ như vậy. Hãy nhớ rằng, mục tiêu của bạn là gắn nhãn chính xác các mục hàng ngân sách bằng cách đào tạo một mô hình được giám sát để dự đoán xác suất của từng nhãn có thể, lấy nhãn có thể xảy ra nhất làm nhãn chính xác

Phân loại, bởi vì xác suất dự đoán sẽ được sử dụng để chọn một loại nhãn

Đang tải dữ liệu

Bây giờ là lúc để kiểm tra tập dữ liệu. Bạn sẽ sử dụng gấu trúc [đã được nhập trước dưới dạng pd] để tải dữ liệu của mình vào DataFrame, sau đó thực hiện một số Phân tích dữ liệu khám phá [EDA] về dữ liệu đó. Dữ liệu đào tạo có sẵn dưới dạng TrainingData. csv. Nhiệm vụ đầu tiên của bạn là tải nó vào DataFrame trong IPython Shell bằng cách sử dụng pd. read_csv[] cùng với đối số từ khóa index_col=0. Sử dụng các phương pháp như. thông tin[],. đầu[] và. tail[] để khám phá dữ liệu ngân sách và thuộc tính của các tính năng và nhãn. Một số tên cột tương ứng với các tính năng - mô tả của các mục ngân sách - chẳng hạn như cột Job_Title_Description. Các giá trị trong cột này cho chúng tôi biết liệu một mục ngân sách dành cho giáo viên, người giám sát hay nhân viên khác. Một số cột tương ứng với nhãn mục ngân sách mà bạn sẽ cố gắng dự đoán bằng mô hình của mình. Ví dụ: cột Object_Type mô tả liệu mục ngân sách có liên quan đến đồ dùng học tập, tiền lương, chi phí đi lại, v.v. sử dụng df. info[] trong IPython Shell để trả lời các câu hỏi sau. Có bao nhiêu hàng trong dữ liệu huấn luyện?

1560 hàng, 25 cột, 1131 mục nhập khác null trong Job_Title_Description

Tổng hợp dữ liệu

Bạn sẽ tiếp tục EDA của mình trong bài tập này bằng cách tính toán thống kê tóm tắt cho dữ liệu số trong bộ dữ liệu. Dữ liệu đã được tải sẵn vào DataFrame có tên là df. Bạn có thể sử dụng df. info[] trong IPython Shell để xác định cột nào của dữ liệu là số, cụ thể là gõ float64. Bạn sẽ nhận thấy rằng có hai cột số, được gọi là FTE và Tổng. FTE. Viết tắt của "tương đương toàn thời gian". Nếu mục ngân sách được liên kết với một nhân viên, con số này cho chúng tôi biết tỷ lệ phần trăm toàn thời gian mà nhân viên đó làm việc. Giá trị 1 có nghĩa là nhân viên liên quan làm việc toàn thời gian cho trường. Giá trị gần bằng 0 có nghĩa là mặt hàng được liên kết với nhân viên hợp đồng hoặc bán thời gian. Tổng cộng. Đại diện cho tổng chi phí của chi phí. Con số này cho chúng tôi biết mục ngân sách có giá bao nhiêu. Sau khi in thống kê tóm tắt cho dữ liệu số, công việc của bạn là vẽ biểu đồ của cột FTE khác null để xem phân bổ của nhân viên bán thời gian và toàn thời gian trong tập dữ liệu

HƯỚNG DẪN

100XP In thống kê tóm tắt của các cột số trong DataFrame df bằng cách sử dụng. phương thức mô tả[]. Nhập matplotlib. pyplot dưới dạng plt. Tạo biểu đồ của cột 'FTE' khác null. Bạn có thể làm điều này bằng cách chuyển df['FTE']. dropna[] sang plt. lịch sử[]. Tiêu đề đã được chỉ định và các trục đã được gắn nhãn, vì vậy hãy nhấn 'Gửi câu trả lời' để xem tần suất nhân viên của trường làm việc toàn thời gian

Khám phá kiểu dữ liệu trong gấu trúc

Thật tốt khi biết bạn đang làm việc với kiểu dữ liệu nào, đặc biệt là khi có thể liên quan đến đối tượng kiểu gấu trúc không hiệu quả. Để đạt được điều đó, hãy cùng khám phá những gì chúng ta có. Dữ liệu đã được tải vào không gian làm việc dưới dạng df. Công việc của bạn là nhìn vào thuộc tính DataFrame. dtypes trong IPython Shell và gọi nó. value_counts[] để trả lời câu hỏi bên dưới. Đảm bảo gọi df. dtypes. value_counts[] chứ không phải df. value_counts[]. Kiểm tra sự khác biệt trong Shell. df. value_counts[] sẽ trả về lỗi, vì đây là phương thức Sê-ri, không phải phương thức DataFrame

Có bao nhiêu cột với đối tượng dtype trong dữ liệu?

Mã hóa nhãn dưới dạng biến phân loại

Hãy nhớ rằng, mục tiêu cuối cùng của bạn là dự đoán khả năng một nhãn nhất định được gắn vào mục hàng ngân sách. Bạn vừa thấy rằng nhiều cột trong dữ liệu của bạn là loại đối tượng không hiệu quả. Điều này có bao gồm các nhãn bạn đang cố gắng dự đoán không? . Có 9 cột nhãn trong tập dữ liệu. Mỗi cột trong số này là một danh mục có nhiều giá trị có thể có]. 9 nhãn đã được tải vào danh sách có tên LABELS. Trong Shell, kiểm tra loại cho các nhãn này bằng cách sử dụng df[LABELS]. dtypes. Bạn sẽ nhận thấy rằng mọi nhãn được mã hóa dưới dạng kiểu dữ liệu đối tượng. Bởi vì các kiểu dữ liệu danh mục hiệu quả hơn nhiều, nhiệm vụ của bạn là chuyển đổi các nhãn thành các loại danh mục bằng cách sử dụng. phương thức astype[]. Ghi chú. . astype[] chỉ hoạt động trên Sê-ri gấu trúc. Vì bạn đang làm việc với DataFrame của gấu trúc, nên bạn sẽ cần sử dụng. apply[] và cung cấp hàm lambda gọi là categorize_label áp dụng. astype[] vào mỗi cột, x

HƯỚNG DẪN

100XP Xác định hàm lambda categorize_label để chuyển đổi cột x thành x. astype['danh mục']. Sử dụng danh sách NHÃN được cung cấp để chuyển đổi tập hợp con dữ liệu df[LABELS] thành các loại phân loại bằng cách sử dụng. phương thức apply[] và categorize_label. Đừng quên trục = 0. In chuyển đổi. thuộc tính dtypes của df[LABELS]

Đếm nhãn duy nhất

Như Peter đã đề cập trong video, có hơn 100 nhãn độc đáo. Trong bài tập này, bạn sẽ khám phá thực tế này bằng cách đếm và vẽ đồ thị số lượng giá trị duy nhất cho từng loại nhãn. Khung dữ liệu df và danh sách LABELS đã được tải vào không gian làm việc; . pandas, đã được nhập trước dưới dạng pd, cung cấp pd. Loạt. phương pháp duy nhất để đếm số lượng giá trị duy nhất trong Chuỗi

HƯỚNG DẪN

100XP Tạo DataFrame num_unique_labels bằng cách sử dụng. phương thức apply[] trên df[LABELS] với pd. Loạt. nuniqueas lập luận. Tạo biểu đồ thanh của num_unique_labels bằng pandas'. phương thức cốt truyện [loại = 'thanh']. Các trục đã được gắn nhãn cho bạn, vì vậy hãy nhấn 'Gửi câu trả lời' để xem số lượng giá trị duy nhất cho mỗi nhãn

Xử phạt những câu trả lời sai rất tự tin

Như Peter đã giải thích trong video, việc mất nhật ký mang lại hình phạt nặng nề cho những dự đoán vừa sai vừa tự tin. e. , khả năng cao được gán cho lớp không chính xác. Giả sử bạn có 3 ví dụ sau. Một. y=1,p=0. 85A. y=1,p=0. 85 B. y=0,p=0. 99B. y=0,p=0. 99C. y=0,p=0. 51C. y=0,p=0. 51 Chọn thứ tự của các ví dụ tương ứng với điểm mất nhật ký từ thấp nhất đến cao nhất. y là một chỉ số cho biết liệu ví dụ có được phân loại chính xác hay không. Bạn không cần phải giòn bất kỳ con số nào. thấp nhất. Ở giữa. C, Cao nhất. b

Tính toán mất nhật ký với NumPy

Để xem cách chỉ số mất bản ghi xử lý sự đánh đổi giữa độ chính xác và độ tin cậy, chúng tôi sẽ sử dụng một số dữ liệu mẫu được tạo bằng NumPy và tính toán mức mất bản ghi bằng cách sử dụng hàm được cung cấp, mà Peter đã chỉ cho bạn trong video. 5 mảng số một chiều mô phỏng các loại dự đoán khác nhau đã được tải sẵn. thực_nhãn, chính_tin_tự_tin,_không_tự_tin đúng, sai_không_tự_tin và sai_tự_tin. Công việc của bạn là tính toán tổn thất nhật ký cho từng tập hợp mẫu được cung cấp bằng cách sử dụng công cụ tính toán_log_loss[predicted_values, fact_values]. Nó lấy các giá trị dự đoán làm đối số đầu tiên và các giá trị thực tế làm đối số thứ hai

HƯỚNG DẪN

100XP Sử dụng hàm compute_log_loss[], tính toán tổn thất nhật ký cho các giá trị được dự đoán sau [trong mỗi trường hợp, các giá trị thực được chứa trong các nhãn_thực tế]. đúng_tự tin. đúng_không_tự_tin. sai_không_tự_tin. sai_tự tin. thực tế_nhãn

Chủ Đề