標籤:

對於人工智慧的學習有哪些建議?

科技爆炸論一直都是誘惑啊。想和福建省泉州附近的愛好者一起奮鬥、請老師教我計算機語言。夢想堅持了11年,好想好想去踐行啊。我可以辭職去學。


人工智慧編程——咳咳,我也是搬運工。。。。

AI Programming Resources

http://www.cs.berkeley.edu/~russell/prog.html

PC AI - Logic Programming

PC AI - Artificial Intelligence

Computational Logic

http://archive.museophile.sbu.ac.uk/compulog/

http://Genetic-Programming.org

genetic-programming.org-Home-Page

ILOG, Inc.

IBM - ILOG is now part of IBM

University of Washington: Constraint-Based Systems

UW Constraint-Based Systems

Declarative Systems Software Engineering (DSSE) Group

Dependable Systems Software Engineering Research Group

Extreme Software

Price Request

Topics in Information Processing 2CS24: Declarative Languages

2cs24 Declarative

Constraint Logic Programming

http://www.ai.univie.ac.at/oefai/clp/

Catalog of compilers: CLP(R)

http://citeseer.nj.nec.com/24834.html

http://www.cs.unh.edu/ccc/archive/

comp.lang.functional FAQ

http://www.cs.nott.ac.uk/Department/Staff/gmh/faq.html

Mondrian

Mondrian"s E-Cigs

John McCarthy

John McCarthy

Screamer Tool Repository

http://www.cis.upenn.edu/~screamer-tools/home.html

Lisp Resources

http://eksl-www.cs.umass.edu/lisp-resources/

Successful Lisp

Mercury Project

http://www.cs.mu.oz.au/research/mercury/

The Miranda Programming Language

The Miranda Programming Language

Mozart Programming System

http://www.mozart-oz.org/

Oz Programming System

The Oz Programming System

Logic Programming Associates

Welcome to LPA

Cetus Links: Prolog

http://www.cetus-links.org/oo_prolog.html

The Scheme Programming Language

The Scheme Programming Language

http://Schemers.org

Welcome to schemers.org!

CMU Scheme Repository

http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/scheme/0.

html

自然語言處理

HNC自然語言理解處理網站

歡迎光臨HNC自然語言理解網站!

comp.speech WWW Site [UK] - Information on speech technology products and soft

ware.

comp.speech WWW site

Computational Semiotics and Fuzzy Linguistics

http://www.ldv.uni-trier.de:8080/ldvpage/rieger/pub/aufsaetze/ssa96/ssa96-ab

stract.html

Computational Semiotics

Computational Semiotics

Grammar Formalisms

http://cslu.cse.ogi.edu/HLTsurvey/ch3node5.html

Grammatical Inference

Homepage of the Grammatical Inference Community

LINGUIST List virtual library

http://www.emich.edu/~linguist/www-vl.html

"String Searching Algorithms" Book

http://homepages.tesco.net/~gas/ssa/

AGFL Grammar Work Lab

The AGFL Grammar Work Lab

Natural Language Software Registry

Registry

神經網路

Neural Networks Tutorial Review

http://hem.hj.se/~de96klda/NeuralNetworks.htm

http://www.cnblogs.com/xypfs21/admin/ftp://ftp.sas.com/pub/neural/FAQ.html

Image Compression with Neural Networks

http://www.comp.glam.ac.uk/digimaging/neural.htm

Backpropagator"s Review

Backpropagator"s Review

Bibliographies on Neural Networks

http://liinwww.ira.uka.de/bibliography/Neural/

Intelligent Motion Control with an Artificial Cerebellum

Russell Smith

Kernel Machines

Kernel-Machines.Org

Some Neural Networks Research Organizations

http://www.ieee.org/nnc/

NEURAL

Neural Network Modeling in Vision Research

http://www.rybak-et-al.net/nisms.html

Neural Networks and Machine Learning

UofT Machine Learning

Neural Application Software

Image Video identification, visual search software for Quality Control,
Product ID, Tag-less ID, website image search engine, and video surveillance

Neural Network Toolbox for MATLAB

http://www.mathworks.com/products/neuralnet/

Netlab Software

http://www.ncrg.aston.ac.uk/netlab/

Kunama Systems Limited

http://www.kunama.co.uk/

人工智慧綜述

AI Tutorial Review

http://www-2.cs.cmu.edu/Groups/AI/html/faqs/top.html

http://www-formal.stanford.edu/jmc/whatisai/whatisai.html

http://psych.utoronto.ca/~reingold/courses/ai/

http://spinoza.tau.ac.il/hci/dep/philos/ai/links.html

http://www.csc.liv.ac.uk/~frans/OldLectures/2CS24/ai.html

Journal of Artificial Intelligence Research

http://www.jair.org/

The Turing Test and Intelligence

http://www.abelard.org/turing/tur-hi.htm

AI Resources

http://www.aaai.org/Pathfinder/pathfinder.html

http://www.cs.berkeley.edu/~russell/ai.html

http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/html/other/rep

ositories.html

http://ai.iit.nrc.ca/ai_point.html

http://www.compinfo-center.com/tpai-t.htm

AI Programming Resources

http://www.cs.berkeley.edu/~russell/prog.html

Some AI Research Organizations

http://www.ai.univie.ac.at/oefai/oefai.html

http://www.ai.mit.edu/

http://sound.media.mit.edu/

http://ai.iit.nrc.ca/

http://www.aic.nrl.navy.mil/

http://ic-www.arc.nasa.gov/ic

http://www.holotopology.com/

http://www.iiia.csic.es/

http://www.fingerpass.net/

http://www.aaai.org/

專家系統

Introduction to Expert Systems

http://members.aol.com/jacksonpe/music1/introduc.htm

http://www.csc.liv.ac.uk/~frans/OldLectures/2CS24/expertSys.html

Berkeley Expert System Technology lab

http://best.me.berkeley.edu/

Jess, the Expert System Shell for the Java Platform

http://herzberg.ca.sandia.gov/jess

CLIPS: A Tool for Building Expert Systems

http://www.ghg.net/clips/CLIPS.html

FuzzyCLIPS - Fuzzy Work(Expert System)

http://www.iit.nrc.ca/IR_public/fuzzy/fuzzyClips/fuzzyCLIPSIndex.html

Knowledge Acquisition for Expert Systems at Acquired Intelligence

http://www.aiinc.ca/

HUGIN EXPERT

http://www.hugin.com/cases/

Computer program designed to solve standard American crosswords

http://www.cs.duke.edu/~keim/proverb/

GEOMET Technologies, Inc.

http://www.geomet.com/ai.htm

ExpLore Reasoning Systems: Business rule and expert system

http://www.ers.com/

知識表示

Knowledge Representation

http://pages.cpsc.ucalgary.ca/~kremer/courses/CG/CGlecture_notes.html

Knowledge Discovery In Databases: Tools and techniques

http://www.acm.org/crossroads/xrds5-2/kdd.html

Resource Description Framework (RDF) Schema Specification 1.0 ,W3C Candidate R

ecommendation 27 March 2000

http://www.w3.org/TR/2000/CR-rdf-schema-20000327/

W3C Resource Description Framework Resource Description Framework (RDF), the W

3C Standard for knowledge representation on the Web

http://www.w3.org/RDF/

Knowledge Interchange Format (KIF)- Knowledge Interchange Format (KIF), a DARP

A project based format for exchanging pieces of knowledge bases

http://logic.stanford.edu/kif/kif.html

Data Mining And Knowledge Discovery

http://www.ingber.com/path98_datamining.pdf

AI Knowledge-Based Systems

http://www.ai.univie.ac.at/oefai/kbs/index.html

Knowledge Representation Resources

http://www.cs.cofc.edu/~manaris/ai-education-repository/

機器學習

Machine Learning Tutorial

http://robotics.stanford.edu/people/nilsson/mlbook.html

Reinforcement Learning:An Introduction

http://www-anw.cs.umass.edu/~rich/book/the-book.html

The Journal of Machine Learning Research

http://www.jmlr.org/

Online Machine Learning Resources

http://www.ai.univie.ac.at/oefai/ml/ml-resources.html

http://www.mlnet.org/

Machine Learning at AAAI

http://www.aaai.org/Pathfinder/html/machine.html

Active Logic - inference engine that incorporates a history of their reasoning

as they run

http://www.cs.umd.edu/projects/active/

Machine Learning in Games

http://satirist.org/learn-game/

Machine Learning Group

http://www.cs.bris.ac.uk/Research/MachineLearning/

Knowledge Acquisition for Expert Systems at Acquired Intelligence

http://www.aiinc.ca/

機器人

China Robotics Web Sites

http://www.robotschina.com/

Robot Science Technology - magazine

http://www.robotmag.com/

Mobile Robotics Research Group, Edinburgh University

http://www.dai.ed.ac.uk/groups/mrg/MRG.html

robort topics and links

http://www.cbc.umn.edu/~mwd/robot.html

Arnold goal to design a system of multiple robots, that are individually auton

omous and can team up to cooperatively perform tasks.

http://www.cim.mcgill.ca/~mabous/RESEARCH/

Modular Reconfigurable Robotics - research project from Xerox PARC to design s

mall, autonomous robots that can be reconfigured and linked together to achiev

e different goals.

http://www.parc.xerox.com/spl/projects/modrobots/

Polypod - modular, reconfigurable robot that walks, rolls, and crawls

http://robotics.stanford.edu/users/mark/polypod.html

Australia"s Telerobot on the Web

http://telerobot.mech.uwa.edu.au/

RoboCup: The Robot World Cup

http://www.robocup.org/02.html

智能代理

Intelligent Agent Tutorial Review

http://www.magma.ca/~mrw/agents/

http://agents.umbc.edu/introduction/

http://www.davidreilly.com/topics/software_agents/

A Perspective on Software Agents Research

http://agents.umbc.edu/introduction/hn-dn-ker99.html

Intelligent Agents: Theory and Practice

http://www.ecs.soton.ac.uk/~nrj/download-files/KE-REVIEW-95.ps

Software Agents: An Overview

http://www.sce.carleton.ca/netmanage/docs/AgentsOverview/ao.html

Mobile Agents and the Future of the Internet

http://www.cs.dartmouth.edu/~dfk/papers/kotz:future2/

Intelligent Agent Resource

http://www.agentlink.org/

http://www.insead.fr/CALT/Encyclopedia/ComputerSciences/Agents/

http://www.compinfo-center.com/tpagnt-t.htm

定理證明和高階邏輯

Proof Theory as an Alternative to Model Theory

http://www-lp.doc.ic.ac.uk/UserPages/staff/ft/alp/comment/proof.html

FTP"2000

http://www.uni-koblenz.de/ftp00/

Mathematical Reasoning Group

http://dream.dai.ed.ac.uk/

Description of the HOL Theorem Proving System

http://lal.cs.byu.edu/lal/hol-desc.html

Isabelle

http://www.cl.cam.ac.uk/Research/HVG/Isabelle/

Software, Theorem Provers

http://www.tcs.informatik.uni-muenchen.de/~matthes/logikserver/software.html

Inductive Theorem Prover INKA 4.0

http://www.dfki.de/vse/systems/inka/

TABLEAUX

http://i12www.ira.uka.de/TABLEAUX/

演繹與推理

Mechanized Reasoning Systems

http://www-formal.stanford.edu/clt/ARS/systems.html

International Journal of Approximate Reasoning

http://seraphim.csee.usf.edu/Nafips/ijar.html

Case-Based Reasoning

http://www.nupedia.com/article/short/Case-Based+Reasoning/

http://www.aiai.ed.ac.uk/links/cbr.html

David J.C. MacKay: Information Theory, Inference and Learning Algorithms

http://www.inference.phy.cam.ac.uk/mackay/itprnn/ps/

Exploring the Labyrinth of the Mind

http://www.nytimes.com/books/97/07/20/reviews/hofstadter-magazine.html

TMYCIN: Medical Reasoning System

http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/areas/reasonng/medical

/tmycin/0.html

Reasoning about Computational Resource Allocation

http://www.acm.org/crossroads/xrds3-1/racra.html

Qualitative Reasoning Research at UT Austin

http://www.cs.utexas.edu/users/qr/

Qualitative Reasoning Group, Northwestern University

http://www.qrg.ils.nwu.edu/

Formal Reasoning Group

http://www-formal.stanford.edu/

Case-Based Reasoning

http://www.ai-cbr.org/

Integrated Reasoning Group Overview

http://www.iit.nrc.ca/IR_public/english.html

模式識別

Pattern Recognition Tutorial

http://cgm.cs.mcgill.ca/~godfried/teaching/pr-web.html

Pattern Recognition for HCI

http://www-engr.sjsu.edu/~knapp/HCIRODPR/PR_home.htm

RailwayBridge: Medical Applications for Pattern Classifiers

http://www.railwaybridge.co.uk/medimage1.html

Bayesian motion estimation and segmentation

http://www.cs.berkeley.edu/~yweiss/thesis.html

Facial Expression Home Page

http://www.mic.atr.co.jp/~mlyons/facial_expression.html

Keith Price Bibliography Annotated Computer Vision Bibliography:

http://iris.usc.edu/Vision-Notes/bibliography/contents.html

IEEE Transactions on Pattern Analysis and Machine Intelligence

http://www.computer.org/tpami/

Pattern Recognition Information

http://www.ph.tn.tudelft.nl/PRInfo/index.html

http://cgm.cs.mcgill.ca/~godfried/teaching/pr-web.html

Department of Cognitive and Neural Systems at Boston University

http://cns-web.bu.edu/

Attrasoft Neural Network Application Software

Image Video identification, visual search software for Quality Control,
Product ID, Tag-less ID, website image search engine, and video surveillance

optical recognition objectives

http://www.gabitus.com/

博弈論

Computers, Games and the Real World

http://www.sciam.com/1998/1198intelligence/1198ginsberg.html

Machine Learning in Games

http://satirist.org/learn-game/

How Machines have Learned to Play Othello

http://www.neci.nj.nec.com/ homepages/mic/ps/IEEE.pdf

Amit"s Thoughts on Path-Finding

http://theory.stanford.edu/~amitp/GameProgramming/

Game AI

http://www.gameai.com/ai.html

Journal Book Publications on Othello Programs

http://www.neci.nj.nec.com/homepages/mic/publications.html

Chinook

http://www.cs.ualberta.ca/~chinook/

Project: Von Neumann

http://www.krl.caltech.edu/~charles/alife-game/

自適應

READY: User-Oriented Resource-Adaptivity

http://w5.cs.uni-sb.de/~ready/ready-pubs.html

Algorithms for Adaptive Sampling Designs

http://www.eecs.umich.edu/~qstout/abs/Seattle97

Complex Adaptive Systems

http://www.aic.nrl.navy.mil/~spears/

Intelligent Motion Control with an Artificial Cerebellum

Russell Smith

Piranha and Adaptive Parallelism

http://www.cs.yale.edu/HTML/YALE/CS/Linda/piranha.html

The Adaptive Technology Resource Centre

http://www.utoronto.ca/atrc/

Adaptive Environments Center, Inc.

http://http://www.adaptenv.org/

Institute for Adaptive and Neural Computation

http://anc.ed.ac.uk/

Complex Adaptive Systems Research

http://www.casresearch.com/

基於規則系統

Rule-Based Systems

http://www.cee.hw.ac.uk/~alison/ai3notes/section2_4_4.html

Rule-Based Systems Overview

http://www.managingchange.com/rules/overview.htm

Constraints and Rule-based Systems

http://www.cs.unh.edu/ccc/archive/constraints/links/rule.html

Rule-Based Systems: Mechanisms and Efficiency

http://www.classes.cs.uchicago.edu/archive/2002/winter/cs25000/slides/class3

.ppt

Principles and Practice in Verifying Rule-Based Systems

http://www.csd.abdn.ac.uk/~apreece/Pubs/KER92.html

Improving O M Problem Diagnosis with Rule-Based Computer Systems

http://www.fluidknowledge.com/fksite/papers/rule_based/

V, VT of New Technology: Rule-Based Systems

http://www.cs.bris.ac.uk/Research/Safety/projects/pdf/VVT.pdf

The Myth of Modularity In Rule-Based Sys"I"tems for Reasoning With Uncertainty

http://www2.sis.pitt.edu/~dsl/UAI/UAI86/Heckerman2.UAI86.html

Rule-Based Diagnostic Systems

http://users.aber.ac.uk/cjp/diagnosticbook/rulebased.html

A Software Engineering Methodology for Rule-based Systems

http://www.computer.org/tkde/tk1990/k0173abs.htm

Uncertain Rule-Based Fuzzy Logic Systems: Introduction and New Directions (Boo

k) 2001

http://vig.pearsoned.com/store/product/0 ,store-562_banner-0_isbn-0130409693

,00.html

Building Rule-Based Systems (Course)

http://www.ers.com/Services/Training/Building_Rule-Based_Systems/body_buildi

ng_rule-based_systems.html

Machine Learning: Rule-Based Systems

http://citeseer.nj.nec.com/MachineLearning/RuleBasedSystems/

Neural Fuzzy Systems with Fuzzy Rule-Based Systems

http://www.abo.fi/~rfuller/nfs.html

Production Systems for Rule-Based Programming

http://www.haley.com/0409381557844170/ProductionSystems.html

On the Expressiveness of Rule-Based Systems for Reasoning with Uncertainty

http://www-ksl.stanford.edu/KSL_Abstracts/KSL-87-53.html

Decision Trees and Rule-Based Systems

http://www.cs.wisc.edu/~schenney/courses/cs638-f2001/lectures/cs638-17.ppt

Mycin - Rule-Based Systems

http://www.chip.org/chip/courses/1999.6.872/Presentations/IntroDSS/sld007.ht

m

Parallel Rule-Based Systems

http://www.cs.columbia.edu/~sal/par-rule.html

Rule-Based Systems - A Core Technology of Expert Systems

http://web.njit.edu/~scherl/Classes/DistanceL/Ram/rbs.html

Using Fuzzy Rule-Based Systems To Evaluatem Overall Financial Performance of G

overnments

http://www-cpr.maxwell.syr.edu/faculty/duncombe/papers/Using%20fuzzy%20rule.

pdf

Automatic Design of Fuzzy Rule-Based Systems

http://ais.gmd.de/~surmann/fuzzy/

Rule-Based Data Mining (RBDM)

http://www.ifcomputer.com/forum/inap/msg00104.html

Experiments in Knowledge Refinement for a Large Rule-Based System

http://www.maps.cs.cmu.edu/papers/HarvT93.html

Validation of Intelligence in Large Rule-Based Systems with Common Sense

http://ase.arc.nasa.gov/mvi/abstracts/WJarrold.ppt

Uncertain Rule-Based Fuzzy Logic Systems for Wireless Communications

http://www.conferences.unimelb.edu.au/fuzzy/MendelAbstract.pdf

CLIPS Rule-Based Language

http://www.siliconvalleyone.com/clips.htm

Fuzzy Rule-Based Systems

http://www.ie.osakafu-u.ac.jp/~hisaoi/ci_lab_e/research/frbs.html

Rule-based Expert Systems for Information Retrieval

http://www.birkhauser.com/hypermedia/cyb10.html

Implementing Rule-Based Online Expert Systems

http://www.thenewalchemist.com/Personal/presentations/ExpertSystemsII/

Feasibility of General Purpose Rule-Based MT Systems

http://clwww.essex.ac.uk/MTbook/HTML/node90.html

Optimization Of Real-Time Rule-Based Expert Systems

http://www.cs.ucla.edu/csd/IDM99/Proceedings/Summaries/Cheng.htm

Rule-Based Intrusion Detection

http://www.sei.cmu.edu/str/descriptions/rbid_body.html

Set-Oriented Constructs for Rule-Based Systems

http://www.pasik.net/ajpcv/AJPCV_files/caia.pdf

人工智慧應用

Neural Application Software

Image Video identification, visual search software for Quality Control,
Product ID, Tag-less ID, website image search engine, and video surveillance

License Plate and Container Recognition

http://www.htsol.com/

Prime Time Freeware for AI

http://www.ptf.com/ptf/products/AI/

The MatterHorn Materials Discovery Database

http://www.imagination-engines.com/af98-190/FINAL1.htm

Dendral and Congen

http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/areas/reasonng/chem/co

ngen/0.html

Applications of AI in Education

http://www.acm.org/crossroads/xrds3-1/aied.html

Artificial Intelligence Systems in Routine Clinical Use.

http://www.coiera.com/ailist/list.html

TMYCIN: Medical Reasoning System

http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/areas/reasonng/medical

/tmycin/0.html

GEOMET Technologies, Inc.

http://www.geomet.com/ai.htm

Tactical guidance system for military aircraft

http://techreports.larc.nasa.gov/ltrs/PDF/aiaa-89-3525.pdf


推薦深度學習基礎入門文章兩篇 :

1、 人人都可以做深度學習應用:入門篇(上) - 騰雲閣

2、人人都可以做深度學習應用:入門篇(下) - 騰雲閣

【人人都可以做深度學習應用:入門篇(上)】原文:

一、人工智慧和新科技革命
2017年圍棋界發生了一件比較重要事,Master(Alphago)以60連勝橫掃天下,擊敗各路世界冠軍,人工智慧以氣勢如虹的姿態出現在我們人類的面前。圍棋曾經一度被稱為「人類智慧的堡壘」,如今,這座堡壘也隨之成為過去。從2016年三月份AlphaGo擊敗李世石開始,AI全面進入我們大眾的視野,對於它的討論變得更為火熱起來,整個業界普遍認為,它很可能帶來下一次科技革命,並且,在未來可預見的10多年裡,深刻得改變我們的生活。

其實,AI除了可以做我們熟知的人臉、語音等識別之外,它可以做蠻多有趣的事情。
例如,讓AI學習大量古詩之後寫古詩,並且可以寫出質量非常不錯的古詩。

又或者,將兩部設計造型不同的汽車進行融合,形成全新一種設計風格的新汽車造型。

還有,之前大家在朋友圈裡可能看過的,將相片轉換成對應的藝術風格的畫作。

當前,人工智慧已經在圖像、語音等多個領域的技術上,取得了全面的突破。與此同時,另外一個問題隨之而來,如果這一輪的AI浪潮真的將會掀起新的科技革命,那麼在可預見的未來,我們整個互聯網都將發生翻天覆地的變化,深刻影響我們的生活。那麼作為普通業務開發工程師的我,又應該以何種態度和方式應對這場時代洪流的衝擊呢?

在回答這個問題之前,我們先一起看看上一輪由計算機信息技術引領的科技革命中,過去30多年中國程序員的角色變化:


通過上圖可以簡總結:編程技術在不斷地發展並且走向普及,從最開始掌握在科學家和專家學者手中的技能,逐漸發展為一門大眾技能。換而言之,我們公司內很多資深的工程師,如果帶著今天對編程和計算機的理解和理念回到1980年,那麼他無疑就是那個時代的計算機專家。

如果這一輪AI浪潮真的會帶來新的一輪科技革命,那麼我們相信,它也會遵循類似的發展軌跡,逐步發展和走向普及。如果基於這個理解,或許,我們可以通過積極學習,爭取成為第一代AI工程師。

二、深度學習技術
這一輪AI的技術突破,主要源於深度學習技術,而關於AI和深度學習的發展歷史我們這裡不重複講述,可自行查閱。我用了一個多月的業務時間,去了解和學習了深度學習技術,在這裡,我嘗試以一名業務開發工程師的視角,以盡量容易讓大家理解的方式一起探討下深度學習的原理,儘管,受限於我個人的技術水平和掌握程度,未必完全準確。

  1. 人的智能和神經元
    人類智能最重要的部分是大腦,大腦雖然複雜,它的組成單元卻是相對簡單的,大腦皮層以及整個神經系統,是由神經元細胞組成的。而一個神經元細胞,由樹突和軸突組成,它們分別代表輸入和輸出。連在細胞膜上的分叉結構叫樹突,是輸入,那根長長的「尾巴」叫軸突,是輸出。神經元輸出的有電信號和化學信號,最主要的是沿著軸突細胞膜表面傳播的一個電脈衝。忽略掉各種細節,神經元,就是一個積累了足夠的輸入,就產生一次輸出(興奮)的相對簡單的裝置。

樹突和軸突都有大量的分支,軸突的末端通常連接到其他細胞的樹突上,連接點上是一個叫「突觸」的結構。一個神經元的輸出通過突觸傳遞給成千上萬個下游的神經元,神經元可以調整突觸的結合強度,並且,有的突觸是促進下游細胞的興奮,有的是則是抑制。一個神經元有成千上萬個上游神經元,積累它們的輸入,產生輸出。

人腦有1000億個神經元,1000萬億個突觸,它們組成人腦中龐大的神經網路,最終產生的結果即是人的智能。

1、人工神經元和神經網路
一個神經元的結構相對來說是比較簡單的,於是,科學家們就思考,我們的AI是否可以從中獲得借鑒?神經元接受激勵,輸出一個響應的方式,同計算機中的輸入輸出非常類似,看起來簡直就是量身定做的,剛好可以用一個函數來模擬。

通過借鑒和參考神經元的機制,科學家們模擬出了人工神經元和人工神經網路。

下面,我們以「房屋價格測算」作為例子,一起來看看:


一套房子的價格,會受到很多因素的影響,例如地段、朝向、房齡、面積、銀行利率等等,這些因素如果細分,可能會有幾十個。一般在深度學習模型里,這些影響結果的因素我們稱之為特徵。我們先假設一種極端的場景,例如影響價格的特徵只有一種,就是房子面積。於是我們收集一批相關的數據,例如,50平米50萬、93平米95萬等一系列樣本數據,如果將這些樣本數據放到而為坐標里看,則如下圖:

然後,正如我們前面所說的,我們嘗試用一個「函數」去擬合這個輸入(面積x)和輸出(價格y),簡而言之,我們就是要通過一條直線或者曲線將這些點「擬合」起來。
假設情況也比較極端,這些點剛好可以用一條「直線」擬合(真實情況通常不會是直線),如下圖:


那麼我們的函數是一個一次元方程f(x) = ax +b,當然,如果是曲線的話,我們得到的將是多次元方程。我們獲得這個f(x) = ax +b的函數之後,接下來就可以做房價「預測」,例如,我們可以計算一個我們從未看見的面積案例81.5平方米,它究竟是多少錢?
這個新的樣本案例,可以通過直線找到對應的點(黃色的點),如圖下:

粗略的理解,上面就是AI的概括性的運作方式。這一切似乎顯得過於簡單了?當然不會,因為,我們前面提到,影響房價其實遠不止一個特徵,而是有幾十個,這樣問題就比較複雜了,接下來,這裡則要繼續介紹深度學習模型的訓練方式。這部分內容相對複雜一點,我盡量以業務工程師的視角來做一個粗略而簡單的闡述。

2、深度學習模型的訓練方式
當有好幾十個特徵共同影響價格的時候,自然就會涉及權重分配的問題,例如有一些對房價是主要正權重的,例如地段、面積等,也有一些是負權重的,例如房齡等。
(1)初始化權重計算
那麼,第一個步其實是給這些特徵加一個權重值,但是,最開始我們根本不知道這些權重值是多少?怎麼辦呢?不管那麼多了,先給它們隨機賦值吧。隨機賦值,最終計算出來的估算房價肯定是不準確的,例如,它可能將價值100萬的房子,計算成了10萬。
(2)損失函數
因為現在模型的估值和實際估值差距比較大,於是,我們需要引入一個評估「不準確」程度的衡量角色,也就是損失(loss)函數,它是衡量模型估算值和真實值差距的標準,損失函數越小,則模型的估算值和真實值的察覺越小,而我們的根本目的,就是降低這個損失函數。讓剛剛的房子特徵的模型估算值,逼近100萬的估算結果。
(3)模型調整
通過梯度下降和反向傳播,計算出朝著降低損失函數的方向調整權重參數。舉一個不恰當的比喻,我們給面積增加一些權重,然後給房子朝向減少一些權重(實際計算方式,並非針對單個個例特徵的調整),然後損失函數就變小了。
(4)循環迭代
調整了模型的權重之後,就可以又重新取一批新的樣本數據,重複前面的步驟,經過幾十萬次甚至更多的訓練次數,最終估算模型的估算值逼近了真實值結果,這個模型的則是我們要的「函數」。


為了讓大家更容易理解和直觀,採用的例子比較粗略,並且講述深度學習模型的訓練過程,中間省略了比較多的細節。講完了原理,那麼我們就開始講講如何學習和搭建demo。

三、深度學習環境搭建
在2個月前,人工智慧對我來說,只是一個高大上的概念。但是,經過一個多月的業餘時間的認真學習,我發現還是能夠學到一些東西,並且跑一些demo和應用出來的。

  1. 學習的提前準備
    (1)部分數學內容的複習,高中數學、概率、線性代數等部分內容。(累計花費了10個小時,挑了關鍵的點看了下,其實還是不太夠,只能讓自己看公式的時候,相對沒有那麼懵)
    (2)Python基礎語法學習。(花費了3個小時左右,我以前從未寫過Python,因為後面Google的TensorFlow框架的使用是基於Python的)
    (3)Google的TensorFlow深度學習開源框架。(花費了10多個小時去看)
    數學基礎好或者前期先不關注原理的同學,數學部分不看也可以開始做,全憑個人選擇。

2.Google的TensorFlow開源深度學習框架
深度學習框架,我們可以粗略的理解為是一個「數學函數」集合和AI訓練學習的執行框架。通過它,我們能夠更好的將AI的模型運行和維護起來。
深度學習的框架有各種各樣的版本(Caffe、Torch、Theano等等),我只接觸了Google的TensorFlow,因此,後面的內容都是基於TensorFlow展開的,它的詳細介紹這裡不展開講述,建議直接進入官網查看。非常令人慶幸的是TensorFlow比較早就有中文社區了,儘管裡面的內容有一點老,搭建環境方面有一些坑,但是已經屬於為數不多的中文文檔了,大家且看且珍惜。
TensorFlow的中文社區:
http://www.tensorfly.cn/
TensorFlow的英文社區:
https://www.tensorflow.org/

3.TensorFlow環境搭建
環境搭建本身並不複雜,主要解決相關的依賴。但是,基礎庫的依賴可以帶來很多問題,因此,建議盡量一步到位,會簡單很多。
(1)操作系統
我搭建環境使用的機器是騰訊雲上的機器,軟體環境如下:
操作系統:CentOS 7.2 64位(GCC 4.8.5)
因為這個框架依賴於python2.7和glibc 2.17。比較舊的版本的CentOS一般都是python2.6以及版本比較低的glibc,會產生比較的多基礎庫依賴問題。而且,glibc作為Linux的底層庫,牽一髮動全身,直接對它升級是比較複雜,很可能會帶來更多的環境異常問題。
(2)軟體環境
我目前安裝的Python版本是python-2.7.5,建議可以採用yum install python的方式安裝相關的原來軟體。然後,再安裝 python內的組件包管理器pip,安裝好pip之後,接下來的其他軟體的安裝就相對比較簡單了。
例如安裝TensorFlow,可通過如下一句命令完成(它會自動幫忙解決一些庫依賴問題):
pip install -U tensorflow
這裡需要特別注意的是,不要按照TensorFlow的中文社區的指引去安裝,因為它會安裝一個非常老的版本(0.5.0),用這個版本跑很多demo都會遇到問題的。而實際上,目前通過上述提供的命令安裝,是tensorflow (1.0.0)的版本了。

Python(2.7.5)下的其他需要安裝的關鍵組件:
tensorflow (0.12.1),深度學習的核心框架
image (1.5.5),圖像處理相關,部分例子會用到
PIL (1.1.7),圖像處理相關,部分例子會用到
除此之後,當然還有另外的一些依賴組件,通過pip list命令可以查看我們安裝的python組件:
appdirs (1.4.0)
backports.ssl-match-hostname (3.4.0.2)
chardet (2.2.1)
configobj (4.7.2)
decorator (3.4.0)
Django (1.10.4)
funcsigs (1.0.2)
image (1.5.5)
iniparse (0.4)
kitchen (1.1.1)
langtable (0.0.31)
mock (2.0.0)
numpy (1.12.0)
packaging (16.8)
pbr (1.10.0)
perf (0.1)
PIL (1.1.7)
Pillow (3.4.2)
pip (9.0.1)
protobuf (3.2.0)
pycurl (7.19.0)
pygobject (3.14.0)
pygpgme (0.3)
pyliblzma (0.5.3)
pyparsing (2.1.10)
python-augeas (0.5.0)
python-dmidecode (3.10.13)
pyudev (0.15)
pyxattr (0.5.1)
setuptools (34.2.0)
six (1.10.0)
slip (0.4.0)
slip.dbus (0.4.0)
tensorflow (1.0.0)
urlgrabber (3.10)
wheel (0.29.0)
yum-langpacks (0.4.2)
yum-metadata-parser (1.1.4)
按照上述提供的來搭建系統,可以規避不少的環境問題。
搭建環境的過程中,我遇到不少問題。例如:在跑官方的例子時的某個報錯,AttributeError: "module" object has no attribute "gfile",就是因為安裝的TensorFlow的版本比較老,缺少gfile模塊導致的。而且,還有各種各樣的。(不要問我是怎麼知道的,說多了都是淚啊~)

更詳細的安裝說明:
https://www.tensorflow.org/install/install_linux

(3)TensorFlow環境測試運行
測試是否安裝成功,可以採用官方的提供的一個短小的例子,demo生成了一些三維數據, 然後用一個平面擬合它們(官網的例子採用的初始化變數的函數是initialize_all_variables,該函數在新版本里已經被廢棄了):

#!/usr/bin/python
#coding=utf-8

import tensorflow as tf
import numpy as np

# 使用 NumPy 生成假數據(phony data), 總共 100 個點.
x_data = np.float32(np.random.rand(2, 100)) # 隨機輸入
y_data = np.dot([0.100, 0.200], x_data) + 0.300

# 構造一個線性模型
#
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b

# 最小化方差
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)

# 初始化變數,舊函數(initialize_all_variables)已經被廢棄,替換為新函數
init = tf.global_variables_initializer()

# 啟動圖 (graph)
sess = tf.Session()
sess.run(init)

# 擬合平面
for step in xrange(0, 201):
sess.run(train)
if step % 20 == 0:
print step, sess.run(W), sess.run(b)

# 得到最佳擬合結果 W: [[0.100 0.200]], b: [0.300]

運行的結果類似如下:

經過200次的訓練,模型的參數逐漸逼近最佳擬合的結果(W: [[0.100 0.200]], b: [0.300]),另外,我們也可以從代碼的「風格」中,了解到框架樣本訓練的基本運行方式。雖然,官方的教程後續會涉及越來越多更複雜的例子,但從整體上看,也是類似的模式。

步驟劃分:
準備數據:獲得有標籤的樣本數據(帶標籤的訓練數據稱為有監督學習);
設置模型:先構建好需要使用的訓練模型,可供選擇的機器學習方法其實也挺多的,換而言之就是一堆數學函數的集合;
損失函數和優化方式:衡量模型計算結果和真實標籤值的差距;
真實訓練運算:訓練之前構造好的模型,讓程序通過循環訓練和學習,獲得最終我們需要的結果「參數」;
驗證結果:採用之前模型沒有訓練過的測試集數據,去驗證模型的準確率。
其中,TensorFlow為了基於python實現高效的數學計算,通常會使用到一些基礎的函數庫,例如Numpy(採用外部底層語言實現),但是,從外部計算切回到python也是存在開銷的,尤其是在幾萬幾十萬次的訓練過程。因此,Tensorflow不單獨地運行單一的函數計算,而是先用圖描述一系列可交互的計算操作流程,然後全部一次性提交到外部運行(在其他機器學習的庫里,也是類似的實現)。所以,上述流程圖中,藍色部分都只是設置了「計算操作流程」,而綠色部分開始才是真正的提交數據給到底層庫進行實際運算,而且,每次訓練一般是批量執行一批數據的。


先學數學吧。


亞馬遜,搜索 人工智慧 ,把評分高的買幾本,然後不懂的地方google,google出來的結果還不懂,繼續搜索。。。。。一直把這個學科和你自己的知識之間的空缺補起來。重點在興趣,千萬千萬不用嘗試 從頭讀到尾,興趣第一,不懂就google。


How to land a job in machine learning area?

1. Learn trendy platforms like TF, shit with it, and put "your work" on github.

2. Make submissions to some easy problems on Kaggle.

3. Take a Machine Learning course (random online stuff suffices. Come on, it"s the 互聯網時代, who will take actual college courses?)

4. (Pretend to) Implement some trendy algorithms in newly published papers (steal others" repositories for your github)

5. Make a submission to an intermediate problem in Kaggle.

6. 3 months without any prerequisite.

7. No college degrees. Seriously, a monkey can do it. You don"t even need a high school degree.

-- Adopted from the original version of Google.


我是外行,只懂新藍領招聘和出國勞務,還是想分享一下我的學習方式:

1.作為一枚全棧運營,動手做一個人工智慧社區,域名空間代碼現成的,爬數據入庫隨手做,最近要換域名了www.aigolab.com,界面懶得優化,太丑了我也看不下去;設計師忙完這個月,下個月做前端改版。

2.然後勾搭幾個人工智慧大神,拉個微信群,跟著學習;有沙龍我還能跟一下場,坐標望京,可約。

3.其實我對人工智慧只是感興趣,但是對於人工智慧人才那就是我只職業素養了,必須第一時間摟一波。

4.步兵海報,自有辦法╮(╯▽╰)╭哎


也想做人工智慧這個行業 所以自己也在學習

後來發現網上的人工智慧要麼是付費的 要麼就是邏輯混亂不知道從何下手

於是決定自己開發一個網站 專門做人工智慧教育 建立一個社群大家一起學習交流

把該學的內容全部做了一個梳理

優覓AI-人工智慧在線學習社群

有興趣的朋友可以一起合夥做 目前就我一個人 精力有限 技術不到位 請多指教


可以先自學,網路上資料很多,視頻,書籍等


推薦閱讀:

人工智慧10年後會替代50%的工作,那剩下的人類以何為生?
人工智慧在最近20年有可能大量代替老師的工作嗎?
機器學習成就人工智慧,還是人工智慧成就機器學習?
文化水平低可以學人工智慧嗎?
下一次科技大爆發最有可能會在那個領域發生?

TAG:人工智慧 |