從 A 14kb page can load much faster than a 15kb page(endtimes.dev)的對於網頁大小 14KB vs 15KB 的速度差異比 15KB vs 16KB 大很多的討論,其核心原因在於 TCP Slow Start 演算法 所造成。
再查了 Mozilla 的 TCP Slow Start / 14KB rule,原來在 TCP Slow Start 演算法中的第一個 response packet 是 14 KB,Server ACK是 28KB。
大部分 Server 實作 TCP slow start 的 initial window 仍是 10 個 TCP packets (少數 Server 已修改增加至 30 個 packets) (Ethernet standard 中一個 TCP packet 的 Max Size 是 1500 bytes)...
PKCE (Proof Key for Code Exchange) 是 OAuth2.0 擴充規範RFC7636。 其主要目的是: 預防 CSRF 跟 Authorization Code(state) 被惡意攔截,補強了 OAuth2 的缺點。 並在 OAuth 2.0 Authorization Code Grant 明確建議了所有 Client 都要使用 PKCE。
Line 開發手冊中有圖說明了比較了 PKCE 的優缺點 - Benefits of implementing PKCE for LINE Login
這集 46 分鐘的節目,分三次看完,還蠻有內涵。
雖然我不認同謝哲青離家10年旅遊的動機來自於對家人的不諒解,
但是,每個來賓(不同旅者)分享在旅遊中對人生的解讀,蠻有感觸的問答。
因為 MNIST 提供手寫數字的是 28×28 的灰階圖檔,每一個 pixel 介於 0~255 間, 我們要送到類神經網路裡計算需要先正規化 0~1 的數值
# 6萬張 traning 轉成一個 array train_images = train_images.reshape((60000, 28 * 28)) train_images = train_images.astype('float32') / 255 tensorflow.keras.utils.to_categorical(train_labels) # one-hot encoding tensorflow.keras.utils.to_categorical(test_labels) # one-hot encoding 因為這是一個輸出成0~9的類別 (multiclass classification problem),這裡要先用 one-hot encoding 作資料前處理,最後一層因為要輸出 10 個類別,所以用了 10 個節點的 softmax
完整程式碼 from tensorflow.keras.datasets import mnist from tensorflow.keras import models from tensorflow.keras import layers from tensorflow.keras.utils import to_categorical (train_images, train_labels), (test_images, test_labels) = mnist....
從上篇的 keras 安裝 在我的環境是失敗的經驗, 似乎對 mac 比較不友善
from tensorflow.keras import models network = models.Sequential() 在這一行一直出現TypeError,原本以為是 python 或 numpy 的版本等衝突,換了幾個組合, 最後才發現原因在於我透過 conda 安裝的 tensorflow 版本不能用在 Apple Mac M1 上。
arm64 : Apple Silicon 看到 Apple 的 Getting Started with tensorflow-metal PluggableDevice 安裝了 Miniforge 照著做,最後建立虛擬環境(據說 tensorflow 在 python v3.8 比 v3.9來得快)
% conda create -n tf python=3.8 % conda activate tf % conda install -c apple tensorflow-deps % python -m pip install tensorflow-macos % python -m pip install tensorflow-metal 最後的環境版本 import sys import tensorflow as tf print(f"TensorFlow v{tf....
主要之前已經使用過 golang/nodejs/java 實在是不太想再學 python(主觀),所以這倆天嘗試了 TensorFlow.js v3.18,不過相關資料有點少(硬)。只好切換一下,更何況沒寫過 python 不能當作抗拒的理由, 畢竟深度學習 Python 生態系是最活躍的。
看了 keras tutorial 關於開發環境大概可以從 google colab 開始, 不必設定就可讓你在瀏覽器中編寫及執行Python 程式碼也可以免費使用 GPU 跟 TPU,也可直接線上跟他人共用蠻方便的。
但我還是比較習慣 desktop,所以選用了 anaconda 管理(避免Python模組或版本的衝突) 跟比較熟悉的 vscode 來入門
安裝開發環境 anaconda + vs code 安裝 anaconda 安裝環境管理工具(可以切換 virtual enivironment),從 anaconda 官網 下載 安裝 vs code + python extension for vs code 確認目前的開發環境版本 % conda --version conda 4.13.0 % python --version Python 3.9.12 建立新 enivironment 開啟 Anaconda Navigator後,其中預設的python環境內建是 base(root),這裡我建立一個名為 course 的 virtual environment...
TensorFlow.js 可以在瀏覽器或 NodeJS 上 training 和 deploy models。
如果不想涉獵低階的 Tensors 或 Optimizers,可以先從高階的ml5.js 開始, 這個 ml5.js 是 open source 並封裝了 TensorFlow.js 不需要安裝其他 dependencies,可以直接使用內建的 models & algorithms。
TensorFlow JS 安裝方式 % npm install @tensorflow/tfjs-node # for CPU % npm install @tensorflow/tfjs-node-gpu # for GPU % npm install @tensorflow/tfjs # 效能最糟 import * as tf from '@tensorflow/tfjs-core'; import '@tensorflow/tfjs-backend-webgl'; 如果在 Node.js 中,如果有支援 CUDA (EX: NVIDIA GPU) 或者在 Browser 中有 WebGL, TensorFlow.js 是支援硬體加速的。以WebGL 來說 GPU 預設已經包含在 @tensorflow/tfjs, 只要呼叫以下 setBackend()...
昨天看到 Supabase, 它的 slogan 是 Give Your Database Superpowers 感覺蠻厲害的,裝了一下:有 Self-hosting docker 版本。 它目的是幾乎模仿firebase 的功能, 但是是以 postgreSQL 為核心,並在上層作封裝。
特色 open source 封裝 postgreSQL 有 platform 和 Self-hosting(Docker) 兩種版本,其中 Self-hosting 是完全免費 Realtime PostgREST 用 Kong 當 API Gateway Storage 目前支援 S3 相當強悍的 Authentication / Authorization 一次跑 8 個 container 如下
⠿ Container supabase-kong Stopped 2.9s ⠿ Container supabase-studio Stopped 2.7s ⠿ Container supabase-storage Stopped 10.8s ⠿ Container supabase-auth Stopped 0....
由亞馬遜、蘋果、Google、「連接標準聯盟」(Connectivity Standards Alliance, CSA)聯合發起的『Matter』, 其前身是 2019 年建立的 CHIP (Project Connected Home over IP), 這個標準摘要
同時具備互通性和安全性 Application-layer 免專利費 降低 IoT 裝置商開發成本 提高不同品牌商產品之間相容性 IP Based,使用者不需要考慮使用裝置、平台是否相容,透過 IP 即可互動存取 硬體安全晶片 預計在 2022 年底正式推出 參與廠商 Google、Amazon、Apple、IKEA (DIRIGERA)、Legrand、NXP、Resideo、 Samsung SmartThings
想到 - 柯南劇場版《零的執行人》就是 IoT 恐攻的想像, 不曉得 Matter 標準的到來是不是讓編劇可以再寫一集劇場版 ?
新創公司 Reviver 的數位車牌 RPlate 發布 美國密西根州啟用數位車牌 Reviver™ Announces Official Launch of Digital License Plate Sales in Michigan, Now Available to Vehicle Owners 。密西根成為全美第三個核發數位車牌的州,另外兩個是加州及亞利桑納州。
RPlate
面板是電子紙 E-Ink 接內建電池版(4G LTE版) 約持續5年、或接車子電力版(附 GPS), 可換車牌底色 客製顯示文字,例如:Stolen、Keep Distance 防竊 異常可通知手機App 可設置地理圍欄(Geofencing) 遠端追蹤 訂閱制: 每月19.95美元(LTE) 及 24.95美元(GPS Pro 版) 代客泊車追蹤模式 整合車牌連網,推出名為 RFleet 車隊管理功能,協助企業統一登記商業車輛與監控物流