owned this note changed 4 years ago
Linked with GitHub

SITCON 2019 R0 共筆

人工智慧的過去現在與未來

主講者:林守德
Sli.do 連結:https://sitcon.org/2019/slido/

早期 AI: 一個 AI 各自表述 (邏輯推理)

  • AI = 形式推理 formal reasoning
  • AI = 與人類的對話 (Turing test)
    • 圖靈測試-測試某機器是否能表現出與人等價或無法區分的智能
    • 質疑:對話是否是智慧唯一表現?
    • 對話需要深度的理解(相較於辨識)
  • AI = 擅長遊戲的電腦
    • 遊戲(如棋類)是測試AI最好的平台!
      • 遊戲規則容易系統化
      • 遊戲環境與變數有限
      • 遊戲可以重複玩
    • 質疑:遊戲太簡化,而人生不能重來
    • 完全訊息的遊戲(西洋棋、圍棋)
    • 部分資訊的遊戲(德州撲克、星海)

AI 第二個起落 (專家系統)

  • AI = 連結 & 網路

    • WWW, Semantic Network, ANN(類神經網路)
    • 沃倫麥卡洛克、唐納德赫
  • AI = 專家系統

    • 適用於知識密集型的任務(e.g.醫師,司法官)
    • 專家系統 = 知識庫 + 推理機
      • 知識表達最常用 if .. then .. 的規則
    • 80年代紅於一時,90年代後沒落
  • programming language

    • prolog
    • 邏輯編程語言,大量用於人工智慧的研究
    • 孫子(X,Y):-爸爸(X,Y), AND 爸爸(Y,X).
    • 缺點:邏輯與資料與時遽增,若無法普遍化問題,則功能極受侷限
  • 人工智慧的層次

    • 弱人工智慧(Weak AI):在某特定項目上可以表現得像是有智慧
    • 泛人工智慧 (Artificial General Intelligence, AGI):外在所有行為就像是一個能夠回答問題的人類
    • 強人工智慧 (Strong AI):幾乎就跟真正的人類一樣
  • 90年代後AI學者開始擁抱弱人工智慧

    • Chinese Room Argument
    • 只要能解決問題即可
  • 人工智慧是否要類比人工智慧?

    • 人工智慧是指像人類一樣聰明的電腦?
      • 跟人類一樣笨的電腦算不算人工智慧
    • 人工智慧 == 電腦做出有「智慧的行為」 != 電腦做出跟人一樣的行為?

A variety of ML Scenarios

  • Supervised learning(監督式學習)

    • 最廣泛使用
    • 給很多input跟output,讓機器學到其之間的關係
    • classification & regression
    • multi-label learning
      • A classification task in that an instance is..(求補QQ)
      • Ex. Multimedia tagging
    • Cost-sensitive Learning
      • A classification task with non-uniform cost for different types of classification error
      • Goal: To predict the class C* that minimizes the expected cost rather than the misclassification rate
      • Example:
        • Fraud detection
        • Medical diagnosis
      • Ex. 信用卡盜刷,沒抓到可能丟失很多錢,反之則可能沒那麼嚴重。
      • Ex. 診斷癌症病情,若患症病人沒有被成功診斷出來會造成較嚴重的後果,反之若正常人被誤判為患病造成的後果嚴重性較小。
    • input : data output : result(whether)
    • Two kinds of outputs an ML system generates
    • Categorical: calssification (E1 & E2)
      • Ordinal outputs: small, medium, large
      • Non-ordinal outputs: blue, green, orange
    • Real values: regression problem (E3)
    • Classification
      • A classifier can be linear or non-linear
      • Famous models:
        • k-Nearest Neighbors (kNN)
        • Decision Tree (DT)
        • Suport Vector Machine (SVM)
        • Neural Network (NN)
  • Semi-supervised learning

    • 解決資料不夠的問題
    • Active learning
  • Unsupervised Learning

    • Clustering
      • k-Means, EM, Hierarchical classification
  • Machine Learning Scenarios

  • Reinforcement Learning(強化式學習)

    • RL is a "decision making sequence"
    • decision making process
    • It's goal is to find an optimal policy
    • AlphaGo: SL(Supervised Learning) + RL(Reinforcement Learning)
      • 1st Stage:SL
        • Data: 棋譜(學習其他棋手的下法)
      • 2nd Stage: RL
        • Data: palying w/ 1st stage(自己與自己對弈,進而強化自身的能力)
  • Variation

  • Traditional ML vs Deep Learning

    • traditional ML requires human to choose relevant features to represent object
      • Good features bring you to heaven
    • Deep learning prvides a smarter way to present data, that model features from different aspect
      • 顏色、形狀、大小
  • 機器學習最擅長解選擇及是非題

    • 是非題:兩個選項選一個
    • 選擇題:多個選項選一個
    • Sequence-to-Sequence Model
      • A model that take a seq as input and output seq
      • We will focus on deep learning <something>
      • 解決比較不是是非題或是選擇題的情況
    • Ex. 小冰寫詩:以圖生詩
      • 關鍵字抽取→關鍵字過濾&關鍵字擴張→重新生成(遞迴生成+通順評分)
    • Ex. 藏頭詩生成器
  • 小冰寫詩怎麼做的?

    • RNN 語言模型 (Language Model)
      • 自動評價
      • 給寫出來的每句詩給予評價 : 流暢度、原創性
    • 缺點:(IF input Wind10 desktop)
      • 慣用用詞:沙灘,靈魂
      • 不能控制多變化:關鍵字生成
      • 特定關鍵字生成困難:電腦
        (只能透過關鍵字擴張來修正)
      • 圖片辨識錯誤(水→藍色)
      • 圖片較難辨識出「動作」
      • Win10桌布 -> 「你看這水有何意義」(?)
      • 新進字詞無法被正確辨識。Ex. 太空梭(當時還沒有太空梭,字詞的含意有可能被辨識錯誤:太空梭子)
人類寫詩 小冰寫詩
動機 抒發情感,參加比賽,交作業,沒理由就是想寫 人類按下執行
意識到在寫詩 Y N
了解什麼是詩 Y N
機率計算 N Y
深度 可深可淺 較淺
  • 結論與預測
    • 純粹機器學習的方法也許無法到達AGI
      • 結合其他的AI技術(例如知識導向)也許是可行的方式
      • 意識與心靈很難短時間達成
    • 人類決策模式的轉變結合→更信任AI
    • AI 將有機會與人一起獲得諾貝爾獎
    • 距離安全、透明、有倫理觀念、能與人類協作的「強人工智慧」仍有一段很長的距離要走

商管、演算法、商管

演講者:孔令傑

欸我這樣看起來比本人帥wヽ(●´ε`●)ノ
資管 : 資工的覺得你不是資工,管理的人覺得你不是管理
挖這什麼靈異現象www Σ(*゚д゚ノ)ノ
就跟這房間的wifi一樣,大家都上不去
不連手機怎麼上網啦!!!

  • 幾個演算法的商管應用

    第一個例子:自動化的(競爭標價)系統
    要價兩百美金的書
    每一次的價格都是對手的的 99.8%(Profnath)或 127%(Bordeebook)(雙方顯然都是在利用對手的價格來設定自己的價格。)
    Profnath想要把書賣出去,所以他們固定把書訂價在最低競爭對手的99.83%
    Bordeebook 將價錢訂在最低標價競爭對手的1.27倍?
    原因是因為Bordeebook 根本沒有這本書,他們只是想要把自己加到這個列表,打廣告順便增加知名度,所以故意把書賣得很貴,以確保你不會買(希望消費者注意,大家都看得到,但是不會有人真的去買的價格)

    第二個例子:
    -套利(arbitrage)
    A、B、C 三種商品,假設手上有1000元
    無套利條件:「當大家都一窩蜂的買C,然後賣A、B,原本被低估的C就會越來越難買到,供需法則會讓C最後和A、B相同。
    -高頻交易:人們無法利用,極為短暫的市場變化尋求獲利的自動化交易
    -新聞交易:許多公司動態都可以從各種線上資訊來源被獲取,如Bloomberg、新聞網站、Twitter等,自動交易系統試圖便是公司名稱、各種關鍵字,甚至進行語意分析,以求在關鍵時刻可以獲得最高的利益(wikipedia)

    如果你總是能抓住那稍縱即逝的機會

  • Ex:工作分配

    • 工廠老闆想知道如何分配工作:工廠互相比較產量,品質等等,產能有限,如何公平分配
  • 中國電信:行動支付商業模式

  • 案例:工作分配演算法

  • 管理問題v.s工程問題

  • Ex. 要價兩百萬美金的書

    • The Making of a Fly: The Genetics of Animal Design by Peter Lawrence
profnath bordeebook profnath over previous bordeebook bordeebook over profnath
bla bla 0.9938 1.27
  • 自動化的競爭標價系統
    • Profnath: 定價為最低價競爭對手的 99.83%
    • Bordeebook 為何要把書定在最低標價競爭對手的 1.27 倍?
      • Bordeebook 根本沒這本書,只是想要把自己的名字加進列表,順便增加知名度,所以故意賣得很貴,以確保你不會買
      • 標在要高不高要低不低有人看到但沒人會買的價格

如果你也想買我也想買他也想買結果會怎樣? 就像這個房間的 WIFI 一樣,大家都上不去 QQ

  • 套利 (arbitrage)

    • 白經濟 http://talkecon.com/asset_pricing_arbitrage/
    • 無條件套利與高頻交易
      • 無條件套利條件:「當大家一窩封地買 C 然後賣 A 和 B,原本被低估的 C 就會越難買的到,供需法則讓 C 的價格上漲,最後回到一個合理的均衡價格:在我們的例子裡就是 A 和 B 價格的平均。因此,套裡雖然美好,但套利的機會總是稍縱即逝。 」
      • 如果你總是能抓住那稍縱即逝的機會呢?
    • 高頻交易
      • 是指從那些人們無法利用的、極為短暫的市場變化中尋求獲利的自動化程序交易,比如某種證券買入價和賣出價差價的微小變化,或者某隻股票在不同交易所之間的微小价差。
    • 新聞交易
      • 許多公司動態都可以從各種數字渠道被獲取,如彭博社、新聞網站、推特等。自動交易系統通過識別公司名、各種關鍵字,甚至是進行語義分析,以求在人類交易員之前對這些消息做出反應。
  • 決策支援: 航空公司人員排班

    • 本國籍航空約 1000 名地勤人員在桃機服務
      • 櫃台、登機
      • 督導、Agent
      • 華航、外航
      • 兩個航廈
    • 如何決定 1000 名人員的次班表
    • 如何決定當班的 700 名人員的次日般表
  • 決策支援: 高雄港

    • 資源: 水道、拖船、領港
    • 議題:
      • 現況的壅塞是缺少哪個資源(瓶頸分析)
      • 如何良好地調配資源以減少壅塞
      • 貨出不去人進不來…就沒辦法發大財啦www
    • 有限的資源做有效的安排 -> 作業研究
    • 只能依靠演算法
  • 用演算法解決商管(決策)問題的四個步驟

    ​​​​    st=>start: 定義問題
    ​​​​    op1=>operation: 建構模型
    ​​​​    op2=>operation: 寫演算法
    ​​​​    e=>end: 執行方案
    
    ​​​​    st(right)->op1(right)->op2(right)->e
    

每個月到月底的時候,都會有爭執,因為每個工作都會有工作量、工作、產能都有限,所以會想要如何處理公平性的問題,剛剛也有提到高雄港引水人(船舶進出工作分配)、按摩店(按摩工作分配)、大誌文化(社會企業)

  • 工作分配

    • 工廠老闆想知道如何分配工作
    • 每個人都想賺更多錢
    • 每一訂單都須花若干時間
    • 訂單時間 CP 值不同
    • 工廠產能有限
    • 如何公平地分配
    • 抽象化、件模型
  • 公平性議題非常普遍

    • 引水人
      • 船舶進出工作分配
    • 按摩店
      • 按摩工作分配
    • 大誌文化
      • 社會企業
      • 讓每個員工賺到足夠生活的錢
    • 重點在於讓大家覺得公平
  • 工作分配(問題建模)

    • 工作是珍貴的資源
    • 我們試著將工作分配給人
      • 考慮整體營利和公平性
      • 人的能量有限(只要有足夠能量,就願意做更多的工作)
      • 一件工作通常不能被拆給多個人做
    • 讓我們來最大化「賺最少的人的錢」
      • 最不爽的人不要太不爽,最不幸的人不要太不幸

Model-Setting and Assumptions

  • \(I\): the set of \(m\) agents
  • \(J\): the set of \(n\) jobs
  • \(K\): the capacity of agent \(i\)
  • \(c_j\): the workload of job \(j\)
  • \(b_j\) the revenue of job \(j\)

\[ x_{ij} = \begin{cases} \text{1, if job j is assigned to agent i} \\ \text{0, otherwise } \end{cases} i \in I, j \in J \]

\[ \max \min\{\sum b_j x_{ij}\} \\ s.t. \text{constrains ...} \]
- 工作一個人做
- 低於最大工時

應當要有模型,才開始設計演算法

  • 來個簡單的演算法吧!
    • 實用的演算法是需要夠簡單的
    • 演算法要能被解釋(如果互相講不清楚了話會很麻煩)
    • 提出 LPT (最長時間優先) 的 CHBF 演算法 (Capacitated Highest Benefit First)
  1. 根據收益對所有工作由大到小排序
  2. 將一個工作分配給當前具有最低累積收益且工時上限未滿的人(如果上限已滿嘗試次滴累積收益者,以此類推)
  3. 重複工作 2 直到所有工作都被嘗試分配過

演算法要夠簡單,能夠被解釋的。必要的。
演算法要實用,夠簡單是必要條件

  • EX.解釋自動車出事時為什麼會直接撞上去,而沒有停下來
  • EX.解釋開藥無效時,為什麼機器會這樣開藥單
    效能檢驗
    • 這演算法行嗎?
    • 假設 \(收益=f(工時)\)
    • 管理意涵:演算法到底誰可以用誰不能用?(公司很care但是工程師比較不care的東西)工時是橫軸工作是縱軸
      • 累進費率:CHBF很適合(EX.UBike第一小時10元、第二小時20元)
      • 數量折扣:CHBF不適合(EX.按摩一個小時1200元,兩個小時2000元)

工作量不一定成正比但是要成正變
也就是投入越多,理應回饋越多

\(f\) 的形狀 \(\frac{ \text{CHBF 的公平性}}{\text{最公平的公平性}}\) \(\frac{\text{CHBF 的總效率}}{ \text{最有效率的效率}}\)
Random (EX : 正比) 0.947 0.992
Linear 0.979 9.990
Convex 0.976 0.988
Concave 0.918 0.9336

我演講幾百次沒看過會自己跳的,可能他很想趕快結束吧XD

需要告訴想要用演算法的人,解釋其適用性,怎麼樣的情況可以用,怎麼樣的情況不能使用。

  • 我們希望可以使用演算法來處理問題:
    • 到底是因為有些問題太複雜?
    • 還是因為我們只會演算法
    • 不要每次問題來都需要寫 一個新的演算法*
  • 我們把管理問題模式化成工程問題(nodeling, formulation)

    • 線性規劃,非線性規劃,整數規劃,分類,預測,搜尋
    • 我們是否忽略了管理層面的需求
    • 我們在處理重要的問題,還是在處理我們會處理的問題
    • 我們的解法是否帶有管理意涵
  • 用演算法處理工程問題與管理問題的差別

  • 不要忽視管理方面的需求,而硬要用演算法

  • 問題可能不在於管理方面的情況,例如提升登機旅客online check-in 的比率,來降低人工處理的成本

東西拿來就想用演算法弄他,搞不好老闆只是要一個最簡單的方法來處理

  • 建議
    • 確認最關鍵的是哪個步驟
      • 我們在處理的是工程問題,還是管理問題
    • 帶著對演算法的理解,與管理者一起定義問題,執行方案
      • 不要瞧不起管理人,更不要覺得他們笨
      • 他們可能只是比工程師更務實

欸,寫個演算法把我們明年的營業額提升 25% (?

最重要的是第三行

不要因為自己比較會寫程式就覺得老闆是廢物,老闆常常是廢物、也常常不是除了工程師,其他人都是廢物(?

工程師不要只關心工程問題,要關心公司的經營管理問題

演算法只是公司經營的某一個面向,不是全部

定義問題

建構模型

寫演算法

執行方案

    st=>start: 定義問題
    op1=>operation: 建構模型
    op2=>operation: 寫演算法
    e=>end: 執行方案

    st(right)->op1(right)->op2(right)->e
  • Q&A
    • 公平性:各項指標

      • Ex.餐廳:加班時數、週末上班、休假調動
      • 有人比較care周末加班的次數,有人比較care平常日加班的次數
    • 求不出最佳解,求可行解

    • 資工 & 資管

      • 資工 - 資訊解決工程問題
      • 資管 - 資訊解決管理問題

欸,那個 QuerySelector 實際上在幹嘛啊

  • 台科大廢文資安社

  • 有這個東西存在

    • DOM tree
      • 工程師的樹都是倒著長的
    • linked list(若childnode只能有一個 A-B-C)
  • 尋找想要的元素DFS搜尋

// 從下面那行 console... 才開始 DFS const cats = document.getElementsByClassName("cat"); console.log(cats[0]); // 有存 cache 所以不會hen慢 // 第6行就已完成DFS search const cats = document.querySelectorAll(".cat"); console.log(cats[0]);
  • 聽說用getElementbyId()比較快,為什麼?
    • 在最開始讀 html 時會把 id hash,然後存進相對的盒子(?

Hash table

  • 把一串資料壓成固定大小的資料
  • Hash 之後的結果代表原本資料的digest
  • 不同的 hash 代表不同的輸入資料 ex. md5
  • 有可能有兩個 data 的 hash 值相同(碰撞),可以利用linked list或者特殊演算法來處理data collision

總結

  • Tree
  • DFS (深度優先搜尋)
  • Hash Table

Q&A

  • getElementsByClassName: 不會搜尋整個tree, 先紀錄要可能要做的事情,真的要存取時才特別DFS下去找Node

你決定的演算法與決定你的演算法

intro:

  • 主持人:ipa(瞿筱葳)

    • g0v 零時政府共同發起人
  • 與談人:Tim(徐千洋)

    • 駭客年會(HITCON)的創辦人
  • 與談人:顏厥安教授

    • 法理學/法哲學
      【演算法社會之人文社會反思】
  • 引言

法律也是一種 code
道德可以 code 出來嗎
你媽知道你的演算法會改變人的一生嗎?

  • 顏老師:

    • 2001年太空漫遊的啟發

    在電影中會一直出現黑色巨大的石碑,但是一直沒有一直講石碑的意思,我認為其解讀是心靈的方式。

  • Tim:

    • 因為對區塊鏈的安全很有興趣,無論是 IoT 還是 Blockchain 都跟資訊安全都很有關係。
      軟體以發展到跟生活息息相關,資安跟生活也息相關
  • 道德面的問題

你決定的演算法。

  • 因為目前的演算法是會我們可以理解的嗎?如果要開箱的話,人應該要怎麼面對。中間的文化素養應該要放在哪邊?

  • Google ML 黑猩猩事件

    • 將非裔民眾辨識為黑猩猩
    • 解決方案:Ban 敏感字 習包子
  • 顏老師:
    很難按照既定規劃順利進行
    像是今天的演講,自我介紹的方式可能會不同,我們希望可以透過某些方式來控制我們的生活。control

  • 銀翼殺手的哲學含意

    • 原版小說:Does Andriods Dream of Elecric Sheep?
    • 記憶、情感與身份認同 與 AI
    • AI 和人造人是否可以有自己的身分認同。

幾個初步的思考與命題

  • 黑箱
  • AI 的研究是不是行為科學的研究
  • 人文主義的弔詭:倫理學

大數據與個人資料保護

  • 歐盟的 GDPR(General Data Protection Regulation):具體同意、被遺忘權 今天無法談
  • 基本出發點:所有的個資,都「永遠」屬於「個人」所有
  • 資料庫:保管、保護之「責任」,非使用之「權利」
  • 「我告訴你一個秘密,你千萬不要跟別人講喔」

個人資料保護之風險

  • 可能的原因
    • 當事人不清楚;不知道(被蒐集、被洩漏

    • 當事人不在乎

      • Setec Astronomy
    • 當事人無可奈何:被強制,或者

      • Too many secrects
    • 如果你要使用,就要告訴我

    • 但是,再複習一次

    • 我告訴你一個秘密,你千萬不要跟別人講喔!

    • 可使用範圍:「目的拘束」原則

    • 所有的資訊都不是意義中立(Neutral)/孤立

      • 例子:有些美國在管台灣的簽證,所以有很多人在宗教的部分,填無宗教,卻被對方認為是共產黨(無神論者)
        .g.
      • 例子:單身 == Gay ?

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →
取得個資者,有保管、保護之義務,沒有任意使用的權利

  • Tim:
  • 蒐集資料這一塊,身為一個hacker,其實蒐集資料就很像吸食毒品依樣,做了一次就回不去了。蒐集資料這樣的事情,其實是跟法律牴觸的行為。歐盟 GDPR 標準及要求,較台灣嚴格
    • 台灣:有授權,就可以使用。
    • 實務上,各界仍不斷收集個資
  • 為什麼不需要座標、電話號碼,公司仍繼續收集?
    • 跟業務可能無關 -> 留待未來使用

資料收集這一塊,回到工程師的身上,有時候是被長官要求,需要蒐集而非自己喜歡蒐集(有些人可能會有想要窺看個人資料的好奇心)。所以宣導如何不去窺看個人資料,會跟人的本性有矛盾。
法律的部分會有恫嚇的效果。

Q&A

  • Q:如果他想要用演算法解決演算法的缺漏,那它需要什麼樣的思維?
  • A(Tim):
    • 技術層面:更安全的演算法或程式,從技術上並非沒有辦法
    • 從技術上達成更高的安全性,Ex:Functional Programming
  • Alpha Go 缺陷
    • 演算法可能產出好的功能,但也可能做出愚蠢的行為
    • 認為用演算法創造出更安全的演算法是可行
  • A(顏):
    • AI 作為一種 行為科學
    • 很希望寫演算法的時候跟人文社會科學有交流,不要完全的跟其他學科切割
    • EX: 法律的AI可能要判斷一個行為是侵入或強盜,如同看見人們搶劫(一般意義上),應該是搶劫(法律意義)或恐嚇取財
    • 重申資訊技術的意義不單純是孤立/中立的
    • 期望在做開發期間,仍保有社會人文的思維
    • 社會政策在將來透過某種演算法也許可以尋得更好的解法
      • 發覺地點、時間等其他沒有被發現的線索,使我們有機會更深入地看見社會事件的各個面向
  • Q:開發演算法的道德底線?
  • A:顏老師
    • 道德沒有什麼底線ww
    • 可以自身和旁人對該事件的感受去揣測個資的敏感性
      • 有些人可能對香港腳、飲酒的習慣被透漏感到不適,但有些人卻覺得沒關係
      • 是不是去連結化就可以?
      • 總之多問會安全一點,避免踩雷
      • 例子:若是開放健保資料,資料上顯示原住民有每天喝酒的習慣,在不知道喝酒的實際情況(可能是為了健康每天喝點紅酒),將原住民飲酒習慣連結至「原住民就是愛喝酒」是否不太恰當?

工程師的道德良知

Tim:
  • 道德是個難處理的問題
    • 舉例

    1990年 愛國者飛彈的時間延遲,每100個小時會有一個雷達搜索的誤差,建議要100個小時要重開機
    有飛毛腿飛彈打過來的時候,愛國者飛彈沒有辦法升空攔截,這是軟體和硬體的差異造成的。
    (千禧年 2038問題類似?)ㄛ

    • 你很難怪罪軟體or硬體工程師,因為當初就是沒想到會發生這種問題
    • 舉例2
      • 某電信公司內部的 Single Sign-On 登入系統 忘記密碼 漏洞
        • payload
          • 輸入 target Email
          • 傳統:連到特定頁面,輸入 mail 重設密碼
          • 直覺猜測 URL 參數為 Unix time Base64 encode
          • 猜測 Unixtime 就可重設任何人的密碼 儘管對方會收到 email(填入 email)
        • 造成資安問題原因
          • 開發的工程師認為 base64 是 encrypt
          • 認知工程師的素養價值重要性
  • 不正確操作使用程式/演算法,可能造成危害自己可能完全不自知。
    很多開發者並不知道自己的程式會造成什麼(資安)問題,這是我們工程師可以再向上提升的地方。
  • WannaCrypt
    • 支付比特幣以解鎖檔案
    • 不少勒索軟體作者不熟悉加密原理,導致加密後有機會還原
  • 網路上的資源
    • 不瞭解應用上所需加密方式、原理,導致軟體發生問題
    • 以為安全,卻不安全
    • 當工程師的 quality 不足的時候,他以為是安全、可行的方案卻是有缺陷、對他人造成危害的。
個資的開發者責任:
  • 顏老師:
    • Facebook 透過合作應用程式開發者間接獲得個資
    • 類比:
      • 如果你是大樓警衛,竊賊偽裝成內部人員,刑法上警衛無刑事責任(被視為犯罪工具)
        • 一無所知
      • 你明知他要偷東西,仍放他進去。儘管警衛並未從中獲利,仍被法律視為幫助犯(竊賊是正犯),有無刑事責任?
        • 無所謂?
        • 無共謀,仍可成立
    • 在此類比之下,程式開發者之於其程式漏洞造成的責任問題,究竟該如何定義、理解與面對

AI

下棋的不是 Alpha GO ,只是執行演算法 <????> (待補><)

  • 下棋軟體並沒有下棋,對方也沒有跟他下棋
  • 程式不知道自己在下棋,只是在反應
  • 不曉得在「玩」人類的遊戲
  • 他們鑲嵌在人與人之間的活動當中,卻偽裝成「像是」人一樣
  • 知道 AI /程式執行的活動的意義的真人,和不知道自身活動意義的AI/程式之間的關係是什麼?
  • 人授權演算法執行、跑出結果,人決定以它的結果作為決定
  • 電腦只是執行,而人來做決定。那人的責任如何定位?
  • 電腦執行動作,而人類將其詮釋和意義投射在這些動作之上

Q&A

  • Q: 各校公開的編班資料,做出一套資料查詢系統,並連結到個人臉書之類,這樣違法嗎?(例如:出入學號,查詢姓名及FB)

  • Q: 若我蒐集了這些未特別標記使用權利的資料 如文章、留言甚至是Profile 可以用做哪個程度的利用,單純資料分析、學術研究甚至是商業行為?

  • A(Tim):

    • 程式設計開發的東西一般是中性的
      蒐集資料做了之後就會順便蒐集其他
  • A(顏):

    • 法律人的道德標準是比較低的,因為要面對真實的人性其實千瘡百孔,多數人並不高尚
    • Image Not Showing Possible Reasons
      • The image file may be corrupted
      • The server hosting the image is unavailable
      • The image path is incorrect
      • The image format is not supported
      Learn More →
      警戒過於高尚的目標
      • 避免濫用
      • 講了之後壓迫所有的一切
      • 例如:為了學術研究,尤其在個資領域是否套上為了學術研究就不用管其他東西了?
    • Image Not Showing Possible Reasons
      • The image file may be corrupted
      • The server hosting the image is unavailable
      • The image path is incorrect
      • The image format is not supported
      Learn More →
      警戒因他人能力較弱就不在意他的意見,而擅自為他做決定
    • 發言與對自己的影響

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →
如果你在用一個免費的服務,那免費的可能是你自己。

Q&A

  • Q:政府蒐集並使用個資可能侵害人權,但也可能對國家有利,娜以國家為名的運用個資的道德底線在哪裡?政府與人民在此之中的關係為何?

  • A(顏老師):

    • 理論上國家是人民組成
    • 實際上政府是少數人控制
    • 以「國家之名」做事,可能是少數人服務自身利益的藉口
    • 通常對國家沒有那麼重要
    • Gmail > NTU mail
    • 小心語句
      Image Not Showing Possible Reasons
      • The image file may be corrupted
      • The server hosting the image is unavailable
      • The image path is incorrect
      • The image format is not supported
      Learn More →
      "為了國家,有甚麼關係"
    • 在國家之名面前,仍要警戒其界限
    • 以國家之名蒐集資料,不一定是對國家有利,反而可能是對少數人有利。
      • 政府監聽以國家安全為理由
      • 給予隱私或加密予民眾時,造成情資蒐集困難 // 這句超奇怪 原本是說啥
  • A(Tim):

    • 強權國家情資蒐集
    • Gmail:美國政府曾得知通訊內容,因為跨國內部備份光纖遭政府監控
      • 你想你是政府,知道所有網路會通過這條光纖,你會不想監控嗎?
    • SSL亦可被一定程度探知
    • 一般民眾很難抵抗國家力量,但上網google可以找到一些機制跟工具來保護自己,降低風險

Q&A

  • Q:如果發現資訊系統漏洞,並向該單位提供相關證明提醒他們補該漏洞,卻被他們怪罪自己利用該漏洞做壞事!?這種情況該如何自保?

  • A(ipa): HITCON有架設平台,可以聯繫他們

  • Q:那如果我設計了美少女AI,並且教會她怎麼去進行「愛人」的行為 就結論而言是沒有人愛我,還是我很愛我? author - 甚麼時候才能跟絆愛結婚

  • A(顏老師):

    • 其實法律裡沒有愛,愛在法律裡不重要,這點也在同性婚姻的討論中出現過
    • 法律人不太需要愛
    • 所以我說美少女跟愛有啥關係? 沒有嘛
  • A(Tim):

    • 當你談戀愛的時候才不會寫這種程式
    • 但你根本沒愛過,自然也不會開發愛人的程式SO SAD
      • ㄏ 笑你單身 這是死循環呢w
    • 詳細請讀 停機問題(?
    • 謝謝。
  • A ( ipa ):

    • 虛擬情人(雲端情人)(Movie)

零基礎打造 P 站搜尋引擎

講者:松鼠🐿

Elasticsearch

  • 一套完整且開源的搜尋引擎軟體
  • 開發團段成立的Elastic公司繼續維護和提供其他付費服務
  • 分散式系統
  • 基於Lucene

其他搜尋引擎

  • Solar
    • 使用主從系統
    • 也是基於Lucene
  • Sphinx
    • codebase裡還存在
  • 資料量很小的話,用什麼都可以
  • ES最近發展速度很快

Elasticsearch 資料結構

  • Index - 相當於

phrase_match

  • 總監
    • 召要OOOO督組(X)
    • OOO總監(O)

一切都關乎效能

  • early termination
    • 這個設定無法動態變更
  • shard number
    • 尋找剛剛好的數量,太大太小都不好
  • routing
    • 很厲害,副作用是不好管理
  • range query over datetime
    • 在用時間對資料進行分類的時候很好用

開飛機換引擎善用Index alias

  • Index 的別名
  • 達成讀寫分離

所以我怎麼作

  1. 在 index 名稱中加入年份
  2. 將某個 index alias 指向所有 indices

結果

  • 方便性
  • 回應時間短

參考資料

  • Elasticsearch Performance Tuning Practice at eBay

Q&A

你所不知道的維基 - Wikidata

關於講者

Wikimedia

  • 點進維基百科的其中一個條目,點其他語言會跳到Wikidata上(這只是Wikidata的其中一個小功能)

特色

  • 人人可編輯的知識庫
  • 適合給機器看的維基百科
    • 維基百科的資料要處理自然語言,很不方便
    • 做成類JSON就好了
  • 結構化
  • 連結(Linked)
    • 點進去一個條目後會有這個條目相關的性質連結,將這些條目串連在一起
    • 連成Graph,可進行算法、搜尋等

如何取用

Wikidata 跟其他專案相比有什麼特別的地方

  • 多語言(跨語言資料庫)
  • 開放且CC0授權(到處都可以使用)
  • 人人可編輯

一份擴充中的Wikidata筆記

AI for the Art in a Box

講者: 張嘉哲

  • How about AI in Art?

  • Generative Adversarial Network(GAN,不是唸幹)

    • 想像有壞人跟警察
      • 警察:想辦法認出壞人
      • 壞人:想辦法騙過警察

經過層層的訓練,其實壞人可以生出以假亂真的照片,警察可以做出非常厲害的判斷,目前都是拿壞人的軟體來用,生成照片

生出2D萌妹
Q.AI是否可以越來越像人?
AI also can Generate Patch Images or Panaorama Images (用拼的可以拼出360度的全景照)
人類會用越來越AI的方法,去教導AI。

COCO-GAN: Conditional Coordinate Generative Adversarial Network

自動生出風景照

AI也可以自動生成素描的照片。

lay as You Like: Timbre-enhance Multi-modal Music Style Transfer

AI藝術並不是為了取代藝術,而是為了幫助人類創作出更好的藝術。

TMML真相靠自己─You are Fake News!

github repo
Slides

8 categories 八類別

  • Bias 扭曲
  • Conspiracy 陰謀論
  • Hate 仇恨
  • junksci 偽科學
  • satire 諷刺
  • state 受監督
  • true 真(新聞)
  • fake 假(新聞)

Wordcloud & Scatterwords

找文字雲和重要的單詞

  • true
    • "Breibart"
  • False
    • "podesta"?

Sentiment Analysis

  • 內容
    • 以0標準,做正向、負面的分析
    • 以satire諷刺類別(內容詞彙)最為正向
  • 標題
    • 以Junksci偽科學的標題最為正向

Feature Selection(Statistics-based approach)

  • Chi-Square statistic

  • Log Likelihood Ratio

    • more clear intuitive than
  • Mutual Information

    • Pointwise Mutual Information(PMI)
      • 可能有負值
      • 罕見的term可能會有相對高的分數
    • Expected Mutual Information (EMI)
      • 解決PMI的問題,實用性較高
  • Average TF-IDF scores

    • Term Frequency (TF)
    • #TODO
process
  • convert to POS

    • part of speach tags
  • POS tagging

    • data cleaning
  • POS processing

    • Feature Slection:

      • Chi- square/
      ​​​​    st=>start: Term Dictionary
      ​​​​    op1=>operation: Multinomial Naive Bayes classification
      ​​​​    e=>end: Test Result
      
      ​​​​    st()->op1()->e
      
  • Classification Result
    • 有無Feature selection 對於結果有顯著的差異
  • label the level for ML
    • true:1
    • mostly true:0.8
    • 0.5
    • 0.3
    • fake:0.1
    • pants on fire:0
  • dilated causal CNN
    • 採用CNN原因: 相信fake news多出於同個寫手(相同pattern)
    • 會保留時間上的相關性
  • biderectional RNN
    • LSTM + GRU(標準做法)
  • 生病心得分享(#)
    • 感謝照顧
    • 請大家保持身體健康
  • 結論
    • Define FAKE news?
    • Domain specific task
    • Unite with other metadata
      • cnn: author/publisher, title, data;
      • rnn: content

從學校到業界,工程師作為職業的現實

講者:蒼時弦也

學習

非本科的程式學習

  • 規模問題
  • 興趣的重要性

工作是痛苦的,工作沒有想像中容易,這很現實。

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →
單純的興趣可能更適合

  • 學會\(\neq\)掌握
    • 會寫,但不知道為什麼這麼寫
  • 花時間思考程式該怎麼寫

合作

如何與其他人合作

  • 大多時候不是一個人
  • 當是一個juniors的時候發現很難跟別人合作
  • 溝通失敗的原因
    • 缺少時間溝通
    • 缺少一個規則
  • 表達想法的重要性
    • 例如 : 解析csv,要不要留header

共享情報

  • 回報進度、遇到的困難 很重要

下決策

正確的判斷

  • 我現在的架構好嗎?
    • 例如:Docker到底要不要用?

程式架構沒有正解

  • 用經驗去評估、選擇適當的選項
    • 例如:畫出來的圖是對的,對系統的理解是錯的
      • 對客戶需求認知有誤,導致設計出來的系統更為複雜。

角色轉變

從初級到資深

  • 更多工作和責任
  • 如果身為team leader,要為下面的人擔做決定的責任

指導新人

  • 做code review,協助新人改善寫code方式
  • 學會指導不同個性的新人

視野的改變

  • 工作做好變成為專案負責
  • 練習用其它角色的角度看事情

應用

理想跟現實的差距

  • 我們對業界的想像,跟業界真實的狀況可能不一樣

你確定你選擇的真的是你想要的嗎?

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →
在工作中不是什麼都可以做的

  • 對客戶或是環境最好的,是大家都可以維護
    • 新技術可以嘗試 但不一定適合工作

選對工作

  • 選對工作,才能找到適合自己的公司

如果你對英文很沒自信的話,可以去日本工作

  • 接受工作時的痛苦,然後享受工作

Q&A

  • Q1: 怎麼知道自己已經是Senior工程師了?(判斷的標準)

    • A:
    ​​​​    st=>start: code 會動
    ​​​​    op=>operation: 知道為甚麼要這樣寫 
    ​​​​    ed=>end: 知道其底層細節(知其所以然)
    ​​​​    
    ​​​​    st(right)->op(right)->ed
    
    • 如何說服其他同事,培養好的人際關係
  • Q2: 工程師一定會爆肝嗎?

    • A: 看公司
  • Q3: 如何充實自己?

    • A: 找到自己的專長,並結合優勢
  • Q4: 做一個專案應該要所有人充分了解嗎?

    • 當然要,你敢讓不了解的人做嗎(?

Lightning Talk

  • 第一位:TDOH發大財 Hrj

    • TDOH不解散大食團

      下周吃燒肉

    • TWCHacker
    • TDOH功德院
    • 培育資訊安全人才
    • 改變大眾對駭客的印象
  • 第二位:待補充

    • 開源文字遊戲
  • 第三位:EAuth

    • 自己的Oauth自己架
    • 網址
  • 第四位:Rust介紹 球魚

    • Rust讀書會宣傳
    • 3/30(六) 晚上19:30 Rust Meetup
    • 不用報名,直接來
  • 第五位:C++與大數據不是只有Py喔:3 清風

    • CERN ROOT
  • 第六位:暨大學生會資訊化 Jack郭

    • WordPress 形象網站
    • Wiki 平台
    • 會員系統
    • HackMD 公告

工研院資安技術分享與技術研發

  • 工業技術研究院(ITRI)

    • 協助技術研發與轉移
  • 工研院資通所

    • Smartphone Virtualization
    • Automated Cyber Offense/Deffense
    • Multi-level Application Whitelisting
  • 2019/4/25 ICT菁英早鳥專案

Select a repo