Tập dữ liệu python là gì?
Một trong những khía cạnh chính của máy học được giám sát viên đánh giá và xác nhận mô hình. Khi bạn đánh giá hiệu quả dự đoán của mô hình của bạn, điều cần thiết là quá trình này không thuận lợi. Use Show
7 Từ thư viện dữ liệu Scikit-learning, bạn có thể chia sẻ bộ dữ liệu của mình thành các tập hợp nhằm giảm thiểu khả năng sai lệch trong quá trình đánh giá và xác nhận của bạn. 7 từ thư viện khoa học dữ liệu scikit-learning, bạn có thể chia tập dữ liệu của mình thành các tập hợp con để giảm thiểu khả năng sai lệch trong quy trình đánh giá và xác thực của bạnNội dung chính Hiển thị Trong hướng dẫn này, bạn sẽ học
Ngoài ra, bạn sẽ nhận được thông tin về các công cụ liên quan từ 0Tầm quan trọng của việc phân tách dữ liệuHọc máy được giám sát là về việc tạo ra các mô hình ánh xạ chính xác mà các đầu vào đã cho (các biến độc lập hoặc dự đoán) cho các đầu ra đã cho (các biến phụ thuộc hoặc phản hồi). dự đoán) cho các đầu ra nhất định (biến phụ thuộc hoặc phản hồi) Cách bạn đo lường mức độ chính xác của mô hình của bạn phụ thuộc vào loại vấn đề mà bạn đang cố gắng giải quyết. Trong phân tích hồi quy, bạn thường sử dụng hệ số xác định, lỗi bình phương trung bình gốc, lỗi tuyệt đối trung bình hoặc số lượng tương tự. Đối với các loại vấn đề, bạn thường áp dụng độ chính xác, độ chính xác, thu hồi, điểm F1 và các số liên quan duy nhất Các giá trị có thể chấp nhận đã được đo lường chính xác độ thay đổi từ trường này sang trường khác. Bạn có thể tìm thấy những giải thích chi tiết từ bảng thống kê số liệu của Jim, Quora và nhiều tài nguyên khác Điều quan trọng nhất cần hiểu là bạn thường cần đánh giá không thiên vị để sử dụng đúng các biện pháp này, đánh giá hiệu quả dự đoán của mô hình của bạn và xác nhận mô hình. đánh giá không thiên vị để sử dụng đúng các biện pháp này, đánh giá hiệu suất dự đoán của mô hình của bạn và xác thực mô hình Điều này có nghĩa là bạn có thể đánh giá hiệu quả dự đoán của một mô hình với cùng một dữ liệu bạn đã sử dụng để đào tạo. Bạn cần đánh giá mô hình với dữ liệu mới đã được mô hình nhìn thấy trước đây. Bạn có thể thực hiện điều đó bằng cách phân tách bộ dữ liệu của bạn trước khi bạn sử dụng nó. dữ liệu mới mà mô hình chưa từng thấy trước đây. Bạn có thể thực hiện điều đó bằng cách tách tập dữ liệu của mình trước khi sử dụng Đào tạo, xác nhận và kiểm traChia sẻ dữ liệu của bạn là điều cần thiết để đánh giá không thiên vị về hiệu quả dự đoán. Trong hầu hết các trường hợp, nó đủ để chia dữ liệu của bạn một cách ngẫu nhiên thành ba tập hợp con
Trong những trường hợp ít phức tạp hơn, khi bạn không phải điều chỉnh các siêu âm, bạn sẽ ổn định khi chỉ làm việc với các bộ đào tạo và kiểm tra Missing and too powerViệc chia sẻ một bộ dữ liệu cũng có thể rất quan trọng để phát hiện nếu mô hình của bạn gặp phải một trong hai vấn đề rất phổ biến, được gọi là thiếu ngắn và quá mức
Bạn có thể tìm thấy một lời giải thích chi tiết hơn về thiếu vắng và quá mức trong hồi quy tuyến tính trong Python Điều kiện tiên quyết cho việc sử dụng $ conda install -c anaconda scikit-learn=0. 23 7Bây giờ bạn đã hiểu sự cần thiết phải phân chia một bộ dữ liệu để thực hiện đánh giá mô hình không có vị trí và xác định thiếu hoặc quá mức, bạn đã sẵn sàng tìm hiểu cách phân chia bộ dữ liệu của riêng bạn You will use version 0. 23,1 of Scikit-learning or 2. Nó có nhiều gói cho khoa học dữ liệu và máy học, nhưng đối với hướng dẫn này, bạn sẽ tập trung vào gói 3, cụ thể là chức năng 7. scikit-learning, hoặc 2. Nó có nhiều gói dành cho khoa học dữ liệu và máy học, nhưng đối với hướng dẫn này, bạn sẽ tập trung vào gói 3, cụ thể là hàm 7You could install 2 với 6. 4Nếu bạn sử dụng Anaconda, thì có lẽ bạn đã cài đặt nó. Tuy nhiên, nếu bạn muốn sử dụng một môi trường mới, hãy chắc chắn rằng phiên bản của bạn chỉ được định nghĩa hoặc sử dụng miniconda, thì bạn có thể cài đặt 2 từ Đám mây Anaconda với 8.
Bạn cũng sẽ cần Numpy, nhưng bạn không được cài đặt riêng. Bạn sẽ nhận được nó cùng với 2 nếu bạn đã cài đặt nó. Nếu bạn muốn làm mới kiến thức numpy của mình, thì hãy xem tài liệu chính thức hoặc kiểm tra xem MA, không có vòng lặp. Anar array set with NumpyÁp dụng $ conda install -c anaconda scikit-learn=0. 23 7You must enter 7 và Numpy trước khi bạn có thể sử dụng chúng, vì vậy bạn có thể bắt đầu với các câu lệnh 02>>>
Bây giờ bạn đã nhập tất cả, bạn có thể sử dụng chúng để chia dữ liệu thành bộ đào tạo và bộ kiểm tra. Bạn sẽ phân chia đầu vào và bắt đầu ra cùng một lúc, với một cuộc gọi chức năng duy nhất With 7, bạn cần cung cấp các chuỗi mà bạn muốn chia cũng như bất kỳ đối số tùy chọn nào. Nó trả về một danh sách các mảng numpy, các chuỗi khác hoặc ma trận thưa thớt Scipy nếu thích hợp. 0 44 là chuỗi danh sách, mảng numpy, gấu trúc dữ liệu hoặc các đối tượng giống như mảng tương tự dữ liệu bạn muốn chia sẻ. Tất cả các đối tượng này giống nhau được tạo nên bộ dữ liệu và phải có cùng độ dài. là chuỗi các danh sách, mảng NumPy, khung dữ liệu gấu trúc hoặc các đối tượng giống như mảng tương tự chứa dữ liệu bạn muốn tách. Tất cả các đối tượng này cùng nhau tạo nên tập dữ liệu và phải có cùng độ dàiTrong các ứng dụng học máy được giám sát, bạn thường làm việc với hai chuỗi như vậy
47 là các đối số từ khóa tùy chọn mà bạn có thể sử dụng để có được hành vi mong muốn. là các đối số từ khóa tùy chọn mà bạn có thể sử dụng để có hành vi mong muốn
Bây giờ, time time to try split data. Bạn sẽ bắt đầu bằng cách tạo một bộ dữ liệu đơn giản để làm việc. Bộ dữ liệu sẽ chứa các đầu vào trong hai chiều mảng 05 and start out in a array_ 06>>> 0
Bây giờ bạn đã nhập tất cả, bạn có thể sử dụng chúng để chia dữ liệu thành bộ đào tạo và bộ kiểm tra. Bạn sẽ phân chia đầu vào và bắt đầu ra cùng một lúc, với một cuộc gọi chức năng duy nhất >>> 0
A array two dimensions with input ( 05)An an array with head ( 06) 07 là các đối số từ khóa tùy chọn mà bạn có thể sử dụng để có được hành vi mong muốn. 08 is the number of size of the training file. Nếu bạn cung cấp 09, thì nó phải nằm giữa 00 và 01 và sẽ xác định Tỷ lệ hiệu lực của bộ dữ liệu được sử dụng để thử nghiệm. Nếu bạn cung cấp 02, thì nó sẽ đại diện cho tổng số mẫu đào tạo. Default value is 03. 04 is con số xác định kích thước của kiểm tra tập tin. Nó rất giống với 08. Bạn nên cung cấp 08 hoặc 04. Nếu không được đưa ra, thì phần chia sẻ mặc định của bộ dữ liệu sẽ được sử dụng để thử nghiệm là 08 hoặc 25 phần trăm>>> 7Với sự thay đổi này, bạn đã nhận được một kết quả khác với trước đây. Trước đó, bạn đã có một bộ đào tạo với chín mục và thử nghiệm với ba mục. Bây giờ, nhờ cuộc tranh luận 88, bộ đào tạo có tám mục và bộ thử nghiệm có bốn mục. Bạn có thể nhận được kết quả tương tự với 89 vì 33 phần trăm trong số mười hai là bốnCó một sự khác biệt rất quan trọng hơn giữa hai ví dụ cuối cùng. Bây giờ bạn đã nhận được cùng một kết quả mỗi khi bạn chạy chức năng. Điều này là bạn đã cố định chương trình tạo ngẫu nhiên số với 00Hình dưới đây để xem những gì diễn ra khi bạn gọi 7Các mẫu dữ liệu được trộn ngẫu nhiên và sau đó chia thành các bộ đào tạo và kiểm tra theo kích thước bạn đã xác định Bạn có thể thấy rằng 06 có sáu số không và sáu cái. Tuy nhiên, bộ thử nghiệm có ba số không trong bốn mục. Nếu bạn muốn (xấp xấp xỉ) giữ nguyên tỷ lệ của các giá trị 06 thông qua các bộ đào tạo và kiểm tra, thì hãy vượt qua 04. Điều này sẽ cho phép phân tách các tầng>>> 8Bây giờ 79 và 81 có cùng tỷ lệ số không và các số không như mảng 06 ban đầuViệc phân tách các tầng được mong muốn trong một số trường hợp, chẳng hạn như khi bạn phân loại một bộ dữ liệu mất cân bằng, một bộ dữ liệu có sự khác biệt đáng kể về số lượng mẫu thuộc về các lớp khác nhau. tập dữ liệu không cân bằng, tập dữ liệu có sự khác biệt đáng kể về số lượng mẫu thuộc các lớp khác nhau Cuối cùng, bạn có thể tắt trộn dữ liệu và phân tách ngẫu nhiên với 08>>> 0Bây giờ bạn có một sự phân chia trong đó hai phần ba mẫu đầu tiên trong các mảng 05 và 06 ban đầu được chỉ định cho bộ đào tạo và thứ ba cuối cùng cho bộ thử nghiệm. Uncombleed. Un Random RandomHọc máy được giám sát với $ conda install -c anaconda scikit-learn=0. 23 7Now now, time to see 7 hành động khi giải quyết các vấn đề học tập có giám sát viên. Bạn sẽ bắt đầu với một vấn đề hồi quy quy nhỏ có thể được giải quyết bằng hồi quy tuyến tính trước khi xem xét một vấn đề lớn hơn. Bạn cũng sẽ thấy rằng bạn cũng có thể sử dụng 7 để phân loạiVí dụ đơn giản về hồi quy tuyến tínhTrong ví dụ này, bạn sẽ áp dụng những gì bạn đã học được cho đến nay để giải quyết vấn đề hồi quy nhỏ. Bạn có thể học cách tạo bộ dữ liệu, chia chúng thành các tập hợp tập luyện và kiểm tra và sử dụng chúng để hồi quy tuyến tính Như mọi khi, bạn sẽ bắt đầu bằng cách nhập các gói, chức năng hoặc lớp cần thiết. You will need Numpy, 054 và 7>>> 05Bây giờ bạn đã nhập mọi thứ bạn cần, bạn có thể tạo hai mảng nhỏ, 05 và 06, để có thể hiện các quan sát và sau đó chia chúng thành các bộ đào tạo và thử nghiệm giống như bạn đã làm trước đây>>> 0Bộ dữ liệu của bạn có hai mươi quan sát, hoặc ________ 35 -________ 36 cặp. You only argument 00, vì vậy bộ dữ liệu được chia thành một tập huấn luyện với mười hai quan sát và một bộ thử nghiệm với tám quan sátBây giờ bạn có thể sử dụng bộ đào tạo để phù hợp với mô hình >>> 1 054 tạo ra đối tượng đại diện cho mô hình, trong khi 02 đào tạo, hoặc phù hợp với mô hình và trả về nó. Với hồi quy tuyến tính, phù hợp với mô hình có nghĩa là xác định các đánh giá đánh chặn tốt nhất ( 03) và độ dốc (____104) của đường hồi quyMặc dù bạn có thể sử dụng 75 và 79 để kiểm tra mức độ phù hợp, nhưng đây không phải là một hành động tốt nhất. Một ước tính không thiên vị về hiệu suất dự đoán của mô hình của bạn dựa trên dữ liệu thử nghiệm>>> 2 07 Trả về hệ thống số xác định hoặc R², cho dữ liệu được truyền. Tối đa của nó là 08. Giá trị R² càng cao, phù hợp càng tốt. Trong trường hợp này, dữ liệu đào tạo mang lại hệ thống số cao hơn một chút. Tuy nhiên, R² được tính toán với dữ liệu thử nghiệm là thước đo không thiên vị về hiệu quả dự đoán mô hình của bạn. hệ số xác định, hoặc R², cho dữ liệu được thông qua. Tối đa của nó là 08. Giá trị R² càng cao thì càng phù hợp. Trong trường hợp này, dữ liệu huấn luyện mang lại hệ số cao hơn một chút. Tuy nhiên, R² được tính bằng dữ liệu thử nghiệm là thước đo khách quan về hiệu suất dự đoán của mô hình của bạnĐây là cách nó hiển thị trên một biểu tượng Các chấm màu xanh lá cây đại diện cho ________ 35 -____ 36 cặp được sử dụng để đào tạo. Đường màu đen, được gọi là đường hồi quy ước tính, được xác định bởi kết quả của sự phù hợp mô hình. đánh chặn và tốc độ dốc. Vì vậy, nó chỉ phản ánh các vị trí của các chấm màu xanh lá cây Các đại diện dấu chấm trắng để thử nghiệm. Bạn sử dụng chúng để ước tính hiệu suất của mô hình (dòng hồi quy) với dữ liệu không được sử dụng để đào tạo Ví dụ hồi quyBây giờ bạn đã có sẵn để chia sẻ một bộ dữ liệu lớn hơn để giải quyết vấn đề quy hồi. Bạn sẽ sử dụng bộ dữ liệu giá nhà Boston nổi tiếng, được bao gồm trong 2. Bộ dữ liệu này có 506 mẫu, 13 biến đầu vào và giá trị nhà là đầu ra. You can get it by 12Đầu tiên, nhập 7 và 12>>> 3Bây giờ bạn đã nhập cả hai chức năng, bạn có thể kích hoạt dữ liệu với >>> 4Như bạn có thể thấy, 12 với đối số 16 trả về một tuple với hai mảng numpy
Bước tiếp theo là phân chia dữ liệu giống như trước >>> 5Bây giờ bạn đã có bộ đào tạo và kiểm tra. Dữ liệu đào tạo được chứa trong 75 và 79, while data to test is in 77 và 81Khi bạn làm việc với bộ dữ liệu lớn hơn, nó thường thuận tiện hơn để vượt qua quy định đào tạo hoặc kiểm tra theo tỷ lệ 21 có nghĩa là khoảng 40 phần trăm các mẫu sẽ được gán cho dữ liệu thử nghiệm và 60 phần trăm còn lại sẽ được gán cho dữ liệu đào tạoCuối cùng, bạn có thể sử dụng tập huấn luyện ( 75 và 79) để phù hợp với mô hình và bộ thử nghiệm ( 77 và 81) để đánh giá mô hình không đúng vị trí. Trong ví dụ này, bạn sẽ áp dụng ba thuật toán hồi quy nổi tiếng để tạo các mô hình phù hợp với dữ liệu của bạn
Quá trình này khá giống với ví dụ trước
Tại đây, code theo các bước được mô tả ở trên cho cả ba thuật toán hồi quy >>> 6Bạn đã sử dụng bộ dữ liệu đào tạo và kiểm tra của mình để phù hợp với ba mô hình và đánh giá hiệu suất của chúng. Thước đo độ chính xác thu được với 07 là hệ số xác định. Nó có thể được tính toán với bộ đào tạo hoặc thử nghiệm. Tuy nhiên, như bạn đã học, điểm số thu được với bộ kiểm tra có thể hiển thị ước tính hiệu quả không thiên vịNhư đã đề cập trong tài liệu, bạn có thể cung cấp các đối số tùy chọn cho 26, 27 và 28. 27 và 28 Sử dụng tham số 09 cho cùng một lý do mà 7 không. để đối phó với tính ngẫu nhiên trong thuật toán và đảm bảo khả năng tái tạoĐối với một số phương pháp, bạn cũng có thể cần Tính năng xác định. Trong những trường hợp như vậy, bạn nên phù hợp với các bộ cân bằng dữ liệu đào tạo và sử dụng chúng để chuyển dữ liệu kiểm tra Ví dụ phân loạiYou can't use 7 để giải quyết các vấn đề phân loại giống như cách bạn làm để phân tích hồi quy. Trong học máy, các loại vấn đề phân loại liên quan đến việc đào tạo tạo một mô hình để áp dụng nhãn hoặc phân loại các giá trị đầu vào và sắp xếp bộ dữ liệu của bạn thành các danh mục. vấn đề phân loại giống như cách bạn làm để phân tích hồi quy. Trong học máy, các vấn đề phân loại liên quan đến việc đào tạo một mô hình để áp dụng nhãn hoặc phân loại các giá trị đầu vào và sắp xếp tập dữ liệu của bạn thành các danh mụcTrong hồi quy hướng dẫn logistic trong Python, bạn sẽ tìm thấy một ví dụ về một nhiệm vụ nhận dạng chữ viết tay. Ví dụ cung cấp một minh chứng khác về việc chia dữ liệu vào các bộ đào tạo và kiểm tra để tránh sai lệch trong quá trình đánh giá Các chức năng xác nhận khác nhauGói 0 cung cấp rất nhiều chức năng liên quan đến lựa chọn và xác thực mô hình, bao gồm cả những điều sau đây
Xác thực chéo là một tập hợp các kỹ thuật kết hợp các biện pháp biện pháp về hiệu quả dự đoán để có được ước tính mô hình chính xác hơn Một trong các phương pháp nhận dạng chéo được sử dụng rộng rãi là xác thực chéo K gấp K. Trong đó, bạn chia sẻ tệp dữ liệu của mình thành K (thường là năm hoặc mười) tập con, hoặc nếp gấp, có kích thước bằng nhau và sau đó thực hiện các quy trình đào tạo và kiểm tra một lần. Mỗi lần, bạn sử dụng một nếp gấp khác như bộ kiểm tra và tất cả các nếp gấp còn lại như tập huấn luyện. Điều này cung cấp các biện pháp biện pháp K về hiệu suất dự kiến và sau đó bạn có thể phân tích quá trình biến đổi trung bình và quá trình phát triển của chúng. các nếp gấp, có kích thước bằng nhau và sau đó thực hiện quy trình huấn luyện và kiểm tra k lần. Mỗi lần, bạn sử dụng một nếp gấp khác làm tập kiểm tra và tất cả các nếp gấp còn lại làm tập huấn luyện. Điều này cung cấp k phép đo hiệu suất dự đoán và sau đó bạn có thể phân tích giá trị trung bình và độ lệch chuẩn của chúng You can't verify cross with 41, 42, 43 và một số lớp và chức năng khác nhau từ 0Một đường công học tập, đôi khi được gọi là đường công đào tạo, cho thấy điểm dự đoán của bộ đào tạo và xác nhận phụ thuộc vào số lượng mẫu đào tạo. You can't use 45 để có được sự phụ thuộc này, điều này có thể giúp bạn tìm thấy kích thước tối ưu của bộ đào tạo, chọn HyperParameter, so sánh các mô hình, v. vĐiều chỉnh siêu tham số, còn được gọi là siêu tham số tối ưu hóa, là quá trình xác định bộ siêu âm tốt nhất để xác định mô hình máy học của bạn. 0 cung cấp cho bạn một số tùy chọn cho mục đích này, bao gồm 47, 48, 49 và các tùy chọn khác. Chia sẻ dữ liệu của bạn cũng rất quan trọng để điều chỉnh siêu phân tíchKết luậnBây giờ bạn đã biết tại sao và làm thế nào để sử dụng 7 từ 2. Bạn đã học được rằng, để ước tính tính không thiên vị về hiệu suất dự đoán của mô hình máy học, bạn nên sử dụng dữ liệu đã được sử dụng để phù hợp với mô hình. Đó là lý do tại sao bạn cần chia sẻ bộ dữ liệu của mình thành đào tạo, kiểm tra và trong một số trường hợp, tập hợp xác thực. 7 từ 2. Bạn đã học được rằng, để ước tính khách quan về hiệu suất dự đoán của các mô hình máy học, bạn nên sử dụng dữ liệu chưa được sử dụng để điều chỉnh mô hình. Đó là lý do tại sao bạn cần chia tập dữ liệu của mình thành tập huấn luyện, kiểm tra và trong một số trường hợp, tập hợp con xác thựcTrong hướng dẫn này, bạn đã học được cách
Bạn cũng đã thấy rằng mô-đun 0 cung cấp một số công cụ khác để xác thực mô hình, bao gồm xác thực chéo, đường cong học tập và điều chỉnh siêu đồng hồNếu bạn có câu hỏi hoặc nhận xét, sau đó xin vui lòng đặt chúng vào phần bình luận bên dưới Train_test_split trong Python là gì?Train_test_split() Hàm. Phương thức Train_Test_Split() được sử dụng để chia dữ liệu của chúng tôi thành các bộ đào tạo và thử nghiệm. Đầu tiên, chúng ta cần chia dữ liệu của mình thành các tính năng (x) và nhãn (y). DataFrame được chia thành X_Train, X_Test, Y_Train và Y_Test. Bộ x_train và Y_Train được sử dụng để đào tạo và cài đặt mô hình. được sử dụng để chia dữ liệu của chúng tôi thành các tập huấn luyện và kiểm tra . Trước tiên, chúng tôi cần chia dữ liệu của mình thành các tính năng (X) và nhãn (y). Khung dữ liệu được chia thành X_train, X_test, y_train và y_test. Bộ X_train và y_train dùng để huấn luyện và điều chỉnh mô hình. Phương pháp nào được sử dụng để phân chia dữ liệu?Phân chia dựa trên phương pháp của các điểm hỗ trợ (SP), ban đầu được phát triển để tìm kiếm các điểm đại diện tối ưu của phân phối liên tục. Chúng tôi điều chỉnh SP để lấy mẫu từ bộ dữ liệu bằng thuật toán hàng xóm gần nhất của tuần tự. điểm hỗ trợ (SP) , ban đầu được phát triển để tìm điểm đại diện tối ưu của phân phối liên tục. Chúng tôi điều chỉnh SP để lấy mẫu con từ tập dữ liệu bằng thuật toán hàng xóm gần nhất tuần tự. Làm thế nào bạn nên chia một bộ dữ liệu thành các bộ thử nghiệm và đào tạo?Biến số phân chia phổ biến nhất là 80. 20. Đó là 80% dữ liệu đi vào tập huấn luyện và 20% dữ liệu đi vào thử nghiệm. Trước khi chia dữ liệu, hãy đảm bảo rằng bộ dữ liệu đủ lớn. Phân chia tàu/thử nghiệm hoạt động tốt với bộ dữ liệu lớn |