Lý thuyết thông tin Shannon— Khám phá các hạt thông tin

Mar 22 2022
Khi quả bóng lăn trên mặt bàn, nó sẽ rơi xuống. Tôi chưa bao giờ đặt câu hỏi tại sao nó lại như vậy bởi vì từ ngày chúng ta được sinh ra, chúng ta đã tương tác và quan sát các vật thể vật chất cũng như phản ứng của chúng trong vũ trụ có thể quan sát được.
Hình ảnh được cung cấp bởi qimono từ Pixabay.

Khi quả bóng lăn trên mặt bàn, nó sẽ rơi xuống. Tôi chưa bao giờ đặt câu hỏi tại sao nó lại như vậy bởi vì từ ngày chúng ta được sinh ra, chúng ta đã tương tác và quan sát các vật thể vật chất cũng như phản ứng của chúng trong vũ trụ có thể quan sát được. Nếu chúng ta thấy một sự kiện lặp đi lặp lại đủ, chúng ta bắt đầu chấp nhận nó là “cách thế giới hoạt động”.

Chúng ta không chỉ đã phần nào quen thuộc với vật lý của thế giới, mà việc khám phá ra nguyên tử vào đầu những năm 1800 còn cho chúng ta cái nhìn chi tiết hơn về nguyên tắc cơ bản tại sao nó hoạt động. Có bằng chứng cụ thể - có thể quan sát và định lượng được.

Nhưng những ý tưởng trừu tượng thì sao? Chúng tôi không thể xem thông tin cũng như không chạm vào nó. Chúng ta biết nó tồn tại, nhưng việc thiếu thể chất sẽ làm phức tạp sự hiểu biết của nó và khiến việc làm việc với thông tin trở nên kém trực quan hơn nhiều so với mức cần thiết. Nó đặt ra câu hỏi ... Có một số đơn vị không thể phân chia hoặc một số lý thuyết thống nhất lớn định hình thông tin như nguyên tử cho các đối tượng?

Có lẽ.

Nếu chúng ta lần theo nguồn gốc từ con số 0, những gì chúng ta sẽ tìm thấy là Lý thuyết Thông tin của Shannon.

  • Thông tin là gì?
  • Chúng ta có thể định lượng thông tin không?
  • Chúng tôi sử dụng Nội dung Thông tin của Shannon như thế nào?
  • Một đơn vị thông tin hữu ích như thế nào?
  • Ứng dụng thực tế của nội dung thông tin của Shannon

Hãy nghĩ về lần cuối cùng bạn đọc một bài báo hay trên Medium và bạn đã tự nói với chính mình, “Đây là thông tin vô cùng bổ ích,” khi bạn ngả người ra ghế và nghiền ngẫm trong sự hài lòng tuyệt đối.

Tại sao? Tại sao nó là thông tin?

Hầu hết mọi người sử dụng từ “cung cấp thông tin” khi có điều gì đó cần học. Nó cũng nên…

  • giới thiệu một quan điểm mới,
  • củng cố niềm tin hiện tại, hoặc
  • vô hiệu hóa những sự thật trước đó.

Thế giới chúng ta đang sống rất năng động và phức tạp một cách phi lý, không thể đạt được kiến ​​thức tuyệt đối trong mọi khía cạnh của cuộc sống. Mỗi ngày, chúng ta buộc phải điều hướng trong cuộc sống của mình với những thông tin không đầy đủ. Khi thông tin mới xuất hiện, chúng tôi điều chỉnh niềm tin của mình để phù hợp hơn với thực tế để chúng tôi có thể đưa ra quyết định tốt hơn.

Vì chúng tôi không chắc chắn 100% về hầu hết mọi thứ, quan điểm của chúng tôi hiếm khi là một nhị phân đơn giản có hoặc không. Thay vào đó, chúng được thể hiện tốt hơn trong một phổ liên tục giữa 0 và 1 cho thấy mức độ tin cậy của chúng tôi.

Niềm tin thường ở dạng cá cược, không phải dạng nhị phân. Các biểu tượng Sun, Rain, Delete và Checked được tạo bởi Freepik hqrloveq từ Flaticon, được tác giả cho phép chỉnh sửa.

Nếu ai đó hỏi về thời tiết mà không biết gì tốt hơn, chúng tôi sẽ đoán 50/50. Nhưng với một báo cáo dự báo thời tiết có chứa thông tin liên quan, chúng tôi sẽ chuyển thành kiến ​​của mình sang cái này hay cái khác.

Thông tin thay đổi niềm tin.

Thông tin là sự khác biệt giữa niềm tin hiện tại và sự thật. Biểu tượng Sun and Rain được tạo bởi Freepik từ Flaticon, được tác giả cho phép chỉnh sửa.

Mặc dù chúng tôi sử dụng một báo cáo dự báo thời tiết như một phép tương tự, nhưng tôi hy vọng mình sẽ không vẽ sai bức tranh về cách thông tin cần trở thành một báo cáo, các con số hoặc một số biểu đồ thanh. Nó không cần phải như vậy.

Thông tin là vô hình.

Đó là “thứ” trừu tượng này có thể biểu hiện dưới bất kỳ hình dạng hay hình thức nào - hình ảnh, âm thanh, mùi vị và thậm chí cả khứu giác. Điều quan trọng là khi tiêu thụ, nó thay đổi quan điểm của chúng ta.

Như thể ý tưởng về thông tin tự nó không đủ mờ, thật không may, niềm tin cũng có thể mang tính chủ quan. Có 7 tỷ người trên thế giới và mỗi người có kinh nghiệm, văn hóa và giá trị riêng. Khi chúng ta trải nghiệm thế giới quá khác biệt, không thể tránh khỏi việc tìm thấy những quan điểm và niềm tin phân cực. Những gì bạn cho là có nhiều thông tin, sẽ không dành cho người khác.

Hãy tưởng tượng đang đọc một cuốn sách mẫu giáo. Tôi nghi ngờ rằng chúng tôi sẽ cảm thấy mức độ hài lòng giống như một đứa trẻ 2 tuổi.

Thông tin là cá nhân.

Vấn đề là -

Thông tin là khái niệm về kiến ​​thức có ý nghĩa. Sự hiện diện của nó phụ thuộc vào những gì chúng ta đã biết về thế giới. Nếu nó đưa chúng ta đến gần hơn một bước với sự thật cơ bản, thì đó là thông tin.

Thông tin thay đổi niềm tin.

Thông tin là vô hình.

Thông tin là cá nhân.

Chúng ta có thể lấy một cái gì đó mờ như thế này và chính thức xác định nó không?

Chúng ta có thể định lượng thông tin không?

Câu trả lời là có, và có vẻ như thế này…

Công thức cho Nội dung Thông tin của Shannon.

Nhưng thay vì coi nó theo mệnh giá và chấp nhận rằng nó xác định thông tin, thì việc hiểu tại sao nó lại có ý nghĩa hơn.

Tôi đề xuất rằng chúng ta nên suy ra công thức từ cơ bản.

Trước đó, chúng ta đã tạo ra mối liên hệ giữa thông tin và niềm tin. Nếu thông tin tồn tại khi niềm tin bị thách thức, thì chúng ta biết rằng thông tin cần được định nghĩa như một chức năng của niềm tin.

Bên cạnh đó, điều quan trọng cần lưu ý là thông tin và niềm tin không tăng cùng nhau. Hoàn toàn ngược lại. Khi chúng ta quan sát những sự kiện mà chúng ta cho là không thể xảy ra, nó làm chúng ta ngạc nhiên và khiến chúng ta đặt câu hỏi về tính đúng đắn của niềm tin của mình. Do đó, chúng ta có nhiều lợi ích nhất khi chúng ta sai lầm nhiều nhất. Ngược lại.

Niềm tin của chúng ta càng phù hợp với sự thật thì chúng ta càng nhận được ít thông tin hơn. Biểu tượng Sun and Rain được tạo bởi Freepik từ Flaticon, được tác giả cho phép chỉnh sửa.

Nếu chúng ta phải viết ra mối quan hệ nghịch đảo này trong một cấu trúc toán học, nó sẽ giống như sau: -

Thông tin như một chức năng của niềm tin của chúng ta, p (x).
Lượng thông tin nghịch với niềm tin của chúng ta. Hình ảnh của tác giả.

Về mặt trực quan, đường cong phù hợp với mô tả của mối quan hệ nghịch đảo, đó là những gì chúng tôi đang tìm kiếm. Đó là một khởi đầu tuyệt vời, nhưng xác suất chỉ nên nằm trong khoảng từ 0 đến 1. Chúng ta cần khắc phục điều đó.

Ngoài ra, còn có hai khiếm khuyết nhỏ khác vi phạm logic mà chúng tôi đang cố gắng thiết lập. Vấn đề nằm ở hai điểm cực trị của p (x) = 0 và 1, nơi mà đường thẳng trở nên gần với trục hơn, nhưng không bao giờ thực sự chạm vào nó.

Điều đó không có ý nghĩa.

Khi xác suất của một sự kiện là 0, điều đó có nghĩa là nó sẽ không bao giờ xảy ra. Nếu điều đó sẽ không bao giờ xảy ra, thì chúng ta sẽ không thể định lượng thông tin cũng như không cần thiết phải làm như vậy.

Ở đầu bên kia của quang phổ, khi xác suất của một sự kiện là 1, chúng ta chỉ đơn giản là quan sát một sự kiện đã biết nên không có chính xác thông tin mới cần học.

  • Khi p (x) = 0, thông tin không được xác định.
  • Khi p (x) = 1, thông tin phải bằng không.
Thông tin như một hàm của nhật ký niềm tin của chúng ta, p (x).
Thêm nhật ký sẽ cải thiện đường cong. Hình ảnh của tác giả.

Bây giờ hai cực trị đã được cố định, đường cong là một cách hợp lý hơn nhiều để giải thích thông tin. Từ đây, chúng ta có thể sắp xếp lại công thức của mình bằng một chút phép thuật toán học và nó sẽ cung cấp cho chúng ta chính xác công thức mà Claude Shannon sử dụng để mô tả nội dung thông tin.

Bắt nguồn từ nội dung thông tin của Shannon.

Mặc dù ban đầu, công thức trông giống như vô nghĩa, nhưng nếu chúng ta nhìn vào phía sau bức màn, thì Nội dung thông tin Shannon chỉ là một cách biểu đạt ngớ ngẩn rằng lượng thông tin chính là mức độ thay đổi trong niềm tin.

Chúng tôi sử dụng Nội dung Thông tin của Shannon như thế nào?

Có một công thức cung cấp cho chúng ta một cách có thể định lượng để theo dõi những điều đã biết và chưa biết trong một hệ thống. Nó cho chúng ta một cách có hệ thống để trả lời 3 câu hỏi sau:

  • Có bao nhiêu là có để biết?
  • Chúng ta đã học được bao nhiêu?
  • Còn bao nhiêu nữa mà chúng ta không biết?
Rương kho báu bị xáo trộn nên chúng ta không biết cái nào có kho báu. Biểu tượng kho báu được tạo ra bởi Smashicons từ Flaticon, được chỉnh sửa với sự cho phép của tác giả.

Câu hỏi đầu tiên là - chúng ta cần bao nhiêu thông tin để mở khóa rương chính xác với độ chắc chắn 100%? Một chút? Nhiều? Thay vì đùa giỡn với một ý tưởng mơ hồ về sự chắc chắn, Nội dung Thông tin của Claude Shannon lập luận rằng chúng ta cần chính xác 3 đơn vị thông tin, hoặc 3 bit , như cách gọi của ông.

Xác suất tìm thấy kho báu là 1/8, do đó chúng ta cần 3 bit thông tin.

Điều mà Shannon đang tuyên bố… là nếu chúng ta có 3 bit thông tin, chúng ta sẽ biết tất cả những gì có trong toàn bộ hệ thống. Hãy mở từng cái rương một, quan sát cách thu thập thông tin trên đường đi và xác minh tính hợp lệ của tuyên bố này.

Khi chúng tôi mở khóa các rương, chúng tôi tìm hiểu thêm thông tin về hệ thống. Các biểu tượng Kho báu (Đóng, Làm đầy), Xóa và Kiểm tra được tạo bởi Smashicons và hqrloveq từ Flaticon, được tác giả cho phép chỉnh sửa.

Mở chiếc rương đầu tiên ra cho thấy nó trống rỗng. Có 7/8 cơ hội quan sát một sự kiện như vậy, vì vậy chúng tôi đã biết được 0,193 bit thông tin. Đối với mỗi chiếc rương trống mà chúng ta mở khóa, xác suất tìm thấy một chiếc rương trống khác sẽ ngày càng thấp hơn và kết quả là lượng thông tin mà chúng ta nhận được từ mỗi chiếc rương sẽ tăng lên đều đặn.

Khi chúng ta có thêm thông tin, sự không chắc chắn còn lại về hệ thống sẽ giảm đi. Ở nửa chặng đường, chúng ta đã thu được 1 bit thông tin, chỉ còn lại 2 bit thông tin để khám phá. Theo thuật ngữ của giáo dân, điều đó có nghĩa là chúng tôi chắc chắn hơn về vị trí của rương kho báu so với thời điểm chúng tôi bắt đầu. Điều này có vẻ phù hợp vì chỉ còn 4 rương.

Ở chiếc rương thứ 6, có một sự gia tăng thông tin đột ngột vì chúng ta tìm được kho báu (xác suất là 1/3). Ngoài thời điểm này, chúng tôi ngừng nhận bất kỳ thông tin nào vì chúng tôi đã biết chắc chắn rằng hai chiếc rương cuối cùng sẽ trống rỗng.

Có một quan sát thú vị được thực hiện ở đây.

Khi chúng tôi mở khóa đúng chiếc rương, chúng tôi đã học được 1,585 bit thông tin trong một lần, đưa thông tin tích lũy của chúng tôi lên 3 bit. Đây là lượng thông tin giống như tất cả thông tin có trong hệ thống.

Theo trực giác, điều này có ý nghĩa bởi vì nếu chúng ta biết rương kho báu duy nhất ở đâu, thì tất cả các lựa chọn khác sẽ bị vô hiệu hóa. Nhưng các con số cộng lại có phải do sự trùng hợp tuyệt đối không? Để thuyết phục bản thân, chúng ta hãy giấu kho báu trong chiếc rương thứ 5.

Quan sát.

Giữ kho báu trong rương thứ 5 thay vì thứ 6 vẫn cho chúng ta tổng thông tin như nhau. Các biểu tượng Kho báu (Đóng, Làm đầy), Xóa và Kiểm tra được tạo bởi Smashicons và hqrloveq từ Flaticon, được tác giả cho phép chỉnh sửa.

Bất kể chúng tôi đặt nó ở đâu, nó sẽ luôn khớp với tổng thông tin. Đây là bằng chứng toán học để hỗ trợ tuyên bố.

Nội dung thông tin sẽ luôn cộng vào tổng thông tin, bất kể chúng ta cất giữ kho báu ở đâu.

Hy vọng rằng điều này thuyết phục bạn rằng Nội dung Thông tin Shannon là một cách hợp lý để định lượng một cách khách quan thứ tự của sự không chắc chắn theo cách tiếp cận xác suất.

Nhưng có một vấn đề.

Một “đơn vị” thông tin là một số lượng ít người biết đến, có thể là rất nhiều hoặc có thể là rất ít. Nó tương đương với việc nói rằng tôi cần một “đơn vị” sữa, được cho là ít mô tả hơn một “hộp” hoặc một “lít” sữa.

Không có giải thích về đơn vị của nó, con số vẫn chỉ là một con số.

Một đơn vị thông tin hữu ích như thế nào?

Claude Shannon đề xuất rằng chúng ta đo lường 1 bit là lượng thông tin cần thiết để giảm một nửa sự không chắc chắn của chúng ta.

Có lẽ sẽ dễ hình dung điều đó hơn một chút nếu chúng ta xem lại điểm nửa chừng.

Mỗi bit thông tin làm giảm một nửa sự không chắc chắn. Các biểu tượng Kho báu (Đóng, Làm đầy) và Xóa được tạo bởi Smashicons và hqrloveq từ Flaticon, được tác giả chỉnh sửa với sự cho phép.

Lưu ý rằng thời điểm chúng tôi mở khóa rương thứ 4, chúng tôi tích lũy được chính xác 1 bit thông tin. Với một chút thông tin này, không gian xác suất của chúng ta giảm một nửa - từ 8 xuống còn 4 rương.

Với một chút nữa, nó sẽ làm giảm một nửa sự không chắc chắn của chúng ta, khiến chúng ta chỉ có thể có 2 cái rương. Như bạn đã có thể tưởng tượng, việc có 3 bit sẽ chỉ đơn giản là giảm nó xuống một lựa chọn xác định duy nhất. Đây cũng là bằng chứng cho thấy hệ thống của chúng tôi chỉ có tổng cộng 3 bit thông tin.

Một cách khác để nắm bắt ý tưởng là liên hệ một chút thông tin với một câu hỏi có hoặc không sẽ loại bỏ một nửa lựa chọn của chúng ta. 3 bit thông tin có nghĩa là chúng ta cần đặt 3 câu hỏi để hiểu mọi thứ về hệ thống. Đối với ví dụ của chúng tôi, chúng tôi có thể hỏi…

  • Câu hỏi 1: Nó nằm trong cái rương nào ở trên?
  • Câu hỏi 2: Nó ở bên phải?
  • Câu hỏi 3: Nó ở bên trái?
  • s Mỗi bit thông tin làm giảm một nửa độ không chắc chắn. Các biểu tượng Kho báu (Đóng, Làm đầy), Xóa và Kiểm tra được tạo bởi Smashicons và hqrloveq từ Flaticon, được tác giả cho phép chỉnh sửa.

Chúng tôi không chỉ cung cấp ý nghĩa cho từ “thông tin”, mà chúng tôi còn cung cấp cho nó một con số để giải thích tầm quan trọng của nó, và điều đó đã thay đổi hoàn toàn cách chúng ta hiểu hoặc làm việc với thông tin.

Ứng dụng thực tế của nội dung thông tin của Shannon

Nội dung Thông tin của Shannon vượt xa khỏi những trò chơi phỏng đoán tầm thường. Một trong những đóng góp quan trọng của nó là trong lĩnh vực truyền thông.

Để mọi giao tiếp diễn ra, chúng tôi luôn có nguồn, kênh và máy thu.

  • Một bài phát biểu yêu cầu một giọng nói (nguồn) truyền qua không khí (kênh) trước khi đến tai người khác (người nhận).
  • Một cuộc gọi điện thoại yêu cầu một điện thoại (nguồn) truyền tín hiệu qua đường dây điện thoại (kênh) vào một điện thoại khác (máy thu).
Một hệ thống thông tin liên lạc hoàn hảo hiệu quả. Điện thoại, bộ mã hóa và tháp truyền dẫn của Freepik, Flat Icons, Mehwish từ Flaticon, đã được tác giả cho phép chỉnh sửa.

Từ quan điểm lý thuyết, thiết lập này hoạt động. Nhưng trong thực tế, các kênh thường bị nhiễu. Hàng xóm của bạn đang chơi nhạc heavy metal của họ ở chế độ full blast? Tiếng ồn. Hiện tượng nhiễu từ trên dây đồng trong quá trình truyền sóng? Tiếng ồn. Luôn luôn có những tiếng ồn sẽ làm giảm thông điệp của chúng tôi. Thay vì nghe "ten", chúng ta có thể nghe "tin". Những gì chúng tôi gửi đi, không nhất thiết là những gì sẽ nhận được.

Để đạt được thông tin liên lạc đáng tin cậy qua một kênh không đáng tin cậy, chúng ta phải bổ sung các yếu tố dự phòng để át tiếng ồn. Ví dụ: chúng tôi có thể lập trình bộ mã hóa của mình để lặp lại thông điệp của chúng tôi 3 lần, “ten - ten - ten”. Bằng cách này, ngay cả khi tin nhắn bị lỗi ở đầu nhận, “ten - tin - ten”, nó vẫn có thể khôi phục lại tin nhắn ban đầu bằng cách suy ra “ten” từ phần lớn.

Một hệ thống giao tiếp thực tế trong đó tiếng ồn làm xáo trộn các bit nhị phân do đó làm sai lệch thông điệp. Điện thoại, bộ mã hóa và tháp truyền dẫn của Freepik, Flat Icons, Mehwish từ Flaticon, đã được tác giả cho phép chỉnh sửa.

Nhưng cũng giống như whack-a-nốt ruồi, chúng tôi khắc phục một vấn đề, một vấn đề khác xuất hiện. Việc thêm thông tin thừa để tạo lại thông điệp gốc ngắn hơn sẽ làm chậm tốc độ truyền của chúng tôi. Nếu chúng tôi phải lặp lại chính mình 3 lần, điều đó có nghĩa là chúng tôi đang truyền chậm hơn 3 lần.

Do đó, cân bằng sự cân bằng giữa độ chính xác và tốc độ truyền là cần thiết, nhưng vì độ chính xác được ưu tiên cho hầu hết các ứng dụng, câu hỏi trở thành - chúng ta cần phải hy sinh tốc độ bao nhiêu?

Với một chút lý thuyết xác suất, chúng ta có thể tính toán xác suất lỗi cho hệ thống của mình và vẽ biểu đồ của chúng dựa trên tốc độ truyền.

Đường cong đánh đổi. Khi chúng tôi thêm dự phòng để giảm tỷ lệ lỗi, tốc độ truyền có xu hướng giảm. Hình ảnh của tác giả.

Lặp lại điều này thông qua cùng một thuật toán mã hóa nhưng số lượng dự phòng khác nhau và chúng ta sẽ có được cho mình một đường cong cân bằng tốt đẹp. Nhưng thật đáng buồn, chúng tôi sẽ không thể làm điều này đối với các thuật toán mà chúng tôi chưa phát minh ra.

Nếu không có đường cong đánh đổi, sẽ rất khó để quyết định xem chúng ta có nên sử dụng một kênh khác hay không hoặc có thể chúng ta nên cố gắng hơn một chút để đưa ra một thuật toán mã hóa tốt hơn sẽ giúp chúng ta có được tỷ lệ lỗi mong muốn. Nếu không có mục tiêu được đánh dấu, người bắn cung nhất định bắn trượt.

Claude Shannon, với khuôn khổ định lượng thông tin của mình, đã có thể tính toán tốc độ truyền tối đa cho bất kỳ kênh nhất định nào có tỷ lệ lỗi thấp tùy ý. Nói cách khác, với tạp âm vốn có đi kèm với kênh, thì kênh có thể truyền thông điệp của chúng ta “tốt” đến mức nào, với điều kiện là chúng ta có thuật toán mã hóa hiệu quả nhất?

Ông gọi giới hạn trên là Dung lượng kênh (hay còn gọi là Giới hạn của Shannon) trong Định lý mã hóa kênh ồn ào của mình. Tôi hy vọng công thức rung chuông.

Trong kênh đối xứng nhị phân, “0” và “1” có tỷ lệ lỗi ap (e), chúng ta có thể sử dụng tỷ lệ này để tính toán chính xác nội dung thông tin, hoặc entropy. Hình ảnh của tác giả.

Công thức đọc trực quan - Nếu chúng ta lấy toàn bộ dung lượng của kênh và trừ dung lượng cần thiết để truyền thông tin của thông điệp ban đầu của chúng ta, có thể kết thúc là các bit đúng hoặc các bit không chính xác, thì những gì còn lại phải là dung lượng vượt quá của kênh. . Đây là tốc độ truyền tốt nhất mà kênh có khả năng.

Mặc dù Dung lượng kênh không giúp chúng tôi đưa ra thuật toán mã hóa tối ưu, nhưng nó đã cho thế giới thấy những gì có thể. Hồi tưởng lại quãng đường 4 phút , khi các giới hạn lý thuyết được biết đến, nó đã mở đường cho sự tiến bộ vượt bậc trong cách chúng ta giao tiếp.

Kết luận

Một ứng dụng này chỉ là phần nổi của tảng băng chìm. Lý thuyết Thông tin của Shannon đã giới thiệu nội dung thông tin mà một số người có thể coi là các hạt cơ bản của truyền thông. Trong khi một đối tượng vật lý có các nguyên tử, thông tin có các bit.

Nó cung cấp cho thế giới một cách để thực hiện bất kỳ hình thức giao tiếp nào - từ tiếng chim hót, hình vẽ đến mã morse - và so sánh chúng một cách phổ biến.

Công trình xuất sắc của Shannon kể từ đó đã tạo ra một cuộc cách mạng trong cách chúng ta làm việc với thông tin, đóng vai trò như một khái niệm quan trọng trong nén dữ liệu, mật mã và thậm chí là khoa học dữ liệu, giữa hàng núi những điều tuyệt vời khác.

Là nhà khoa học dữ liệu, chúng ta luôn có thói quen muốn có nhiều dữ liệu hơn hoặc nhiều “thông tin” hơn. Nhưng tôi cho rằng Claude Shannon vừa cho chúng ta thấy rằng mặc dù có thông tin là rất tốt, nhưng việc hiểu thông tin thậm chí còn có tác động lớn hơn.

© Copyright 2021 - 2023 | vngogo.com | All Rights Reserved