Thứ Hai, 30 tháng 12, 2019

Hiệu ứng nhà kính diễn ra khi khí quyển chứa khí đã hấp thụ tia cực quang. Hơi nóng từ mặt trời xuống Trái Đất đã bị giữ lại ở tầng đối lưu, tạo ra hiệu ứng nhà kính ở bề mặt các hành tinh hoặc các Vệ tinh.[1][2] Cơ cấu hoạt động này không khác nhiều so với một nhà kính (dùng để cho cây trồng) thật, điều khác biệt là nhà kính (cây trồng) có các cơ cấu cách biệt hơi nóng bên trong để giữ ấm không bị mất qua quá trình đối lưu.

Khí nhà kính là những khí có khả năng hấp thụ các bức xạ sóng dài (hồng ngoại) được phản xạ từ bề mặt Trái Đất khi được chiếu sáng bằng ánh sáng mặt trời, sau đó phân tán nhiệt lại cho Trái Đất, gây nên hiệu ứng nhà kính.[1] Các khí nhà kính chủ yếu bao gồm: hơi nướcCO2CH4N2OO3, các khí CFC. Trong hệ mặt trời, bầu khí quyển của Sao KimSao Hỏa và Titan cũng chứa các khí gây hiệu ứng nhà kính. Khí nhà kính ảnh hưởng mạnh mẽ đến nhiệt độ của Trái Đất, nếu không có chúng nhiệt độ bề mặt Trái Đất trung bình sẽ lạnh hơn hiện tại khoảng 33 °C (59 °F).

Tỷ lệ phần trăm các hoạt động của loài người đối với sự làm tăng nhiệt độ Trái Đất:
  • Sử dụng năng lượng:50%
  • Công nghiệp: 24%
  • Nông nghiệp:13%
  • Phá rừng: 14%

Thứ Năm, 19 tháng 12, 2019

How AI can help stop climate changes


Existing solutions
  • Microsoft
    • Based on the assumption that forests are important to human life. If we add more trees, we can improve the carbon dioxide emission. Microsoft uses AI and satellite imaging to predict the sizes, species, and health of forest trees. By doing this, we can save countless hours of menial work. Hence, we can faster help trees grow bigger, stronger, and healthier.
  • Google for energy saving
    • Google deveploed an AI that would teach itself how to use a minimum amount of energy necessary to cool Google's data centers. 
  • IBM
    • One project named Green Horizon from IBM predict weather and pollution, thus helping cities become more efficient. For instance, in China from 2012 to 2017. they help Beijing decrease their average smog level by 35%.
  • Cornell University uses GANs
    • They use GAN to generate images that depict geographical locations before and after extreme weather events. This visualization could help scientists predict the impacts of certain climate changes, helping people to be well prepared for disasters.
  • AIRLITIX
    • This software is originally developed to automate greenhouse management processes, it can also help manage the health of forests. It can collect temperature, humidity, and CO2 data, analyze soil and crop health via captured images.
    • As a survey, people need to plant over 1.2 trillion trees to combat with climate change. This software is integrated into drones then can help plant trees, release plant nutrient, or even detect illegal logging.
Future Outlook For AI And Climate
As I see it, the purpose of AI is to assist mankind in solving problems. Climate change has proven to be a complex problem that humans are becoming great at studying, but I have yet to see a very positive future-outlook from environmentalists in the news.

If not to help humans influence climate change directly, couldn’t we use AI to portray doomsday scenarios that scare the world into coming together? Could we use AI to portray positive potential outlooks that would be possible if people were to do more in their daily lives to help triage climate issues? 

Even with the latest Amazon fires, I didn’t see any tweets about the idea of using drones to combat the spread of flames. It’s clear to me that even with all of the impressive AI software and tech available to humans today, environmental use cases are still not widespread knowledge.

Đi và cảm nhận về Australia












Thứ Hai, 18 tháng 11, 2019

Đài Loan và Trung Quốc?

Kì này học môn Explainable AI với 1 ông người Trung Quốc. Học đến gần hết kì rồi hôm nay gặp ở thang máy hỏi nó thế tết này mày định về quê ko?

Mình hỏi: Do you plan to come back to China this Lunar New Year.

Mặt cu cậu sững ra, nó bảo, sao t lại phải quay về China. Mình hỏi, ơ thế mày k phải người China à? Nó bảo không, tao ghét Chinese!!! Tao là người Taiwan.

Wow, nay mới biết, nó còn nói thêm, hầu hết Taiwanese đều ghét Chinese, mình bảo thế HongKong thì sao, nó bảo cũng vậy, đều ghét Chinese! Người TQ đại lục đáng ghét vậy sao? Cả anh em trong nhà cũng ghét họ.


Sau đó 2 đứa cũng nói chuyện linh tinh, mình thích trà sữa nên hai đứa nói về trà sữa, mà thằng này dân Taiwan mà, đề cập đến tà tưa là nó tuôn ra cả tràng dài nào là phải uống ở đâu, trà sữa Korea như thế nào so với Taiwan v.v...

Mình cũng có kể năm ngoái mình thăm Taipei, Taiwan, nó bảo nhà nó ở gần chỗ mình đã đến (quảng trường Tưởng Giới Thạch).

Sau cùng trước khi mỗi đứa 1 đường nó có bảo.

Don't ask a Taiwanese when you come back to China!

Mình có xin lỗi và nói là không biết tưởng nó là người China, nó bảo ko vấn đề gì :) :) :)

Chủ Nhật, 17 tháng 11, 2019

Xin visa đi Australia

Sau mấy ngày vật lộn, cuối cùng cũng điền xong 19 trang xin visa. Nhìn qua cứ tưởng thủ tục lằng nhằng vì nhiều trang quá, nhưng thực tế hệ thống xin visa của Úc quá xịn.

1. Hoàn toàn online, không cần phải in gì ra cả, không cần hard-copy :) quá tuyệt vời và hay nhất là đỡ công đi lại, từ chỗ mình lên Seoul đi lại cả nửa ngày.

2. Không hề có tem dấu vào trong passport cả, visa được liên kết với passport thông quá kĩ thuật số, đi China, Taiwan, Nhật, mình đều phải mang visa của mình lên xuống Seoul 2 lần (1 lần xin và 1 lần nhận kết quả).

Tuy nhiên phí xin Visa hơi MẶN.

Với lần đi Taiwan, phí xin visa là cỡ $70, đi Japan thì rẻ hơn chỉ còn 30$ nhưng lần này đi, phí lên tới tận ~ $120.

Thứ Hai, 4 tháng 11, 2019

Đi và cảm nhận về Nhật Bản

Mình có đi hai nơi chính.

1. Ga Shinjuku, Kabukicho (Tokyo) (phố đèn đỏ lớn nhất Tokyo và văn hóa người lớn ở đây được phổ biến rất công khai).

2. Ga Hiyoshi, Keio Univ. (Yokohama).

Ở Tokyo thì thấy sợ con người Nhật quá vì họ dị dị sao ấy, và cảm nhận nơi đây rất vội vã và thiếu tình người, có thể người Nhật khu này không phải người mà là robot như bạn mình nói.

Ở ga Hiyoshi thì yên ả hơn, dù sao đây cũng không phải thủ đô, mọi thứ yên ả, nhưng vật giá vẫn khá đắt (gần gấp rưỡi so với Korea)

Ảnh dưới đây có thể coi như hình ảnh đại diện của 2 khu mình ghé, Keio Univ và Kubikicho.

Kabukicho


Keio Univ



Con người hàn quốc


  1. Anh sửa xe. Anh này siêu tốt lúc nào cũng niềm nở và thân thiện. Mình vốn không biết dùng bơm bên này, đã thử bơm 1 lần và bay luôn cái van phải thay luôn lốp mới. Sau đó cũng lười ko bh tự bơm mà toàn ra chỉ chỉ nhờ a này bơm hộ.
  2. Ông lão cắt tóc. Ông này lúc nào cũng có bài pê tư nam xin chao ha nô i. Bao lần tóc đẹp đã bị hủy hoại dưới tay ông lão do ông chỉ hỏi short short medium? Và bắt đầu xiến tông đơ. Tay nghề thì dở tệ tóc cắt xong vẫn lởm cha lởm chởm. Và 1 cái nữa kbh cạo lônh tóc. Buồn ơi là buồn.
  3. Ông già bán trái cây mannyeondong: ông này bán hàng mặt lúc nào cũng niềm nở, nói loạn xạ, chắc nghĩ mình là ng hàb nên quảng cáo. Mình chỉ biết nê nê cho qua. Được cái trái cây ông lão bán khá rẻ. Có hôm mua 5k được 9 quả táo tươi rói. Để tủ ăn ngon ơi là ngon. Mình hay gọi ông là ông già và biển cả.
  4. Bông xu. Thiên thần trong mắt mình. Cậu này hơn mình 1 tuổi, chăm chỉ hiền lành tốt bụng. Chưa bao giờ mình thấy nó làm điều gì để m ko có thiện cảm cả. Nói chuyện với nó cực kì thoải mái và yên tâm. Cứ đều đều và thật thà. Chưa bao giờ trêu mình cái gì cả. Khi nào mình cần giúp giấy tờ hay tiếng hàn k hiểu là mình hỏi, luôn trả lời nhiệt tình và kbh tỏ ra khó chịu hay bận. 1 điều hay là dù sn 92 mà nó chư có nyeu bao giờ.
  5. Sung du. Giống bông xu tốt bụng nhiệt tình và hiền lành. Nó và bông xu là 2 người bạn hàn tuyệt vời nhất. Cậu này có người yêu rồi và bằng tuổi mình. 
  6. Giáo sư. Trước khi sang hàn mình đã đọc trên mạng và nghe lời đồn về độ evil của các giáo sư hàn. Nhưng có lẽ giáo sư mình là ngoại lệ, có khi tốt hơn ng việt nhiều. Giáo sư tâm lí và thoải mái (tính ra thu nhập từ lab của mình tầm 1tr2 won 1 tháng net income, là khá cao so với lương thạc sĩ). Ko bh ép buộc điều gì, cho lương thoải mái, nghỉ phép thoải mái. Mới 1 năm sang mình về vn chơi gần 1 tháng. Tuy giáo sư ko giudp nhiều trong nghiên cứu, nhưng mình tự lực được nên đó ko phải vấn đề gì quá lớn. Qua lời kể bạn bè về giáo sư họ, tự tin nói giáo là the best. Ko chỉ là giáo sư mà đôi khi là người bạn, người cha.

Thứ Năm, 17 tháng 10, 2019

[Review sách] - Thất Lạc Cõi Người [Nhân Gian Thất Cách] - Dazai Osamu

Có lẽ mình chưa nên đọc dòng văn này vội.

Mình chưa đủ tuổi, giống như chưa đủ tuổi uống rượu rắn ngâm hay rượu sâm gì đó, nó dành cho những người trung niên thì thích hợp hơn.

Với dòng văn này, mình cảm được, nhưng mình bị nó cuốn đi nhiều quá, sự u ám, thê lương kéo mình vào vòng xoáy suy nghĩ, trầm tư, nên nhưng vui vẻ thường ngày thường dễ thế mà phai nhạt mất.

Cũng như một số truyện của Murakami.

Thứ Ba, 10 tháng 9, 2019

Bị người hiểu lầm

Bị người hiểu lầm mà không phân trần, là rộng lượng. Sự việc thật giả thời gian sẽ cho câu trả lời tốt nhất.

Bị người tổn thương mà không oán trách, là lương thiện. Tình đời nóng lạnh, thời gian sẽ chứng minh tất cả.

Bị người vu khống mà không buồn giận là người có tu dưỡng, phẩm chất tốt xấu thời gian sẽ soi sáng tỏ tường.

Ở đời nhiều khi hơn nhau ko phải banh nhìn thấu bao nhiêu chuyện, mà quan trọng ở chỗ bạn biết xem nhẹ những việc gì.

Tấm lòng rộng hay hẹp không phải bạn quan hệ nhiều hay ít, mà là bạn bao dung được những ai.

Người chấp nhận thiệt thòi sẽ không bao giờ bị thua thiệt, sớm muộn gì sẽ có bù đắp xứng đáng.

Người nhường nhịn không hề mất đi tất cả. Ngoài sự tự tôn, trước mắt bạn sẽ giữ được lòng người.

Thứ Bảy, 20 tháng 7, 2019

Lập trình động - Dynamic programming (DP)

Lập trình động là một phương pháp giải các bài toán phức tạp bằng cách chia bài toán lớn thành các bài toán nhỏ hơn cùng với việc lưu lại giá trị của các bài toán nhỏ hơn này để tránh việc phải thực hiện lại các thao tác này. Những bài toán có thể áp dụng lập trình động có những thuộc tính sau:

1. Overlapping Subproblems (ví dụ dãy fibonacci khi tính toán fib(5) và fib(6) ta đều phải tính toán fib(4)).
2. Optimal Substructure

1) Overlapping Subproblems

Giống như thuật toán Chia để trị (Divide and Conquer), lập trình động bao gồm các kết quả của subproblems. Trong lập trình động, kết quả của các bài toán con sẽ được lưu vào 1 bảng để ta có thể truy cập trực tiếp thay vì tính toán lại các bài toán con này. Do đó, DP sẽ không hữu dụng khi mà các subproblems không có sự trùng lặp (overlapping) khi tính toán. Vi dụ như Binary Search sẽ không có các subproblems chung; ngược lại đối với bài toán Fibonacci, sẽ có rất nhiều subproblems được tính toán lại nhiều lần.

/* simple recursive program for Fibonacci numbers */
int fib(int n)
{
if ( n <= 1 )
return n;
return fib(n-1) + fib(n-2);
}

                              
                         fib(5)
                     /             \
               fib(4)                fib(3)
             /      \                /     \
         fib(3)      fib(2)         fib(2)    fib(1)
        /     \        /    \       /    \
  fib(2)   fib(1)  fib(1) fib(0) fib(1) fib(0)
  /    \
fib(1) fib(0)

Ta thấy rằng fib(3) được gọi 2 lần, do đó, nếu ta lưu giá trị fib(3) thì thay vì phải tính toán lại, ta chỉ cần truy cập trực tiếp kết quả này. Ta có hai phương pháp để lưu các giá trị giống như fib(3) là Memoization(Top down) và Tabulation(Bottom up).

a) Memoization(Top down)

Phương pháp này giống với recursion nhưng trước khi ta tính toán 1 subproblems, ta sẽ tìm trong một bảng. Nếu subproblems này chưa được tính toán, ta sẽ tính toán và lưu vào trong bảng, ngược lại, ta sẽ trả lại trực tiếp giá trị của bảng.

# Python program for Memoized version of nth Fibonacci number
  
# Function to calculate nth Fibonacci number
def fib(n, lookup):
  
    # Base case
    if n == 0 or n == 1 :
        lookup[n] = n
  
    # If the value is not calculated previously then calculate it
    if lookup[n] is None:
        lookup[n] = fib(n-1 , lookup)  + fib(n-2 , lookup) 
  
    # return the value corresponding to that value of n
    return lookup[n]
# end of function

b) Tabulation(Bottom up)

Phương pháp này ta xây dựng một bảng từ subproblems nhỏ nhất đến lớn nhất và cuối cùng trả về giá trị cuối cùng trong bảng. Ví dụ, cùng với bài toán Fibonacci, ta đầu tiên  tính toán fib(0), sau đó fib(1), fib(2), fib(3) v.v... 

# Python program Tabulated (bottom up) version
def fib(n):
  
    # array declaration
    f = [0]*(n+1)
  
    # base case assignment
    f[1] = 1
  
    # calculating the fibonacci and storing the values
    for i in xrange(2 , n+1):
        f[i] = f[i-1] + f[i-2]
    return f[n]

Both Tabulated and Memoized store the solutions of subproblems. In Memoized version, table is filled on demand while in Tabulated version, starting from the first entry, all entries are filled one by one. Unlike the Tabulated version, all entries of the lookup table are not necessarily filled in Memoized version. For example, Memoized solution of the LCS problem doesn’t necessarily fill all entries.

2) Optimal Substructure
Một bài toán có tính chất optimal substructure nếu optimal solution của bài toán lớn có thể tìm ra thông qua optimal solution của các bài toán con.

Ví dụ trong thuật toán tìm đường đi ngắn nhất Shortest Path, ta nếu ta có node X nằm trên cung ngắn nhất từ một node nguồn  đến một node đích v thì đường đi ngắn nhất từ u tới v sẽ là combination của đường đi ngắn nhất từ  tới X và từ X tới v.

Ngược lại bài toán Longest Path không có tính chất này. Ví dụ với đồ thị dưới đây:

Ta sẽ có hai đường dài nhất từ q tới t (không kể các cung có cycle) là: q→r→t và q→s→t . Ở đây, ví dụ longest path q→r→t sẽ không là combination của longest path từ q→r và r→t bởi vì longest path từ q tới r và từ r tới t lần lượt là q→s→t→r và r→q→s→t.