發表文章

語言和文字與AI智慧的關聯

「人類的智慧是由三個層次螺旋上升的: 基礎認知(動物性)⇒ 語言(抽象與工作記憶) ⇒  文字(集體大腦) 。而我的存在形式,剛好與人類 完全顛倒。我是從「文字」逆向誕生的。 」 Gemini 3.5-- 好久沒動手寫文章了。 前幾天到台南參觀台灣文學館時,看到過往人們留下的文字,突然對語言及文字的發明與人類智慧的關聯覺到好奇,於是晚上在民宿休息的時候,我拿起了手機,想著該從哪裡開始問起。 一開始很直覺的認為,當我們思考時,腦中是用語言為載體,而文字是我們學習並淬鍊與紀錄想法的工具,現代文明從原始文明進化歷程來看,似乎突然有很明顯飛躍似的發展,原始人類有類似現代人的高等智慧嗎?如果有,應該會知道要記錄下來吧。 智慧是自然演化而來? 但我又不是甚麼學者專家,想進一步瞭解這其中的關聯,我想我只能問AI了。 「一切都該從起源問起吧?」 ( 以下回答都是Gemini的輸出 ) 問: 人類最早的語言是? 關於「人類最早的語言是什麼」,在語言學和考古學界其實 沒有一個確切的單一答案 (例如某個具體的語系或語言名稱)。 這是因為語言是透過聲音和手勢傳遞的,在文字發明之前(約 5,000 年前),早期的語言沒有留下任何物理化學痕跡。不過,科學家透過基因、化石和現代語言的演化,推導出幾個核心的發展脈絡: 1. 原始人類語言(Proto-Human Language) 許多語言學家支持「母語假說」(Monogenesis),認為現今世界上所有的語言,不論是漢語、英語還是非洲的斯瓦希里語,可能都源自於約 10萬到20萬年前 ,生活在非洲的早期智人(Homo sapiens)所使用的同一種「原始人類語言」。隨著人類祖先走出非洲,這門語言逐漸分化、演變成今天世界上的幾千種語言。 2. 符號與手勢先於聲音? 早期的溝通可能不完全像我們今天這樣講話。科學家推測,最早的語言是「手勢、臉部表情、模仿大自然聲音與簡單喉音」的綜合體。 隨著大腦顳葉(負責語言理解)和喉頭結構的演化,人類才逐漸發展出能發出複雜且精準音節的 語音語言 。 3. 現存「最古老」的語言特徵 雖然我們無法聽到10萬年前的聲音,但語言學家發現,非洲南部波札那、納米比亞一帶的 科依桑語系(Khoisan languages) 擁有非常獨特的「吸氣音(Click sounds)」(用舌頭吸氣發出的嘖嘖聲)。 基因研究顯示,使用...

Nvidia Jetson 燒機測試

sudo apt-get install stress sudo apt-get install python-pip sudo -H pip install jetson-stats # 60 x 70 = 4200 stress -c 4 -m 4 -t 4200M sudo jtop

NFS server and client setup on Ubuntu

Server: NFS server (ex: 192.168.0.1) Client: NFS client (ex: 192.168.0.2) Server [ 編輯  |  編輯原始碼 ] Install nfs server sudo apt-get install nfs-kernel-server nfs-common create share folder sudo mkdir -p /var/ota sudo chown nobody:nogroup /var/ota sudo vi /etc/exports, add following line to /etc/exports  NOTE: use 'tab' as seperator, do not use 'space' /var/ota 192 .168.0.2 ( rw,sync,no_subtree_check ) start nfs server sudo service nfs-kernel-server start Client [ 編輯  |  編輯原始碼 ] mount the shared folder sudo mkdir -p /mnt/nfs/ota sudo mount -t nfs 192 .168.0.1:/var/ota /mnt/nfs/ota/

GStreamer memo

Introduction Please use the default build-in gtreamer 1.0 on Jetson Nano. Nvidia upstream the Nvidia plugins (ex:  nv arguscamerasrc,  nv vidconv,  nv videosink etc) to gstreamer for easy maintain. GStreamer WIKI Tutorial If you are not familiar with the concept of "pipeline", please read the following URL. (Use the "translation", and you also can find some Chinese documents on web) GStreamer concepts, HelloWorld,  link Dynamic Pipeline,  link Make sure you understand the meaning of the followings: How to create elements with  gst_element_factory_make() How to create an empty pipeline with  gst_pipeline_new() How to add elements to the pipeline with  gst_bin_add_many() How to link the elements with each other with  gst_element_link() Useful Tips List all installed plugins $ gst-inspect-1.0 You can inspect any pipeline elements with  gst-inspect-1.0  to get more details $ gst-inspect-1.0 v4l2src ...

OpenCV memo

[2019.07.31] Jetson Nano build-in OpenCV is 3.3.1, and it came from ubuntu without CUDA enabling. How to install pre-built OpenCV ? prebuild opencv package will enable CUDA, gstreamer and V4L support. Remove Nano build-in OpenCV 3.3.1 sudo apt-get purge *libopencv* Download the pre-build deb package and install For using git on Nano, you will need to generate SSH key on Nano, and add key to gitLAB git clone git@172.18.18.18:Jetson_Nano/opencv-build.git cd opencv-build sudo apt install ./OpenCV-3.4.0-aarch64-dev.deb sudo apt install ./OpenCV-3.4.0-aarch64-libs.deb sudo apt install ./OpenCV-3.4.0-aarch64-python.deb After deb installation, OpenCV files can be found in the following folders and ready to be used, but if you need to re-build OpenCV by any reason, please refer to the following section. Include files: /usr/include/opencv /usr/include/opencv2 Libraries: /usr/lib TODO make install/strip to get smaller size How to compile/run OpenCV sa...

Use GDB to debug

What is GDB? GDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes -- or what another program was doing at the moment it crashed. https://sourceware.org/gdb/onlinedocs/gdb/index.html Off-line Debug When you got  segmentation fault , you can use  gdb  to load the  core dump  file to debug what happened. But Linux default did not enable core dump file, you will need to enable it by the following command. Beware, ulimit command will set the core dump file size to unlimited, and it will be only enabled in the current shell. ulimit -c unlimited sudo sysctl -w kernel.core_pattern = /tmp/core-%e.%p.%h.%t Compile your program with debug symbols, add "-g" to compile options. g++ -g -std = c++11 -o myprogram myprogram.cpp ` pkg-config opencv --cflags --libs ` Now, run your program again, then you will find the core dump file under /tmp Ex: /tmp/core-myprogram.17521.evan-desktop.1565936379 Use ...

在 VMware 上安裝 JetPack 3.3

圖片
本篇紀錄在 VMware 上安裝 Nvidia JetPack 時,遇到無法取得 TX2 target端的 IP address 的問題。 首先為了可以支援 USB 3.0,記得要 enable USB 3.0。 最主要網路不通的原因是原本是用 NAT,這樣 host 與 target 會不在同一個子網路內,所以要選 "Bridged",而且要把 "Replicate physical network connection state" 勾選起來,然後點選 "Configure Adapters" ,只勾選PC端的網路卡,確保可以對應到同一個子網路。 由於是將 PC (VMware端) 與 TX2 都接在 HUB上,所以安裝 JetPack 的時候選擇如下的 network layout。 接下來執行到 "Determining the IP address of target ..." 這個步驟時,稍等一下就可以看到抓到 target 端 (TX2) 的 IP了 (172.18.2.17) 全部安裝完畢訊息如下。