báo cáo phân tích và dự báo thời tiết hà nội

25 0 0
Tài liệu đã được kiểm tra trùng lặp
báo cáo phân tích và dự báo thời tiết hà nội

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Việc sử dụng kết hợp và liên ứng các mô giúp giảm thiểu sai số và chọn rađược kết quả chính xác khả quan nhất.Vì để đưa ra các kết quả khả quan nhất về dự báo thời tiết, chúng emđã chọn

Trang 1

BỘ KẾ HOẠCH VÀ ĐẦU TƯ HỌC VIỆN CHÍNH SÁCH VÀ PHÁT TRIỂN

Trang 2

-MỤC LỤC

MỞ ĐẦU 3

1 Lý do hình thành đề tài 3

2 Mục tiêu nghiên cứu đề tài 4

3 Đối tượng và phạm vi nghiên cứu 4

4 Phương pháp nghiên cứu 4

5 Kết cấu của đề tài 4

CHƯƠNG 1: TỔNG QUAN VỀ NGÔN NGỮ R 5

1.1 Giới thiệu về ngôn ngữ R 5

1.2 Lịch sử ra đời và sự phát triển ngôn ngữ R 6

1.3 Những ưu điểm và hạn chế của ngôn ngữ R 6

2.1.1 Giới thiệu mô hình 11

2.1.2 Quy trình dự báo bằng mô hình Arima: 11

2.2 Mô hình HOLT – WINTER 13

2.2.1 Giới thiệu mô hình 13

2.2.2 Quy trình dự báo theo Phương pháp Holt-Winter 14

2.3 Phương pháp san mũ Holt – Winter 14

2.3.1 Phương pháp san mũ Holt – Winter (Mô hình cộng) 14

2.3.2 Phương pháp san mũ Holt – Winter (Mô hình nhân) 15

2.3.3 Phương pháp san mũ Holt – Winter không mùa vụ 15

CHƯƠNG 3: ỨNG DỤNG NGÔN NGỮ R VÀO DỰ BÁO THỜI TIẾT HÀ NỘI 17

3.1 Mô tả dữ liệu 17

3.2 Các thư viện được sử dụng 17

3.3 Trực quan hóa dữ liệu 18

3.4 Phân tách chuỗi thời gian 19

3.5 Các mô hình 21

3.5.1 Phương pháp san mũ Holt-Winter mô hình cộng 21

3.5.2 Mô hình Arima 23

3.5.3 Độ chính xác của mô hình 26

3.6 Các kết luận và khuyến nghị đưa ra 27

TÀI LIỆU THAM KHẢO 29

Trang 3

MỞ ĐẦU

1 Lý do hình thành đề tài

Ngôn ngữ lập trình R là một trong những công cụ tiên tiến mới nhấttrong thống kê và phân tích dữ liệu Ngày nay, hàng triệu nhà phân tích, nhànghiên cứu và thương hiệu lớn nhưu Facebook, Google, Bing, Accdvisor, Wiprođang sử dụng R để giải quyết các vấn đề phức tạp trong kinh doanh Các ứngdụng của ngôn ngữ lập trình R không chỉ giới hạn trong một lĩnh vực, mà chúngta có thể thấy được việc sử dụng ngôn ngữ R trong ngân hàng, thương mại điệntử, tài chính và nhiều lĩnh vực khác.

Trên Trái Đất, các hiện tượng thời tiết thường gặp gồm có gió, mây,mưa, tuyết, sương giá và bão bụi Các sự kiện ít phổ biến khác gồm các thảmhọa tự nhiên như lốc, bão, bão tuyết Từ những hiện tượng thời tiết này, dự báothời tiết là một ngành ứng dụng của khoa học công nghệ để tiên đoán các trạngthái và vị trí của bầu khí quyển trong tương lai gần sắp tới Các công tác dự báothời tiết được thực hiện bằng cách thu thập số liệu về các trạng thái hiện tại củabầu khí quyển và áp dụng những hiểu biết khoa học về các quá trình của khíquyển để tiên đoán sự tiến triển của khí quyển Tuy nhiên, nỗ lực dự báo của.con người chúng ta chủ yếu dựa trên cơ sở về sự thay đổi của áp suất khí quyển,điều kiện hiện tại của thời tiết, và điều kiện bầu trời, các mô hình dự báo đượcsử dụng để dự báo trong tương lai Những dữ liệu đầu vào của chúng ta vẫn đòihỏi phải thực hiện việc lựa chọn mô hình dự báo tốt nhất có thể để làm căn cứcho việc dự báo, bao gồm kĩ năng nhận định các phần tham gia, teleconnection(liên hệ từ xa), kiến thức về hoạt động của mô hình và kiến thức về khuynhhướng của trái đất Do bản chất hỗn loạn của khí quyển nên cần phải có nhữngchiếc máy tính để giải các phương trình mô tả bầu khí quyển Những sai sốtrong việc đo đạc các số liệu đầu vào và sự hiểu biết chưa hoàn thiện về các hoạtđộng của khí quyển đã làm cho công tác dự báo trở lên ít chính xác hơn trênnhiều địa điểm trong cùng một khoảng thời gian và khi thời gian dự báo tănglên Việc sử dụng kết hợp và liên ứng các mô giúp giảm thiểu sai số và chọn rađược kết quả chính xác khả quan nhất.

Vì để đưa ra các kết quả khả quan nhất về dự báo thời tiết, chúng emđã chọn đề tài nghiên cứu “ Ứng dụng ngôn ngữ R vào dự báo thời tiết Hà Nội”để đưa ra các cảnh báo thời tiết trong một khoảng thời gian nhất định

3

Trang 4

2 Mục tiêu nghiên cứu đề tài

- Mục tiêu của đề tài là nghiên cứu, dự báo thời tiết Hà Nội Từ đó, cungcấp các thông tin nhằm bảo vệ cuộc sống con người Việt Nam cũng như tài sảnvà các hoạt động ngoài trời như: gặt lúa, trồng hoa màu, đường giao thông và dựbáo về nhiệt độ và lượng mưa trong tất cả các hoạt động sản xuất, kinh doanh.3 Đối tượng và phạm vi nghiên cứu

- Đối tượng: Dự báo thời tiết Hà Nội- Phạm vi nghiên cứu: Nhiệt độ- Thời gian: 01/01/2021 – 31/08/2023 4 Phương pháp nghiên cứu

Để phục vụ cho đề tài nghiên cứu “ Ứng dụng ngôn ngữ R vào dự báo thờitiết Hà Nội” cần một số phương pháp sau:

− Quan sát thực tế, tập hợp số liệu kết hợp phương pháp đánh giá − Phương pháp nghiên cứu thống kê

− Phương pháp so sánh − Phương pháp tổng hợp 5 Kết cấu của đề tài

Ngoài phần mở đầu và kết luận, danh mục các tài liệu tham khảo thì đề tàigồm những phần sau:

Chương 1: Tổng quan về ngôn ngữ RChương 2: Cơ sở lý thuyết về ngôn ngữ R

Chương 3: Ứng dụng ngôn ngữ R vào dự báo thời tiết Hà Nội giai đoạn

Trang 5

CHƯƠNG 1: TỔNG QUAN VỀ NGÔN NGỮ R1.1 Giới thiệu về ngôn ngữ R

R là một ngôn ngữ lập trình (programming language) được thiết kế chomục đích phân tích dữ liệu Khác với các phần mềm thương mại được liệt kê ởtrên, R là một chương trình có mã nguồn mở (open source) do đó, R hoàn toànmiễn phí và được phát triển bởi đội ngũ các nhà phân tích dữ liệu trên toàn thếgiới Với mục đích thiết kế giành riêng cho phân tích dữ liệu nên R có hiệu năngmạnh mẽ trong việc tổ chức, khái phá, phân tích và trực quan dữ liệu Tác giảcủa ngôn ngữ R là Ross Ihaka và Robert Gentleman tại Đại học Auckland (NewZealand) Với nhu cầu muốn có một chương trình phân tích dữ liệu hiệu quả vàchính xác hơn các phần mềm thương mại, dựa trên ngôn ngữ S và chương trìnhS-PLUS vốn đã khả phổ biến vào thời điểm ấy hai nhà khoa học của Đại họcAuckland đã tạo nên R Tuy nhiên, người nhìn ra tiềm năng của ngôn ngữ nàyvà muốn chúng được chia sẻ công khai cho toàn thế giới lại chính là MartinMächler Ông đã thuyết phục Ross Ihaka và Robert Gentleman là miễn phí vàchia sẻ mã nguồn của ngôn ngữ R để cho cộng đồng thống kê toàn thế giới cùngphát triển nó từ năm 1995

Hình 1.1: Giao diện của RstudioNguồn: RPubs - Introduction about R and RStudio

5

Trang 6

Ngoài vị thế của một chương trình miễn phí, R sở hữu một số tính năngquan trọng có thể thay thế các phần mềm thương mại khác trong lĩnh vực phântích dữ liệu.

1.2 Lịch sử ra đời và sự phát triển ngôn ngữ R

Lịch sử của ngôn ngữ lập trình và môi trường tính toán R xuất phát từ cuốinhững năm 1980 và phát triển mạnh mẽ qua các giai đoạn sau đây:

* Xuất phát và Phát triển sơ khai (1980s – Đầu 1990s): R xuất phát từ S,

một ngôn ngữ lập trình và môi trường tính toán được phát triển tại BellLaboratories vào những năm 1970 Cuối những năm 1980, Ross Ihaka và RobertGentleman, hai giáo sư tại Đại học Auckland ở New Zealand, bắt đầu phát triểnR dựa trên ngôn ngữ S Phiên bản đầu tiên của R đã xuất hiện vào năm 1993 Rđược phát triển dưới giấy phép mã nguồn mở, cho phép người dùng tự do sửdụng, chỉnh sửa và phân phối nó.

* Sự phát triển và Sự phổ biến (1990s – 2000s): R nhanh chóng trở nên

phổ biến trong cộng đồng thống kê và phân tích dữ liệu Cộng đồng người dùngvà phát triển ngày càng lớn mạnh, và nhiều gói mở rộng được phát triển để mởrộng khả năng của R Trong giai đoạn này, R đã trở thành một trong những côngcụ chính cho thống kê và phân tích dữ liệu trong nhiều lĩnh vực.

* Thương mại hóa và Sự ra đời của RStudio (2010s): Do sự phát triểnmạnh mẽ của R, nhiều công ty và tổ chức đã bắt đầu sử dụng R cho các ứngdụng thương mại Để hỗ trợ người dùng R, RStudio Inc đã thành lập và pháttriển RStudio, một môi trường tính toán tích hợp cho R RStudio đã đóng gópđáng kể vào việc tạo điều kiện thuận lợi cho việc phát triển và sử dụng R.

* Sự phát triển liên tục (Hiện tại): R vẫn tiếp tục phát triển liên tục với sự

đóng góp của cộng đồng người dùng và nhà phát triển Các phiên bản mới liêntục ra mắt với cải tiến và tính năng mới R đã trở thành một phần quan trọngtrong lĩnh vực Data Science và khoa học dữ liệu, và nó được sử dụng rộng rãitrong nghiên cứu, công nghiệp và học tập.

1.3 Những ưu điểm và hạn chế của ngôn ngữ R

1.3.1 Ưu điểm

- Đa số các doanh nghiệp hiện nay đều cần dựa vào phân tích dữ liệu đểphát triển kinh doanh Trong khi đó, R là ngôn ngữ lập trình có tính ứng dụngcao với phân tích dữ liệu Nó được ứng dụng vào thống kê, sinh trắc học và cả di

Trang 7

truyền học Vì thế, nhân viên có khả năng dùng ngôn ngữ R để tối ưu chi phí sẽđược chú trọng hơn ở doanh nghiệp

Dễ dàng thu thập và phân tích dữ liệu

Với R, bạn dễ dàng thực hiện quá trình thu thập dữ liệu và phân tích chúng.Các ngôn ngữ khác đều được hỗ trợ tác vụ này nhưng R giúp tối ưu và nhanhgọn hơn khá nhiều.

Về phân tích dữ liệu, R có các tính năng:

- Chạy code không cần trình biên dịch: R là Interpreted Language (ngônngữ thông dịch) Nó không cần đến trình biên dịch (compiler) vẫn có thểchạy code Bên cạnh đó, R giúp thông dịch mã lệnh và hỗ trợ cho việc lậptrình diễn ra thuận lợi hơn.

- Thực hiện phép tính trên vectors: R còn là vector-language nên không cầnđến vòng lặp vẫn có thể sử dụng bất kỳ hàm số nào.

- Tiết kiệm chi phí tối đa cho doanh nghiệp.

Ngôn ngữ R có mã nguồn mở nên giúp doanh nghiệp tiết kiệm nhiều chiphí Bên cạnh đó, ngôn ngữ này còn vô cùng phù hợp để mô phỏng thông quabảng biểu.

Ngoài ra, với hơn 15.000 package trong tất cả các lĩnh vực nghiên cứu khácnhau, khó có một công cụ nào phù hợp với kinh doanh được như ngôn ngữ R.

Hình 1.2: Một số ưu điểm của ngôn ngữ R

Nguồn: https://www.bkns.vn/ngon-ngu-r-la-gi.html7

Trang 8

 Một số ưu điểm khác của ngôn ngữ R

- Đa số ý tưởng mới đều được ứng dụng với R trước tiên.- Cho phép lập trình viên sử dụng miễn phí

- Dễ tìm hiểu cách vận hành của R thông qua phân tích source code.Developers được phép thêm tính năng, sửa lỗi và tích hợp với các ngônngữ khác (C, C++) Hỗ trợ tương tác với nhiều nguồn dữ liệu và gói thốngkê như SPSS, SAS.

- Có thể chạy trên nhiều hệ điều hành phổ biến - Cộng đồng lớn mạnh với cơ sở dữ liệu phong phú.

1.4 Một số thư viện thông dụng trong R

* Thư viện ggplot2: là một package hỗ trợ visualization (trực quan hóa) rấtmạnh trong R Thư viện này cung cấp cung cấp các công cụ mạnh mẽ để tạo ra.đồ thị và biểu đồ chất lượng cao Nó cho phép bạn tạo ra các biểu đồ phân tán,biểu đồ đường, biểu đồ cột và nhiều loại biểu đồ khác để trực quan hóa dữ liệu.Ngoài ra ggplot2 còn cho phép người dùng tùy chỉnh màu sắc, kích cỡ, theme,title, … để đồ thị được đẹp hơn.

Trang 9

Hình 1.3: Thư viện ggplot2Nguồn: RPubs - Introduction about R and RStudio

* Thư viện dplyr: Thư viện này cung cấp các công cụ linh hoạt để xử lý, truyvấn và biến đổi dữ liệu Nó cho phép bạn thực hiện các hoạt động như lọc, sắpxếp, tóm tắt và nối các bảng dữ liệu.

* Thư viện tidyr: Thư viện này giúp bạn làm việc với dữ liệu không đồng nhấtvà chuyển đổi giữa các công cụ để làm phẳng dữ liệu ( hoặc “pivot” ) và chuyểnđổi giữa dạng rộng và dạng dài.

* Thư viện Psych và thư viện Hmic: Thư viện khá hữu ích trong việc tính toánvà summary các chỉ số thống kê Khi sử dụng hai thư viện nà, chúng ta có thểkhái quát tất cả các đặc trưng của bộ dữ liệu Dữ liệu được tóm tắt theo các kiểudạng biến, biến liên tục và biến ngẫu nhiên

Hình 1.4: Thư viện PsychNguồn: RPubs - Introduction about R and RStudio

9

Trang 10

* Thư viện lubridate: Thư viện này giúp bạn làm việc với dữ liệu thời gian vàngày tháng Nó cung cấp các công cụ để phân tích, trích xuất và biến đổi dữ liệuthời gian một cách dễ dàng.

* Thư viện stringr: Thư viện này cung cấp các công cụ mạnh mẽ để xử lý vàbiến đổi chuỗi ký tự Nó cho phép bạn thực hiện các hoạt động như tìm kiếm,thay thế, tách chuỗi và rất nhiều công việc khác liên quan đến chuỗi ký tự.* Thư viện caret: Thư viện này cung cấp các công cụ để xây dựng và đánh giámô hình dự đoán Nó cung cấp các thuật toán học máy phổ biến và công cụ đểchọn mô hình tốt nhất và tinh chỉnh siêu tham số.

1.5 Một số ứng dụng thực tế của R

- Data Science: Trong thời đại IoT, các thiết bị tạo ra hàng terabyte dữ liệucó thể sử dụng để hỗ trợ ra quyết định, khoa học dữ liệu không có cách nào kháclà phải tiến lên Ngôn ngữ R cho các nhà khoa học dữ liệu một công cụ mạnh mẽđể thu thập dữ liệu thời gian thực, đồng thời thực hiện phân tích thống kê và dựbáo, tạo ra các kết quả trực quan dễ hiểu.

- Tính toán thống kê: R là ngôn ngữ phổ biến nhất trong cộng đồng các nhàthống kê, với một kho package khổng lồ chứa gần 10000 package đáp ứng mọiphép tính thống kê bạn có thể nghĩ ra Cú pháp đặc biệt của R cho phép các nhàthống kê, kể cả những người không có nền tảng khoa học máy tính, cũng có thểnhanh chóng import, làm sạch và phân tích dữ liệu từ nhiều nguồn khác nhau, vẽbiểu đồ từ bất cứ dataset nào.

- Học máy (Machine Learning): R cũng có nhiều package thực hiện các thaotác machine learning như hồi quy tuyến tính, phi tuyến tính, cây quyết định, … Rcòn được sử dụng để cài đặt các thuật toán trong lĩnh vực tài chính, nghiên cứu ditruyền, marketing hay chăm sóc sức khỏe.

Trang 11

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT2.1 Mô hình ARIMA

2.1.1 Giới thiệu mô hình

Mô hình Arima là một loại mô hình được sử dụng phổ biến trong kinh tếlượng Có thể hiểu, Arima là mô hình được sử dụng để dự đoán và khai phá cácdữ liệu trong ngành tài chính và chứng khoán Đây là một phương pháp nghiêncứu độc lập thông qua việc dự đoán theo các chuỗi thời gian Sau đó, các nhànghiên cứu sẽ sử dụng các thuật toán dự báo độ trễ để đưa ra mô hình phù hợp.

Mô hình Arima được nghiên cứu và phát hiện bởi hai nhà nghiên cứu làGeorge Box và Gwilym Jenkins Vì thế, loại mô hình này còn được biết đến vớitên gọi là phương pháp Box – Jenkins.

Dựa trên giả thuyết chuỗi dừng và phương sai sai số không đổi Mô hình sửdụng đầu vào chính là những tín hiệu quá khứ của chuỗi được dự báo để dự báonó Các tín hiệu đó bao gồm: chuỗi tự hồi qui AR (auto regression) và chuỗitrung bình trượt MA (moving average) Hầu hết các chuỗi thời gian sẽ có xuhướng tăng hoặc giảm theo thời gian, do đó yếu tố chuỗi dừng thường không đạtđược Trong trường hợp chuỗi không dừng thì ta sẽ cần biến đổi sang chuỗidừng bằng sai phân Khi đó tham số đặc trưng của mô hình sẽ có thêm thànhphần bậc của sai phân d và mô hình được đặc tả bởi 3 tham số ARIMA(p, d, q).

Mô hình Arima được chia thành 2 loại, đó là mô hình ARMA (p,q) và môhình Arima (p,d,q) Trong đó, mô hình ARMA (p,q) là mô hình được tạo thànhbởi 2 hàm hỗn hợp AR và MA Hàm số tuyến tính của chúng sẽ bao gồm nhữngquan sát dừng quá khứ cũng như những sai số được dự báo ở quá khứ và hiệntại.

Mô hình ARIMA (p,d,q) chỉ mô tả chuỗi dừng hoặc những chuỗi đã saiphân hóa Do vậy, mô hình ARIMA(p,d,q) sẽ thể hiện những chuỗi dữ liệukhông dừng có sai phân là d

2.1.2 Quy trình dự báo bằng mô hình Arima:

1) Xác nhận mô hình thử nghiệm

Trước tiên, chúng ta cần nhận dạng mô hình thử nghiệm Trong đó: d là bậctích hợp và p,q sẽ được xác định bằng một hàm số chuyên dụng, gọi làCorrelogram.

11

Trang 12

Mô hình Arima có thể trình bày theo các dạng khác nhau Phương pháp xácđịnh mô hình thường được các nhà nghiên cứu thực hiện qua nghiên cứu chiềuhướng biến đổi của hàm tương quan toàn phần hay một phần.

2) Ước lượng tham số

Mô hình Arima có 2 dạng là ARMA(p,q) và Arima (p,d,q) Với dạngARMA(p,q) sẽ có d = 0, vì thế ta có thể biến đổi về dạng Arima (p,0,q).

Trong quá trình ước lượng tham số, ta cần lưu ý đến cách xác định p qtrong mô hình Arima Để xác định hai số liệu này, người ta sẽ sử dụng đồ thịCorrelogram.

Cụ thể, p sẽ là bậc của đồ thị AR Xét từ độ trễ đầu tiên, thanh nào nằmngoài đường giới hạn và sau độ giảm một cách đáng kể sau một độ trễ thì hệ sốtự tương quan riêng phần đó là p Tương tự, q sẽ là bậc của MA

Để ước lượng tham số, ta cần ước lượng khởi đầu cho các tham số a0, a1,…, ap, b1, …, bq của mô hình dự định ban đầu Sau đó dựa trên những tham sốđã ước lượng, xây dựng những ước lượng sau cùng thông quá một quá trình lặp.

3) Kiểm định bằng chuẩn đoán

Sau khi các tham số của mô hình tổng quát đã được xây dựng, người ta sẽkiểm tra mức độ chính xác và sự phù hợp của mô hình với dữ liệu đã lập Hãyxem xét phần sai số có phải ngẫu nhiên thuần túy không? Nếu có thì mô hình đóthỏa mãn, nếu không thì ta sẽ phải thực hiện lại các bước trên

4) Dự báo

Ở bước cuối cùng này, khi mô hình phù hợp với dữ liệu đã tìm được, ta sẽthực hiện dự báo tại thời điểm tiếp theo.

Ngày đăng: 22/05/2024, 19:01

Tài liệu cùng người dùng

Tài liệu liên quan