'Data/Text/Knowledge Analysis & Mining'에 해당하는 글 48건

python 및 머신러닝 교육, 슬로우캠퍼스



python 

웹페이지의 chatset값 구하기. http response header에 포함된 경우

import urllib2

request = "http://daum.net"

fp = urllib2.urlopen(request)

charset = fp.headers.getparam('charset')

print "***", charset

print "===\n", fp.headers



http://www.voidspace.org.uk/python/articles/urllib2.shtml#introduction




CharDet 패키지

어떤 파일이 어떠한 문자셋으로 구성되어 있는지 판단하는 기능

http://www.minvolai.com/blog/2009/11/chardet-detecting-unknown-string-encodings/


$ sudo pip install chardet


Unicode and Character Sets


http://www.joelonsoftware.com/articles/Unicode.html

'Data/Text/Knowledge Analysis & Mining > Python' 카테고리의 다른 글

python pdf library 비교  (0) 2013.07.26
mongoDB, python, twitter Oauth  (0) 2013.07.25
python map reduce lambda  (0) 2013.07.20
google app engine urlfetch, urllib2  (0) 2013.07.16
python - JSON 데이타 load 하기  (0) 2013.07.16

WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스


Hadoop의 map/reduce 개념도 python의 map(), reduce() 함수를 참고하지 않았을까 하는 생각을 해봅니다.


다음은 zip(), map(),  reduce(),  lambda 함수에 대한 이해를 할 수 소스 코드 입니다.


직접 입력하면서 실행해 보세요.




python - zip()


>>> a=[1,2,3]

>>> b=[4,5,6]

>>> a+b

[1, 2, 3, 4, 5, 6]

>>> zip(a,b)

[(1, 4), (2, 5), (3, 6)]


python - generator (list)

아래와 같이 [ ]를 이용하여 list를 생성하는 것이 more pythonic 한 방식이다.

>>> a

[1, 2, 3]

>>> [ x*x for x in a]

[1, 4, 9]

>>> [ x*x for x in a if x%2 == 1]

[1, 9]



일반적인  procedural language (c, java, ...) 스타일로 하면 아래와 같다.

>>> for x in a:

...     if x%2==1:

...             print x*x

...

1

9


>>> [ x+y for x,y in zip(a,b)]

[5, 7, 9]


python - map()


>>> import operator

>>> map(operator.add, a, b)

[5, 7, 9]


>>> s1= ['abb ccc', 'tttt jjjj kkk']


>>> map(str.split, s1)

[['abb', 'ccc'], ['tttt', 'jjjj', 'kkk']]


>>> [s.split()  for s in s1]

[['abb', 'ccc'], ['tttt', 'jjjj', 'kkk']]


>>> [s.split('b')  for s in s1]

[['a', '', ' ccc'], ['tttt jjjj kkk']]


python - lambda 를 이용한 간단한 함수 정의 (anonymous function)


>>> map(str.split('b'), s1)

Traceback (most recent call last):

 File "<stdin>", line 1, in <module>

TypeError: 'list' object is not callable


>>> map(lambda x: x.split('b'), s1)

[['a', '', ' ccc'], ['tttt jjjj kkk']]


>>> map(lamdba x,y: x*x+y*y , a, b)

 File "<stdin>", line 1

   map(lamdba x,y: x*x+y*y , a, b)       <--- 오타   lamdba

            ^

SyntaxError: invalid syntax


>>> map(lambda x,y: x*x+y*y , a, b)

[17, 29, 45]



>>> import math

>>> map(lambda x,y: math.sqrt(x*x+y*y) , a, b)

[4.123105625617661, 5.385164807134504, 6.708203932499369]


python - reduce()

>>> k = range(10)

>>> k

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


>>> import operator

>>> reduce(operator.add, k)

45 ---> 더하기


>>> reduce(lambda x: x*x, k)

Traceback (most recent call last):

 File "<stdin>", line 1, in <module>

TypeError: <lambda>() takes exactly 1 argument (2 given)

---> 함수 호출에서 "takes exactly n argument " 라는 오류는 함수의 인자(argument) 개수가 잘못되었을 때 발생한다.


reduce()의 첫번째 인자는 2개의 argument를 받는 함수이여야 하는데, lambda로 인자 1개 짜리 함수를 정의하여서 오류(exception) 발생한 것이다.



>>> reduce(lambda x,y: x*x, k)

0

>>> reduce(lambda x,y: y*y, k)

81

>>> reduce(lambda x,y: x+y*y, k)

285




>>> def see(x,y):

...     print x,y,'->', x+y*y

...     return x+y*y

...

>>> reduce(see, k) --> reduce() 실행 과정을 보기 위해 print

1 2 -> 5

5 3 -> 14

14 4 -> 30

30 5 -> 55

55 6 -> 91

91 7 -> 140

140 8 -> 204

204 9 -> 285

285



>>> reduce(lambda x,y: x*x+y*y, k)

160623854392948285208011982134507489923477046669785452499236264188406112786126885439804859615624545L




WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스



한국어 개체명 인식 기술

한국어 개체명 인식 시스템은 텍스트로부터 인명, 지명, 기관명 등과 같은 개체명을 인식하여 해당 개체명 태그를 달아주는 시스템을 말한다. 본 개체명 인식기는 147개의 개체명 태그셋을 인식한다. 인식된 개체명은 정보검색, 정보추출, 질의응답 등에 바로 사용이 가능하다.

① 한국어 개체명 인식 시스템 
-한국어 개체명 인식 기능 
-사용자 사전 기능 
② 기계 학습 도구 
-학습 데이터로부터 개체명 인식 모델 생성 기능 
③ 한국어 개체명 사전 
-한국어 개체명 사전 (200만 엔트리) 
④ 한국어 개체명 학습 코퍼스 
-한국어 개체명이 태깅된 학습 코퍼스 (8000 문서) 
⑤ 학습 데이터 구축 도구 
-개체명 인식 학습 데이터 수동 도구 
-개체명 인식 학습 데이터 반자동 도구




http://voice.etri.re.kr/DBSearch/Language_sample.asp


한국어 어휘 사전 DB - 기술이전

한국어 형태소 기분석 사전: 대기업 12백만원 중소기업 6백만원 
한국어 세부분류 개체명 사전: 대기업 20백만원 중소기업 10백만원 
한국어 이형태 정규화 사전: 대기업 8백만원 중소기업 4백만원 

   A. 기술명 : 한국어 형태소 기분석 사전 

- 한국어 기분석 사전 원문 (141만 엔트리) 

B. 기술명 : 한국어 세부분류 개체명 사전 
- 한국어 세부분류 개체명 사전 (360만 엔트리) 

C. 기술명 : 한국어 이형태 정규화 사전 
- 공공/기업/스마트폰/자동차/제품명 등의 도메인에 대해서 수작업으로 구축한 이형태 어휘 사전(약 57,000 어휘쌍) 
- 웹에서 자동 추출한 이형태 어휘 사전 (약 90,000 어휘쌍) 

   


대분류 15개
– PERSON, STUDY_FIELD, THEORY, ARTIFACTS,
ORGANIZATION, LOCATION, CIVILIZATION, DATE, TIME,
QUANTITY, EVENT, ANIMAL, PLANT, MATERIAL, TERM

소분류 180개
– ARTIFACTS 소분류 예
• AF_CULTURAL_ASSET, AF_BUILDING, AF_MUSICAL_INSTRUMENT,
AF_ROAD, AF_WEAPON, AF_TRANSPORT, AF_WORKS,
AFW_GEOGRAPHY, AFW_MEDICAL_SCIENCE, AFW_RELIGION,
AFW_PHILOSOPHY, AFW_ART, AFWA_DANCE, AFWA_MOVIE,
AFWA_LITERATURE, AFWA_ART_CRAFT, AFWA_THEATRICALS,
AFWA_MUSIC


 
abstract 
추상물

god 신  
direction 방향bearings 방위 
color 색채  
unit 단위unit-address 
행정단위
 
unit-area 면적단위 
unit-money 화폐단위 
unit-number 수량단위 
unit-physics 물리단위 
unit-electronics 
전자기 단위
 
unit-rate 비율단위 
unit-time 시간단위 
unit-weight 질량 단위 
subject-area영역  
force 힘  
Knowledge 지식belief 신앙
 
language 언어programming-language
프로그래밍 언어
 class 강좌 
 
concreteness
구체물
transport 
탈 것
  
appliance 
기구
musical-instrument
악기
 
electronic-device
전자제품
 
appliance-part부속품
 

food 음식

  

material 원재료

drug 약 
element 원소 
heavenly-body천체  
body-organ
신체기관
  
animal 동물person 사람occupation-person 
직업인
foreigner 외국인
property-person
속성인
nationality-person
국적인
king 왕
mammal 포유동물 
reptile 파충류 
bird 조류 
fish 어류 
amphibian 양서류 
plant 식물  
location 곳company 회사broadcasting-station 
방송사
newspaperdom
신문사
nature 자연mountain 산
continent 대륙
island 섬
lake 호수
river 강
ocean
zone 지역city 도시
facilities 시설road 길
park 공원
bridge 다리
welfare 복지시설
theater 공연장
square 광장
stadium 경기장
house 집temple 절
shop 가게
hotel 호텔
room 방
church 교회
catholic 성당
etc-beliefs기타종교
structure 건물building 빌딩
 
symbol
표상물

work 예술작품music-work 음악작품 
art-work 미술작품 
book 도서명 
movie-work 영화작품 
play-work 연극작품 
TV-work 방송프로 
korean-pop 대중가요 
computer-game
컴퓨터 게임
 
publication
저작물
newspaper 신문 
magazine 잡지 
cartoon 만화 
research-paper
학술지명
 
old-book 고서명 
document문서  
cultural-assets 문화재  
trade-mark
상표 및 상품명
  
 
organization
조직
system 체계government-occupation 관직명
 
law 법tax 세금
group 단체society 회
 
sports-team 선수단 
family 가족 
nation 국가 
genre 계통 
institution기관public-institution 
공공기관 
museum 박물관
zoo 동물원
station 역
office 사무소
edu-institutionschool 학교
academy 학원
research-institute
연구소
 
bank 은행 
hospital 병원 
 
phenomenon
현상
disease 병
  
event 사건event-verb 동사 
figure 모양sight 광경  
activity 활동
exam 시험
  
job 직업  
meeting 회의  
sports 운동  
method 방법   
state 상태state-adj 형용사
  
time 시간day 날
weekday 요일 
season 계절  



WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스


  • Google App Engine(GAE)의  urlfetch 이용하여 URL 페이지 읽어오기
  • python 기본 패키지인 urllib2 이용하여 URL 페이지 읽어오기




def get_url(word):
try:
return get_url_gae(word)
except:
return get_wiktion_xml_local(word)

def get_url_gae(word):
from google.appengine.api import urlfetch

url = 'http://abc.com/%s' % (word)
# Changing User-Agent
# https://developers.google.com/appengine/docs/python/urlfetch/#Request_Headers
# http://stackoverflow.com/questions/2743521/how-to-change-user-agent-on-google-app-engine-urlfetch-service
result = urlfetch.fetch(url=url,
headers={"User-agent", "jjjj/0.1 (2001-07-14)"}
)
if result.status_code == 200:
return result.content.decode('utf-8')
else:
return ''

def get_url_local(word):
import urllib2

url = 'http://abc.com/%s' % (word)
req = urllib2.Request(url)
req.add_header("User-agent", "jjjj/0.1 (2001-07-14)")
fp = urllib2.urlopen(req)
return fp.read().decode('utf-8')



WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스


아래는 UTF-8 인코딩 파일에서 JSON 데이타 포맷을 읽어,

메모리에 json 타입으로 로딩하는 것이다.


파일의 이름이 '-' 이면, 파일이 아니라  stdin 에서 읽어 들인다.


json.loads() 함수가  JSON 포맷을 문자열을 메모리 데이타로  load하는 기능을 한다.


utf-8 파일을 읽어들일 때는 codecs를 이용한다.




import codecs

import json


def load_jsonfile(fname):

if fname=='-':

fp = codecs.getreader('utf-8')(sys.stdin)

else:

fp = codecs.open(fname, 'rb', encoding='utf-8')

lines  = fp.read()

fp.close()


jdata = json.loads(lines)

return jdata




WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스



한국 정보 과학회   http://www.kiise.or.kr


2013년 행사 계획  http://www.kiise.or.kr/1sig/docu/con-2013.asp




한글 및 한국어 정보처리 학술대회

http://nlp.kookmin.ac.kr/hclt2013/invite.html


  • 논문접수마감 : 9월 9일(월)
  • 심사결과통보 : 9월 23일(월)
  • 최종논문제출 : 9월 30일(월)
  • 1차 사전등록 : 10월 1일(화)
  • 2차 사전등록 : 10월 9일(수)

제25회 한글 및 한국어 정보처리 학술대회

가 2013/10/11(금)–12(토), 국민대학교에서 개최될 예정입니다. 


관심있으신 분들의 참고 부탁드립니다. 
아직 학술대회 홈페이지는 만들어지지 않은 단계인데요. 
우선은 다음의 사이트를 참고하시면 될 것 같습니다. 

참고 사이트 : http://nlp.kookmin.ac.kr/ 





국어 정보 처리 시스템 경진대회 (2012년 개최함)

http://nlp.kookmin.ac.kr/sj2012/



2012 국어 정보 처리 시스템 경진 대회 수상자 명단과 작품 개요

구 분작 품 명작품 개요
대상KAIST NLP-Hub
(KAIST)

본 소프트웨어 한국어 자원을 효과적으로 사용할 수 있는 플랫폼을 구축하고자 하는 목적으로 다음과 같은 세 가지 도구를 결합하여 개발된 것으로, 사용자 편의에 초점을 맞추고 오픈소스로 공개함으로서 미흡한 한국어 NLP 연구에 대한 초석을 마련하고자 한다.

1) Korean NLP Platform
2) Wrapper to change NLP output to RDF/OWL
3) Automatic annotating system

금상외국인을 위한
한국어 학습 도우미
(금오공대)

본 소프트웨어는 말뭉치와 웹문서, 사전에서 자동으로 추출한 지식에 기반하여 어휘 문제의 자동 생성, 자동 발음 표기, 글쓰기 학습 지원 기능을 제공하는 학습 도우미이다.

은상VEKIDA
(유사어구 탐색 시스템)
(부산대)

VEKIDA는 약 1GB의 대용량의 한글 문서 데이터베이스에 대해 표절이 의심되는 문서를 질의 탐색하여 초고속으로 표절 의심 구간을 찾아낼 수 있다.

동상의미 역 표지 부착
말뭉치 저작 도구
(한림대)

KOST(KOrean Semantic Tagger)는 한국어 의미 표지 부착 말뭉치를 구축할 수 있는 도구다. 본 도구를 사용하여 한국어 PropBank 및 세종 계획에서 정의된 의미 부착 말뭉치를 함께 구축할 수 있다.

날아라 펭귄
(울산대)

헷갈리는 우리말 단어를 따로 시간 소비해서 공부하기는 힘들뿐더러 또한 그냥 단순하게 암기한다면 효율도 떨어질 것이다. 본 프로그램은 틈나는 시간에 게임이라는 재미있는 방법으로 효과적으로 우리말을 공부할 수 있도록 하는 스마트폰용 게임이다.

장려상Tagbench
(말뭉치 오류 수정 도구)
(한국해양대)

TagBench는 자동 번역에 필요한 정보인 문장, 어절, 형태소의 품사 정보를 쉽고 편리하게 구축하는 도구이며, 더불어 세종 말뭉치에 포함되어 있는 여러 가지 오류를 정확하고 효율적으로 수정하는 기능을 제공한다.

언어학자를 위한
말뭉치 분석기
(금오공대)

본 소프트웨어는 활용성 높은 말뭉치 연구를 지원하기 위해, 세종 말뭉치는 물론 사용자 말뭉치를 대상으로 다양한 문맥에 대한 검색 기능을 제공하는 말뭉치 분석기를 구현한 것이다.


'Data/Text/Knowledge Analysis & Mining' 카테고리의 다른 글

오타 교정  (0) 2013.07.24
한국어 개체명 인식 기술 (Named Entity Recognition)  (0) 2013.07.17
Web Science (웹 사이언스, KAIST)  (0) 2013.07.15
Taxonomy, Folksonomy, Ontology  (0) 2013.07.11
Freebase  (0) 2013.07.11

WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스

KAIST에 Web Science (웹 사이언스)  라는 랩이 있군요.

http://kaistwebst.blog.me/130167618746


시맨틱웹 랩

http://semanticweb.kaist.ac.kr/




http://webst.kaist.ac.kr/content.php?db=subject_page#C5


COURSES

 > ACADEMICS > COURSES
교과목구분교과목번호교과목명강:실:학담당교수개설학기비고
공통
필수
필수CC010리더십강좌1:0:0 가을 
CC020윤리 및 안전1AU 봄,가을 
택1CC500Scientific Writing3:0:3(4) 봄,가을 
CC511확률 및 통계학2:3:3(6) 봄,가을 
CC513공업경제 및 원가분석학3:0:3(6) 가을 
CC522계측개론2:3:3(8) 가을 
CC530기업가 정신과 경영전략3:0:3(6) 가을 
CC532협력시스템설계4:0:4  
선택WST500웹 사이언스 공학 개론3:0:3문수복, 정진완**
WST501웹 스케일 자료 검색 기초 이론3:0:3Yufei Tao**
WST510웹 아키텍쳐3:0:3문수복*CS542 
**
WST520웹 소프트웨어 공학3:0:3Gregg Rothermel
또는
가을
**
WST540웹 검색 및 텍스트 분석3:0:3Yufei Tao**
WST550온톨로지 공학3:0:3Tony Veale, 
최기선
*CS590 
**
WST560모바일 웹과 어플리케이션3:0:3문수복**
WST590웹 이용자의 정보행동 연구방법론3:0:3백영민**
WST591웹 수용자 연구3:0:3백영민가을**
WST620웹소프트웨어 신뢰성3:0:3Gregg Rothermel가을
WST621외장형 메모리 자료구조3:0:3Yufei Tao봄 
또는 
가을
WST622멀티미디어콘텐츠 보호3:0:3이흥규봄 
또는 
가을
*CS646
WST630고성능 컴퓨팅3:0:3김동준봄 
또는 
가을
*CS610
WST640웹정보검색3:0:3정진완,맹성현봄 
또는 
가을
*CS660
WST650웹 언어공학3:0:3Tony Veale
또는
가을
WST660모바일 무선 네트워크 특론3:0:3Mohapatra
WST665웹 스케일 이미지 및 비디오 검색3:0:3윤성의가을
WST670온라인 소셜 네트워크3:0:3차미영, 이원재가을*GCT673
WST690인간행위 데이터 분석론3:0:3Alejandro Jaimes
WST891웹사이언스공학특강3:0:3과교수봄,가을
미정웹 경제 및 비즈니스3:0:3***
미정웹 서비스 및 광고3:0:3***
CS500알고리즘 설계와 해석3:0:3좌경룡, 최성희, 
Otfried Cheong
**
CS510컴퓨터구조3:0:3맹승렬, 허재혁, 
김동준
**
CS520프로그래밍 언어 이론3:0:3최광무, 한태숙가을**
CS522형식 언어 및 오토마타이론3:0:3최광무, 한태숙**
CS530운영체제3:0:3송준화, 신인식, 
허재혁
봄,가을**
CS540네트워크 아키텍쳐3:0:3문수복봄,가을**
CS548고급 정보보호3:0:3윤현수, 김광조**
CS550소프트웨어 공학3:0:3배두환, 김문주, 
백종문
**
CS560데이터베이스 시스템3:0:3이윤준, 황규영, 
김명호, 정진완
**
CS562데이터베이스 설계3:0:3

이윤준, 김명호,
황규영, 정진완

가을**
CS570인공지능 및 기계학습3:0:3김기응, 오혜연, 
최호진
봄,가을**
CS574자연언어처리I3:0:3최기선,박종철가을**
CS580컴퓨터그래픽스3:0:3신성용, 박진아, 
윤성의
**
CS600그래프 이론3:0:3좌경룡가을
CS664고급데이터베이스 시스템3:0:3황규영, 이윤준,
김명호, 정진완
가을
연구WST960논문연구(석사)과교수봄, 가을
WST965개별연구(석사)과교수봄, 가을
WST966세미나(석사)1:0:1과교수봄, 가을
WST980논문연구(박사)과교수봄, 가을
WST986세미나(박사)1:0:1과교수봄, 가을

※ *는 대체 교과목 임. 
**표시는 500단위 교과목으로 학사.대학원 상호인정 교과목 임. 
***표시는 현재 개설준비중인 교과목이며 교과목 이수요건 변동이 있을 수 있으며 추후 교과목 명이 변경될 수 있음.

교과목 개요
석,박사 과정

WST500 웹사이언스 공학개론

웹은 온라인에서 만나는 사람들 간의 의사소통, 신뢰, 자기 정체성, 집단 지능의 구현의 플랫폼의 역할 뿐만 아니라 미디어로서 사회 정치적 의견, 그룹 의사결정, 온라인 평판 생성을 가능하게 하는 미디어로써의 역할을 한다. 본 과목에서는 이러한 웹의 역할과 기능을 인문사회학, 법학, 자연과학, 공학 등 다양한 학문이 융합된 새로운 차원에서 다루는 웹 사이언스 공학을 개관한다.

WST501 웹 스케일 자료 검색 기초 이론

이 과목에서는 Large Dataset상의 queries를 서포트하기 위하여 실제 흔히 적용되는 인덱스 구조와 알고리즘을 공부한다. 이 과목은 각각 data streams, multi-dimensional objects, 그리고 web-specific applications에 초점을 맞춘 세 부분으로 나누어져 다음의 주제를 포함한다: sampling, hashing, sketch structures,R-trees, nearest neighbor search, instance optimality. 또한 알고리즘의 성능을 분석하기 위한 기본 테크닉을 배운다.

WST510 웹 아키텍쳐

웹 서비스 구축 및 웹 아키텍처에 대하여 강의한다. 웹 아키텍쳐의 설계 원리를 다루고 성능과 안정성 이슈에 대하여 다룬다.

WST520 웹소프트웨어 공학

웹의 역할과 제공하는 기능이 진화, 발전함에 따라 웹 기반의 시스템을 개발하기 위한 소프트웨어 공학의 역할과 웹의 자원을 이용하여 엔지니어링 작업을 수행하는 소프트웨어 엔지니어 능력의 중요성도 함께 부각 되게 되었다. 이러한 추세는 전문 소프트웨어 엔지니어에 의해 수행되는 소프트웨어 공학적 개발 과정에 영향을 미치게 되었을 뿐만 아니라 최종 사용자 프로그래밍을 가능하게 하는 웹 기반 플랫폼의 등장을 초래하게 되었다. 이 과목에서는 이렇게 웹의 발전이 소프트웨어 공학에 미친 영향에 대해 살펴보고, ‘최종 사용자를 위한 소프트웨어 공학(End-user Software Engineering)’과 관련된 제반 현상과 의미, 연구 방향에 대해 학습한다.

WST540 웹 검색 및 텍스트 분석

웹검색엔진의 모델링과 알고리즘을 공부한다. 핵심토픽에는 tf-idf 계산법, 페이지순위화, 역색인, trie, 접미사 트리, 문자열 B-트리, q-그램, 오류극복형 키워드검색, deep웹 등이 있다. 이 과목에 텍스트검색과 링크분석의 기초에 대한 확고한 이해를 갖게 될 것이다.

WST550 온톨로지 공학

온톨로지 공학에 대한 개괄을 목표로 한다. 온톨로지의 개념과 예, 구축에 대하여 강의하고 철학, 언어학, 인공지능, 컴퓨터공학 등에서의 논의들을 다룬다

WST560 모바일 웹과 어플리케이션

오늘날 많은 사람들이 모바일 폰을 통해서 이멜과 뉴스를 읽고 온라인 소셜 네트워크 서비스를 사용하고 있다. 스마트폰을 위시한 모바일 폰에 대한 관심은 수많은 새로운 애플리케이션을 탄생시키기도 하지만 연결, 개인 사생활 및 보안에 관련된 많은 이슈들을 만들어낸다. 본 과목에서는 스마트폰으로 대변되는 모바일 시스템과 애플리케이션에 대한 최근 동향을 살펴보기로 한다. 강의에서는 기초 이론을 다룬 후, 논문 발표와 토론을 통해 모바일 폰의 다양한 융합 학문적 문제를 살펴보기로 한다.

WST590 웹이용자의 정보행동 연구방법론

웹은 정보를 수집, 저장, 처리할 수 있는 보물창고이다. 정보추구를 보다 효율적이고 효과적으로 하기 위해서 웹서비스가 인간의 필요와 욕구를 충족시켜 줄 수 있어야 한다. 즉 웹 이용자들이 바라고 있는 정보관련 서비스는 무엇인지, 그리고 개발된 웹서비스가 웹이용자들에게 만족감을 주는지를 파악하는 것은 현재의 웹상황을 개선하는 것은 물론, 미래의 웹서비스를 선도하기 위한 필수작업이다. 이를 위해 이번 과목에서는 웹에서 나타나는 정보추구행동을 어떻게 조사할 수 있는지, 그리고 시험적 웹서비스를 어떻게 평가할 수 있는지에 관한 응용 사회과학적 관점을 학습하고 어떻게 현실에서 적용할 수 있는지 실제로 적용하며, 그 타당성을 토론할 것이다. 보다 구체적으로 융합과학의 관점에서 응용 사회과학이 어떻게 기술 개발에 아이디어를 줄 수 있으며, 해당 기술에 대한 평가가 어떻게 이루어질 수 있는지를 살펴볼 것이다.

WST591 웹 수용자 연구

웹의 등장은 기존의 미디서 시스템의 근간을 흔들고 있다. 신문, 텔레비전, 라디오 등의 수용자 중 상당수가 웹으로 옮아가고 있으며, 무엇보다 웹2.0 시대를 맞아서 수용자의 참여가 가능해 졌다. 이번과목에서는 다음의 두 가지 문제를 중심으로 웹의 등장과 뉴미디어 시대의 관련성에 대해 탐구하고자 한다. 첫째, 전문적 문화산업 종사자와 일반인 모두 미디어 콘텐츠 개발에 참여하며, 둘째, 기존 미디어와 뉴 미디어는 상호경쟁하면서도 상호공존하는 패턴을 보이고 있다. 이 교과에서는 기존 미디어의 수용자 연구를 학습하고 웹이 주도하고 있는 미디어 융합과 통합의 시대에서 기존 연구들의 한계는 무엇이고 어떻게 극복되는지를 살펴보기로 한다. 특히 이 수업에서는 뉴 미디어 시대의 수용자 조사 연구(콘텐츠 노출, 수용)는 어떻게 변해야 하며, 웹상황에서 어떠한 방식으로 데이터를 저장, 수집, 분석, 활용할 수 있는지 그리고 새로운 기법을 어떻게 제안할 수 있는지를 집중적으로 다루기로한다.

WST620 웹 소프트웨어 신뢰성

본 과목에서는 다양한 웹 소프트웨어의 신뢰성을 평가하고 개선하기 위한 최근 연구동향에 대해 살펴본다. 먼저 소프트웨어 테스팅, 정적 분석, 동적 분석 기법 등 웹 소프트웨어의 신뢰성을 분석하고 검증하기 위한 기반 기술에 대해 공부한다. 특히 비전문가(일반 사용자)가 매쉬업(Mashup), 웹 매크로(Web Macro) 등을 통하여 웹 응용 소프트웨어를 개발하는 과정에서 보다 신뢰성이 높은 소프트웨어를 만들 수 있도록 하기 위한 최근 연구에 대해 살펴본다. 그리고 웹 소프트웨어 신뢰성 평가를 위한 프로그래머 대상의 실증적 연구 방법들에 대해서도 고찰한다. 이 과목에서는 텀 프로젝트의 수행을 통해 학생들이 웹 소프트웨어의 신뢰성과 관련된 새로운 기술을 익히고 구현하며 실증적 연구를 수행하도록 한다. 선수과목-WST520

WST621 외장형 메모리 자료구조

공간할당 및 질의시간이 적절한 외부메모리(EM) 구조에 관해 논한다. B-tree 인덱스 구조 외, stabbing query (1-d intervals, 2-d orthogonal range reporting, 2-d orthogonal range count/max)를 기본적으로 다루며, 이 외 persistency, boot-strapping, fractional cascading, compression, weight-balancing, logarithmic method 등 I/O면에서 효율적인 구조 개발을 위한 기본적 테크닉을 다룬다

WST622 멀티미디어콘텐츠보호

웹이나 인터넷 등 온라인에서 유통되는 각종 멀티미디어 콘텐츠를 보호하기 위한 다양한 최신 기술들을 다룬다.

WST630 고성능 컴퓨팅

슈퍼컴퓨터 혹은 병렬컴퓨터 등 고성능 컴퓨팅 시스템에 대하여 공부하고 클러스터 기반 고성능 컴퓨팅 시스템을 구축하는 것에 관하여 강의한다.

WST640 웹 정보검색

웹 상에 존재하는 정보 중에서 특정 주제의 웹 페이지를 보다 더 정확히 찾는 방법에 대하여 공부한다. 크롤링, 자연어처리, 인공지능 등의 이슈에 대하여 다룬다.

WST650 웹 언어공학

웹의 매체인 언어를 웹사이언스에서 어떻게 다루어져야 하는지를 연구한다. 웹은 우리가 매일 쓰는 언어를 바탕으로 탄생하였고 매일 진화하고 있다. 웹을 대량의 언어 데이터인 코퍼스로서 보면, 상식 마이닝, 단어의 정의 마이닝을 할 수 있는 이론적 실험학인 계산언어학의 대량 언어데이터 가설을 적용할 수 있다. 웹은 언어의 지속적 변화를 반영하는 반사체와 같아서, 언어를 활용한 창의성을 웹컨텐츠로 분석한다. 이에는 웹 N-gram, 웹 질의 다양체론이 적용되며 특히 온라인 신문 등의 특정 도메인 적용 모델링을 탐구한다.

WST660 모바일 무선네트워크 특론

모바일 시스템의 보급과 사용의 다양성이 증가하고 있다. 이 과목에서, 특히 스마트폰과 모바일 소셜네트워크의 대두로 인하여 발생한 모바일통신체계의 기본과 실용적 진전을 공부한다. 이 체계의 핵심 – 성능, 신뢰성, 보안성, 사생활권 문제를 논의하며 이 때 최근 기술문헌, 광범위한 공동 과목과제를 활용한다.

WST665 웹 스케일 이미지 및 비디오 검색

본 교과목에서는 이미지 및 비디오 검색을 위한 관련 기술을 살펴본다. 특히 이미지/비디오 특징점 및 이의 indexing 자료구조 및 런타임 검색 알고리즘에 대하여 배운다. 또한 웹 상에 존재하는 이미지 및 비디오의 실시간 검색을 위한 확장성 검색 알고리즘으로 집중 탐구한다.

WST670 온라인 소셜네트워크

플랫폼으로써의 온라인 소셜 네트워크의 성장은 단순히 전산학적 측면에서의 연구 뿐만 아니라 인지과학, 사회학, 정치학, 언론학 등 다양한 분야와의 융합 연구의 필요성도 크게 대두되고 있다. 본 과목에서는 온라인 소셜 네트워크의 특성과 네트워크적 특성을 이용한 융합 분야 활용을 위한 기초 이론과 데이터 분석을 다룬다.

WST690 인간행위 데이터분석론

사용자 행위분석을 위한 대용량 데이터분석을 한다. 따라서 검색과 웹정보 찾기 방식을 발견 및 활용법, 인터랙션 영향 행위와 더불어, 통제실험법을 사용자 연구와 여러 기술과 함께 조합하여 배운다. 그 결과 멀티미디어, 특히 소셜미디어 환경에서 인간 행위를 볼 수 있는 통찰력을 갖게 된다.

WST891 웹사이언스공학특강

웹사이언스공학 전반에 걸쳐서 석·박사과정 현 과목 이외의 내용이 필요할 때 특강을 개설할 수 있도록 융통성 있게 운영한다..

CS500 알고리즘 설계와 해석

Algorithm Design에서의 기본적 기법인 divide-and-conquer, greedy method, dynamic programming 등을 소개 여러 컴퓨터 응용 분야에서의 사례 연구를 통하여 이러한 기법들을 익히고 또한 각 알고리즘의 time 및 spacecomplexity를 분석한다.

CS510 컴퓨터 구조

컴퓨터의 비용과 성능에 입각한 계량적인 컴퓨터 설계 원리를 소개하고, 인스트럭션세트와 인서트럭션 수행 파이프라인의 설계를 다루며, 인스트럭션의 병렬 수행 체제로서 수퍼 스칼라와 VLIW등의 인스트럭션 수준의 병렬 수행에 대하여 공부한다. 기억장치에 대하여는 캐쉬와 가상 기억체계를 포함하는 계층 기억장치의 설계와 보조 기억장치에 대하여 공부한다. 끝으로 입출력 시스템과 병렬 컴퓨터와 상호 연결망에 대하여 공부한다.

CS520 프로그래밍 언어 이론

프로그래밍 언어의 문법구조와 의미구조의 이론적 배경과 실제를 익힌다. 강의 토픽으로는 다양한 파라다임의 언어(값 중심의 언어applicative language, 기계중심의 언어 imperative language, 네트워크 중심의 언어 mobile language, 논리식 중심의 언어 logic language, 물건 중심의 언어 object-oriented language, 함수중심의 언어functional language 등)에 특화된 이론과 구현기술, 그리고 프로그래밍 언어를 설계/분석하는 정형적인 도구 등을 다룬다.

CS522 형식언어 및 오토마타 이론

Context-free grammar의 두 가지 대표적인 deterministic 파싱 방식인 LR ALC LL파싱 및 그 변형들에 관하여 공부한다. 특히 LR(k)문법의 SLR(K) ALC SLR(1) cover, LL(K) cover인 PLR(k)문법, 그리고 error recovery등을 다룬다.

CS530 운영체제

배취(Batch) 처리 소프트웨어 시스템의 기본개념과 다중처리 및 시분할 처리계에 관한 것을 배우고, 국내에서 사용되고 있는 오퍼레이팅시스템 중 하나를 선정하여 그의 구성 및 기능 등을 구체적으로 공부한다. 간단한 오퍼레이팅시스템 프로그램을 짜보고 그의 기능향상을 위한 방법 등을 연구한다.

CS540 네트워크 아키텍쳐

OSI의 reference model을 아키텍쳐 입장에서 고찰하고 각 계층의 프로토콜을 상위 계층 중심으로 살펴본다. 또한 통신 프로토콜을 어떤식으로 구성하는가에 관해 살펴보며, TCP/IP, SNA, PC간 네트워크 등 여러 네트워크 아키텍쳐의 비교분석을 통해 그 장단점을 강의 및 토론한다.

CS548 고급 정보 보호

과목의 목적은 정보 보안에 대한 포괄적인 지식을 교육하는데 있다. 과목내용은 정보보안에 초점을 두어 수학, 전산 및 통신 분야의 기초적인 지식을 바탕으로 정보보안의 개념을 암호, 접근통제, 통신규약 그리고 이와 관련된 소프트웨어로 재 분류, 체계화 하여 전반적인 
정보보안에 대한 이해를 제공한다.

CS550 소프트웨어 공학

신뢰도 높은 소프트웨어를 능률있게 개발하는데 요구되는 기본개념을 소개하며 life cycle 모델, 개발단계별 기법, 자동화 도구, 프로젝트 관리기술, 소프트웨어 개발환경, 신뢰도 및 자원활용모델, 소프트웨어 metrics 등을 논의한다.

CS560 데이터베이스 시스템

데이터베이스 운영시스템을 설계, 구현하는데 필요한 기본개념과 구조를 이해시킬 목적으로 데이터베이스의 개념, 데이터구조방법, 데이터 모델의 개념, 데이터 기술언어, 질의 최적화, 동시성 제어, 원자성과 신뢰성, 그리고 현 시스템들의 분석을 취급한다.

CS562 데이터베이스의 설계

데이터베이스 시스템의 효과적인 활용을 위해 필요한 데이터베이스의 기본적인 이론 및 응용에 관하여 공부한다. 데이터모델, 데이터베이스 표준언어, 논리적 설계와 물리적 설계, 데이터베이스의 성능향상 기법, 데이터베이스 시스템의 기본적인 구현 기술등에 관하여 논의한다.

CS570 인공지능

인공지능의 중요한 개념 및 기본적인 기법과 응용시스템에 관하여 공부한다. 지식표현방법, 경험적 탐색, 문제해결, 놀리 및 추론, 학습 등을 다룬다. 자연언어처리, 패턴인식, 컴퓨터시각, 음성인식, 신경망 등에 대하여 개략적으로 고찰한다.

CS574 자연언어처리I

자연언어는 인간과 컴퓨터/로봇 상호작용을 위한 자연스러운 의사소통도구로, 그리고 각종문서의 내용기술도구로 필수적으로 사용된다. 이러한 자연언어 표현의 이해 및 생성을 위하여 단어, 구문, 의미 및 화행에 대한 단계별 연구 결과들을 검토하고 정보 추출, 질의 응답, 대화 에이전트, 기계번역 등의 응용 분야에 대해서 논의한다.

CS580 컴퓨터 그래픽스

대화형 3차원 컴퓨터 그래픽스를 이론적으로 고찰하고 실습을 통하여 익힌다. 컴퓨터 그래픽스 기본 모델과 그래픽 하드웨어와 소프트웨어를 포함한 그 구성요소 및 이들의 역할과 상호관계를 정립하고 3차원 물체의 모델링 및 렌더링 기법을 다룬다.

CS600 그래프 이론

트리, 최소경로, 연결도, 오일러그래프, 해밀톤그래프, matching. Coloring, planar그래프 , network flow 등의 기초이론과 응용에 대해서 강의한다.

CS664 고급 데이터베이스 시스템

데이터베이스 시스템의 formal foundation에 대하여 공부한다. Deductive database, relational database theory, fixed point theory, stratified negation, closed world assumption, safety, multi valued dependency, generalized dependency 등과 파손 복구를 포함한 advanced topic들에 대하여 깊이 있게 공부한다. 데이터베이스 시스템 또는 그에 대등한 과목을 먼저 수강함을 원칙으로 한다.



WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스











온톨로지는 전산학과 정보 과학에서, 특정한 영역을 표현하는 데이터 모델로서 특정한 영역(Domain)에 속하는 개념과, 개념 사이의 관계를 기술하는 정형(Formal) 어휘의 집합으로 정의된다. 예를 들어 "종-속-과-목-강-문-계"로 분류되는 생물과 생물 사이의 종의 관계, 영어 단어 사이의 관계 같은 것을 정형 어휘로 기술하면 각각 온톨로지라고 할 수 있다. 정형 언어(Formal Language)로 기술된 어휘의 집합인 온톨로지는 추론(Reasoning, Inference)을 하는 데에 사용된다. 웹의 등장은 전통적인 정보검색을 비롯하여 지식관리와 일반 상거래 등 사회 전 분야의 변혁을 초래하였다. 특히 웹 정보 검색은 소장 자료를 대상으로 하는 제한된 검색에서 웹을 통해 접근할 수 있는 전자자원을 대상으로 하는 검색을 가능하게 하였다. 웹의 급속한 발달로 인해 검색 대상 범위의 확대는 보다 정교한 검색을 필요로 하게 되었으며, 지능화된 정보 검색 시스템 개발을 촉진하는 계기가 되었다. 이런 계기를 바탕으로 웹자원을 효과적으로 관리할 수 있는 정보 검색의 새로운 도구의 필요성이 대두되었다. 온톨로지는 시맨틱 웹을 구현할 수 있는 도구로써 지식개념을 의미적으로 연결할 수 있는 도구이다.

온톨로지는 자연어의 기계 번역과 인공지능 분야에서 활용되며, 최근에는 특정 분야의 인터넷 자원과 그 사이의 관계를 기술하는 온톨로지를 사용하는 시맨틱 웹과 이것에서 파생된 시맨틱 웹 서비스 등의 핵심 요소로서 주목받고 있다.

주로 인용되는 온톨로지에 대한 정의는 '어떤 관심 분야를 개념화하기 위해 명시적으로 정형화한 명세서 (An ontology is an explicit and formal specification of a conceptualisation of a domain of interest. (c.f. Tom Gruber, 1993)' 이다. 즉, 각 사물에서 공통점을 찾아내고 이를 하나의 집합 또는 범주로 나타내기 위해 의미, 지식의 쓰임새 등을 분명하고 자세하게 설명하는 것을 말한다. 또 Borst는 온톨로지를 '공유된 개념의 정형화된 명세이다. (Ontologies are defined as a formal specification of a shared conceptualization.)'라고 정의하고 있다. 앞의 정의에 '공유'의 개념이 추가되었는데, 이는 하나의 잘 정의된 개념을 각 분야에서 공통적으로 사용한다는 의미로 볼 수 있다.







택소노미와 폭소노미의 비교
 
1) taxonomy
 ‘분류하다’라는 ‘tassein’과 ‘법, 과학’이라는 ‘nomos’의 합성으로 어원은 그리스어이다. 원래는 어원 그대로 살아있는 유기체를 분류하는 과학이란 뜻이지만, 지금은 확장된 의미로서 살아있는 것 뿐만 아니라 무생물, 장소, 사건 등 모든 것을 택소노미 스키마(taxonomy schema)로 분류한 것이 택소노미다. 

특히, 택소노미 (taxonomy)는 이미 결정된 체계를 가지고 있으며, 관계형 네트워크 구조 보다는 트리형의 위계적 구조로 나타난다. 예를 들면, 포탈이나 웹 사이트에서 카테고리 구조나 사이트 맵은 텍소노미로 데이터를 조직한 것이다. 


관련 사이트



2) 폭소노미 (Folksonomy)
Folk(people)+order+nomos(law)의 합성어로 ‘사람들에 의한 분류법’이다. 실제 인터넷 유저들은 자유롭게 개별 정보(웹 페이지, 사진, 웹 링크 등)에 의미를 부여하여 카테고리로 정보들을 체계화한다. 각자 분류된 정보들은 웹에서 다른 사람들의 피드백에 의해서 수정되고 첨가된다. 이런 과정에 의해 정확하게 의미를 전달 할 수 있는 가치 있는 정보가 되는 것이다. 따라서 폭소노미는 협동적으로 이루어지고, 확장 가능한 라벨링 시스템이다. 

흔히 태그(tag)라고 불리는 라벨은 검색을 효과적으로 만든다. 왜냐하면 콘텐츠들은 여러 사람들에 의해 가장 일반적이고, 쉽게 접근 가능하며, 공유하기 쉬운 단어들로 이름이 부여되기 때문이다. 이런 라벨링 과정을 태깅(tagging)이라고 한다. 

폭소노미는 대표적인 예로 Flickr와 Del.icio.us를 생각해 볼 수 있다. 

< 폭소노미의 이점 >
  • 폭소노미는 택소노미(taxonomy)에 비해 체계적이지 않다. 인터넷의 유저들은 폭소노미 체계를 배워서 만드는 것이 아니라 더 편하고 유용하게 체계를 만들어가는 것이기 때문이다. 그래서 완벽한 분류 체계를 배울 필요가 없기 때문에 콘텐츠를 카테고리하는 비용이 절감될 수 있다. 
  • 폭소노미는 확장 가능하고, 유저들이 인터넷 카테고리를 하는 방식에 따라 빠르게 변화할 수 있다. 
  • 폭소노미는 사람들의 상호작용이 모인 결과이기 때문에 검색에서 적합성을 발휘한다.



관련 사이트

자료출처 : 코리아인터넷닷컴


'Data/Text/Knowledge Analysis & Mining' 카테고리의 다른 글

한글 및 한국어 정보처리 학술대회  (0) 2013.07.15
Web Science (웹 사이언스, KAIST)  (0) 2013.07.15
Freebase  (0) 2013.07.11
Crawler 운영 관리 도구  (0) 2013.07.11
DBPedia ontology  (0) 2013.07.11

WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스


# wget http://download.freebaseapps.com/

mv index.html freebase-rd-2013-07.gz
# gzip -dc freebase-rd-2013-07.gz | split -l 10000000 -d - freebase. 



실제 예시


RDF 파일 라인

ns:award.award_winner   ns:type.type.instance   ns:m.02pnlzh.


google API

https://www.googleapis.com/freebase/v1/topic/m/02pnlzh/

https://www.googleapis.com/freebase/v1/topic/m/02pnlzh?lang=ko


API 설명 : https://developers.google.com/freebase/v1/topic





'Data/Text/Knowledge Analysis & Mining' 카테고리의 다른 글

Web Science (웹 사이언스, KAIST)  (0) 2013.07.15
Taxonomy, Folksonomy, Ontology  (0) 2013.07.11
Crawler 운영 관리 도구  (0) 2013.07.11
DBPedia ontology  (0) 2013.07.11
DBpedia 데이타  (0) 2013.07.11

WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,

python 및 머신러닝 교육, 슬로우캠퍼스

Crawler

주소,  주소의 range 지정

테스트 기능,  결과 보기, 진행 상황 보기, Resume 기능,

Crawl 결과(로그) DB에 저장




RSS 목록

http://www.jobkorea.co.kr/service_jk/rss_service.asp


RSS 예시

http://www.jobkorea.co.kr/RSS/Gi_part_list.asp?Part_No=35100

'Data/Text/Knowledge Analysis & Mining' 카테고리의 다른 글

Taxonomy, Folksonomy, Ontology  (0) 2013.07.11
Freebase  (0) 2013.07.11
DBPedia ontology  (0) 2013.07.11
DBpedia 데이타  (0) 2013.07.11
추천 관련 좋은 강의자료  (0) 2013.04.15

WRITTEN BY
manager@
Data Analysis, Text/Knowledge Mining, Python, Cloud Computing, Platform

,