-gMIS更新:数据透视和hasId等

 

接續上月對 -gMIS 的更新,繼續完善和豐富 -gMIS 的相關功能與特色。這次主要更新包括實現一種聯機分析處理(OLAP)的數據分析透視功能,另外還有實現了對hasId的擴展,以及其他一些細節完善。

按慣例先關心環保,北京的天氣依然是霧霾重重,而且漸次嚴重,2016Dec17,北京霧霾紅色預警,汽車單雙號限行,中小學停課,預計此次空氣污染將持續5天左右。

1. 數據透視及統計分析,pivot table

聯機分析處理(OLAP, Online Analaytical )是與OLTP對應的一種術語。它與數據分析、數據統計密切相關的應用程序或系統。通常情況下,管理信息系統(MIS)關注的更多的是OLTP(聯機處理程序)如作業的流轉、目標系統的管控等。OLAP本身有專業的數據分析及處理程序來做,比如SPSS,Tableau等,也能夠在通用軟件入 Microsoft Office Excel中看到透視表的功能(Pivot table)。

此前,我們在操作中曾經遇到過需要處理100萬條數據的複雜統計分析,這種數量級,在Excel中就比較吃力,甚至在Windows的作業環境下,文本文件處理程序如 NotePad, Notepad++等,打開這樣的文件也有困難。-Ufqi-dev 曾經列過類似軟件開發計劃。

 

本次更新中,我們在 -gMIS 中增加了依托書庫查詢的數據分組查詢與透視功能。可以實現簡易的分組聚合,排序等數據分析的基本功能。能夠替代多數數據統計系統,實現部分OLAP的功能,與業務支撐系統相集合,可以提供更加簡便的決策支持。

gMIS的透視統計分析設計原型參考了Microsoft Office Excel中的 Pivot table,實現效果類似如下圖。

 

在 gMIS 部署實例中的透視功能截圖。

 

遵循 Microsoft Office Excel中關於透視表的相關設置,減少用戶學習成本,同時進一步的減少了列項設置,變寬表為長表,降低了調用的複雜度,用戶使用時更容易入手。

對比Excel的四個步驟,gMIS透視減縮為兩步三塊的設計:1)在pagenavi中根據高級檢索功能,篩選出結果集,然後在結果集頁面上,點擊“透視”;2)在透視界面上,選擇分組項,求值項和排序項,然後遞交可形成長表。兩步是先篩選,后分組。

2. hasId擴展

hasId 是 -gMIS中 的一個全局變量,用於標識某個被管理的數據表/數據對象是否有全局唯一字段/鍵值。 按良好的設計規範,數據表應該有全局唯一的字段或鍵值。然而世界不總是“良好”的,有些時候gMIS接管的項目,不是從一開始,所以需要面臨沒有良好設計的數據對象。

比如一個常見的流水表,如果有唯一Id號,可以輕易地獲取某條就的詳細信息,或者修改、打印、刪除等操作,而如果沒有唯一Id號,事情就變得有些災難,如果設置了唯一鍵值,比如多個字段的組合,可以依照這些組合條件檢索到目標記錄;而如果沒有唯一鍵值,要找到目標記錄,幾乎需要用到所有字段作爲約束條件,即便是這樣,也很難保證就是目標要命中的記錄(考慮到有重複的情況)。

hasId模塊儅檢測到目標數據表沒有Id時,此前無法進行針對單條記錄進行操作的清空,取而代之的是報告一項錯誤,請管理員、開發人員增加一個id字段,或者通過xml配置文件,指定某一個字段履行唯一id字段的職責,通過myId來傳遞。

今次改進,即是兼容和擴展了這種可能,儅沒有id,也沒有通過xml指定myId,hasId模塊試圖去探測primary key和unique key,儅獲得相應的字段或者字段列表時,轉為hasId的情況。最糟糕的情況是檢測 primary key/unique key失敗,這樣, hasId模塊仍將繼續,取xml配置文件listcount指定的前n個字段作爲 unique key的字段,如果沒有xml配置文件指定,則使用默認的 listcount 值,也即前n=7.

簡而言之,目標數據表是否有良好設計(有無id),是否通過xml配置文件指定id,是否有primary key/unique key等情況,均被cover上,hasId擴展模塊獎對這些情況進行智能處理,系統robust更多一些。

one more thing, 智能再多一些,如果hasId知道了目標數據對象的unique key,那麽再檢索的時候,如果同時使用了unique key的字段,還有其他補充字段的條件,則其他補充字段條件就可以省略不計。 比如使用id查詢,如果再給定狀態,形成 id+istate的查詢,則istate應該自動被丟棄,如果id是unique key,就不同時存在兩狀態的同一個unique key的記錄。

3. 其他調整與完善

繼續完善和調整了首頁面顯示導航;

繼續完善了工作流相關模塊;

默認inserttime/updatetime為UI錄入時為只讀狀態,也即這些字段顯示后有系統自動生成。
也可以通過xml配置文件的readonly做控制。

增加filterReplace功能,與輸入validator不同的是,filterReplace是將輸入的内容使用給定的匹配模式(主要是正則表達式)進行替換,比如一個id期望值是數字1234,如果輸入了a1234,則validator會警告說不合法,中止流程並請用戶修正,而filterReplace則會“粗魯地”匹配出1234進行繼續,丟棄a,不提示,不中斷流程。這個有些類似與搜索引擎的智能修正。

 

gmis-logo-201606

-gMIS 是一种基于 -GWA2 的通用管理信息系统软件,具有可配置的输入和输出接口。
可以在其上构建各种管理应用软件系统,如
内容管理系统(CMS),客户资源管理(CRM), 企业资源计划管理(ERP),
办公自动化系统(OA)等, 以及各种行业应用管理系统软件,如
人力资源管理系统(HR),学生管理,档案管理,旅游管理,图书管理,
商品管理及业务运营支撑系统等等。
实现零代码开发、搭建各种管理信息系统(MIS).

Lower Costs, 降低成本; Better Productivity, 提高效率.

发表在 -gMIS, 计算机技术 | 标签为 , , , , , | 4条评论

中国国民党革委会中国国民党Apache Softwares亮月亮科技

为什么火烧圆明园,不烧紫禁城

最近一直在看近代史,徐中约先生的《中国近代史》,唐德刚先生的《晚清七十年》,张鸣老师的《重说中国近代史》,端木赐香老师的《这一次我们又挨打了》。袁腾飞老师说过一句话:中国的历史教科书上,真实性不超过5%。以前我还不信,看过这些书后我发觉,袁老师说的这个数字有些乐观了。

就拿近代史上这件最让中国人恼火的事情来说吧:为什么圆明园会被烧?

在历史教科书上,中国的形象是一个清纯脱俗的少女,外面的英法美日都是些风骚贱货,整天欺负我们,亡我之心不死。1860年,英法联军打进了北京,烧毁了圆明园。这件事就是表明他们风骚贱货的最好例子。

这件事中国人一说起来都咬牙切齿,它被当成国耻写进了历史书里。然而,有一个问题我们好像忽略了:为什么英法联军打进北京后,烧的是圆明园,而不是紫禁城?

按理来说,紫禁城是皇宫,是大清权力的象征, 既然要放火,那应该放在这里才对。而且圆明园在今天的海淀,清朝时还是北京城的郊区,坐地铁过去都要十几个站。联军都打到紫禁城门下了,为什么不顺带烧了紫禁城,却要拐弯绕到郊区去烧一个皇帝的私人休闲娱乐场所?

在历史书上,这段历史没有细讲。十几年前张铁林、刘晓庆演了一个电影《火烧圆明园》,电影里也没有讲为什么要烧圆明园,好像圆明园莫名其妙地就被烧了。圆明园被烧的真实原因,好像被我们有意地隐藏了起来,有些不好开口的地方。那么英法联军为什么要烧圆明园而不烧紫禁城呢?

事情说起来其实也不复杂。鸦片战争后,中英签订了《南京条约》,十二年后,英国人又跑来找事了,要求修约。什么是修约呢?英国人觉得,《南京条约》都签十几年了,大清应该明白了自由贸易的好处吧?那么第一次开放的广州、厦门、福州、宁波、上海这五个通商口岸就显得不够了,英国人希望大清能把全国都开放了,实在不行的话,沿海大城市、长江沿岸城市都开放也可以。

而且《南京条约》规定,英国人只能在这五个城市活动,中国其余城市都不能去,英国人希望这回能在全中国畅行无阻。还有,两国最好能互派公使,我派个大使驻北京, 你派个大使驻伦敦,方便两国搞外交。另外,英国人还希望能向大清皇帝亲递政府公文,英国人以前想和大清最高领导人搞搞交流会晤,根本就没门,大清皇帝根本就不见, 各级官员也都踢皮球,没人理,英国人因为这事身子都掏空了。

这些就是修约的主要内容,按近代史大家蒋廷黻先生的归纳就是:“公使驻京,内地游行,长江通商,这是双方争执的中心。”站在国际角度来看,这是很正常的事,无论是今天还是在一百年的国际,这些早就成了共识。但问题是,英国人面对的大清,是一个自大自负、目中无人的政府。大清从来都认为自己是天下共主,是天下所有人的爸爸,英法美什么的都是海外藩属国,是咱儿子,儿子就要好好孝敬爹,好好低头做人,闹点事也不用当真。这就是鸦片战争后清政府根本没有吸取教训的原因。

而这几条里,大清最抵制的一条是公使驻京、亲递国书,因为英国人坚决不磕头,你要亲递国书还不磕头,做梦去吧。千万不要小看这一条,这一条可以说就是后来导致战争的起因。为什么清政府必须要洋人磕头呢,因为磕头已经不仅仅是一个动作了,它是大清皇恩浩荡的体现,是执政合法性的基础。洋人本来就是海外藩国,见到天下共主没有不跪之理。而且我天朝百姓磕头磕了几百年了,要是你们洋人不磕头,被我们老百姓看到,老百姓都觉醒了怎么办?清政府要求洋人不仅要磕头,还必须是标准的的三跪九叩,弯腰度数不够的不算。其它条款都可以商量,唯独这一条清政府坚持两百年不动摇。

所以事情会怎么发展已经很明显了。英国人跑来要求修约,清政府说,这个外务嘛,我们都是由两广总督处理,你们去广东吧。到了广东,广东大员说,哎呀,这么大的事要中央说话才行啊,你们去中央吧。在这之间,皇上和广东大吏们整天就在演戏对台词。踢皮球是中国人最拿手的事,广东踢到北京,北京踢到广东,英国人就在中间转,转来转去转了几年,快转出脑溢血了,英国人忍无可忍,决定出兵了。

用英国的头号中国通小斯当东的话说就是:“中国听不懂自由贸易的语言,只能听懂炮火的语言。”

用蒋廷黻先生的话说:“总而言之,外人简直无门可入。他们知道要修改条约,只有战争一条路了”。

于是英法联军就带兵来了,打到天津大沽口炮台,以四百人的伤亡占领了大沽口,清军阵亡两千。清军统帅叫僧格林沁,一向牛逼哄哄,认为英军火炮没什么可怕的。这下虽然输了,僧格林沁觉得没什么,不是武器装备落后的问题,是我们操作不够犀利,战术不够正确,走位不够风骚。

僧王不信邪,要死战到底。咸丰急了,跟僧格林沁说,老僧啊,别打了,“以国家依赖之身,与丑夷拼命,太不值矣”。

咸丰还说了句搞笑的话:“天下根本不在海口,实在京师”,意思是提醒僧王,天下之根本不在天津海口啊,是在京师啊,因为我在京师啊,你别搞错了,赶紧回来吧。

僧王一听,有道理,撤了。就这一场战役,就能看出大清君臣对自己和世界的知识水平。

天津守不住了,千万别让洋人打到北京啊,大清赶紧派人到通州跟洋人认怂,行行行,我们愿意谈判。于是两拨人就在通州坐下谈判。

谈判什么呢?呵呵,还是前面那几条,很明显这又是一次对牛弹琴的谈判。咸丰给前线谈判的大臣桂良说,你这一条不能同意,那一条也不能同意,别胆小,大不了再和洋人干一仗,怕个毛!

一个国家最高领导人是这样的智商,如何不悲剧?

英国人发现这完全是在对牛弹琴,果断不谈了,要求直接进京。咸丰一听,这还得了,这帮人胆子不小。于是跟前方的怡亲王说,英国人要是敢进京,你就把他们扣下来。

就是这么一个用屁股做出的决定,直接导致圆明园被烧。

1860年9月18日,也是一个九一八。这一天还在谈判,英国谈判团的团长巴夏礼跟怡亲王说,公使驻京,亲递国书,这一条我们是不会改的,你们看着办吧。说完后,跃身上马,扬尘而去,动作很潇洒。

怡亲王看着巴夏礼,卧槽,这么装逼啊,太嚣张了。于是跟僧格林沁说,皇上说了,他们要是太嚣张,谈判搞不定的话就把他们扣了。僧王姿势水平也不高,听从指挥,就把英国谈判团全都逮起来了,一共39个人。

最搞笑的大清给巴夏礼定的罪名——谋反。

说咸丰的这个决定是屁股做出来的一点也不为过。即使不说世界,说中国历朝历代,从来都是两军相争不斩来使,这在千年前就已经是国际法则了,哪怕野蛮的少数民族都是遵守的,这种例子举不胜举。而到了19世纪,人类已经大幅进步到文明社会的时候,竟然还发生这样的事,这让清政府的声誉和形象在西方国家严重下降。虽然清政府的形象本来也已经够烂了。

但是大清本来就是无视国际规则的,大清眼里也没有什么国际,所以咸丰还很开心,逮了人家的使者,觉得扬眉吐气了一回。僧格林沁抓着巴夏礼很高兴,妈的打仗你有火炮你牛,现在看你还怎么办。僧格林沁强行按着巴夏礼的头,让他磕了几个响头,满足了大清历届皇帝的梦想:终于看见洋人磕头了。

咸丰一看,擒贼先擒王,现在王已经擒了,咱们现在好好教训一下洋人那些小兵。清军出兵了,出兵的名义也很有意思——讨逆。

在通州八里桥,3万9千清朝骑兵出发,冲向2万5千英法联军。天真的大清准备趁着英法联军群龙无首,一举A平敌人。过程就不说了,说下结果:英法联军5死46伤,清方几乎全军覆没。

后来英国人在查看清军的军营时发现清军还在用弓箭和盾牌,说了一句话:“一个发明了火药的国家,竟然还在用弓箭作战。”

联军进了北京,马上就去解救那39个人。巴夏礼和秘书关在刑部大牢里,其他37人关在圆明园。联军在圆明园把这些人解救出来后,发现只剩下了19人,有20个已经被整死了。而且有些人的尸体被大卸八块,砍掉胳膊的,砍掉腿的,惨不忍睹。

后来有个幸存者回忆说:被逮的人里面有个叫的鲍尔比的《泰晤士报》记者,被抓起来后第四天就被整死了,尸体被扔到野地里喂野狗,吃光了。还有个安德森中尉,手脚被重度捆绑生了蛆,蛆一直蔓延到全身,精神错乱狂叫三天,死了。还有一个法国人,身上也生了蛆,蛆爬的他嘴巴、耳朵、鼻子里全都是,痛苦而死。这个幸存者还说,他在狱中数蛆,每天能繁殖1000只。

看到了这些场景,联军怒不可遏,对大清的野蛮忍无可忍。联军的总司令额尔金表示,必须要给清朝一个惨痛的教训。因为这些俘虏是在圆明园内被虐待而死的,所以要烧了这个园子。

当时,法国有个将军叫孟托班,他建议烧紫禁城。孟托班说,圆明园不设防,不算交战区,烧这里不好,要让清政府好好记住这个教训,那就烧皇宫,让他们更疼,才能记住。

但额尔金不同意。额尔金说:烧皇城,相当于烧北京,北京百姓又没惹咱们,为啥跟人家百姓过不去呢?圆明园是个私人园林,还是虐待我们俘虏的地方,就烧这里吧。

于是,圆明园就这么被烧了。烧之前,额尔金在北京城贴了张告示说:“任何人,无论贵贱,都要为自己的欺诈行为受到惩罚,18日将火烧圆明园,以此作为对皇帝的惩罚。与此无关人员不受此行动影响,唯清政府为其负责。”

清朝有个自媒体人叫汪康年,他写了个书叫《记英法联军焚劫圆明园事》,里面记载了一件好玩的事。英法联军在圆明园准备放火,却发现没有点火的东西,“各军并无火器,唯有水桶、水锅而已”。听说联军遇到了困难,附近海淀百姓纷纷带上火盆、秸秆赶来,助洋人一臂之力。汪康年记载,英法联军放火后,中国人跟在后面“到处引火延烧”,让火势扩大。这些清朝百姓完全不觉得圆明园跟自己有什么关系,最大的愿望是能跟老外一起多抢点宝贝出来。

这就是圆明园被烧的大致情况。皇帝为了自己不受屈辱,引来了一场战争,再因为自己的野蛮无知付出了圆明园被烧的代价,可以说这场战争是中国近代史上最无聊的一场战争。

但是,一百年多年过去,有些奇怪的事情却发生了:皇帝家的私人地盘被烧了,人家自己的老百姓跟着去打砸抢烧,一点不心痛,我们后人却恨得咬牙切齿;当年清朝皇帝本人的屈辱,突然变成了人民的屈辱,国家的屈辱,民族的屈辱。这是个不太好笑的笑话。

我们的历史书没有讲过这段历史。历史书的作用是培养我们记住圆明园被烧的仇恨,而不是让我们知道圆明园被烧的教训。这是比圆明园被烧更可怕的事情。


2016-12-10 夜深人静读历史

作者:李红豪
来源:李红小豪

-R/B2SI ,    -R/r2SJ

发表在 社会生活 | 标签为 , , , , | 留下评论

Apache Softwares亮月亮科技OpenAI ChatGPTPdf Drive

清澈鱼缸与清晰的吉娃兔GWA2

0.

污浊的空气

2016Dec04,周末的北京又是一个重度、危险的空气污染时期。 已经连续三四周是每逢周末就重度污染,而且日渐严重!我们需要做些什么?除了圈在室内,还能做些什么?

重度危险的北京空气污染

1.

清澈的鱼缸

所幸,室内除了养花草,经过小半年的努力,浑浊的鱼缸终于清澈透亮。

没想到养鱼还是那么费周折的,初期是了解鱼的知识,然后是鱼缸的知识,再然后是水泵的知识,再然后是氧气的知识,再然后是水草的知识,“清道夫”的知识。这些还都不够,要构建一个生态,少不了要了解细菌及菌群食物链等。让鱼缸这次清澈见底,自建循环生态的关键一点是,用上了“超级硝化细菌”这样的大杀器。

Anyway,经历因为水体浑浊,金鱼们前仆后继的抗争后,世界清朗起来了。

清晰的鱼缸

2.

清晰的吉娃兔GWA2

经过近半年的思考和实践探索,逐渐明晰起来的还有 -GWA2 吉娃兔 的发展线路图。

GWA2 RoadMap / 吉娃兔发展线路图

GWA2 一种软件开发的范式,是跨编程语言的,是对软件架构的一种思路概括。更具体地,是对OOP编程的具体实践,在对象封装和代码复用的同时,实现与开发效率、管理维护的某种平衡。在其核心,提供了对运行时存储和持久化存储的分类管理,让开发者更加精力集中的关心业务逻辑,从而体现出E.A.S.Y的目标,Easy Along, Swift Yield,轻松启动,快速产出。

据上图,GWA2在编程语言上有二级版本,也即GWA2 in Java, GWA2 in PHP, GWA2 in C#等。在每一种开发语言下,根据运行方式的不同,可以划分为寄宿在Web Server中运行和单独命令行方式运行,如GWA2 in PHP就有两种运行方式,可以通过Web Server中调用运行,也可以在命令行下调用运行。

在寄宿于 Web Server方式时,又会有因为不同Web Server的不同而触发的不同版本。

在每种运行方式下,又可以细分为是否有GUI(图形化用户交互,Graphic User Interface)的子类。在Web Server中运行时,其GUI有基于HTML的表现层。在命令行下,如果没有GUI可以视作为一种后台运行的某种任务、服务;如果有GUI界面,可以看做是某种需要密集交互的用户应用——当然不是很严格的区分,有些后台服务,也有前端GUI控制台。

若在命令行下有GUI运行的情况,进一步地需要针对不同的操作系统来开发不同的终端GUI。

简而言之,GWA2的发展架构是多语言、多运行方式、多操作系统、多Web Server的一种软件开发设计框架,可以大致地划分为3级或者4级。

基于这些设计,GWA2可以用来构建一个网站或者一个管理信息系统(如 -gMIS )

可以用来写一个符合RESTful的API,

可以实现一个网络爬虫服务,

可以用来构建一个移动App应用或者桌面App应用程序。

发表在 -GWA2, 计算机技术 | 标签为 , , , | 留下评论

汽車老司機車載汽車老司機好奇婴幼儿中国国民党革委会

-gMIS 更新多库连接及工作流workflow

 收到 -facebook 提醒说 -gMIS 没更新我才示意到有阵子沒有写关于 -gMIS 的内容了。

实际上,-gMIS 一直在更新,如下是几点值得书记的特色功能。不过首先要说的就是2016nov26,北京雾霾严重污染,pm2.5点指数300多。

1. 实现 -gMIS 的多数据库连接功能

得益於此前的 -GWA2 的多數據庫連接的升級,-gMIS 直接連接和操作多個數據庫成爲現實。此前 -gMIS 連接多個數據庫,衹是某種理論上的設想,並預留了全局參數 &db 在每一個request請求裏。遲遲木有落地實現,是此前部署的項目,多數為中小型項目,沒有多到必須同時連接和操作多個數據庫的需求。

這次有機會得以在具體項目中實施, -gMIS 同時連接和操作多個數據庫,其過程還算順利,將多個數據庫的連接及訪問權限,通過 inc/config.class進行設置,然後在訪問時,指明需要連接的數據庫實名或者假名,如 ?db=second_db&tbl=a_table,則該請求會將second_db的a_table讀取出來,並與環境變量、配置信息做merge操作。

連接多個數據庫的操作,主要分清 -gMIS 運行所依賴的 master_db/primary_db和所需要操作的其他數據庫。-gMIS 運行本身需要數據庫支持,比如存儲用戶賬戶信息、訪問權限信息和生成、管理輔助信息等。這一改動提現在 comm/tblconf 和 class/gtbl.class 中。

這種跨數據庫的連接,該是很基礎的一部分,更高層面的如果多個數據庫能夠實現跨數據庫的互操作,比如從a數據庫的b表中將c這條記錄的d字段值飛綫複製到a2數據庫的b2數據表中的c2記錄的d2字段中。

2. 实现工作流Workflow的簡易原型

在管理信息系統中增加工作流的想法由來已久,這次開始一個簡單的嘗試,增加了一個用於任務管理的todo list。至於一個task如何流轉,還在考慮和設計中。

新增的這個 todo list類似辦公桌案頭的便箋,來一件無法當即處理或者不需要當即處理,也即哪些重要但不緊急的事物時,可以臨時記錄一個便箋在案頭,到todo list裏,然後賦予其各種狀態(如待做、進行中和已完成等)。

顯然,距離實際的工作流Workflow還有好遠,實際的工作流應該是一個涉及多方、多個交互環節的工作/任務的流轉的過程記錄。這個需求也在 todo list裏。

3. 改进了桌面/默认页等細節

繼續改進優化 -gMIS 的默認首頁,增加了 todo list在桌面;

在進入目錄一層時,優化提現目錄下的功能模塊;

在“添加到桌面”為空時,優化顯示隨機模塊到桌面;

改進對 pnsc 和 pnsck 的編碼,使用 -Base62x 對其進行優化;

改進資源文件的路徑修飾,默認父路徑是當前管理後臺的 upld 目錄,增加設置為 srcprefix;

改進對默認時間字段的操作,如果是add操作則更新填入諸如insertdate/inserttime,createdate/createtime等字段;如果是edit操作則更新填入updatedate/updatetime等字段;

改進對字段的 trim 操作。

-gMIS 是一种基于 -GWA2 的通用管理信息系统软件,具有可配置的输入和输出接口。
可以在其上构建各种管理应用软件系统,如
内容管理系统(CMS),客户资源管理(CRM), 企业资源计划管理(ERP),
办公自动化系统(OA)等, 以及各种行业应用管理系统软件,如
人力资源管理系统(HR),学生管理,档案管理,旅游管理,图书管理,
商品管理及业务运营支撑系统等等。
实现零代码开发、搭建各种管理信息系统(MIS).

Lower Costs, 降低成本; Better Productivity, 提高效率.

发表在 -gMIS, 计算机技术 | 标签为 , , , , | 3条评论

汽車老司機好奇婴幼儿中国国民党革委会中国国民党

鸡蛋黄色的Orange和外教课english dict

Hanu顺利的完成入幼儿园的各种手续和检查,第一天、第一周坚持得很好,尽管到第三天有点不耐烦点情绪,但在老师和同学间还是控制自己很好,就是早上离家点时候有些不安点心情,也多会一晃而过。

第二周开始,居然从老师那里学来了,Apple,Banana的单词,并且在我带水果去上班的时候,认真地将水果用像不清晰的中文一样的语音把所会的两个单词表达了一遍。

最近有一次早上,我带他搭地铁去幼儿园,路上就从包里摸出一个小橘子?,问Hanu,这是什么,他很认真的回答是Orange,很赞。接着问又问,Hanu,对的,这是orange,那么这是什么颜色的呢?

出乎我带所料,他回答说是“鸡蛋黄色的Orange”。

观察Hanu长大的过程,与教育Yoyo的过程不一样,一是我的年岁又长了一些,同时视野也宽阔些,更重要的是,随着计算技术的发展,人工智能逐渐成为热点的研究领域,教会一个机器做某件事,是非常非常困难的事情。

当看到Hanu不几天的功夫就能在刚学会走路时,就能费力地爬上沙发。当其时在广州的大湄公河流域移动互联网论坛上,我还在分享AI的发展,MIT的一个跳跃的“机器豹”,对比人类的学习能力,机器或者人工智能真的还不能算是入门或者起步。一定要有某种或者某个节点的”顿悟“,才有突破。

适逢前周在中国计算机学会的青年科学家论坛上,聆听几位研究脑科学的教授给计算机学背景的同学分享了脑科学、神经科学的研究成果,所以当Hanu说出,他看到的Orange说“鸡蛋黄色”的时候,还是引发了我很多思考。

他的知识是怎么组织和管理的,他的逻辑是怎么关联的?显然他的词汇库里已经有了对“颜色”对模糊认识,但还没有能够使用和认识“黄色”的能力,这种情况是怎样一个过程形成了,Orange的颜色与他几乎每天都吃的鸡蛋黄产生了关联?

他应该也看到秋天的落叶(如满院子的银杏、梧桐河槐树)和黄色的衣服、鞋子、皮肤等,那些都是黄色,为何没有与Orange关联并用它们来描述?

都是圆的? 他的大脑的某种思维可能已经做了这种判断。

如果这个逻辑过程用人工智能的方式来实现会怎样?

Yoyo最近在上外教英文语言课,不是那种face 2 face的,而是通过Skype等在线工具进行远程教学。这种伴随着技术进步而带来的便利,是我们那时候学习所不能比拟的,我修习研读英文,也只有到大学才偶尔有机会与真实的外国人沟通。

我旁听了两次之后,提出Yoyo不应该再使用英中词典。当我只是提到这一点时,她似乎一下子就明白了,如果在与外教老师进行talking的时候,如果使用英中词典,相当于自己在额外地进行着“同声传译”,不会某个单词--查出中文意思--翻译成对应的英文--组织句子,她随即开始回想,原来之前“好强大”,好别扭,下次外教课上该使用english dict,英英词典——可能很多英语学习者一直以来都没用过或见过的,比如 -dict , -wordweb , or -oxford-dict。

我本要做进一步的解释,看来不必要了,她背后是怎么推理的?如果英文词典的解释看不懂会怎样?那些外企中中文对白夹杂英文单词时,真是为了“帅气”或者fashion吗?多数情况不是,真实情况是对中文掌握的没有英文好。翻译工作做得不好。语言是为了交流,当使用某个英文单词更能让交流顺利进行时,自然会被选。

再次回到上面说的那个计算机学会的认知计算的讲座,尽管都是中国人对中国人讲,但ppt基本都是英文,言语间也中英夹杂,实在是这样更容易理解和交流。

为何Yoyo自己之前没有反思?如果是机器逻辑来实现这种推理该怎么写?

人工智能的前景光明,其突破或者顿悟可能不在于对计算体系的构建,而在于人类对自我认知过程的深入学习与了解。上千亿(hundred billion)个神经元的大脑,大部分仍是一个个的谜。

也许模拟是起点和必由之路,装着装着就成真入戏了。

发表在 社会生活 | 标签为 , , , | 2条评论

汽車老司機車載汽車老司機好奇婴幼儿中国国民党革委会

-GWA2 更新实现Filea和Perl版本的引入

2016nov19周末北京雾霾继续严重到重度污染!这次政府开始利用各种渠道提醒市民空气污染注意防护。继续在 -GWA2 上的更新,根据研发计划,这次结合实际生产需要,完成了 -GWA2 的Filea模块。截至目前-GWA2已经形成了完善的Dba,Cachea和Filea等模块,图例如下。

-gwa2更新多数据库驱动支持

GWA2 Dba

-GWA2 更新缓存调用built-in cache方法

GWA2 Cachea

这次实现的是Filea

GWA2 Filea

在早前,读写文件操作是通过 WebApp::setBy(‘file:’, $args)的形式来调用WebApp::readObject或者WriteObject来实现的。read/writeObject进一步的调用编程语言对File的读写操作,在PHP中,较完善的设施就是 file_get_contents和file_put_contents.

这样做并没有什么不好,而且使用编程语言的文件读写实现,可能效率还更高一些。然后某%

发表在 -GWA2, 编程技术, 计算机技术 | 标签为 , , , | 2条评论

汽車老司機車載汽車老司機好奇婴幼儿中国国民党革委会