반응형

[OpenSource] UNPKG


unpkg는 Michael Jackson이 만들고 유지 관리 하는 open source project  입니다.



Vue.js 는 "https://unpkg.com/vue" 로 연결해서 사용하고 있다. 



unpkg is a fast, global content delivery network for everything on npm. Use it to quickly and easily load any file from any package using a URL like:

unpkg.com/:package@:version/:file

Examples

Using a fixed version:

You may also use a semver range or a tag instead of a fixed version number, or omit the version/tag entirely to use the latest tag.

If you omit the file path, unpkg will serve the package's "main" file.

Append a / at the end of a URL to view a listing of all the files in a package.

Query Parameters

?main=:mainField
The name of the field in package.json to use as the main entry point when there is no file path in the URL. Defaults to using unpkgbrowser, and then main.
?meta
Return metadata about any file in a package as JSON (e.g. /any/file?meta)
?module
Expands all "bare" import specifiers in JavaScript modules to unpkg URLs. This feature is very experimental



Sponsors - 무보수의 강력한 글로벌 인프라는 Cloudflare 와 Heroku가 기부합니다 .



Cache Behavior


CDN은 npm 패키지 버전을 포함하여 영구 URL을 기반으로 모든 파일을 캐시합니다. 이는 npm이 패키지 작성자가 이미 동일한 버전 번호로 다른 패키지로 게시 된 패키지를 덮어 쓸 수 없기 때문에 가능합니다.


패키지 버전 번호를 지정하지 않은 URL은 패키지 버전 번호로 리디렉션됩니다. 이것은이다 latest어떤 버전이 지정되지 않은 버전, 또는 maxSatisfying때 버전 semver 버전이 제공됩니다. 리디렉션은 5 분 동안 캐시됩니다.


브라우저는 Cache-Control헤더 를 통해 자산을 4 시간 동안 캐시 하도록 지시 받습니다.



Support


unpkg는 무료이며 최선의 노력을 기울이는 서비스이며 가동 시간 또는 지원 보장을 제공 할 수 없습니다.


나는 그것을 계속 실행하기 위해 최선을 다하지만 때로는 일이 잘못 될 수 있습니다. 내 통제 범위 밖에서 네트워크 또는 공급 업체 문제가있는 경우가 있습니다. 때로는 까다로운 트래픽이 일시적으로 응답 시간에 영향을 미칩니다. 때로는 뭔가 바보 같은 짓을해서 일을 망쳐 놓지 만, 나는하지 않으려 고 노력합니다.


unpkg의 목표는 npm 패키지 작성자에게 번거롭지 않은 CDN을 제공하는 것입니다. 데모 및 교육 자료를 만드는 사람들에게 유용한 자료이기도합니다. 그러나 비즈니스에 중요한 파일을 제공하는 데 의존하는 경우 잘 지원되는 인프라와 가동 시간 보장을 갖춘 호스트에 비용을 지불해야합니다.


unpkg는 npm, Inc.와 어떤 식 으로든 제휴 또는 지원되지 않습니다. unpkg에 도움이 필요하면 npm에게 연락하지 마십시오.




...

반응형
반응형

인공지능 씨앗 한글 말뭉치, 2007년 멈춰선 까닭


http://www.bloter.net/archives/260569


자연어 처리는 인공지능 기술에서 중요한 축을 담당한다. 인간의 말을 인식해 메시지를 분석하고 다시 답변을 내놓으려면 자연어를 처리할 수 있는 향상된 기술이 필요하다. 현재 많은 연구들이 인간의 눈을 대체하는 ‘비전 인식’에 몰두하고 있다. 이미지나 영상을 기계가 인식해 사물을 분별하고 나누고 예측하는 다양한 기술들이 선보이고 있다.


인간의 입과 귀를 보완하거나 대신하기 위한 연구도 한창이긴 하다. 애플이 시리나 썸리와 같은 기사 요약 서비스 등이 여기에 해당한다. 번역에서도 자연어 처리는 필수적이다. 하지만 비전 인식에 비해 더딜 수밖에 없다. 문자 언어가 깊숙이 관여돼있기 때문이다.


* 민간이 개발하기엔 너무나도 큰 비용


정부는 한글 말뭉치의 이 같은 성격 때문에 상당한 비용을 들여 프로젝트를 추진했다. 대표적인 사업이 21세기 세종 프로젝트다. 국립국어원은 1998년부터 2007년까지 150억원의 예산을 투입해 이 프로젝트를 완료했다. 여기엔 세종 말뭉치라는 한글 말뭉치 사업이 포함돼있었다. 그것도 무려 2억 어절에 해당하는 방대한 구축 작업이었다. 이는 영국이나 미국, 일본에 뒤지지 않는 규모로 평가됐다.


그렇게 탄생한 세종 말뭉치는 자연어 처리 분야에서 다양하게 활용되고 있다. 대표적으로는 서울대에서 개발한 꼬꼬마 세종 말뭉치 활용 시스템이다. 세종 말뭉치를 데이터베이스에 저장해 웹 프로그램 형태로 구현한 사례다. 말뭉치 통계 정보 조회, 말뭉치 검색, 한국어 쓰기 학습의 세 가지의 기능을 갖추고 있다.


일본어 형태소 분석기 엔진에 세종 말뭉치를 학습해 한국형 형태소 분석기로 탄생한 사례도 있다. 은전한닢 프로젝트에 따라 개발된 ‘mecab-ko’ 형태소 분석기다. ‘mecab-ko‘는 세종 말뭉치에서 2만여 문장을 가져와 분석 엔진을 학습시켰다.


자연어 처리에 광범위하게 활용되던 세종 말뭉치는 2007년 기점으로 업데이트가 사실상 중단됐다. 

더 이상 제2의 21세기 세종 프로젝트가 진행되지 않고 있는 탓이다. 


10년이 지나는 동안 수많은 인터넷 신조어가 탄생하고 있고 광범위하게 일상에 활용되고 있지만 세종 말뭉치에는 반영이 되지 않는다. 비교적 변화가 적은 언어 유형은 상관이 없지만 구어와 같은 메신저 용어 등은 세종 말뭉치에서 품사 구별조차 하지 못하는 실정이다.


세종 말뭉치 사업을 주도하고 관리하고 있는 국립국어원도 아쉬워하기는 마찬가지다. 최정도 국립국어원 학예사는 “국립국어원에서 말뭉치를 만들어서 배포하고 싶지만 지속적으로 지원이 안되는 측면이 있다”고 했다. 그는 “예산을 따서 하고 싶지만 어려운 측면이 있다”고도 했다. 그는 “최신 것들이 코퍼스에 들어와야 하고 구성면에서도 IT와 관련해서 등장하는 단어들을 찾고 싶다면 구성도 잘해야 한다”라며 “하지만 현실적으로 여의치가 않다”고 말했다.


정부가 ’한국형 알파고‘니 하며 인공지능 사업에 1조원의 예산을 투입할 기세지만 한글 말뭉치 사업과 같은 구체적인 항목은 아직 포함되지 않은 상태다.


한국 말뭉치 업그레이드가 단절되면 자연어처리 기술로 인공지능 시장에 진입하고자 하는 스타트업이 부담이 된다. 당장 IT 대기업과 이 분야에서 간극을 좁히기가 어렵다. 네이버와 같은 IT 대기업들은 이미 십수년 간 수집한 뉴스 문서, 기타 블로그와 전문 자료들을 광범위하게 확보해 정교한 말뭉치를 자체적으로 구축해왔다. 오랜 공을 들여 구축한 말뭉치이기에 공개하기도 어렵다. 반면 스타트업이 이에 준하는 수준으로 말뭉치를 구축하기는 비용 문제로 사실상 불가능하다. 말뭉치라는 디지털 커먼스가 공공에서 제공돼야 할 이유이기도 하다.


학계는 웹 서비스화 돼 있는 전문 말뭉치를 사용하면 된다. 고려대 민족문화연구원이 구축한 ’물결 21‘은 대학연구소가 개발한 최대 규모의 디지털 말뭉치다. 국내 4대 일간지의 14년치(2001년~2014년) 6억 어절의 문서가 분석돼있다. 이 서비스를 이용하면 언어 연구에 필요한 결과를 다양한 형태로 받아갈 수 있다(최재웅&이도길. 2014).


그러나 이 말뭉치는 한계도 있다. 외부 형태소 분석기과 결합해 사용하기 어렵다는 점이다. 세종 말뭉치와 달리 소스 파일이 공개돼있지 않아서다. 일반적으로 기분석 사전과 형태소 분석기를 통합하면 높은 정확도와 효율성을 만들어낼 수 있다. 곽수정(2013) 등은 “기분석 사전은 대용량의 품사 부착 말뭉치의 고빈도 어절로 구축되어 형태소 분석기의 속도를 향상시키기 위해 사용돼왔다”고 적고 있다. 기분석 사전을 구축하려면 기존 말뭉치가 필요한데, 소스 파일이 공개되지 않아 두 시스템을 결합하기 어려운 것이다.


연세대 말뭉치, 카이스트 코퍼스 등 공개된 말뭉치가 없지는 않지만 규모로 따지면 세종 말뭉치나 물결21에 비할 바는 못된다. 말뭉치는 공공이 개입해 커먼스로 구축하기에 적합한 모델이라고 할 수 있다.


* 디지털 커먼스로서 한글 말뭉치와 공공의 역할


언어는 끊임없이 변화한다. 신조어 탄생하는가 하면 일부 어휘는 사멸하기도 한다. 예전 단어에 새로운 의미가 부여되는가 하면 단어와 단어의 새로운 결합이 나타나 전혀 다른 용례로 쓰이기도 한다. 말뭉치는 이처럼 역동적인 언어의 변동에 대응할 수 있어야 한다. 자연어 처리를 기반으로 하는 인공지능 기술은 역동성에 대응하는 말뭉치의 힘에 의존할 수밖에 없다.


문제는 막대한 비용이 투입되는 말뭉치를 누가 구축할 것이냐이다. 말뭉치 구축은 따지면 기초연구에 해당한다. 비용은 많이 들지만 곧장 수익이 나지 않는 사업이다. 그것의 공적 가치는 무한하지만 그 자체의 상업적 가치는 제한적일 수밖에 없다. 2007년 이후로 멈춰버린 세종 한글 말뭉치, 인공지능 기술이 부상하는 현재 국면에서 여전히 외면받고 있는 현실이 안타까울 수밖에 없다.


...

반응형
반응형

MOOC: Python (파이썬 강좌)

  • 게시자: TeamLab
  • 동영상 71개
  • 조회수 172,959회
  • 업데이트: 3일 전

K-MOOC 파이썬
가천대학교 TEAMLAB에서 운영하는 파이썬 입문용 강좌입니다.
키워드 - 파이썬 Python 입문 강의 강좌 MOOC


https://www.youtube.com/playlist?list=PLBHVuYlKEkUJvRVv9_je9j3BpHwGHSZHz





K-MOOC: 데이터 과학을 위한 파이썬 입문 강좌
http://www.kmooc.kr/courses/course-v1...

본 강의는 교육부의 "K-MOOC 강좌개발지원 사업"의 일환으로 가천대학교 ACE 사업단에 의해 제작되었습니다. 본 강의는 가천대학교 ACE 사업단의 데이터 과학 시리즈 MOOC의 일환으로 제작됩니다. 본 과정은 아래와 같이 구성됩니다.

강의 개요
강좌명: Gachon CS50 - 데이터 과학을 위한 파이썬 입문
강의자명: 가천대학교 산업경영공학과 최성철 교수 (sc82.choi@gachon.ac.kr, Director of TeamLab)
Facebook: Gachon CS50
강의자료: Docs.com
Email: teamlab.gachon@gmail.com

강의 구성
1주차: 프로그래밍과 파이썬
2주차: 메모리와 변수 (Memory & Variable)
3주차: 화면 입출력과 리스트 다루기 (Console & List Data Type)
4주차: 제어문과 반복문 (Condition & Loop)
5주차: 함수와 파이썬 코드 작성연습
6주차: 파이썬 문자열 다루기 (String)
7주차: 파이썬 자료 구조 (Data Structure)
8주차: 파이썬같은 코드 작성하기 (Pythonic Code)
9주차: 파이썬 객체 지향 프로그래밍 (Objective-Oriented Programming)
10주차: 모듈과 패키지 (Module & Packages)
11주차: 예외 처리 (Exception Handling)
12주차: 파일 다루기와 CSV (File Handling and Comma Separate Values)
13주차: Web Scraping
14주차: XML과 JSON (eXtensible Markup Languages and JSON)
15주차: What is NEXT?

참고자료
- 점프 투 파이썬, 박응용 지음 , 2014
- 헬로 파이썬 프로그래밍, 워렌 산데,카터 산데 지음 / 김승범, 박준표 옮김 , 2014
- 파이썬 바이블3, 이강성 지음, 2013
하용호, 스타트업 데이터를 어떻게 봐라봐야 할까 , 2014
강철, [PyConKR 2014] 30분만에 따라하는 동시성 스크래퍼 , 2014
정민영, [2D4] Python에서의 동시성_병렬성, 2014
최성철, 산업공학과를 위한 프로그래밍 입문 Part 1(w/파이썬) , 2014
최성철, 산업공학과를 위한 프로그래밍 입문 Part 2(w/파이썬) , 2014
최성철, 산업공학과를 위한 프로그래밍 입문 Code(w/파이썬) , 2014


...


반응형
반응형

‘비전(Vision)’이란 단어는 외국어다. 그래서 생소하게 느껴질 수도 있다. 이미 알고 있는 사람들도 용어에 대한 정확한 뜻을 이해하지 못하는 경우가 종종 있다. 간혹 종교적 의미로만 해석하는 사람들도 있다. 용어의 뜻을 이해할 필요가 있다.


 

사전적으로는 ‘미래에 대한 구상, 미래상’이라고만 짧게 기술되어 있다. 좀 더 살펴보면 ‘보는 행위 또는 능력, 보는 감각, 꿰뚫어보는 힘, 마음의 시력’을 뜻함을 알 수 있다. 흔히 상상력, 선견, 통찰력으로 번역되기도 한다. ‘광경, 상상도, 미래도’와 같이 보이는 모습의 의미를 담고 있기도 하다.


서양에서 들어온 말이라 우리말에 딱 들어맞는 용어가 있는 것은 아니다. 그래서 원어 그대로 비전으로 불리는 경우가 많다. 굳이 우리말과 비교해서 쉽게 말한다면 ‘꿈’이나 ‘사명’이라는 단어에 가장 근접하다. ‘목표, 목적, 소명, 소망, 소원, 목표설정’과 비슷한 뜻으로 이해될 수도 있다. 동양적으로 바라본다면 ‘삶의 철학, 사상, 가치관, 좌우명’이라는 뜻도 담겨져 있다.


때때로 ‘혼, 신념, 신조, 의지, 믿음, 정신’의 뜻으로 쓰인다. 구어체에서는 ‘어떤 사람의 됨됨이, 미래성, 발전 가능성’으로 사용된다. 그래서 ‘비전 없는 인간’이라고 한다면 앞으로의 미래가 안 보인다는 뜻으로 상당한 욕이 된다.


■ 비전은 목적 달성을 위한 영속적인 지침


비전은 우리 자신의 정체성과도 연관을 맺고 있다. 그래서 우리가 올바른 삶의 방향으로 나아가기 위해서는 자아(自我)에 대해서 좀 더 깊이 있게 알 필요가 있다. 비전은 자아뿐만 아니라 직업, 성공, 행복에 이르기까지 우리 삶의 모든 부분과 연관관계를 맺고 있다.


세계적인 베스트셀러 작가 켄 블랜차드. 그는 《비전으로 가슴을 뛰게 하라》에서 ‘비전은 자신이 누구이고, 어디로 가고 있으며, 무엇이 그 여정을 인도할지 아는 것이다’라고 말한다. 


블랜차드는 비전과 목표를 구분하여 정의 내리고 있다.


비전은 목적을 달성해가는 과정에서 끊임없이 지침을 제공하는 영속적인 것이다. 목표와 비전을 구분하는 한 가지 방법은 다음과 같은 질문을 해보는 것이다. ‘그 다음에는?’


목표는 달성하고 나면 끝난다. 그러나 비전은 미래의 행동을 위한 뚜렷한 방향을 제시하고 새로운 목표를 설정하도록 도와준다. 많은 사람들이 목표만 있고 비전이 없는 경우가 많다. 그렇게 되면 목표만 달성되고 나면 모든 게 끝나버리고 만다.


만일 당신이 ‘아름다운 몸매를 가지고 싶다, 넓고 큰 주택을 구입하고 싶다, 아름다운 별장을 가지고 싶다, 고급 승용차를 구입하겠다, 많은 돈을 모으고 싶다, 경영자가 되고 싶다’라고 생각한다면 그것은 비전이 아니라 목표를 말하는 것이다.


만일 이러한 목표를 비전으로 알고 살아간다면 설령 당신이 원하는 것을 성취한다고 해도 만족보다는 오히려 허무함을 느낄 수 있다. 이러한 목표는 그것을 성취하고 나면 또다시 새로운 목표를 수립해서 도전하면 된다. 하지만 비전은 내 삶에서 영원한 생명력을 가지고 있는 것이다.



출처: http://careernote.co.kr/1455 [정철상의 커리어노트]

반응형
반응형

[FACEBOOK UI] github - facebook UI material



https://github.com/nekomy/nekomy-platform


An open source LMS (eLearning platform) for MOOCs and online courses (like Tutellus.com or Udemy.com with extra features). Tech stack includes PWA & SPA with Facebook's React, Google's Firebase, Slack API and Material UI 



https://github.com/danivegamx/facebook-material


This is a UI version of the main Facebook timeline, using Polymer and webcomponents. The main idea is to make a visual substitution of the react.js view-controllers with the Material Design concept.





...

반응형
반응형

빠른 시작: JavaScript용 Facebook SDK

https://developers.facebook.com/docs/javascript/quickstart



JavaScript용 Facebook SDK의 다양한 클라이언트 측 기능 세트로 다음을 수행할 수 있습니다.

  • 사이트에서 좋아요 버튼과 기타 소셜 플러그인을 사용할 수 있습니다.
  • 사이트에 가입을 꺼리는 요인을 저하시키기 위해 Facebook 로그인을 사용할 수 있습니다.
  • Facebook의 그래프 API를 쉽게 호출할 수 있습니다.
  • 소식 공유와 같은 다양한 액션을 수행할 수 있는 대화 상자를 실행할 수 있습니다.
  • Facebook에서 게임 또는 앱 탭을 빌드할 때 쉽게 통신할 수 있습니다.

SDK, 소셜 플러그인 및 대화 상자는 데스크톱과 모바일 웹 브라우저 모두에서 작동합니다.

이 빠른 시작에서는 SDK 설정 방법을 보여주고 몇 가지 기본 그래프 API를 호출하는 방법을 익혀봅니다. 아직 설정하지 않은 경우 JavaScript 테스트 콘솔을 통해 모든 SDK 메서드를 사용해보고 몇 가지 예제를 살펴볼 수 있습니다. 설정 단계를 건너뛰고 이 빠른 시작의 나머지 부분만 콘솔에서 테스트해볼 수도 있습니다.

기본 설정

JavaScript용 Facebook SDK에는 다운로드하거나 설치해야 하는 독립실행형 파일이 없습니다. 대신 SDK를 페이지에 비동기식으로 읽어들일 HTML에 간단한 JavaScript 정규식을 포함하기만 하면 됩니다. 비동기식으로 읽어들이면 페이지의 다른 요소를 읽어들이는 것을 차단하지 않습니다.

다음 픽셀 코드는 옵션이 가장 일반적인 기본값으로 설정되는 기본 SDK 버전을 제공합니다. 읽어들일 각 페이지의 <body> 태그를 연 다음 바로 삽입해야 합니다.

<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId            : 'your-app-id',
      autoLogAppEvents : true,
      xfbml            : true,
      version          : 'v2.10'
    });
    FB.AppEvents.logPageView();
  };

  (function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "//connect.facebook.net/en_US/sdk.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>
    

이 코드는 SDK를 읽어들인 다음 초기화합니다. 직접 만든 Facebook 앱의 ID로 your-app-id 값을 대체해야 합니다. 앱 ID는 앱 대시보드에서 찾을 수 있습니다.




...

반응형
반응형

[Chatbot] Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용 chatbot


도입 

AI Chatbot 소개 

Chatbot Ecosystem 

Closed vs Open Domain 

Rule Based vs AI 

Chat IF Flow and Story Slot 

AI기반의 학습을 위한 Data 구성 방법 

Data를 구하는 법 / Train을 위한 Word Representation 

Data의 구성 / Data Augmentation(Intent, NER) 

자연어처리 위한 AI 적용 방안 

Intent (Char-CNN) / QnA (Seq2Seq) 

Named Entity Recognition (Bi-LSTM CRF) / Ontology (Graph DB) 

Chatbot Service를 위한 Architecture 구성 

Chatbot Architecture 

NLP Architecture 

Web Service Architecture 

Bot builder / Chatbot API 

Test Codes for Chatbot 

실무에서 발생하는 문제와 해결 Tips 

Ensemble and voting / Trigger / Synonym(N-Gram) 

Tone Generator / Parallel processing / Response Speed 

마무리 


[설명 코드] 

Text Augmentation / Slot Bot / QA Bot / Graph DB / Response Generator 




...

반응형
반응형

고양이 셀카 찍어주는 ‘캣스냅’ 



‘캣스냅‘은 고양이 셀카를 찍을 수 있는 앱이다. 움직이는 작은 물체에 반응하는 고양이의 특성을 이용해 고양이가 스스로 스마트폰이나 태블릿을 터치해 사진을 촬영한다. 기기 화면에 빨간 점이 이리저리 움직이는데, 그 점을 고양이가 터치하는 순간 진동과 함께 사진이 ‘찰칵’ 찍히는 방식이다. 고양이에 맞춰 움직이는 빨간 점의 속도나 민감도를 조절할 수 있다.


앱을 쓸 때 주의해야 할 부분은 ‘각도’다. 고양이가 터치하기 쉬우라고 스마트폰이나 태블릿을 바닥에 놓고 촬영하면 의도치 않게 ‘굴욕샷’만 찍힐 수 있다. 스마트폰 거치대 등을 활용해 꼭 옆으로 세워두는 식으로 촬영하는 걸 추천한다.




 

...


반응형

+ Recent posts