Chúng ta có thể tích hợp python với matlab không?

Chọn một trang web để nhận nội dung đã dịch nếu có và xem các sự kiện và ưu đãi tại địa phương. Dựa trên vị trí của bạn, chúng tôi khuyên bạn nên chọn.

Bạn cũng có thể chọn một trang web từ danh sách sau

Làm thế nào để có được hiệu suất trang web tốt nhất

Chọn trang Trung Quốc (bằng tiếng Trung hoặc tiếng Anh) để có hiệu suất trang tốt nhất. Các trang web quốc gia khác của MathWorks không được tối ưu hóa cho các lượt truy cập từ vị trí của bạn

Chào mừng bạn đến với Tích hợp Python và MATLAB. Tên tôi là Ian McKenna và tôi là Kỹ sư ứng dụng cao cấp tại MathWorks hỗ trợ ngành dịch vụ tài chính. Vì vậy, trước khi chúng ta bắt đầu ngày hôm nay, chỉ cần một chút lịch sử. Trong nhiều năm, MATLAB đã cung cấp API trực tiếp cho nhiều ngôn ngữ khác để cho phép nhà phát triển MATLAB tận dụng các thư viện bên ngoài khác này. Và vì vậy chúng tôi hỗ trợ các giao diện cho C/C++, Java,. NET, Fortran, COM và những người khác

Và trong 2014b và các bản phát hành mới hơn của MATLAB, chúng tôi cũng hỗ trợ giao diện Python trực tiếp. Trên thực tế, có ba cách mà MATLAB và Python có thể tương tác với nhau. Và điều này cũng tình cờ trở thành chương trình nghị sự của chúng ta ngày hôm nay. Ba cách đó là đồng thực thi, trong đó chúng ta có cả hai môi trường gọi lẫn nhau, chẳng hạn như MATLAB gọi các thư viện Python và ngược lại

Triển khai, tương tự như đồng thực hiện, nhưng chúng tôi đóng gói các phân tích MATLAB để chúng có thể được gọi từ một hệ thống không có giấy phép MATLAB. Và trong phần này, chúng ta sẽ giải quyết các ứng dụng đóng gói để triển khai dựa trên máy tính để bàn, cũng như triển khai doanh nghiệp có thể mở rộng. Và cách thứ ba là thông qua trao đổi dữ liệu. Vì vậy, trao đổi dữ liệu và mô hình giữa MATLAB và Python

Vì vậy, giả sử rằng chúng tôi chịu trách nhiệm xây dựng phân tích quy mô doanh nghiệp mà các ứng dụng kinh doanh quan trọng khác có thể kết nối, phải dựa vào như một dịch vụ, cuối cùng là thúc đẩy lợi nhuận của doanh nghiệp. Vì vậy, hãy xem một ví dụ như vậy mà chúng tôi muốn xây dựng. Cuối cùng nó sẽ là luận điểm cho những gì chúng ta sẽ làm ngày hôm nay

Vì vậy, đây là một ứng dụng như vậy, được kết hợp độc đáo dưới dạng bảng điều khiển mà người dùng doanh nghiệp có thể sử dụng, nhấp vào nút và truy cập dữ liệu họ cần khi cần mà không cần phải viết bất kỳ loại mã nào hoặc có bất kỳ loại mã nào. . Và ở đây bạn thấy các kết quả được định dạng độc đáo trong một báo cáo ở đây

Vì vậy, chúng tôi có thể truy cập dữ liệu, kiểm tra dữ liệu và xem kết quả trong dự đoán dự báo về tiền điện tử ngay tại đây. Vì vậy, chúng tôi có thể đưa ra các quyết định kinh doanh của mình nhanh hơn. Và câu hỏi hiện tại là, làm thế nào để chúng ta xây dựng một ứng dụng như thế này? . Bạn có thể thấy ở đây có các công nghệ web điển hình, như HTML, có thể là các thư viện JavaScript, v.v.

Có lẽ ở mặt sau, có thể có các máy chủ chẳng hạn như Python. Có các phân tích dự đoán ở đây có thể được cung cấp bởi MATLAB. Vì vậy, bạn có rất nhiều công cụ và công nghệ khác nhau cần tương tác với nhau, và câu hỏi đặt ra là bạn làm điều đó như thế nào?

Đầu tiên, chúng tôi muốn sử dụng các thư viện dữ liệu do nhóm CNTT duy trì, thay vì viết thư viện dữ liệu của riêng chúng tôi. Và điều này là do nhóm của chúng tôi không có nhân lực để duy trì các thư viện đó theo thời gian và chúng thuộc sở hữu của bộ phận CNTT, vì vậy chúng tôi không thể chạm vào chúng. Thứ hai, một số mô hình dự đoán sẽ cần phải được đẩy trở lại vào Python, bởi vì đó là nơi đặt máy chủ và thực thi giao dịch

Tuy nhiên, chúng tôi không chỉ cần đẩy nó trở lại Python mà chúng tôi còn muốn cho phép các ứng dụng khác bao gồm các ứng dụng Python kết nối với ứng dụng mà chúng tôi đang tạo thông qua các hook API RESTful. Và cuối cùng, chúng tôi muốn làm cho toàn bộ ứng dụng có thể mở rộng để nó có thể được cải thiện theo thời gian. Vì vậy, giả sử đây là thiết lập hiện tại của chúng tôi mà chúng tôi đang làm việc với

Cho đến nay, bộ phận CNTT đã tạo một thư viện có sẵn để nhập dữ liệu mà nhóm của họ quản lý và thư viện đó kết nối với nguồn dữ liệu tiền điện tử. Và sau đó, thông tin này được đóng gói độc đáo để người dùng và người quản lý doanh nghiệp đưa ra quyết định và giúp thúc đẩy lợi nhuận của doanh nghiệp. Vì vậy, ví dụ, ở đây chúng ta thấy một ứng dụng hiển thị biến động giá lịch sử của một loại tiền điện tử cụ thể

Rồi một ngày, một trong những giám đốc kinh doanh đến gặp chúng tôi và nói, này, tôi có một ý tưởng. Nếu chúng tôi có quyền truy cập vào dữ liệu hướng tới tương lai được dự đoán trái ngược với dữ liệu lịch sử, chúng tôi có thể kiếm thêm lợi nhuận ngoài những gì chúng tôi hiện đang kiếm được, ngay cả khi dự đoán chính xác 100%. Vì vậy, tổ chức của chúng tôi có một vài nhà định lượng có kiến ​​thức chuyên sâu về MATLAB. Và họ biết chính xác cách xây dựng các mô hình dự đoán mà người dùng doanh nghiệp muốn và đang tìm kiếm

Tuy nhiên, trước khi chúng ta có thể làm được điều đó, thử thách đầu tiên của chúng ta là gọi các thư viện quét dữ liệu Python và kéo dữ liệu đó trực tiếp vào MATLAB. Vì vậy, hãy xem nó sẽ hoạt động như thế nào. Hãy cùng xem một ví dụ đơn giản về cách gọi đến các thư viện Python. Và đó sẽ là phần đầu tiên của phiên họp của chúng tôi

Vì vậy, với nhiệm vụ đầu tiên này, giả sử chúng ta muốn lấy một URL, chẳng hạn như URL tiền điện tử mà chúng ta đang kết nối và phân tích cú pháp nó để chúng ta có thể lấy ra tên miền. Và chúng tôi muốn sử dụng chức năng này có trong các thư viện Python, nhưng sử dụng nó từ bên trong MATLAB. Vì vậy, điều đó thực sự bắt nguồn từ một vài điều

Đầu tiên, chúng tôi sử dụng ký hiệu chấm py này. Điều này ám chỉ rằng các lệnh mà chúng ta sẽ làm theo sẽ là một gói Python-- nếu nó tồn tại-- một mô-đun, sau đó là một hàm. Vì vậy, trong trường hợp này ở đây, chúng ta sẽ gọi một gói urllib, là một gói Python. Mô-đun trong urllib, phân tích cú pháp. Và sau đó là chức năng, urlparse

Và bạn có thể thấy ở đây nếu bạn chưa bao giờ sử dụng trình chỉnh sửa trực tiếp MATLAB trước đây, đó là một cách tuyệt vời để tạo mẫu nhanh và nhanh. Tương tự như sổ ghi chép Jupyter, nhưng nó có tính tương tác và mạnh mẽ hơn nhiều, và bạn sẽ thấy một số khả năng đó sau này, chẳng hạn như tác vụ soạn thảo trực tiếp, điều khiển và những thứ khác. Vì vậy, hãy chuyển URL đó và bạn có thể thấy nó khá lộn xộn ở đây

Vì vậy, trong trường hợp này, chúng tôi đang kết nối với Coinbase Pro và có rất nhiều thông số bổ sung ở đây mà có lẽ chúng tôi không quan tâm. Chúng tôi chỉ muốn thoát khỏi api. chuyên nghiệp. coinbase. com. Vì vậy, hãy chạy cái này. Và bạn có thể thấy ở đây, đây là kết quả phân tích cú pháp Python. Đúng. Vì vậy, đối tượng Python này ở đây, nơi netloc trông giống như nó có tên miền. Vì vậy, đây là những gì chúng tôi muốn thoát ra

Vì vậy, hãy thêm nó vào dòng tiếp theo và xem liệu chúng ta có thể làm điều đó không. Vì vậy, tôi sẽ gán giá trị này, hãy gọi đây là urlparts. Và chúng tôi chỉ muốn tên miền, vì vậy đây có thể là urlparts và netloc

và chơi lô tô. Bạn thấy chính xác những gì chúng tôi có ở đây. Chúng tôi có tên miền, đó là tất cả những gì chúng tôi muốn. Và đây là một cách nhanh chóng và dễ dàng để sử dụng Python từ bên trong MATLAB tại đây. Vì vậy, một lần nữa, điều đó thật tuyệt, nhưng ví dụ đó khá đơn giản

Vì vậy, hãy xem xét một trường hợp thực tế hơn sẽ giải quyết thách thức của chúng ta trong tầm tay. Vì vậy, trong trường hợp này, điều chúng tôi muốn làm là gọi một thư viện tùy chỉnh có tên là dataLib và các chức năng có trong đó. Vì vậy, trước hết, dataLib là gì? . thư viện py

Bạn có thể thấy rằng đó chỉ là mã Python điển hình. Vì vậy, chúng tôi có một số chức năng khác nhau bên trong đây, chẳng hạn như getPriceData và parseJson, và chúng tôi muốn có thể sử dụng chức năng đó trong mã MATLAB của mình. Và mọi thứ khác ở giữa chỉ là mã Python điển hình. Bạn có thể thấy ở đây, trả về dữ liệu, chúng tôi đang sử dụng nhiều cấu trúc dữ liệu khác nhau bên trong đây từ những thứ như mảng có nhiều mảng đến danh sách và từ điển và thậm chí cả JSON

Vì vậy, hãy xem một kịch bản rõ ràng hơn ở đây. Vì vậy, đây là giao diện của một tập lệnh soạn thảo trực tiếp nếu bạn thêm nhận xét cùng với mã và chú thích, v.v. Và tôi chỉ đơn giản là đặt kết quả của tập lệnh ở phía bên tay phải thay vì bên dưới. Vì vậy, chúng ta có thể thấy mã ở bên trái và kết quả ở phía bên tay phải. Và bạn thấy ở đây, nó bắt chước giống như điều chúng ta vừa làm từ dòng lệnh

Vì vậy, trong trường hợp này ở đây, kéo vào và sử dụng thư viện-- thư viện toán học và hàm sqrt từ bên trong thư viện toán học. Nhưng bạn cũng có thể thấy ở đây, rằng chúng ta có thể tạo cấu trúc dữ liệu Python từ bên trong MATLAB và thậm chí chạy những thứ như phương thức trên các cấu trúc dữ liệu đó từ phía MATLAB. Vì vậy, có hiểu biết cơ bản về cách gọi Python từ bên trong MATLAB, làm thế nào để chúng ta gọi dataLib. thư viện py?

Chà, nó khá giống với những gì chúng ta đã làm trước đây, phải không? . Và sau đó tên của chức năng được chứa trong mô-đun đó. Điều duy nhất bạn cần lưu ý khi thực hiện việc này là nếu bạn đang sử dụng thư viện tùy chỉnh, chỉ cần đảm bảo rằng thư viện đó nằm trên đường dẫn Python. Nếu nó không nằm trong đường dẫn Python, nó sẽ không được chọn bởi trình thông dịch Python đang được thực thi ở mặt sau

Ngoài ra, bạn thấy ở đây chúng ta có thể chuyển các kiểu dữ liệu MATLAB. Trong trường hợp này, những thứ như chuỗi hoặc mảng ký tự và nó sẽ tự động chuyển đổi chúng sang kiểu dữ liệu Python tương ứng. Ngoài ra, bạn có thể biết điều gì đó mới ở đây nếu bạn chưa từng sử dụng trình chỉnh sửa trực tiếp trước đây. Và đây là một điều khiển

Vì vậy, trong MATLAB live scripts-- live editor scripts-- bạn có thể đặt các điều khiển tùy chỉnh như thế này để hướng người khác đến các khu vực mà bạn có thể muốn thay đổi tham số hoặc những thứ có thể chọn để thực hiện phân tích kịch bản, v.v. Vì vậy, đây là một cách tuyệt vời để giúp kể câu chuyện của bạn cho những người khác, những người có thể không quen thuộc với ứng dụng đang được xây dựng. Và thật dễ dàng để đưa vào các điều khiển này. Chỉ cần Chèn, Điều khiển và bạn có nhiều điều khiển trong tầm tay tại đây

Và đó chính xác là những gì chúng tôi đã làm để thực hiện các sản phẩm và chuyển kết quả. Nhưng một lần nữa, điều quan trọng ở đây là chúng ta có thể sử dụng các hàm mà chúng ta đã xây dựng bằng Python trực tiếp trong MATLAB bằng cách chuyển các đầu vào từ phía MATLAB, thực hiện những việc như phân tích cú pháp JSON và lấy dữ liệu mà chúng ta muốn

Sau đó, nếu dữ liệu không phải là cấu trúc dữ liệu MATLAB, trong trường hợp này, chúng ta có một bộ dữ liệu phức tạp có các danh sách bên trong nó và nó cũng có một mảng khó hiểu bên trong nó. Và chúng tôi muốn chuyển đổi nó sang kiểu dữ liệu MATLAB tương ứng. Đó không phải là vấn đề. Chúng ta có thể dễ dàng tách tuple bằng cách sử dụng cú pháp như thế này. Và sau đó chúng ta có thể bỏ qua những thứ tương ứng như mảng numpy, ngay tại đây bạn thấy ở phía bên tay phải, chỉ bằng cách sử dụng lệnh kép trong MATLAB

Và tương tự như vậy, chúng ta có nhiều lệnh truyền khác như ô, car-- char, struct, v.v. Và khi chúng tôi đã hoàn thành việc đó, hãy chuyển đổi bảng đó sang bảng MATLAB, về cơ bản tương đương với khung dữ liệu, nhưng có thể mở rộng ở phía MATLAB. Vì vậy, nếu bạn chưa từng sử dụng bảng MATLAB trước đây, rất giống với khung dữ liệu, thì rất khuyến khích sử dụng nó

Và điều cuối cùng chúng ta sẽ làm là tận dụng những thứ như thời gian biểu. Vì vậy, một lần nữa, bảng, thời gian biểu, ngày/giờ, bàn cao, v.v. Đây là tất cả các cấu trúc dữ liệu tích hợp đã được xây dựng trong MATLAB trong vài năm qua để giúp cuộc sống của chúng ta dễ dàng thực hiện các loại nhiệm vụ đơn giản hoặc thậm chí các loại nhiệm vụ phức tạp mà chúng ta phải làm đi làm lại

Vì vậy, trong trường hợp này ở đây, nếu tôi muốn xử lý thứ gì đó như múi giờ và chuyển đổi thời gian trong trường hợp này-- liên quan đến múi giờ chung-- thành chế độ xem của một người ở New York, đây là tất cả những gì chúng tôi . Một lệnh tích hợp duy nhất cho phép chúng tôi thực hiện chuyển đổi đó. Và cuối cùng, giống như một bài kiểm tra nhanh, chúng tôi muốn xem trước dữ liệu đó và chỉ xem liệu nó có hợp lý không

Vì vậy, trong trường hợp này ở đây, chúng tôi thấy rằng chúng tôi đang nhận được giá của ethereum. Và từ khoảng thời gian này, có vẻ như giá trị dao động từ khoảng 171 đến khoảng 174, điều này có vẻ hợp lý. Không có gì điên rồ như 9.000 hoặc hai. Vì vậy, đó thực sự là tất cả những gì cần để gọi Python cho MATLAB. Rất dễ dàng, chỉ cần nhớ dấu chấm py và sau đó đảm bảo rằng mọi thư viện tùy chỉnh trên đường dẫn Python

ĐƯỢC RỒI. Vì vậy, bây giờ chúng tôi có kết nối với Python, chúng tôi có thể thu thập dữ liệu khi cần. Và chúng ta có thể tập trung vào việc xây dựng nhanh chóng các mô hình dự đoán bằng các ứng dụng MATLAB và mở rộng quy mô thành dữ liệu lớn bằng các bảng cao. Vì vậy, hãy xem một ví dụ nhanh ở đây về cách chúng ta có thể xây dựng các mô hình đó. Vì vậy, ở đây chúng tôi đang làm việc với cùng một dữ liệu mà chúng tôi đã làm việc với trước đây khi chúng tôi thu thập dữ liệu từ Python-- hoặc thu thập dữ liệu từ các thư viện Python đó

Vì vậy, khi chúng tôi tải cái này vào, chúng tôi sẽ tải nó dưới dạng thời gian biểu. Và một lần nữa, nếu bạn chưa bao giờ làm việc với thời gian biểu trong MATLAB, nó rất hữu ích cho phép bạn đồng bộ hóa dữ liệu theo cùng tần suất. Vì vậy, ví dụ: hàng ngày hoặc hàng quý hoặc hàng tháng, ngay cả khi tần suất của các chuỗi thời gian khác nhau là khác nhau. Ngoài ra, sắp xếp chuỗi thời gian theo cùng một khoảng thời gian bắt đầu và kết thúc

Và vì vậy, trong trường hợp này ở đây, bạn thấy rằng chúng tôi có bốn dữ liệu mức giá tiền điện tử khác nhau mà chúng tôi đang làm việc với. Và những gì chúng tôi muốn làm là cố gắng dự đoán giá của ethereum. Vì vậy, để làm điều đó, nó thực sự khá dễ dàng trong MATLAB. Chúng ta sẽ viết cú pháp khá đơn giản ở đây, nó rất dễ hiểu và dễ đọc. Nó hầu như chỉ là ngôn ngữ tiếng Anh, trong trường hợp này ở đây, chúng tôi đang giảm giá hai giờ. Đúng. Và bạn chỉ cần viết nó ở đây bằng ngôn ngữ tiếng Anh đơn giản

Tương tự như vậy, nếu bạn muốn làm những việc như tính toán một chuỗi trả về, sẽ có các lệnh tích hợp để thực hiện điều đó. Tính toán những thứ như đường trung bình động hoặc chỉ số sức mạnh tương đối. Và đây đều là một phần của hộp công cụ tài chính mà chúng tôi có sẵn. Vì vậy, bạn không cần phải viết mã này từ đầu hoặc phát minh lại bánh xe. Bạn chỉ có thể sử dụng các chức năng tích hợp sẵn đó

Và sau đó, chúng tôi lấy tất cả các chỉ báo kỹ thuật mà chúng tôi đang xây dựng này, và điều chúng tôi muốn làm là xây dựng một bảng rộng-- về cơ bản, một bảng rộng gồm các chỉ báo kỹ thuật này với hy vọng rằng sẽ có một tín hiệu . Và vì vậy, đồng bộ hóa là người bạn tốt nhất của chúng tôi trong việc có thể lấy tất cả các công cụ dự đoán khác nhau này ở đây và tổng hợp chúng lại với nhau thành một bảng rộng cho chúng tôi

Vì vậy, đồng bộ hóa là một chức năng được tích hợp sẵn, là một phần của thời gian biểu cho phép chúng tôi lấy những thứ như tất cả các chỉ số sức mạnh tương đối và đường trung bình động này, đồng thời trả về chuỗi chẵn và kết hợp chúng lại với nhau. Và điều thú vị ở đây là nếu chuỗi của bạn không có cùng số điểm, ví dụ: chuỗi trả về và đường trung bình động có số điểm khác nhau, thì đó không phải là vấn đề vì nó đã được đóng dấu thời gian

Và để nó tự động lấy dữ liệu và làm cho nó có cùng kích thước và điền vào nó bằng NaN hoặc thậm chí thực hiện phép nội suy nếu chúng ta mong muốn. Và một khi chúng tôi có bảng chỉ báo kỹ thuật rộng đó, chúng tôi thấy ngay tại đây, chúng tôi có khoảng 30 công cụ dự đoán khác nhau ở đây trong bộ dữ liệu của chúng tôi

Và khi chúng ta có điều đó, bây giờ là lúc xây dựng một mô hình sẽ cung cấp cho chúng ta một số dự đoán về giá trong tương lai. Và do đó, cách tiếp cận điển hình để làm điều đó là bạn sẽ chia tập dữ liệu thành thử nghiệm so với đào tạo-- hoặc trong mẫu so với ngoài mẫu. Vì vậy, trong trường hợp này ở đây, chúng tôi sẽ thực hiện-- thực tế là khoảng bốn hoặc năm hoặc sáu ngày, khoảng thời gian cho phần dữ liệu đào tạo của chúng tôi và khoảng thời gian bốn ngày cho thử nghiệm của chúng tôi

Và một trong những điều tuyệt vời, một lần nữa, là sử dụng những thứ như thời gian biểu là chúng có các chức năng tích hợp sẵn này. Vì vậy, chúng tôi không chỉ có những thứ như đồng bộ hóa mà còn có những thứ như phạm vi thời gian mà bạn có thể chỉ định khoảng thời gian của mình. Làm cho việc viết mã và lập chỉ mục vào thời gian biểu của chúng tôi dễ dàng hơn cho phần dữ liệu mà chúng tôi cần

Khi chúng tôi đã chia nó thành thử nghiệm và đào tạo, bây giờ chúng tôi muốn xây dựng các mô hình của mình. Và chúng tôi có thể làm điều đó, tất nhiên, bằng tay, nhưng có những ứng dụng cho phép chúng tôi tạo điều kiện cho sự phát triển nhỏ nhanh hơn nhiều. Nếu bạn chưa bao giờ sử dụng một ứng dụng bên trong MATLAB, thì có rất nhiều ứng dụng trong số đó. Vì vậy, chỉ để chỉ ra một số hữu ích, ví dụ: trình học phân loại, trình học hồi quy, là các mô hình máy học-- ứng dụng mà chúng ta thường sử dụng

Ngoài ra còn có những thứ để làm và xây dựng mạng lưới thần kinh, và thậm chí thiết kế mạng sâu. Và trên thực tế, sau này chúng ta sẽ tham khảo trình thiết kế bộ nhớ sâu này khi chúng ta xây dựng các mạng sâu và làm những việc như làm việc với các mô hình TensorFlow. Ngoài ra, có thể kết nối với cơ sở dữ liệu, thực hiện mô hình ARIMA hoặc xây dựng thẻ điểm tín dụng của chúng tôi và triển khai

Vì vậy, có rất nhiều ứng dụng khác nhau này. Vì vậy, tôi thực sự khuyên bạn nên thử xem liệu có ứng dụng nào cho nhiệm vụ mà bạn đang cố gắng thực hiện trước khi thử thực hiện từ đầu không. Vì vậy, trong trường hợp này ở đây, chúng tôi muốn xây dựng một loạt các mô hình dựa trên hồi quy bằng cách sử dụng các mô hình máy học để xem mô hình nào là tốt nhất. Vì vậy, chúng tôi sẽ sử dụng ứng dụng học hồi quy để làm điều đó. được rồi. Vì vậy, đây là những gì người học hồi quy trông giống như

Và một lần nữa, nếu bạn chưa quen với điều này, thì điều tuyệt vời ở đây là nó tuyệt vời cho cả người mới bắt đầu và người nâng cao. Bởi vì nó có quy trình làm việc tuyệt vời này được thiết kế để bắt đầu ở phía bên trái và hướng dẫn bạn cho đến khi bạn ở phía bên phải của quy trình làm việc. Vì vậy, chúng tôi sẽ làm theo điều đó và lấy một số dữ liệu

Trong trường hợp này, chúng ta sẽ làm việc với tập dữ liệu huấn luyện. Chúng tôi sẽ đưa tất cả những yếu tố dự đoán đó vào ứng dụng. Và ý tưởng ở đây là chúng tôi muốn xây dựng nhiều mô hình khác nhau cho phép chúng tôi, trong trường hợp này, dự đoán hoặc giải quyết chính xác hoặc kết nối với tập dữ liệu đào tạo ở đây

Vì vậy, chúng tôi muốn có thể lấy tập dữ liệu lịch sử này và khớp một mô hình với nó một cách chính xác nhất có thể. Và trong MATLAB, chúng ta có nhiều mô hình khác nhau được xây dựng sẵn để thực hiện điều đó. Những thứ như, cây quyết định được tăng cường và đóng gói, mô hình quy trình gaussian hỗ trợ máy vectơ. Và các mô hình đơn giản hơn, chẳng hạn như cây hoặc mô hình hồi quy-- mô hình hồi quy tuyến tính nói riêng. được rồi

Vì vậy, điều thú vị ở đây là bạn có thể không nhất thiết phải biết mô hình nào là tốt nhất, vì vậy bạn có thể chỉ cần đào tạo tất cả chúng. Vì vậy, hãy đào tạo một vài trong số những người này. Và MATLAB sẽ tự động sắp xếp chúng cho bạn tại đây. Nếu bạn có quyền truy cập vào một máy đa lõi, bạn chỉ cần nhấp vào nút Sử dụng song song ở đây và nó sẽ cho phép bạn thực hiện việc này song song

Vì vậy, nếu bạn có một máy lõi tứ, nó sẽ làm tất cả những việc này cùng một lúc. Và những gì nó đang làm là nó thực sự xếp hạng từng mô hình riêng lẻ khác nhau dựa trên lỗi bình phương trung bình gốc. Lỗi có sai số bình phương trung bình gốc thấp nhất là lỗi phù hợp nhất với tập dữ liệu lịch sử. Trên thực tế, nếu bạn muốn thử các mô hình khác nhau, đơn giản chỉ cần nhấp vào một mô hình riêng lẻ mà bạn muốn đào tạo và sau đó nó sẽ cung cấp cho bạn đánh giá mới

Trong trường hợp này ở đây, lỗi bình phương trung bình gốc thấp hơn, vì vậy điều này cho thấy đây có lẽ là mô hình phù hợp nhất. Vì vậy, giả sử chúng ta muốn thực hiện điều này, tất cả những gì chúng ta cần làm chỉ đơn giản là lấy cái này, nhấp vào nút hộp kiểm và điều này sẽ cho phép chúng ta xuất mô hình sang không gian làm việc MATLAB mà sau đó chúng ta có thể sử dụng. Và vì vậy làm thế nào để chúng ta đi về việc sử dụng này?

Vì vậy, điều tuyệt vời là MATLAB cung cấp cho chúng ta các gợi ý về cách sử dụng các hàm này. Trên thực tế, nó nói, này, tất cả những gì bạn cần làm là chuyển một số dữ liệu mới vào đây-- một số dữ liệu thử nghiệm mới-- và tôi sẽ trả lại cho bạn, trong trường hợp này, giá dự đoán phù hợp. Tuyệt quá. Vì vậy, đó chính xác là những gì chúng tôi làm ngay tại đây

Vì vậy, chúng tôi chỉ cần lấy gợi ý đó, dán trực tiếp vào kịch bản biên tập trực tiếp của chúng tôi và bây giờ chúng tôi đang trên đường. Vì vậy, chúng tôi có giá dự đoán của chúng tôi ngay tại đây. Và sau đó, tất nhiên, những gì chúng tôi muốn làm là chúng tôi muốn lấy những mức giá dự đoán đó và thực sự đo lường nó dựa trên một thứ gì đó, một loại tiêu chuẩn nào đó. Trong trường hợp này, chúng tôi sẽ sử dụng hết dữ liệu mẫu. Vì vậy, chúng tôi chỉ cần lấy dữ liệu thử nghiệm của mình, chuyển dữ liệu đó vào chức năng dự đoán, sau đó trực quan hóa dữ liệu đó để chúng tôi hiểu được dữ liệu đó trông như thế nào và cũng tính toán một số chỉ số xung quanh dữ liệu đó

Ở phía bên tay phải là hình ảnh của lịch sử, màu xanh lam, so với dự đoán của chúng tôi, màu đỏ ở đây. Và bạn có thể thấy rằng chúng tôi đang nắm bắt khá tốt một số tính năng động của mô hình, nhưng có những lĩnh vực khác có khả năng cần được cải thiện. Nhìn chung, lỗi bình phương trung bình gốc là bảy. Và câu hỏi là, chúng ta có thể làm tốt hơn không?

Thay vào đó, nếu chúng tôi đào tạo điều này trong 30 ngày thì sao? . ĐƯỢC RỒI. Vì vậy, thông thường, một trong những thách thức để làm điều đó là bạn cần phải làm việc với các tập dữ liệu có thể không nhất thiết phải vừa với bộ nhớ. Chúng có thể khổng lồ, có thể là hàng petaby dữ liệu là những thứ mà tôi đã từng thấy trước đây

Vì vậy nếu phải xử lý một dữ liệu lớn như vậy thì rõ ràng là bạn không thể lắp vừa RAM. Và do đó, một cách tiếp cận khác để thực hiện điều đó là sử dụng lệnh lưu trữ dữ liệu trong MATLAB. Vì vậy, lệnh lưu trữ dữ liệu cho phép chúng tôi kết nối với một tệp hoặc nhiều tệp có thể là nhiều loại dữ liệu khác nhau. Vì vậy, nó thực sự cho phép bạn kết nối với một kho lưu trữ dữ liệu và coi nó như một kho lưu trữ mà bạn không nhất thiết phải lấy tất cả dữ liệu cùng một lúc

Cho phép bạn kết nối với nhiều thứ khác nhau, vì vậy đây thực sự là một lệnh rất mạnh. Nó cho phép bạn kết nối với các tệp Excel, tệp phẳng. Cho phép bạn kết nối với cơ sở dữ liệu, hệ thống HTFS, Azure Blobs, bộ chứa S3. Vì vậy, bạn có thể kết nối với nhiều nguồn dữ liệu khác nhau bằng cách sử dụng lệnh lưu trữ dữ liệu này

Lệnh tiếp theo cao. Vì vậy, khi bạn đã thiết lập kết nối đến kho lưu trữ dữ liệu, bạn sẽ sử dụng lệnh cao này, mà tôi đã đề cập từ trước. Có bàn, bàn cao, thời gian biểu. Vì vậy, đây là một trong những kiểu dữ liệu cốt lõi đã được giới thiệu trong MATLAB trong 5 năm qua. Và vì vậy, điều này cho phép chúng tôi, với tư cách là nhà phát triển MATLAB, nó gần như là một điều kỳ diệu vì chúng tôi không cần phải lo lắng về việc tái cấu trúc mã của mình để làm cho nó thân thiện với dữ liệu lớn

Thay vào đó, chúng tôi gọi lệnh cao này và sau đó chúng tôi có thể chỉ cần viết mã MATLAB như chúng tôi vẫn làm mà không cần phải cấu trúc lại nó và làm việc với các khối dữ liệu phù hợp với bộ nhớ tại một thời điểm, v.v. Vì vậy, điều bạn sẽ nhận thấy sau đó là chúng tôi có thể mở rộng quy mô thành dữ liệu lớn mà không cần phải thay đổi mã của mình

Và trên thực tế, bạn có thể thấy chính xác mã này mà chúng tôi đã làm việc với trước đó, phạm vi thời gian, bảng thời gian đến bảng, v.v., với một thay đổi nhỏ. Và một thay đổi nhỏ ở ngay đây, đào tạo mô hình dự đoán. Vì vậy, trong bước đầu tiên, chúng tôi đã sử dụng ứng dụng học hồi quy để xây dựng mô hình và đánh giá mô hình hoạt động tốt nhất. Chúng ta có phải làm điều đó một lần nữa?

Chúng ta có thể quay lại ứng dụng học hồi quy đó-- hãy làm điều đó. Và ngay đây, là nút tạo hàm để chúng ta không phải làm đi làm lại. Khi chúng tôi tìm thấy mô hình phù hợp với mình, chúng tôi chỉ cần sử dụng mô hình đó và chuyển vào tập dữ liệu đào tạo mới của mình và điều đó sẽ cung cấp cho chúng tôi mô hình được đào tạo. Và những gì bạn thấy ở đây là một hộp màu trắng, phải không? . Bạn có thể xem tất cả các chi tiết về những gì đang xảy ra ở đây và đi sâu vào chi tiết cụ thể, thay đổi nó nếu bạn muốn

Nhưng điều quan trọng là bạn không phải tự viết mã. Vì vậy, cuối cùng, đây là một công cụ giúp bạn tiết kiệm rất nhiều thời gian. ĐƯỢC RỒI. Và cuối cùng, khi chúng tôi đã hoàn thành việc đó, chúng tôi có thể muốn trực quan hóa dữ liệu. Và do đó, một điều quan trọng có thể là một thách thức là khi bạn đang làm việc với dữ liệu lớn, chỉ đơn giản là thực hiện trực quan hóa một tập dữ liệu

Và vì vậy, những gì MATLAB có là một loạt các trực quan hóa được tích hợp sẵn cho dữ liệu lớn mà bạn không cần phải kéo toàn bộ tập dữ liệu vào bộ nhớ. Vì vậy, thay vào đó, bạn có thể thực hiện quét nhanh tập dữ liệu và lấy phần dữ liệu bạn cần khi cần. Vì vậy, đây là một kỹ thuật tiết kiệm thời gian khác. Và cuối cùng, khi chúng ta thực hiện trực quan hóa tương tự và tính toán sai số bình phương trung bình gốc, đây là kết quả của chúng ta ở phía bên tay phải

Vì vậy, bạn có thể thấy lỗi bình phương trung bình gốc của chúng tôi đã giảm từ khoảng bảy xuống dưới một và bạn có thể thấy điều đó một cách trực quan bằng cách kiểm tra. Chúng ta có thể thấy giá lịch sử và giá dự đoán gần như chồng lên nhau. Vì vậy, trên thực tế, có vẻ như việc sử dụng nhiều dữ liệu hơn để đào tạo mô hình này, thực sự đã hiệu quả. Và vì vậy, chúng tôi hài lòng với mô hình này và bây giờ, hãy lưu mô hình đào tạo mà chúng tôi đã tạo thành một tệp mat, tệp này cuối cùng sẽ được gọi bởi các phân tích MATLAB đã triển khai của chúng tôi, sau đó được gọi bởi Python

Vì vậy, Python gọi MATLAB gọi tệp mat này. Tuyệt quá. Vậy là bước tiếp theo đã hoàn thành. Chúng tôi đã xây dựng mô hình và vì vậy, bước tiếp theo của chúng tôi là có thể xác thực hoặc kiểm tra mô hình này. Vì vậy, trước khi chúng tôi sản xuất điều này, chúng tôi muốn có thể xác thực mô hình trong môi trường mà cuối cùng nó sẽ được chạy trong đó

Vì vậy, thách thức tiếp theo của chúng tôi là có thể gọi MATLAB ngay bây giờ từ Python, do đó, ngược lại với những gì chúng tôi vừa làm trước đó. Vì vậy, hãy xem một ví dụ đơn giản về cách gọi MATLAB từ Python. Giả sử tôi có lệnh này, copularnd, mà tôi đã tìm thấy, về cơ bản là tạo số ngẫu nhiên cho Copula

Chúng ta hãy xem tài liệu về điều này và xem nó được sử dụng như thế nào trước. Vì vậy, copularnd là một hàm tích hợp cho phép chúng tôi thực hiện các mô phỏng đa biến tương quan. Và có vẻ như tất cả những gì chúng ta cần làm chỉ đơn giản là chỉ định loại Copula theo sau là hàng tham số tương quan này, phải không? . Và chúng ta có thể thấy tất cả những điều đó bên trong tài liệu ở đây

Vì vậy, đây là những gì chúng tôi muốn sử dụng. Vì vậy, hãy thử nó ra. Trước tiên hãy mở một trình thông dịch Python. được rồi. Vì vậy, chỉ có một vài bước chúng ta cần làm ở đây. Đầu tiên, nhập công cụ MATLAB

Thứ hai, chúng ta cần khởi động công cụ MATLAB này mà chúng ta vừa nhập vào Python. Và bây giờ chúng ta có thể truy cập bất kỳ hàm MATLAB nào trực tiếp từ Python bằng cách chỉ lập chỉ mục vào biến m mà chúng ta vừa tạo ở đây

Vì vậy, trong trường hợp này, nếu chúng ta muốn truy cập hàm copularnd, tất cả những gì chúng ta cần làm chỉ là làm m. copularnd, sau đó chuyển vào các đầu vào mà chúng tôi rất mong muốn. Và chúng ta hãy xem nó trông như thế nào. Vì vậy, chúng tôi đã có nó. Chúng tôi vừa tạo một kết nối tới một hàm MATLAB, copularnd, gọi nó và lưu kết quả vào Python tại đây

Nhưng đó, một lần nữa, là một trường hợp đơn giản và chúng tôi muốn xem xét kịch bản của chúng tôi trong tầm tay. Vì vậy, đầu tiên, chúng tôi đã gọi thành công một thư viện Python. Trong trường hợp này, dataLib, bên trong MATLAB. Bây giờ, chúng tôi muốn lấy mô hình mà chúng tôi đã xây dựng trong MATLAB-- bộ dự đoán xây dựng tập lệnh MATLAB mà chúng tôi đang làm việc với trước đó-- và gói nó thành một hàm độc lập có tên là predictprice. Và sau đó gọi dự đoán đó từ bên trong Python

Vì vậy, trước tiên, chúng ta hãy xem predictPrice trông như thế nào, sau đó chúng ta sẽ xem cách gọi hàm predictPrice đó từ bên trong Python. ĐƯỢC RỒI. Vì vậy, đây là chức năng PredictPrice. Bạn có thể thấy nó chỉ đang sử dụng chữ ký hàm MATLAB điển hình ở đây, varargin. Nếu bạn chưa từng nghe về điều đó trước đây, thì đó là một số lượng đầu vào thay đổi, vì vậy chúng ta không cần phải có chữ ký hàm động, điều này thật tuyệt

Nếu chúng ta đang gọi nó từ một môi trường khác, chúng ta không cần phải mã hóa nó. Và vì vậy nhìn xuống đây, hầu như nó chỉ đang làm những thứ giống như chúng ta đã làm trước đây. Nó chỉ gọi và nhận và tổng hợp dữ liệu mức giá. Và sau đó chính là đoạn mã mà chúng ta đã thấy trước đó, độ trễ, tính toán các chỉ số kỹ thuật ở đây, kết hợp chúng lại với nhau và tạo ra bảng dự đoán rộng đó

Đang tải tệp mat có chứa mô hình được đào tạo mà chúng tôi đã tạo từ trước, vì vậy đó là nơi phát huy tác dụng của nó. Và sau đó làm dự đoán, phải không? . Và bây giờ từ phía Python, nó trông như thế nào khi gọi nó?

Rất giống với tập hợp các bước mà chúng ta đã thấy từ trước. Vì vậy, một lần nữa, chúng tôi đang gọi đến công cụ MATLAB, khởi động máy tính để bàn MATLAB tại đây. Và một điều mà bạn nhận thấy trong trường hợp này là chúng ta có thể gọi màn hình nền một cách tương tác. Chúng tôi có nhiều cơ chế khác nhau mà chúng tôi có thể sử dụng để bắt đầu phiên MATLAB. Chúng tôi có thể bắt đầu một phiên ẩn, một màn hình MATLAB đầy đủ nếu bạn muốn xem các biến trong không gian làm việc hoặc thậm chí kết nối với phiên MATLAB hiện tại của bạn nếu bạn muốn

Sau đó, từ đó, truyền bất kỳ loại dữ liệu nào sang các loại dữ liệu MATLAB tương ứng, rồi chạy chức năng tùy chỉnh PredictPrice mà chúng tôi đã tạo. Vì vậy, hãy xem cái này, hãy chạy cái này

Và những gì bạn thấy ở đây là MATLAB đã mở ra một phiên làm việc MATLAB mới ngay tại đây, nghĩa là, trong trường hợp này, được kết nối với môi trường Python. Và chúng ta có thể thấy rằng các kết quả từ môi trường MATLAB được chuyển trở lại Python tại đây. Và bạn có thể xem kết quả, giá xu và dữ liệu xác thực. Và trên thực tế, nếu chúng ta xem xét dữ liệu xác thực, đó là một cấu trúc

Và chúng ta có thể thấy cấu trúc chứa một số chỉ số xác thực, chẳng hạn như lỗi bình phương trung bình gốc, giá cuối cùng được dự đoán và lịch sử. Và nếu chúng ta xem xét và so sánh mã đó với mã Python, trước tiên sẽ có một vài điều. Bạn nhận thấy rằng chúng ta thực sự có thể quản lý, gỡ lỗi, điều chỉnh và chỉnh sửa không gian làm việc-- không gian làm việc MATLAB-- từ Python

Và trên thực tế, khi chúng tôi thực hiện xác thực dữ liệu ở đây, bạn nhận thấy rằng đó không phải là dữ liệu JSON mà là một cấu trúc, phải không? . Vì vậy, bạn thực sự có thể gọi các hàm và cú pháp MATLAB trực tiếp từ Python. Và đây là thứ cho phép chúng tôi giải nén trực tiếp JSON thành một cấu trúc

Vì vậy, bây giờ cuối cùng khi mô hình được kiểm tra trong môi trường Python, chúng tôi muốn đẩy các phân tích trong toàn tổ chức. Tuy nhiên, không phải tất cả những người được hưởng lợi từ khả năng của MATLAB đều là nhà phát triển. Một số, chẳng hạn như người dùng doanh nghiệp, người ra quyết định, người quản lý, tình cờ trở thành người tiêu dùng của mô hình và do đó, việc cấp phép cho MATLAB sẽ là quá mức cần thiết. Nhưng họ vẫn sẽ được hưởng lợi từ chính các mô hình

Điều lý tưởng trong trường hợp này là có thể đóng gói các phân tích MATLAB, sau đó có thể chạy với một số thời gian chạy nhẹ. Các kết quả sau đó được đẩy trở lại Python và cuối cùng là ứng dụng web, do đó cho phép người dùng doanh nghiệp truy cập các dự đoán hướng tới tương lai của các mô hình MATLAB của chúng tôi

Vì vậy, hãy xem một ví dụ về điều này sẽ như thế nào và chuyển sang phần thứ hai trong chương trình nghị sự của chúng ta, đó là triển khai các mô hình MATLAB mà chúng ta đã tạo. Vì vậy, trong trường hợp này, chúng tôi muốn lấy PredictPrice của mình và gói nó lại

Vì vậy, chúng ta có thể làm điều đó bằng cách sử dụng một ứng dụng bên trong MATLAB. Không phải mã hóa lại bất cứ thứ gì từ đầu, chỉ cần tạo thư viện cho chúng tôi. Và do đó, ứng dụng để làm điều đó là trình biên dịch thư viện ngay tại đây. Vì vậy, nếu chúng tôi nhấp vào mục này, mục này có nhiều đầu ra mục tiêu khác nhau mà chúng tôi có thể triển khai tới

Vì vậy, trong trường hợp này, bạn sẽ chọn Python. Và sau đó chúng tôi thêm vào các chức năng mà chúng tôi muốn làm cho môi trường Python có thể truy cập được. Chúng tôi có thể thêm vào 1, 10, 1.000, bao nhiêu chức năng tùy thích để hiển thị cho nhà phát triển Python. Và bước thứ ba chỉ cần nhấp vào nút Gói và nó sẽ tạo thư viện py cho chúng tôi. Và vì vậy, tôi đã làm điều đó và thêm vào các chức năng liên quan cần thiết để nó chạy

Vì vậy, khi tôi nhấp vào Gói ở đây, nó sẽ thực hiện ba điều quan trọng đối với chúng tôi. Đầu tiên, nó sẽ tìm và thực hiện phân tích phụ thuộc để tìm mã MATLAB tương ứng cần thiết để chạy mã này. Nếu bạn có tệp mat, nó cũng sẽ tìm những tệp đó cho bạn. Nếu bạn đang sử dụng những thứ bên ngoài như thư viện py, bạn sẽ phải tự thêm những thứ đó. Nhưng nó sẽ tìm thấy hầu hết những thứ bạn cần trong phân tích phụ thuộc đó. Vì vậy, đó là điều đầu tiên nó làm

Điều thứ hai nó thực hiện là mã hóa mã MATLAB của bạn để tài sản trí tuệ của bạn được an toàn. Và sau đó, điều thứ ba nó làm là xây dựng giao diện py để bạn với tư cách là nhà phát triển MATLAB không cần biết Python để chuyển giao điều này cho nhóm Python

Nó sẽ tạo trình bao bọc py cho bạn để các nhà phát triển Python có thể tận dụng các phân tích MATLAB mà không cần biết nhiều về MATLAB. Được rồi, và thế là xong. Và như vậy là đã xây dựng xong thư viện py cần thiết để cài đặt thư viện MATLAB

Vì vậy, khi bạn chạy cái này, nó sẽ chỉ cài đặt cái này vào MATLAB của bạn-- hoặc xin lỗi, vào môi trường Python của bạn. Và sau đó bạn sẽ có thể nhập thư viện MATLAB. Vì vậy, bạn chỉ cần chạy py thiết lập và nó sẽ sao chép các phân tích MATLAB sang môi trường Python của bạn. ĐƯỢC RỒI

Vì vậy, khi chúng tôi đã hoàn thành việc đó, bây giờ chúng tôi có thể gọi thư viện MATLAB tương ứng từ Python. Vì vậy, hãy xem mã Python tương ứng. ĐƯỢC RỒI. Vì vậy, đây là. Nó khá giống với những gì chúng ta đã thấy từ trước, phải không? . Bạn đang chuyển nó sang cấu trúc dữ liệu tương ứng, giống như bạn đã làm từ trước

Chỉ có hai điểm khác biệt chính giữa mã trước đó trong mã này. Một là chúng tôi hiện đang nhập thư viện tùy chỉnh này mà chúng tôi đã tạo bằng ứng dụng đó, phải không? . Mã MATLAB hoàn toàn giống như trước đây, nhưng thay vì bắt đầu một phiên MATLAB, chúng tôi thực sự đang khởi tạo một thời gian chạy trong quy trình. Vì vậy, đó là những gì bước tiếp theo này đang làm

Vì vậy, thay vì bắt đầu phiên MATLAB đầy đủ, bạn đang khởi tạo thời gian chạy mỏng nhẹ đó. Và do đó, điều này mang lại lợi ích bổ sung về hiệu suất được cải thiện, bởi vì thời gian chạy dễ khởi động hơn so với một phiên MATLAB đầy đủ. Vì vậy, hãy thực hiện điều này. Và chúng ta đi

Chúng tôi đã có kết quả tương tự khi quay lại Python, nhưng hiện đang sử dụng thư viện py được đóng gói. Vì vậy, nếu ai đó không có giấy phép MATLAB, họ vẫn có thể sử dụng các mô hình mà chúng tôi đã tạo trong MATLAB từ bên trong Python. được rồi. Vì vậy, hãy tóm tắt quy trình triển khai máy tính để bàn

Bên tay trái là máy của nhà phát triển MATLAB. Họ có giấy phép MATLAB và các hộp công cụ tương ứng. Họ đã xây dựng một ứng dụng trong MATLAB, trong trường hợp này là dự đoán Giá. Và sau đó, việc triển khai bằng một cú nhấp chuột của chúng tôi thông qua ứng dụng sẽ tạo thư viện py. Sau đó, tất cả những gì chúng ta cần làm là chia sẻ thư viện py với người dùng cuối mà không nhất thiết phải có giấy phép trong MATLAB

Tất cả những gì họ cần là cài đặt thứ miễn phí này được gọi là thời gian chạy MATLAB trên máy của người dùng cuối và nó sẽ cung cấp cho họ trải nghiệm người dùng phong phú giống như khi họ sử dụng MATLAB. Một lần nữa, một điểm khác biệt quan trọng ở đây là người dùng cuối không cần đầu tư vào giấy phép MATLAB. Giải pháp triển khai của chúng tôi là miễn phí bản quyền, nghĩa là bạn có thể chia sẻ thư viện py đó với mọi người và chi phí là như nhau đối với bạn, đây chỉ đơn giản là khoản đầu tư ban đầu vào các công cụ biên dịch MATLAB

Điều đó thật tuyệt, nhưng bây giờ câu hỏi đặt ra là, làm cách nào để chúng tôi mở rộng quy mô này cho doanh nghiệp nơi chúng tôi cần hỗ trợ đồng thời ứng dụng lớn? . Thực hiện dịch ngôn ngữ thủ công, vừa tốn kém vừa mất thời gian. Hoặc sử dụng trình biên dịch MATLAB mà chúng ta vừa nói

Tuy nhiên, giả sử rằng việc cài đặt thời gian chạy MATLAB trên máy của người dùng cuối là không thể thực hiện được do các quy định và hạn chế về CNTT. Chà, trong trường hợp đó, điều đó loại trừ việc sử dụng cách tiếp cận dựa trên triển khai trên máy tính để bàn của trình biên dịch MATLAB. Ngoài ra, có một số yêu cầu khác mà chúng tôi cũng cần phải thực hiện

Vì vậy, trong trường hợp này, việc giảm truyền dữ liệu bằng cách đưa các phân tích vào dữ liệu được quan tâm. Có thể tập trung phân tích để đảm bảo người dùng luôn truy cập vào phiên bản mới nhất của các mô hình mà chúng tôi đã xây dựng tự động thay vì phải đẩy các bản cập nhật ra cho họ theo cách thủ công. Cung cấp nhiều giao diện, do đó, một phân tích duy nhất có thể được truy cập bởi nhiều ứng dụng

Vì vậy, trong trường hợp này, nếu chúng tôi có các ứng dụng dựa trên web như JavaScript hoặc Python hoặc chúng tôi có C# hoặc C++ hoặc MATLAB gọi ứng dụng, chúng tôi chỉ phải triển khai một phiên bản của ứng dụng đó. Và tất nhiên, điều cuối cùng và cũng là điều quan trọng nhất, là nó cần có khả năng mở rộng-- mạnh mẽ

Vì vậy, máy chủ sản xuất MATLAB là giải pháp cho vấn đề này. Đó là một phần mềm máy chủ có thể ngồi ở bất cứ đâu. Nó có thể nằm và được cài đặt trên máy chủ hoặc đám mây, lưới, máy tính để bàn, máy tính xách tay. Nó có thể được cài đặt theo nghĩa đen ở bất cứ đâu. Và những gì nó làm là nó cung cấp một kho phân tích tập trung có thể được truy cập đồng thời bởi các ứng dụng khác bằng ngôn ngữ lập trình. Do đó, cung cấp một kiến ​​trúc có thể mở rộng, đạt được bằng cách quản lý cơ bản một nhóm thời gian chạy, mà bạn thấy ở đây ở phía bên tay phải

Đây là máy chủ sản xuất và đây là nhóm thời gian chạy MATLAB có sẵn và có thể truy cập bất kỳ lúc nào. Vì vậy, chỉ cần đóng gói các phân tích MATLAB vào một thư viện, sử dụng SDK trình biên dịch MATLAB. Và sau đó đặt nó vào một thư mục trong phiên bản máy chủ sản xuất

Sau đó, các thư viện này có thể được các ứng dụng hoặc người dùng truy cập ngay lập tức. Vì vậy, ví dụ: máy chủ web, phần bổ trợ Excel, máy chủ ứng dụng, cơ sở dữ liệu, v.v., tất cả đều có thể thực hiện cuộc gọi đến máy chủ sản xuất này, về cơ bản đây là tiêu chuẩn vàng của tất cả các phân tích. Các phiên bản cập nhật nhất luôn được triển khai cho máy chủ sản xuất đó

Và trên thực tế, những thư viện này cũng có thể được truy cập thông qua nhiều giao diện khác nhau. Vì vậy, bao gồm ở đây trong trường hợp này, giao diện Python và RESTful. Giao diện RESTful đặc biệt là một cách mạnh mẽ để kết nối với máy chủ sản xuất, vì không yêu cầu máy khách mỏng nào để thực hiện phân tích MATLAB triển khai và nhận kết quả trở lại môi trường gọi

Vì vậy, hãy sử dụng hàm predictPrice đã hoạt động trước đó và giờ đây làm cho nó có thể truy cập được dưới dạng lệnh gọi RESTful được lưu trữ trên máy chủ và lệnh gọi đó sẽ được gọi từ Python. ĐƯỢC RỒI. Vì vậy, giống như trước đây khi chúng tôi xây dựng thư viện py bằng một ứng dụng, có một ứng dụng để xây dựng các mục tiêu triển khai dựa trên máy chủ sản xuất

Và vì vậy bạn có thể tìm thấy nó ngay tại đây, trình biên dịch máy chủ sản xuất. Nếu tôi nhấp vào đó hoặc trong trường hợp này, tôi đã có một phiên bản đã bao gồm các chức năng mà tôi muốn triển khai. Bạn có thể thấy rằng giao diện khá giống với trước đây. Sự khác biệt duy nhất là các mục tiêu mà chúng tôi có thể triển khai

Vì vậy, trong trường hợp này ở đây, chúng tôi tạo một tệp CTF để thay thế. Và vì vậy, tệp CTF này, bạn có thể coi nó như một mô hình được nén chứa tất cả các phân tích của bạn trong một tệp duy nhất, sau đó bạn đặt tệp này vào một thư mục của phiên bản máy chủ sản xuất MATLAB đó. Và cách tiếp cận thông thường là chúng tôi sẽ thêm vào tất cả các chức năng khác nhau mà chúng tôi muốn triển khai, nhấp vào Gói và nó sẽ tạo tệp CTF đó

Tuy nhiên, trước khi chúng tôi làm điều đó và chúng tôi chuyển chức năng predictPrice sang máy chủ sản xuất MATLAB, chúng tôi muốn kiểm tra nó trước từ MATLAB để đảm bảo mọi thứ chạy trơn tru. Và để làm điều này, chúng ta có thể sử dụng môi trường thử nghiệm và phát triển máy chủ sản xuất MATLAB ngay tại đây

Vì vậy, nếu chúng tôi nhấp vào đây ở đây, về cơ bản, nó hoạt động giống như máy chủ sản xuất MATLAB để thực hiện các cuộc gọi đến phân tích của bạn. Nhưng thay vào đó sẽ sử dụng giấy phép MATLAB của bạn hoặc phiên MATLAB của bạn tại đây. Vì vậy, nó đang sử dụng và ràng buộc môi trường hiện tại của bạn, vì vậy nó không có khả năng mở rộng. Đó là mục đích của máy chủ sản xuất MATLAB. Nhưng mặt khác, nó trông và hoạt động giống như máy chủ sản xuất MATLAB. Vì vậy, cung cấp cho chúng tôi một cách tuyệt vời để kiểm tra và gỡ lỗi mọi thứ

Vì vậy, hãy bắt đầu điều này. Và một lưu ý chúng tôi cần đảm bảo là chúng tôi không có bất kỳ thứ gì khác đang chạy trên cổng cụ thể này. Không có vấn đề gì nếu bạn có nhiều thứ muốn chạy cùng lúc, chỉ cần đảm bảo rằng chúng nằm trên các cổng khác nhau tại đây. được rồi. Vì vậy, chúng tôi bắt đầu điều này lên. Nó ở cổng 9910. Chúng ta có thể thấy ở đây đây là cách chúng ta kết nối với nó

Vì vậy, trên thực tế, tất cả những gì chúng ta cần làm là chỉ định IP, số cổng, theo sau là tên của thư viện mà chúng ta vừa tạo, sau đó là chức năng mà chúng ta muốn gọi. Trong trường hợp này, nó sẽ là predictPrice ngay sau thư viện MATLAB. Vì vậy, hãy xem một ví dụ về một khách hàng thực hiện cuộc gọi đến dịch vụ RESTful này đang được lưu trữ bởi môi trường thử nghiệm và phát triển cho MATLAB. ĐƯỢC RỒI

Vì vậy, đây là ví dụ. Nó gần như chỉ thực hiện một cuộc gọi RESTful điển hình bằng cách sử dụng các thư viện Python tiêu chuẩn để làm điều đó. Vì vậy, bạn thấy ở đây, chúng tôi đang chỉ định IP, số cổng, vị trí của thư viện theo sau là chức năng mà chúng tôi muốn gọi và sau đó là bất kỳ tham số nào mà chúng tôi muốn chuyển vào chức năng đó. Và phần còn lại về cơ bản chỉ là lấy JSON và giải nén nó

Vì vậy, hãy chạy cái này. Tuyệt quá. Vì vậy, có vẻ như nó đã kết thúc ở đây. Và chúng ta có thể thấy kết quả của PredictPrice được chuyển lại vào Python. Và nếu chúng ta xem xét môi trường thử nghiệm và phát triển đó, bạn có thể thấy rằng nó đã ghi lại cuộc gọi đó ngay tại đây. Vì vậy, chúng ta có thể thấy rằng nó đã hoàn thành. Và trên thực tế, chúng ta thậm chí có thể thấy đầu vào và đầu ra ngay tại đây

Vì vậy, nếu chúng ta xem xét các đầu vào ở đây, chúng ta có thể thấy rằng chúng ta đã chuyển ethereum cho điểm bắt đầu và điểm dừng này. Và chúng ta có thể tham chiếu lại mã Python mà chúng ta đã có từ trước để đảm bảo rằng trên thực tế, chúng là chính xác. Vì vậy, nếu tôi xem mã Python, đây là các đầu vào tôi đã nhập. Vì vậy, đó là đầu vào chính xác giống như chúng ta mong đợi. Mọi thứ đang tốt đẹp. ĐƯỢC RỒI

Vì vậy, hãy dừng việc này ngay bây giờ, bây giờ chúng tôi đã thử nghiệm điều này, đảm bảo rằng nó hoạt động bình thường. Và chúng tôi muốn làm cứng điều này. Vì vậy, chúng tôi muốn lấy cái này và xây dựng tệp CTF của chúng tôi tại đây. Vì vậy, nếu tôi nhấp vào Gói, nó sẽ thực hiện các quy trình tương tự như trước đó, ba bước mã hóa mô hình, tìm phần phụ thuộc và lấy phần này và đóng gói tất cả thành một tệp duy nhất. Tuyệt. Bây giờ nó đã hoàn thành

Chúng ta hãy nhìn vào đầu ra. được rồi. Vì vậy, đây là tệp CTF của chúng tôi. Vì vậy, bây giờ tất cả những gì chúng ta cần làm chỉ là lấy cái này và đặt nó trên máy chủ sản xuất MATLAB. Vì vậy, tất cả những gì chúng ta cần làm, và một lần nữa, chúng ta có thể làm điều này theo hai cách. Chúng tôi có thể thực hiện việc này theo chương trình hoặc chúng tôi có thể thực hiện tương tác bằng cách sử dụng bảng điều khiển máy chủ sản xuất MATLAB, là một phần của máy chủ sản xuất MATLAB

Vì vậy, đó là những gì tôi sẽ sử dụng ở đây, nhưng tất cả những gì chúng tôi đang thực sự làm là đưa nó vào một thư mục của phiên bản máy chủ sản xuất MATLAB theo đúng nghĩa đen. Vì vậy, quay lại đây với bảng điều khiển máy chủ sản xuất MATLAB của chúng tôi, chúng tôi có thể thấy ứng dụng cần được khởi động. Vì vậy, hãy khởi động phiên bản máy chủ sản xuất MATLAB. Và bạn có thể thấy ở đây, đây là một bảng điều khiển đẹp để dễ dàng quản lý tài nguyên của máy chủ sản xuất MATLAB

Vì vậy, bạn có thể thấy ở đây rằng số lượng công nhân, chúng tôi có thể thấy nơi các yêu cầu đến, cũng như bộ nhớ và mức sử dụng và mức sử dụng có sẵn cho chúng tôi trong trường hợp này. Để lấy lại ứng dụng của chúng ta và triển khai nó đến máy chủ sản xuất MATLAB, chỉ cần Tải lên và Triển khai, ngay tại đây. Chỉ vào vị trí chứa tệp đó và chỉ cần thêm nó vào, thế là xong

Nó có thể triển khai nóng, nghĩa là bạn không cần phải gỡ bỏ máy chủ sản xuất MATLAB, nó có thể tự động cập nhật cho bạn. Và nó cũng có cơ sở hạ tầng CNTT rộng lớn đi cùng với nó để giúp quản lý các mô hình đó, chẳng hạn như nhật ký mở rộng. Và việc thiết lập cấu hình của máy chủ sản xuất cũng rất dễ dàng và đơn giản

Vì vậy, nếu bạn cần thực hiện những việc như quản lý các ứng dụng cũ mà bạn đã xây dựng trong các phiên bản MATLAB trước đó, không có vấn đề gì. Thật đơn giản khi thêm vào vị trí của thời gian chạy tương ứng cho ứng dụng cũ mà bạn đã chạy. Vì vậy, trong trường hợp này, tôi đang hỗ trợ các ứng dụng và nó sẽ hoạt động với các ứng dụng đã được xây dựng vào năm 2019b, '19a trong trường hợp này. Và nếu tôi muốn thêm '18b, '18a, v.v., tôi cũng có thể thêm chúng vào đây

Trên hết, nếu tôi cần mở rộng quy mô này ra, thì đó cũng không phải là vấn đề. Tôi chỉ cần chỉ định số lượng công nhân ở đây và tôi có thể có bao nhiêu tùy thích. Trong trường hợp này, máy của tôi chỉ có lõi kép, vì vậy tôi chỉ đơn giản là sử dụng hai. Tuyệt quá. Vì vậy, bây giờ chúng tôi đã hoàn thành khá nhiều phần mà chúng tôi cần làm

Bây giờ chúng ta có thể thiết lập dịch vụ web RESTful đó bằng máy chủ Python giống như chúng ta đã làm từ trước khi sử dụng đoạn mã mà chúng ta vừa có. Và điều này cho phép người dùng và ứng dụng thực hiện cuộc gọi HTTP điển hình, sau đó sẽ trả về một tải trọng JSON. Và chúng tôi chỉ có một máy chủ trên máy này đang chạy máy chủ Python này và nó nằm trên cổng 3030 của chúng tôi trong trường hợp này

Vì vậy, nếu chúng tôi thực hiện cuộc gọi, giả sử trong trường hợp này đến đây, chúng tôi có thể chỉ định loại tiền mà chúng tôi muốn làm việc với. Giả sử chúng ta muốn làm đồng ethereum. Và nó sẽ chạy trên máy chủ sản xuất MATLAB và trả về kết quả cho chúng tôi với giá dự đoán. Tuyệt quá. Và bạn thấy ở đây, ở đây tất cả các kết quả mà chúng tôi đã làm việc với trước đó, bao gồm cả giá dự đoán trong tương lai cho chúng tôi

Và nếu chúng ta nhìn lại bảng điều khiển máy chủ sản xuất MATLAB tương ứng, chúng ta có thể thấy các cuộc gọi đó được thực hiện ngay tại đây. Vì vậy, đây là số lượng yêu cầu, các yêu cầu đang được hoàn thành và sau đó chúng tôi lại có hai nhân viên sẵn sàng cho chúng tôi

Vì vậy, điều này có nghĩa là bây giờ bất kỳ ứng dụng dựa trên web nào chẳng hạn như trang web này mà bạn đã thấy lúc đầu ở đây đều có thể tận dụng các dịch vụ web này giống như bất kỳ ứng dụng web thông thường nào. Tuyệt quá. Vì vậy, bây giờ ứng dụng của chúng tôi đã hoạt động. Chúng tôi có một máy chủ Python, đang gọi MATLAB, đang gọi các thư viện dữ liệu Python, về cơ bản ít nhiều giống như một chiếc bánh sandwich Python trong đó MATLAB là phần thịt ở giữa các lát bánh mì Python

Vậy là xong. Vâng, không thực sự. Các ứng dụng cần được duy trì và cải thiện theo thời gian, và điều này cũng đúng ở đây. Vì vậy, giả sử chúng tôi vừa phát hiện ra rằng một nhóm khác trong công ty của chúng tôi có chuyên môn học sâu đó ngoài chúng tôi. Và họ có một số mô hình TensorFlow mà họ đã đào tạo chuyên sâu với dữ liệu liên quan mà chúng tôi quan tâm

Chà, chúng tôi chắc chắn có thể phát minh lại bánh xe và lấy dữ liệu đó và đào tạo các mô hình từ đầu trong MATLAB. Nhưng thay vào đó, hãy giảm thời gian tiếp thị và sử dụng lại các mô hình TensorFlow hiện có đó. Ngoài ra, chúng ta nên giả định rằng mỗi nhóm có thể muốn tiếp tục sử dụng công cụ lựa chọn của họ. Họ sẽ tiếp tục sử dụng Python, chúng tôi sẽ tiếp tục sử dụng MATLAB trong tương lai. Và điều thuận lợi rõ ràng là các nhóm nên cộng tác trên bất kỳ mô hình mới nào được xây dựng

Vì vậy, trong trường hợp này, chúng tôi cần một cách dễ dàng để chuyển dữ liệu và mô hình giữa hai nhóm khác nhau đó. Vì vậy, trong kịch bản này, có hai lĩnh vực phát triển trong tương lai, bao gồm R&D nói chung và cũng sử dụng các mô hình học sâu để nâng cao hơn nữa các dự đoán. Và đối với R&D nói chung, điều giúp cuộc sống của chúng ta dễ dàng hơn là cách nhập và xuất dữ liệu giữa các môi trường

Đối với phần học sâu, chúng tôi cần một cách để cải thiện các mô hình hiện có, bao gồm sử dụng các kỹ thuật như học chuyển giao. Và vì vậy, điều này bây giờ đưa chúng ta đến phần cuối cùng của chương trình nghị sự, đó là sử dụng các phương thức trao đổi dữ liệu khác nhau giữa MATLAB và Python. Trước tiên, hãy giải quyết các mô hình chia sẻ giữa MATLAB và Python

Vì vậy, MATLAB có các nhà nhập khẩu và xuất khẩu trực tiếp cho các mô hình học sâu dựa trên ONNX. Và do đó, điều này bao gồm các kết nối với PyTorch, Caffe, MXNet và tất nhiên là TensorFlow. Vì vậy, nếu bạn chưa từng học sâu với MATLAB trước đây, thì có bốn lý do chính khiến MATLAB có thể cải thiện trải nghiệm của bạn khi sử dụng học sâu

Đầu tiên, dễ sử dụng. Nó hạ thấp rào cản đó đối với việc tăng tốc. Thứ hai, có rất nhiều trực quan hóa và gỡ lỗi tích hợp-- và tôi sẽ cho bạn thấy điều đó trong phần thứ hai. Thứ ba, tăng cường và tối ưu hóa deep net với điều chỉnh siêu tham số. Và thứ tư, triển khai, bao gồm tạo mã CUDA mà không phải mã hóa lại. Vì vậy, học sâu có thể được sử dụng ở nhiều nơi khác nhau, nhưng một nơi mà cá nhân tôi đã thấy nó được sử dụng khá rộng rãi trong tài chính là với dữ liệu dựa trên văn bản

Vì vậy, nhìn chung, học sâu đã được sử dụng với phân tích văn bản với khá nhiều thành công vì tính chính xác của nó. Vì vậy, hãy xem xét một trường hợp mà chúng tôi muốn kết hợp tình cảm mới vào dự đoán giá tiền điện tử của mình. Tất nhiên, chúng ta có thể xây dựng một mô hình bao gồm một cột dự đoán mang lại cảm nhận chung về tiền điện tử

Nhưng để tạo một cột dự đoán, chúng tôi sẽ phải tạo một bộ phân loại, lấy văn bản ở dạng tự do và trích xuất cảm xúc của trang tin tức và-- xin lỗi, trả lại điểm cảm tính từ thông tin trang web mới. Với một mạng sâu được đào tạo mạnh mẽ, chúng tôi thậm chí có thể tính đến những thứ như hiểu ngữ cảnh của từ, chính tả và lỗi ngữ pháp trong cảm xúc, đây là một phần rất hấp dẫn khi sử dụng học sâu

Tuy nhiên, lưới sâu thường được coi như một hộp đen và khó sử dụng cho người mới bắt đầu. Đây là nơi MATLAB có thể giúp. Để nhập mô hình dựa trên ONNX, chẳng hạn như TensorFlow, chỉ cần một lệnh duy nhất trong MATLAB, importONNXNetwork. Khi chúng tôi có mô hình đó trong MATLAB, điều đầu tiên chúng tôi muốn làm là trực quan hóa tất cả các lớp của mạng sâu và điều đó có thể được thực hiện bằng ứng dụng thiết kế mạng sâu trong MATLAB mà tôi đã đề cập trước đây

Ở đây chúng ta thấy hình ảnh của một vài lớp được kết nối. Và ứng dụng cũng cung cấp cho chúng tôi một cách dễ dàng để chỉnh sửa mạng, chẳng hạn như thêm hoặc xóa các lớp. Cũng tự động tạo mã và xuất các sửa đổi của các lớp trở lại MATLAB hoặc thậm chí quay lại Python. Thứ hai, chúng tôi muốn phân tích cấu trúc của mạng sâu để đảm bảo mạng được kết nối chính xác và không có bất kỳ sự cố nào. Khả năng trực quan hóa và gỡ lỗi mạng này cũng mở rộng sang TensorFlow vì chúng ta có thể nhập các mô hình TensorFlow vào MATLAB

Do đó, chúng tôi không chỉ có thể bắt đầu nhanh hơn mà còn có thể hỗ trợ nhóm TensorFlow bằng cách chạy các báo cáo phân tích và đảm bảo tính toàn vẹn của cấu trúc mạng. Cuối cùng, vì biến động giá thay đổi rất nhanh đối với tin tức, tốc độ suy luận để tạo ra điểm số tình cảm là khá quan trọng. Và đây là nơi sử dụng tạo mã GPU của MATLAB có thể cải thiện đáng kể tốc độ suy luận mạng sâu mà không phải thực hiện bất kỳ loại mã hóa nào

Và nói về tạo mã tự động, chúng tôi có nhiều khả năng tạo mã trong lĩnh vực này để tạo cả CNN và LSTM để suy luận. Vì vậy, với một lệnh duy nhất, chẳng hạn như lệnh bạn thấy bên dưới đây, bạn có thể tạo mã CUDA có thể được thực thi bên ngoài MATLAB. Và làm như vậy [?

Và trên thực tế, nó thường nhanh hơn trung bình so với các công cụ như TensorFlow khi bạn thực hiện suy luận. Và bên cạnh việc hỗ trợ nhiều thư viện như thư viện nhân toán học Intel và TensorFlow RT, chúng tôi thậm chí còn hỗ trợ nhiều bộ xử lý khác nhau như ARM. Vì vậy, bây giờ bạn có một cách trực tiếp để sử dụng mô hình TensorFlow, tạo mã CUDA từ mô hình đó mà không cần phải tự mình trở thành một lập trình viên mã CUDA

Vì vậy, bên cạnh việc chia sẻ các mô hình, đôi khi cần chia sẻ dữ liệu giữa MATLAB và Python. Và điều này đặc biệt đúng trong giai đoạn nghiên cứu phát triển MATLAB, khi thực hiện một số xác thực ban đầu các kết quả từ nhiều môi trường sẽ rất hữu ích. Một cách để chia sẻ dữ liệu là sử dụng Apache Parquet. Và điều này cho phép chúng tôi chia sẻ khung dữ liệu dưới dạng bảng bên trong MATLAB và ngược lại. Đối với những người không quen thuộc lắm với Parquet, đây là loại tệp cho phép bạn lưu trữ dữ liệu vào đĩa

Và đặc biệt Sàn gỗ rất hiệu quả và nhanh chóng. Và nó làm cho nó trở nên tuyệt vời khi làm việc với dữ liệu lớn, cũng như bất kỳ dữ liệu dạng bảng nào giống như Excel. Dưới đây là ví dụ lưu khung dữ liệu dưới dạng tệp Parquet, sau đó tải tệp Parquet vào MATLAB dưới dạng bảng. Một lệnh duy nhất trong MATLAB mà bạn thấy ở đây cho phép bạn đọc và ghi vào tệp Parquet. Ngoài ra, Parquet có thể được đọc không đồng bộ, nghĩa là bạn có thể đọc song song với MATLAB, cải thiện hơn nữa hiệu suất

Vì vậy, hãy xem một ví dụ về tạo khung dữ liệu trong Python, tải dữ liệu đó vào MATLAB dưới dạng bảng để phân tích thêm và ngắt giữa bảng và khung dữ liệu bằng Parquet. được rồi. Vì vậy, bước đầu tiên ở đây là lấy dữ liệu vào tệp Parquet. Và bạn thấy ở đây, chúng tôi chỉ sử dụng cùng một thư viện dataLib mà chúng tôi đã sử dụng toàn bộ thời gian ở đây để lấy dữ liệu về giá, phân tích cú pháp JSON

Và bây giờ chúng ta đang tạo một khung dữ liệu gấu trúc, sau đó lấy khung dữ liệu này và chuyển đổi nó hoặc lưu nó vào tệp Parquet mà sau đó chúng ta sẽ tải vào MATLAB. Vì vậy, hãy chạy nó thực sự nhanh chóng ở đây. ĐƯỢC RỒI. Vì vậy, bạn thấy ở đây rằng chúng tôi đang lấy một số chuỗi thời gian đơn biến duy nhất có dữ liệu mức giá đóng và một số ngày ở đây, và chúng tôi muốn lấy chuỗi này và kéo chuỗi này vào MATLAB. được rồi

Vì vậy, hãy tạo một kịch bản trực tiếp mới. Đúng. Vì vậy, chúng tôi lưu dữ liệu ngay tại đây dưới dạng dữ liệu. sàn gỗ và chúng tôi muốn tải nội dung này vào tập lệnh trực tiếp của mình

Vậy để làm được điều đó chúng ta chỉ cần sử dụng lệnh parquetread và tên của file Parquet. Và đây là cùng một dữ liệu mà chúng tôi đang làm việc với Python, nhưng bây giờ chúng tôi đã tải khung dữ liệu tương ứng dưới dạng bảng bên trong MATLAB. Bạn thấy điều này được lưu trữ dưới dạng bảng ở đây

Vì vậy, điều đầu tiên chúng tôi muốn làm bây giờ khi chúng tôi đang ở trong MATLAB là nhanh chóng hình dung nó, điều này rất dễ thực hiện. Vì vậy, chúng ta hãy làm điều đó. Và hãy lập kế hoạch cho hai anh chàng này. ĐƯỢC RỒI. Và đây là biểu đồ của chúng tôi về dữ liệu trông như thế nào trong khoảng thời gian đó. Có vẻ như nó có ý nghĩa

Chúng tôi đã có ngày trên trục x và dữ liệu mức giá tương ứng trên trục y, nhưng chúng tôi thấy ở đây rằng dữ liệu ở đây khá cứng nhắc. Nếu chúng tôi đang cố gắng đưa ra một số dự đoán, có vẻ như nó hơi ồn ào. Vì vậy, câu hỏi đặt ra là, có một cửa sổ làm mịn cụ thể nào mà chúng ta có thể sử dụng có liên quan đến khả năng dự đoán không?

Vì vậy, khi chúng tôi thực hiện phân tích dữ liệu này, chúng tôi có thể thực hiện điều đó rất nhanh bên trong MATLAB bằng cách tận dụng không chỉ các tập lệnh soạn thảo trực tiếp mà còn cả các tác vụ soạn thảo trực tiếp nữa. Vì vậy, giống như các điều khiển, đây là những công cụ nâng cao cho phép bạn tạo mẫu nhanh. Vì vậy, trong trường hợp này ở đây, tôi có thể thực hiện nhiều kỹ thuật tiền xử lý như làm sạch dữ liệu, tìm các giá trị ngoại lai, loại bỏ các xu hướng hoặc trong trường hợp này là xác định hệ số làm mịn nào là phù hợp

Vì vậy, nếu tôi nhấp vào tác vụ làm mịn, tác vụ này sẽ tải ít nhiều giống như một ứng dụng nhẹ cho phép bạn thực hiện một tác vụ cụ thể trong tay mà không cần phải viết bất kỳ loại mã nào. Vì vậy, trong trường hợp này ở đây, tôi muốn làm việc với dữ liệu. Tôi muốn làm mịn giá trị đóng. Và tôi muốn sử dụng một cửa sổ chuyển động và cố gắng tìm ra cửa sổ chuyển động nào có ý nghĩa đối với chuỗi thời gian cụ thể này. được rồi

Vì vậy, khi nó thực hiện một cửa sổ chuyển động 16, có vẻ như điều này đã loại bỏ rất nhiều tiếng ồn. Điều này có vẻ khá tốt với tôi. Vì vậy, trên thực tế, nếu tôi định lấy cái này và thực hiện một số phân tích với nó trong tương lai, tôi có thể muốn bao gồm một cửa sổ trung bình động ở đâu đó trong phạm vi có thể là 10 và 20, bởi vì 16 trông khá đẹp

Vì vậy, điều thú vị về những tác vụ này là chúng tạo mã cho bạn ngay tại đây. Và trên thực tế, khi bạn hoàn thành nhiệm vụ, bạn có thể để nó như thế này nếu muốn, hoặc bạn có thể lấy cái này và xóa và chỉ đặt mã ở đây, và nó sẽ tự động đưa mã vào đây cho bạn. Cuối cùng, giả sử rằng chúng tôi muốn lấy dữ liệu đã thay đổi này ở đây và chuyển lại cho nhóm Python để họ điều tra thêm. Chà, điều đó cũng dễ làm

Vì đây là một bảng tương ứng trong MATLAB, tôi chỉ cần lấy bảng này và gán giá trị gần cho dữ liệu mịn mới mà chúng ta vừa tạo. Và điều đó dễ dàng được thực hiện chỉ bằng cách làm điều này

Và bây giờ đây là dữ liệu mượt mà của chúng ta, 8236, 8238, so với các giá trị ban đầu ngay tại đây. Vì vậy, chúng tôi có thể thấy chúng tôi đã cập nhật nó. Và bây giờ, hãy lưu lại tệp này dưới dạng tệp Parquet. Tuyệt quá. Bây giờ dữ liệu đã được lưu lại dưới dạng tệp Parquet

Hãy quay lại Python, tải nó trở lại, đảm bảo rằng dữ liệu chính xác. ĐƯỢC RỒI. Vì vậy, ở đây chúng tôi chỉ tải dữ liệu mới mà chúng tôi vừa lưu

Vì vậy, hãy chạy cái này. Và chúng tôi đã có nó. Các giá trị giống nhau tương ứng, 82. 36, 82. 38 và vân vân. Vì vậy, chúng tôi đã thu thập tất cả dữ liệu giống nhau mà chúng tôi đã thực hiện các sửa đổi đối với

Vì vậy, để tóm tắt mọi thứ, trong sản xuất và thậm chí trong môi trường nghiên cứu, nhiều hệ thống cần phải tích hợp và hoạt động tốt với nhau. Nói chung, điều này có thể khá khó khăn đối với các kiến ​​trúc sư giải pháp chịu trách nhiệm xây dựng cơ sở hạ tầng back-end mạnh mẽ. Và MATLAB đã làm cho cuộc sống của chúng ta dễ dàng hơn bằng cách tạo ra rất nhiều giao diện tích hợp sẵn cho nhiều hệ thống này. Từ các nguồn dữ liệu, chẳng hạn như Cassandra, NoSQL, MongoDB, Hive, v.v.

Đến các hệ thống kinh doanh thông minh, như Power BI, Kafka, Tableau. Và đến cả máy ảo, đám mây và thiết bị di động. Và bây giờ trong sáu năm qua, Python 2 cũng đã có chỗ đứng trong hệ sinh thái phân tích đó. Vì vậy, hy vọng hôm nay bạn đã học được một số kỹ thuật mới để kết nối MATLAB và Python với nhau

Nếu bạn vẫn quan tâm đến việc tìm hiểu thêm, chẳng hạn như thông tin bổ sung về tích hợp MATLAB và Python, xây dựng các mô hình học sâu hoặc học tăng cường, các liên kết ngay tại đây rất tuyệt vời và bao gồm sách điện tử có thể tải xuống miễn phí và các công cụ trực tuyến tương tác để giúp bạn bắt đầu.

Vì vậy, để bắt đầu ngay lập tức, bạn có thể tải xuống bản dùng thử MATLAB miễn phí trực tiếp từ trang web của chúng tôi. Hoặc nếu bạn muốn nói chuyện với chuyên gia kỹ thuật để thảo luận về các nhu cầu cụ thể của nhóm mình, chỉ cần liên hệ với người quản lý tài khoản của bạn hoặc gọi trực tiếp cho chúng tôi. Chúng tôi luôn sẵn lòng giúp đỡ. Vì vậy, với điều đó, chúng tôi đã đi đến cuối phiên của chúng tôi. Cảm ơn bạn đã dành thời gian hôm nay để xem cách bạn có thể tận dụng tốt nhất cả hai thế giới bằng cách kết hợp MATLAB và Python với nhau. Cảm ơn bạn