머신러닝 단기집중과정

텐서플로우 API 사용

Google의 실용적인 머신러닝 속성 입문 과정

https://developers.google.com/machine-learning/crash-course/


필수사항

머신러닝 단기집중과정에는 머신러닝에 관한 사전 지식이 필요하지 않습니다. 하지만 제시된 개념을 이해하고 실습을 완료하기 위해서는 다음과 같은 필수사항을 충족하는 것이 좋습니다.

기본 대수학 개념 숙지. 변수와 계수, 선형 방정식, 함수의 그래프, 히스토그램을 알고 있어야 합니다. 로그, 미분과 같은 고급 수학적 개념에 익숙하면 유용하지만 꼭 필요하지는 않습니다.

프로그래밍 기본사항 숙지 및 Python을 이용한 코딩 경험. 머신러닝 단기집중과정의 프로그래밍 연습은 텐서플로우를 이용하여Python으로 코딩되어 있습니다. 텐서플로우 사용 경험이 필요하지 않지만 함수 정의/호출, 목록과 사전, 루프, 조건식 등 기본 프로그래밍 구성체가 포함된 Python 코드를 쉽게 읽고 쓸 수 있어야 합니다.

참고: 머신러닝 단기집중과정에 사용되는 수학 및 프로그램 개념의 세부 목록은 각 개념의 참조 자료와 함께 아래의 주요 개념 및 도구 섹션을 참조하세요.사전 작업

프로그래밍 실습은 브라우저에서 바로 실행되므로 설정이 필요하지 않습니다. Colaboratory 플랫폼을 통해 실습이 실행됩니다. Colaboratory는 대부분의 주요 브라우저에서 지원되며 Chrome 및 Firefox 데스크톱 버전에서 가장 철저한 테스트를 거쳤습니다. 실습을 다운로드하여 오프라인에서 하시려면 다음의 안내에서 로컬 환경 설정에 관해 자세히 알아보세요.

Pandas 시작하기

머신러닝 단기집중과정의 프로그램 실습에서는 Pandas 라이브러리를 사용하여 데이터 세트를 조작합니다. Pandas에 익숙하지 않으면 실습에 사용된 주요 Pandas 기능이 설명된 실습에 사용된 주요 Pandas 기능이 설명된 Pandas 빠른 가이드를 참조하세요.

낮은 수준의 텐서플로우 기본 사항

머신러닝 단기집중과정의 프로그래밍 실습에서는 고급 tf.estimator API를 사용하여 모델을 구성합니다. 처음부터 텐서플로우 모델을 구성하려면 다음 가이드를 완료하세요.

TensorFlow Hello World 낮은 수준의 텐서플로우로 코딩된 'Hello World'.텐서플로우 프로그래밍 개념 텐서플로우 애플리케이션의 기본 구성요소 둘러보기: 텐서, 작업, 그래프, 세션.텐서 생성하고 조정하기 텐서 간이 입문서: 텐서플로우 프로그래밍의 중심 추상화. 선형 대수학의 행렬 덧셈과 곱셈에 관해서도 설명되어 있습니다.주요 개념 및 도구

머신러닝 단기집중과정에서는 다음과 같은 개념과 도구를 설명하고 적용합니다. 자세한 내용은 연결된 자료를 참조하세요.

수학대수학변수, 
계수, 
함수선형 방정식.
예: y=b+w1x1+w2x2>y=b+w1x1+w2x2로그 및 로그 방정식. 예: y=ln(1+ezy=ln(1+ez)시그모이드 함수선형 대수학텐서 및 텐서 차수행렬 곱셈삼각법Tanh (활성화 함수에 설명되어 있음, 사전 지식이 필요하지 않음)통계평균, 중앙값, 이상점, 표준 편차히스토그램을 읽을 수 있는 능력적분학(선택 사항, 고급 주제의 경우)미분의 개념 (실제로 미분을 계산할 필요는 없습니다.)경사도 또는 기울기편미분 (경사도와 긴밀한 관련이 있음)연쇄 법칙 (신경망 학습 시 역전파 알고리즘을 완전히 이해하기 위해 필요함)

Python 프로그래밍기본

Python

다음과 같은 Python 기본 사항이 Python 가이드에 설명되어 있습니다.

위치 및 키워드 매개변수를 사용한 함수 정의 및 호출

사전, 목록, 세트(만들기, 액세스, 반복)

for 루프, 반복 변수 여러 개를 사용한 for루프(예: for a, b in [(1,2), (3,4)])

if/else 조건부 블록 및 조건식

문자열 형식 지정 (예: '%.2f' % 3.14)

변수, 할당, 기본 데이터 유형 (int, float, bool, str(ing))

pass 문

중급 Python

다음과 같은 고급 Python 기능도 Python 가이드에 설명되어 있습니다.

목록 이해

람다 함수

타사 Python 라이브러리

머신러닝 단기집중과정 코드 예에서는 타사 라이브러리의 다음과 같은 기능을 사용합니다. 이러한 라이브러리에 관한 사전 지식은 필요하지 않습니다. 필요할 때 알아야 하는 것을 찾을 수 있습니다.

Matplotlib(데이터 시각화용)
pyplot 모듈
cm 모듈
gridspec 모듈
Seaborn(히트맵용)
heatmap 함수
Pandas(데이터 조작용)
DataFrame 클래스
NumPy(낮은 수준의 수학 연산용)
linspace 함수
random 함수
array 함수
arange 함수
scikit-learn(평가 측정항목용)
metrics 모듈
Bash 터미널/Cloud Console

로컬 머신이나 Cloud Console에서 프로그래밍 실습을 실행하려면 쉽게 명령줄을 사용할 수 있어야 합니다.

Bash 참조 매뉴얼Bash Cheatsheet셸 알아보기




. . .
Posted by 홍반장水 홍반장水
[현장] 구글 ‘텐서플로우’ 개발자가 생각하는 머신러닝이란?

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

– 텐서플로우와 다른 머신러닝 라이브러리와의 차이점은 무엇인가? 비슷한 질문으로 다른 라이브러리가 아닌 텐서플로우를 선택해야 하는 이유는 무엇인가?

= 모든 기술을 이용해봐라. 토치, 카페 등 다른 기술들을 다운로드 하는 건 어려운 게 아니다. 다양한 기술을 작은 예제와 함께 일단 사용해보라. 그러면 결국 여러분들의 상황에 적합한 기술을 찾을 수 있을 거다. 텐서플로우가 모든 문제를 해결할 수 있는 만능 기술은 아니다. 텐서플로우의 장점은 구글이 만든 2세대 머신러닝 기술이고, 100여명의 인력이 투여되는 기술이라는 점이다. 그 말은 기술 지원이 활발하고, 오류도 더 빨리 발견하고 개선할 수 있다는 뜻이다. 작은 회사의 직원이고 어떤 기술을 선택할 지 고민하고 있다면 텐서플로우가 분명 좋은 대안이 될 것이다. 큰 데이터 규모에서는 더더욱.

– 텐서플로우는 윈도우에서 이용할 수 없다. 향후 윈도우를 지원할 계획이 있는가?

= 계획에 대해서는 뭔가 확실하게 이야기할 게 없다. 하지만 나도 윈도우 기기를 가지고 있고, 텐서플로우를 이용하고 있다. 그래서 추천하는 방법은 VM웨어를 설치하라. 무료 아닌가.(웃음) 그 위에서 다른 운영체제를 설치하고 텐서플로우를 이용해라.

– 알파고가 ‘강화학습(Reinforcement Training)’ 알고리즘을 이용했다고 들었다. 텐서플로우에서 강화학습 혹은 알파고 같은 기술을 지원할 계획이 있는가?

= 텐서플로우는 미국 본사에서 개발한다. 딥마인드는 영국에서 개발한다. 두 팀 모두 구글이란 같은 회사에 속해 있지만 서로 멀리 떨어져 있고 시차가 있어서 빨리 소통하기 어렵다. 딥마인드팀은 자체적으로 기술을 개발하고 있기 때문에 딥마인드가 하는 일에 대해서 많이 알지 못한다. API나 기술 지원은 언젠가 가능할 것으로 본다. 딥마인는 텐서플로우를 포함한 구글의 소프트웨어를 이용하고 있다. 텐서플로우나 구글 고유의 기술을 사용하는 비중이 얼마나 되는지는 잘 모른다.

– ‘텐서플로우 플레이그라운드‘라는 것을 이용해 봤다. 자바스크립트로 만든 시각화 도구인데 매우 흥미로웠다. 이런 도구는 텐서플로우 입문자에게 좋을 것 같더라. 혹시 비슷하게 텐서플로우와 통합해 사용할 수 있는 모니터링 도구나 프로파일 도구를 알고 있는가?

= 텐서플로우 그래프를 이용할 때 갑자기 속도가 느려지는 것을 경험하는 사용자가 있을 것이다. 무엇 때문에 속도가 늦어졌는지 알기 위해서 모니터링 도구나 프로파일링 도구가 필요하다. 텐서플로우 내부 팀이 이용하는 프로파일링 도구가 따로 있긴 하다. 좋은 도구인데 아직 이걸 오픈소스 기술로 공개할지는 결정하지 못했다. 언젠가 오픈소스 기술로 전환할 것이나, 그게 언제일지는 아직 모른다. 하지만 우리팀도 사람들이 어떤 문제를 해결하고 싶은지 명확하게 이해하고 있다. 텐서플로우 플레이그라운드라는 도구는 나도 잘 알고 있다. 여기 있는 분들도 한 번쯤 이용해보셨으면 좋겠다. 어떤 구성요소가 어떻게 작용하는지 쉽게 알 수 있을 것이다.

텐서플로우 플레이그라운드

▲텐서플로우플레이그라운드. 구글과는 별개로 진행되는 외부 프로젝트다.

– 나는 맥 OS 사용자다. 텐서플로우를 이용하려고 했는데 AMD GPU를 지원하지 않더라. 향후 AMD GPU를 지원할 계획은 없는가?

= 계획에 대해 아는 것은 없다. 의존성 문제 때문에 기술을 변경하는 게 쉽지 않더라. 현재 말할 수 있는 가장 좋은 제안은 그냥 엔비디아 카드를 사는 것이다.(웃음)

– 구글의 딥러닝 프로젝트에 합류하려면 어떻게 해야 하는가? 지원자는 경력자여야 하나? 학위 같은 게 있어야 하나?

= 학위가 있으면 좋긴 할 것이다. 하지만 사실 텐서플로우팀은 정말 다양한 사람으로 구성됐다. 많은 사람들이 다른 국적을 가지고 있다. 모두가 일류 대학을 졸업하지도 않았다. 가장 중요한 것은 당연히 프로그래밍 실력이다. 너무 중요하다. 또 어떤 문제를 해결하고 싶어하는 마음이 있어야 한다. 열린 태도를 지니는 것도 중요한 부분이다. 사실 2015년 11월 ‘브레인 레지던시’라는 프로그램을 시작했다. 많은 사람이 이 프로그램에 지원했다. 그 중 30명이 1년간 브레인 레지던시 프로그램에 참여하게 됐다. 참여자들은 머신러닝을 배우고, 자신이 하고 싶은 프로젝트를 진행한다. 여건이 허락된다면 이 프로그램을 내년에도 진행할 계획이다. 여기 있는 많은 분들이 지원해주셨으면 좋겠다.

구글 브레인 레지던시 프로그램

– 박사님께서 음성인식 분야를 전공하신 걸로 알고 있다. 음성인식 분야에서 기계가 인간의 실력을 뛰어넘을 수 있을 것이라고 보는가?

= 이미 기계가 음성인식 분야에서 인간보다 앞서 있다. 같은 문장이라고 가정하면 캘리포니아 출신이냐 텍사스 출신이냐에 따라 말 소리가 매우 다르게 들린다. 많은 사람이 서로 다른 억양을 가진 언어를 잘 이해하지 못한다. 기계는 모든 억양을 이해한다. 실제로 우리가 인도 사람의 말을 받아 적으라고 해보니 사람보다 음성인식 기계가 더 잘 이해했다. 아마 앞으로 서기는 필요 없을지도 모른다. 기계가 더 잘 이해하는 이유는 크게 2가지다. 하나는 억양, 두 번째는 맥락 정보를 잘 알고 있기 때문이다. 남자 아이가 형에게 하는 말은 부모님은 가끔 이해 못할 것이다. 맥락 정보가 없기 때문이다. 기계는 가능하다. 물론 현재 음성인식 앱은 성능이 별로 안 좋을 수 있다. 하지만 앞으로 더 나아질 것이다. 특히 5-6년 안에 음성인식 서비스와 관련해서 엄청난 변화가 있을 것이다.

– 텐서플로우를 기업에서 직접 활용한 사례를 알고 있는가?

= 많은 기업이 텐서플로우를 내려받고 이용하고 있다. 하지만 그걸로 정확히 무엇을 하고 있는지는 알지 못한다. 사실 내가 안다고 해도 그걸 여기서 말할 수 없다. 기업 비밀이지 않은가. 텐서플로우에 관심을 가지고 있는 기업 종류는 특정 산업군에 국한되지 않으며 매우 다양하다.

– 텐서플로우로 챗봇 시스템을 만들 계획이 있는가?

= 챗봇은 아주 만들기 쉬운 기술이다. 챗봇은 아주 기본적인 언어 구조를 이용한다. 문자가 입력되면 답변을 예상하고 다시 질문과 답변을 주고받는 식이다. 이 일련의 과정을 포함한 언어 모델을 계속 훈련시키면 챗봇을 만들 수 있다. 이러한 개념을 일단 이해만 하면 챗봇이 얼마나 쉬운 기술인지 알 수 있을 것이다. 텐서플로우로 지금 당장 개발할 수 있다. 하지만 챗봇을 정말로 쓸모 있게 만드는 것은 또 다른 문제다. 복잡한 대화를 이해하려면 많은 지식을 알고 있어야 하기 때문이다. 현재 나온 챗봇은 바보같은 대화만 할 수 있다. ‘안녕’, ‘이름이 뭐예요?’ 정도만 묻는 식이다. 복잡한 대화는 이해하지 못한다.
Posted by 홍반장水 홍반장水

[ML] TensorFlowKR/MLJejuCamp  Final Presentation (2017. 07. 27 - 28)




...


Posted by 홍반장水 홍반장水

Machine Learning Jeju Camp 


GitHub -  https://github.com/TensorFlowKR/MLJejuCamp



Call for application for Machine Learning Camp Jeju 2017

If you have studied machine learning/deep learning and TensorFlow, you probably want to implement a non-trivial and large-scale system for real use. We invite you to the month-long Machine Learning Camp Jeju 2017, where you can make that dream a reality.

For a full month in beautiful Jeju Island, you and other participants will train a deep learning model using TensorFlow from start-to-finish. Jeff Dean (Google Senior Fellow via Hangout), Rajat Monga (Google/TensorFlow Director (TBC)), and Prof. KyungHyun Cho (NYU) will give us keynote talks. Plus, you will have access to experienced mentors including Namju Kim (Head of Research for Kakao Brain), Sung Kim (HKUST), Lucy Park (TF-KR), Donghyun Kwak (TF-KR), Terry Taewoong Um (TF-KR), and many more. We hope you take advantage of this wonderful opportunity.

Those selected as participants will be provided with one round-trip airfare (up to 300 USD) to Jeju Island (South Korea), room and board at Jeju National University, USD 1,000 in stipends (can be used for the airfare, etc.) and USD 500 to 1,000 in Google Cloud Credit. In addition to these benefits, participants will gain valuable and practical experience in the field of deep learning. We look forward to your application!

Mentor Recruitment: If you’re interested in sharing your experiences and expertise with the camp, please contact us at mljejucamp@googlegroups.com. You will serve as personal mentors to 1 to 2 participants, holding 2 to 3 on/offline meetings a week to help them successfully complete their projects. While it is possible for you to provide online-only mentoring, we suggest you visit Jeju Island to meet with your mentees in person. We will provide round-trip airfare (up to USD 300) to Jeju Island and up to five (5) days of room and board.

(Information regarding schedule, program and benefits are subject to change as we are in the process of finalizing the details. We will have more information later.)

Camp Overview

Benefits (TBD)

  • Full month of hands-on experience training deep learning models with TensorFlow and mentorship from top developers
  • Round-trip airfare to Jeju Island (up to $300 USD)
  • Accomodation in Jeju National University or Kakao Space, Jeju
  • Stipend: 1,000 USD (can be used for the airfare, etc.)
  • Google Cloud Credit ($500~1000 TBD)

Qualification

  • No nationality, gender, age, degree, education requirements
  • Must be able to stay in Jeju Island from July 3rd to 28th. (Weekday camp programs run from 10AM to 5PM)
  • Good understanding of TensorFlow and deep learning and ability to train models (should be able to understand all in https://github.com/hunkim/DeepLearningZeroToAll)
  • Being able to release the code written during the camp publicly on github
  • Basic communication skills in English (All programs will be in English)

Application Closed! (By April 20 11:59PM AOE)

  • Detailed proposal for Deep Learning Camp Jeju 2017 project (Please be as detailed as possible)
  • CV that showcases applicant’s experience with deep learning and TensorFlow
  • Previously implemented models (GitHub or other)
  • Other supporting materials to show your qualification
  • Application link (closed): https://www.surveymonkey.com/r/LY29GM5

Proposal examples:

  • “I will implement paper X from 2016 NIPS Conference using TensorFlow and apply idea Y to the implementation”
  • “My goal is to add idea X to existing TensorFlow model Y and apply it to dataset Z” (Please justify why you are interested in the particular paper, model, dataset, etc. Write your proposal as detailed as possible as it will be the primary criteria to select participants.)

Basic Tasks (but not limited to)

  • Each participant will implement own deep learning related ideas and recently published ideas (in ICML, ICLR, NIPS, etc.) in TensorFlow. Or adapt already implemented ideas to new dataset. Participants will propose in the application.
  • Participate in camp program. (10AM-5PM on weekday basis from July 1 to July 30)
  • Deep learning and TensorFlow expert mentors will advise each participant.
  • Release the code on the github as Open Source.

Camp rules

participants may be dismissed from the camp for the following or similar reasons:

  • Repeatedly engage in behavior that negatively impacts other participants' work
  • Spend unreasonable amount of time on non-camp related tasks.
  • More than 3 missed camp days without proper notice.

Important dates

  • Application due: April 20 (AOE time zone)
  • Notification: May 10
  • Mentor assignment and online discussion: June 1
  • Camp starts: July 3

About Jeju

Located just off the coast of the Korean peninsula, Jeju Island is the largest volcanic island in Korea. Also known as Asia's Hawaii, the island is rife with beautiful sceneries and getaway resorts. Jeju boasts several natural treasures including Mount Halla, the country's highest peak, Trail Olle that winds around the rocky coastline, and Sunrise Peak, a dormant volcano ideal for catching sunrises and sunsets. You will be able to fully experience the island's charm for as long as a month without a visa. For more information, please visit at: http://www.visitjeju.net/en/index.jto.

About Camp

Deep Learning Camp Jeju 2017 is a month-long program (July 3-28, 2017) where participants gain hands-on experience with TensorFlow through individual-based projects with the goal of implementing new deep learning related ideas, and/or already-published ideas. We are looking for approximately 20 participants. More than a dozen industry experts with strong backgrounds in deep learning and TensorFlow implementation will serve as project mentors to guide participants.

FAQs

Q: What are we doing during the one month program?

A: Basically, we design a deep learning model and fully implement using TensorFlow. It is also possible to (re) implement a published paper (by others) and adapt it for new datasets. Based on this, each participants will propose their own plans in their application.

Q: What type of Visa is required for foreigners?

A: No visa is required for most countries. Please check at http://www.immigration.go.kr/HP/IMM80/imm_04/imm_p01/vm3.jsp

Q. Can I apply for partial participation? (i.e. only weekends)

A: Unfortunately No.

Q: Is this only for students?

A: No. Anyone who can spend one full month in Jeju Island in Korea, and work from 10AM-5PM during the weekdays can apply.

Q: Is this a contest?

A: No, this is not a contest. Individuals will have different projects.

Q: Is this a training or teaching program?

A: This is not specifically a teaching event. The applicant should have good understandings on programming, machine learning/deep learning, and TensorFlow. However, we will provide mentors to assist you on your project.

Q: Will data for training be provided or it is up to participants?

A: We will provide some public data sets but participants can also utilize their own data.

Q: Should I bring my laptop?

A: We won’t provide PCs. You need to bring your laptop. However, we will provide cloud server credits.

Q: Training takes a lot of time and computing power. Does the camp provide any support?

A: We will provide cloud server credits.

Q: What are the criteria for selecting applicants?

A: There is no formal criteria, but we are looking for interesting and feasible projects.

Q: What if the attendee cannot complete the work that they submitted?

A: There is no penalty, but mentors will guide each participant to success.

Q: Can developers/researchers working on longer term projects like http://ai-on.org/projects/cardiac-mri-segmentation.html apply? In this case, one month may not be sufficient time to finish the work. Is it OK to apply?

A: It’s OK. As long as the project is interesting, we will consider it. You can also propose a small portion of a larger project that you wish to work on for a month.

Q: Is this only for deep learning? Can I propose a reinforcement learning project?

A: Yes, reinforcement learning is acceptable. Feel free to include other types of interesting machine learning projects.

Q: Can I participate in a keynote session or open seminars even though I am not a camp participant?

A: Yes, the keynote and open seminars are open to everyone. We will have a separate announcement regarding keynote sessions and open seminars.

Q: Will you also be recruiting staff members for the camp?

A: Sorry, but we have no current plans to recruit staff members.

Q: I do have more questions. Where should I contact?

A: Please use the issue (https://github.com/TensorFlowKR/MLJejuCamp/issues) of this page to ask questions.

Posted by 홍반장水 홍반장水

How to Make an Amazing Tensorflow Chatbot Easily


우리는 chatbot이이 년 동안 얼마나 깊은 학습 그들이 더 나은 방법했다 진화하는 방법에 대해 알아볼 것입니다. 그런 다음 우리는 파이썬에서 Tensorflow 기계 학습 라이브러리를 사용하여 우리 자신의 chatbot을 구축 할 수 있습니다. 

이 비디오에 대한 코드 및 코딩 문제는 여기에 있습니다 : 
은 https : //github.com/llSourcell/tensorf ...

이번주 게오르기의 경력 코드 : 
HTTPS : //github.com/petkofff/p_vs_np_c ...

믹의 러너 업 코드 : 이번 주 
HTTPS : //github.com/mickvanhulst/travS ...

: 우리의 여유 공간에 다른 마법사에 참여 
https://wizards.herokuapp.com

라이브 순서 시퀀스 chatbot 데모에 : 
HTTP : //neuralconvo.huggingface. 공동 /

chatbot이에 좀 더 유용한 자원 : 
HTTP : //www.wildml.com/2016/04/deep-le ... 
HTTP : //venturebeat.com/2016/08/01/how ... 
HTTP : / /web.stanford.edu/class/cs124/l ...

Tensorflow에 더 많은 자원 : 
HTTP : //lauragelston.ghost.io/speakeas ... 
HTTPS : //speakerdeck.com/inureyes/buil ...


#Tensorflow Chatbot Tensorflow Chatbot Demo by @Sirajology on Youtube

Overview

This is the full code for 'How to Make an Amazing Tensorflow Chatbot Easily' by @Sirajology on Youtube. In this demo code, we implement Tensorflows Sequence to Sequence model to train a chatbot on the Cornell Movie Dialogue dataset. After training for a few hours, the bot is able to hold a fun conversation.

Dependencies

Use pip to install any missing dependencies

Usage

To train the bot, edit the seq2seq.ini file so that mode is set to train like so

mode = train

then run the code like so

python execute.py

To test the bot during or after training, edit the seq2seq.ini file so that mode is set to test like so

mode = test

then run the code like so

python execute.py

...

Posted by 홍반장水 홍반장水

tensorflow, macbook, anaconda 설치하고 실행해보기. 할때마다 새롭다. 


두번째 MACbook pro에서 설치해보기. 

영어가 짧아서 install tensorflow의 설치 방법이 4가지가 있다. 를  4개다 설치해보는 걸로 ㅋㅋ


anaconda를 설치해서 터미널로 실행해보는게 익숙한 느낌이다. PyCharm을 어떻게 셋팅해야 터미널에서 실행하는 것 처럼 하는지 아직은... 


anaconda에서 패키지 설치하고, 터미널에서도 설치하고 뒤죽박죽, 왠지 수박 겉 핡고 있는 느낌이랄까. 


https://tensorflowkorea.gitbooks.io/tensorflow-kr 를 기준으로 보고 셋팅하는게 나을듯하다. 


회사에서는 윈도우 PC로 PyCharm으로 돌리고 있다. 얕은 지식이 오락가락 ㅋㅋㅋ 맥북은 익숙하지도 않고. 


"깃허브의 주소는 https://github.com/tensorflowkorea/tensorflow-kr 입니다.

깃북의 주소는 https://tensorflowkorea.gitbooks.io/tensorflow-kr 입니다.

깃허브의 작업 방법에 대해서는 블로그 포스팅을 참고해 주세요."

라고 되어있으니 잘 참고해야지 




.

Posted by 홍반장水 홍반장水

[도서구매] 김훈( 공터에서, 라면을 끓이며), 텐서플로 첫걸음, '나, 건축가 안도 다다오'


공터에서
국내도서
저자 : 김훈
출판 : 해냄출판사 2017.02.01
상세보기

라면을 끓이며
국내도서
저자 : 김훈
출판 : 문학동네 2015.09.30
상세보기

텐서플로 첫걸음
국내도서
저자 : 조르디 토레스 / 박해선역
출판 : 한빛미디어 2016.08.29
상세보기

나, 건축가 안도 다다오
국내도서
저자 : / 이규원역
출판 : 안그라픽스 2009.11.20
상세보기

.




Posted by 홍반장水 홍반장水

텐서플로(Tensorflow) 시작하기


https://gist.github.com/haje01/202ac276bace4b25dd3f



소개

텐서플로우(TensorFlow)는 기계 학습과 딥러닝을 위해 구글에서 만든 오픈소스 라이브러리입니다. 데이터 플로우 그래프(Data Flow Graph) 방식을 사용하였습니다.

데이터 플로우 그래프

데이터 플로우 그래프는 수학 계산과 데이터의 흐름을 노드(Node)와 엣지(Edge)를 사용한 방향 그래프(Directed Graph)로 표현합니다.

data flow graph

노드는 수학적 계산, 데이터 입/출력, 그리고 데이터의 읽기/저장 등의 작업을 수행합니다. 엣지는 노드들 간 데이터의 입출력 관계를 나타냅니다.

엣지는 동적 사이즈의 다차원 데이터 배열(=텐서)을 실어나르는데, 여기에서 텐서플로우라는 이름이 지어졌습니다.

텐서(Tensor)는 과학과 공학 등 다양한 분야에서 이전부터 쓰이던 개념입니다. 수학에서는 임의의 기하 구조를 좌표 독립적으로 표현하기 위한 표기법으로 알려져 있지만, 분야마다 조금씩 다른 의미로 사용됩니다. 여기에서는 학습 데이터가 저장되는 다차원 배열 정도로 이해하시면 되겠습니다.

특징

텐서플로우는 다음과 같은 특징을 가집니다:

  • 데이터 플로우 그래프를 통한 풍부한 표현력
  • 코드 수정 없이 CPU/GPU 모드로 동작
  • 아이디어 테스트에서 서비스 단계까지 이용 가능
  • 계산 구조와 목표 함수만 정의하면 자동으로 미분 계산을 처리
  • Python/C++를 지원하며, SWIG를 통해 다양한 언어 지원 가능

이후의 설명은 Python을 중심으로 진행하겠습니다. (pip를 통한 Python3설치는 개발 중으로, Python2 기반으로 하겠습니다.)

"구글이 텐서플로우를 오픈소스로 한 것은, 기계 학습이 앞으로 제품과 기술을 혁신하는데 가장 필수적인 요소라고 믿기 때문입니다." - Google Brain Team

설치

텐서플로우는 설치가 비교적 쉬운 편입니다만, 다음과 같은 제약이 있습니다:

  • Unix계열 OS(Linux/Mac OSX)만 지원합니다.
  • GPU 버전은 Linux만 지원합니다.

Linux / Mac OSX

Unix 계열 OS를 사용하시는 분들은 공식 페이지의 설치 문서를 참고하시면 쉽게 설치할 수 있습니다.

윈도우

윈도우 사용자 분들은 가상 머신을 이용하거나, 도커 툴박스 설치 후 진행하시기 바랍니다.

이미지를 받고 컨테이너 실행

텐서플로우의 도커 이미지는 소스코드, 예제, 툴도 포함되어 있기에 풀 버전을 받는 것을 권합니다.

Linux / Mac OSX

Unix 계열 OS에서는 아래의 명령을 실행하면 이미지를 받고 컨테이너가 실행됩니다. 컨테이너 실행 후 자동으로 컨테이너 안의 쉘 환경으로 들어가게 됩니다.

docker run -it b.gcr.io/tensorflow/tensorflow-full

컨테이너 안의 /tensorflow 폴더에 소스가 설치되어 있습니다. (주의: 이 폴더에서 모듈을 import 하시면 에러가 발생합니다. )

윈도우

윈도우의 경우 Docker QuickStart Terminal 실행 후(이때 고래 그림 아래의 IP를 기억해 둡니다) 아래와 같이 실행하시기 바랍니다.

winpty docker run -it -p 8888:8888 b.gcr.io/tensorflow/tensorflow-full

이미지를 받은 후 컨테이너가 실행되면, Jupyter 노트북 서버가 자동으로 시작된 상태입니다. 웹브라우저에서 '위의IP:8888'을 입력하면 Jupyter Notebook 환경에 접속됩니다. 여기에서 tensorflow를 사용하실 수 있습니다.

동작 확인

설치가 잘 되었는지 다음의 코드로 확인해봅니다.

$ python

>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print sess.run(hello)
Hello, TensorFlow!
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> print sess.run(a+b)
42
>>>

.

Posted by 홍반장水 홍반장水
[Machine Learning] 구글 머신러닝 오픈소스 텐서플로(TensorFlow)

 

 

http://tensorflow.org/

 

 

 

TensorsFlowing : check out http://tensorflow.org

 

 

 

 

 

 

 

 

 

 

 

Posted by 홍반장水 홍반장水