Chatbot Tutorial | AI in Marketing
Articles,  Blog

Chatbot Tutorial | AI in Marketing


오케이 구글
오늘 무엇을 배우나요 당신의 기지는 모두
우리에게 점령당했다 안녕하세요 여러분
Siraj 입니다 2018년은 챗봇이 드디어
주류 기술이 될 해입니다 이 비디오에서는 챗봇을 만들거에요 구글의 텐서플로 머신러닝 프레임워크를
기반으로 해서 말입니다 멋진 제품이나 서비스를 만들었다면
사람들에게 노출시킬 방법을 찾아야겠죠 컨텐츠 마케팅은 컨텐츠를 통해 사업을
유기적으로 성장시키는 방법입니다 블로그 포스트, 비디오, 인포그래픽,
장난 비디오 등 종류는 다양합니다 수천 명의 잠재 고객들을 매료시킬
컨텐츠 말입니다 컨텐츠 제작은 시간이 많이 소요되는
작업이기 때문에 컨텐츠의 전달 또한 가장 효율적인
방법을 써야 합니다 인공지능을 통해 사용자의 행동을
통찰하는 방법은 마케팅 판을
완전히 뒤집었습니다 이제 기업은 고객의 성향을
정확히 파악하고 고객이 인터넷에서 무엇을 하는지
알 수 있습니다 메일 수신함이 점점 가득차면서
구매자들은 정말 관심있는 브랜드를 구독하기 위해
SNS로 넘어갔습니다 똑똑한 브랜드들은 이메일 마케팅에서
SNS 마케팅으로 전환했습니다 고객들과 교류하고
매출을 극대화시키기 위해서 말입니다 많은 사람들은 보통
5개의 앱만 사용합니다 요즘메신저 앱들의
월간 활성 사용자 수는 50억명에 달합니다 이것은 사람들이 이제 SNS 보다
메신저 앱을 더 사용한다는 뜻입니다 사람들은 이제
왓츠앱이나 메신저에서 트위터나 페이스북에서보다
더 많은 시간을 보냅니다 왜냐하면 채팅이 더 매력적인
활동이기 때문입니다 LOL, LMAO, ROFL처럼
다양한 신조어만 봐도 알 수 있죠 브랜드는 이런 메시징 매체를 통해
고객들과 교류를 해야하는데 챗봇이 바로
해결책입니다 챗봇은 사용자와 대화할 수 있는
프로그램입니다 챗봇은 사람들이 대화하는 방식이나
일하는 방식을 따라합니다 전산학의 아버지라 불리는
앨런 튜링은 1950년도에 챗봇의 개념을
처음 언급했습니다 이후 챗봇의 개념은
계속 발전해왔습니다 또한 실생활에 적용되면서
점차 인기를 얻어왔죠 왜냐하면 챗봇은 고객의 필요를
충족시킬 수 있기 때문입니다 고객이 필요할 때
지원을 제공하고 제품을 추천하고
대화를 통한 마케팅 캠페인을 제공하죠 챗봇은 효율과 가성비가 좋습니다
잠도 안자요 클릭률, 고객 감정 등
다양한 수치를 향상시킵니다 고객 지원, 변호사, 선생님, 의사
장난감, 심지어 배우자 등 삶의 질을 향상시키는
다양한 역할을 할 수 있습니다 도미노 피자는 페이스북 메신저
챗봇을 만들었는데요 사용자는 챗봇을 통해 피자를 시키고
배송 상태 또한 확인할 수 있습니다 도미노 피자의 마케팅 임원
닉 더치에 의하면 챗봇은 매출에 큰 변화를
가져오지는 않았지만 만족스러운 고객
경험을 제공해서 브랜드에 대한 고객 감정을
향상시켰습니다 Botworx.ai 같은 컨설팅 그룹은
브랜드를 위한 챗봇을 만듭니다 체인지, 토니로빈스, 미디어포스트
등이 그 예시죠 이들은 챗봇을 통해 다양한 플랫폼에서
많은 고객을 유입합니다 각 브랜드의 요구사항에
맞춰서 말이죠 기업이 직접 필요에 따라 챗봇을
만들게 해주는 서비스도 매우 많습니다 아마존 렉스, IBM 왓슨
Azure 봇, 모션.AI 처럼요 분명 챗봇을 만들기 위한 도구들과
챗봇에 대한 수요는 있는데 챗봇을 만들기 위한 도구를
어떻게 고를까요? 러시안 룰렛 어때요? 규칙 몇 개만으로 몇 분만에 챗봇을
쉽게 만들 수 있는 서비스들이 있습니다 하지만 그 전에 기술적인
원리를 얘기해봅시다 대표적으로 두 가지의
대화 시스템이 존재합니다 목표지향적 시스템과
일반 대화 시스템입니다 일반 대화 시스템 또한
두 분류로 나뉘는데 생성 모델과
선택적 모델입니다 두 모델 모두
개념은 같습니다 대화를 집어넣으면
상황에 맞는 답을 예측하죠 사실 모든 기계 학습의 모델은
똑같은 기본적인 단계를 따릅니다 만들고 학습하고 테스트하죠 하지만 그 전에 질이 좋은
대화 데이터를 찾아야 합니다 레이블된 데이터가 학습하기 좋으니
그게 필요합니다 각 줄을 문맥, 답변 쌍이라 부릅니다 문맥은 한 줄 또는
여러 줄일 수도 있고 답변은 레이블이겠죠 가끔은 배치의 매 문장 끝에
문장 끝 토큰이 있어서 기계학습 알고리즘이 문장을 구분하고
내부 상태를 보다 잘 업데이트 하는데 도움을 줍니다 이러한 대화 데이터셋은
다양한 웹사이트들로부터 구할 수 있는데요 고객 상담 전화, 영화 대사
랩 배틀 등 인공지능이 학습할 수 있는
실제 사람의 대화가 많습니다 먼저 생성 모델을 봅시다 제가 가장 좋아하는 논문 중 하나가
몇 년전에 바로 이 주제를 연구한 건데요 seq2seq라는 모델을
사용했습니다 데이타셋들로부터 대화 모델을
만들기 위해서 말입니다 이 모델에서는 두 개의 순환신경망을 사용하는데
각각의 파라메터는 서로 다릅니다 보통 전방 전달 신경망은 학습시 매 시간
새로운 데이터만을 이용하지만 순환신경망은 새 데이터뿐만 아니라
이전 단계의 은닉 상태도 전달됩니다 이렇게 새 데이터 뿐 아니라
이전의 학습 방식을 다시 학습시키며 순환적으로 피드백 루프가 생깁니다. 웁디디둡 스쿱피둡
*카니예 웨스트 노래 Lift Yourself에서 유래된 말장난 이 방법은 데이터 시퀀스를 학습하여
다음 단어를 예측할 때, 직전 단어뿐 아니라 그 전의 나왔던 모든 단어도
고려하기 때문에 더욱 유용합니다 첫 순환신경망은
인코더라 불립니다 문맥 토큰의 시퀀스가
한 번에 하나 씩 주어지고 여기에 맞춰 은닉 상태가
업데이트됩니다 모든 문맥과 시퀀스를 처리한 후
문맥들을 통합하여 마지막 은닉 상태를 만드는데요 이것을 이용하여
답을 생성하게 됩니다 다른 순환신경망은
디코더라 불립니다 디코더에 인코더의 문맥을 입력하면
답을 출력합니다 답이 생성되는 방법은
다음과 같습니다 인코더의 마지막 은닉 상태를 바탕으로
디코더의 은닉 상태가 초기화됩니다 문장 끝 토큰이 디코더에 처음 입력되면
디코더의 은닉 상태가 업데이트됩니다 마지막 층에서 샘플링 된 단어가
입력되고 은닉 상태가 업데이트 된 후 새 단어가 출력됩니다 이 과정은
문장 끝 토큰이 출력되거나 미리 정한 출력 문장 최대 길이에
도달할 때까지 반복됩니다 이 과정을
추론이라고 합니다 챗봇 모델이 학습된 후
실시간으로 거치는 과정입니다 학습 과정은 조금 다른데 생성된 단어 대신 정답 단어를
입력합니다 한마디로 디코더는
정답 시퀀스를 바탕으로 학습됩니다 마지막 토큰을 제거하고
문장 끝 토큰을 붙인 정답 시퀀스 말입니다 학습의 목표는 매 타임스텝마다
다음 단어가 올바른 가능성을 극대화 하는 것입니다 접두사를 바탕으로 신경망이 다음 단어를
올바르게 예측하도록 하는 것입니다 기계 학습에서 가장 많이 쓰이는
최적화인 역전파로 오류를 최소화시킵니다
5분짜리 제 비디오도 있습니다 멋지죠
비디오 설명란에 링크가 있어요 이 모델은 잘 작동했지만 여전히 오케이, 잘 모르겠어 같은
상투적인 표현들이 나왔습니다 또 다른 문제는
반직관적인 답변이었는데 똑같은 질문을 두 번 했을 때
다른 답변을 하는 경우입니다 이런 문제를 다룬
더 최근의 논문은 페르소나 기반
신경 대화형 모델입니다 저자들은 각 말에
화자 아이디를 붙여서 인코더 상태뿐 아니라 화자 임베딩을
바탕으로 답을 생성했습니다 선택적 모델은 문맥을 바탕으로
대답을 추측하기보다 미리 정한 가능한 답변들에서
답을 정하는 유사성 함수를 학습합니다 이 네트워크에 문맥과 가능한
답변을 입력하면 그 둘이 얼마나 서로 적합한지
신뢰도를 출력합니다 여기서 두 개의 신경망이
쓰일 수 있는데요 어떤 종류이든지 상관 없습니다 첫 신경망은 문맥을 위해 쓰이고
두번째 신경망은 답변을 위해 쓰입니다 이 네트워크들은 입력값을 바탕으로
벡터 표현으로 임베딩 시킬 것입니다 코사인 유사도를 바탕으로
문맥과 답변의 유사도가 계산됩니다 그리고 추론 과정에서 주어진 문맥과
가능한 모든 답변의 유사도를 계산해서 가장 유사도가 높은 답변을
고르면 됩니다 모델을 학습시키기 위해
Ttriplet loss 함수를 사용합니다 이 함수는 맞는 답변과 틀린 답변
모두의 문맥을 사용하죠 이 함수를 최소화해서 유사성함수를
순위 방식으로 배울 수 있습니다 절대값 만으로는 정보가 부족할 때
도움이 되죠 그래서 어떤 모델을 써야할까요? 생성 모델은 거의 모든 종류의 답을
생성할 수 있지만 특정 규칙들을
적용시키기는 어렵습니다 욕을 금지하거나 특정 인물의 말투를
따라하게 하는 등의 규칙 말입니다 선택적 모델이 생성할 수 있는
답변은 제한되지만 규칙을 더 자유롭게
적용시킬 수 있습니다 현재 챗봇을 평가할 가장 좋은 방법은
사람이 직접 평가하는 방식이지만 연구가 진행되며 더욱 체계적인
방법이 생길 것입니다 이 분야에서 많은 발전이 있었지만
신경 대화 시스템은 아직 광범위한 분야에서는 사람과 대화 하거나
쓸만한 답변을 하는 수준은 아닙니다 하지만 기술 지원 같이
한정된 영역의 적용에는 아주 잘 맞습니다 오늘 비디오에서 기억할 것
세 가지가 있습니다 요즘 사람들은 SNS앱 보다
채팅 앱을 더 많이 사용합니다 즉 브랜드가 챗봇을 통해
고객과 소통할 좋은 기회입니다 챗봇은 생성적 혹은 선택적
과정을 거칩니다 두 방법 모두 신경망을 이용하며 많은 서비스를 통해
다양한 챗봇을 만들 수 있습니다 비디오 설명란에 링크를
몇 개 걸어놨어요 챗봇 만들기만으로는 완전히 충족이 안되시죠? 이런 재미있는 비디오를 더 보려면
구독하기를 눌러주세요 전 이만 관객을 매료시키려 가야해요 봐주셔서 감사합니다

97 Comments

  • Zylar Gray

    Yesss I been waiting for a new chatbot tutorial. Everything before stopped working due to tensorflow upgrades. Will post if it works

  • K.B.

    I think Chatbots in the current state of the art are an insult to human intelligence. I mean AI and ML is really helpful and useful to the humanity in many other applications. But AI in marketing is really the dark side of AI. It' putting "customers" in "models" and "boxes" with predictable, robot-like, behaviors. Chatbots are the ultimate example… It's the new spam of 21st century. Accepting to use or "converse" with a chatbot is just admitting that you are no more intelligent than what the machine thinks you are, or what the marketer thinks you are, or what the programmer thinks you are… ie you have so predictible answers and requests. It's a bit sad conception of human intelligence.

  • Gabriel Gomez

    Chatbots are not the future, it's going downhill on the hypecurve. It's not as promising as been thought.

  • THESocialJusticeWarrior

    It seems like predicting the next word in a sentence based on past dialog is not the way to go to me. That has zero to do with reasoning and logic. It's just copying.

  • Shivam Saboo

    How can we build a chatbot like alexa which can determine what action it needs to perform based on text input for example how can we make it to identify 'turn on music' as well as 'turn on light' so it can perform that action?
    Will generative or selective model work for this task or some semantic rules needs to be applied?

  • Ernest G. Wilson II

    @siraj I watch your channel and I am subscribed and of course thumbs up. Additionally I have been writing actual ChatOps bots used in production at two different companies saving thousands of hours doing actual work. I struggle with this topic in your current video, I have written code and I have leveraged various services including specific ones for chatbots. I think you have underestimated the need or availability of training data sets.

  • maxirater

    Siraj- Could you explain what NLP (Natural Language Processing) is? It would seem to me that being able to interpret the meaning of written language is the most important task that even web programmers should be able to do as the most common and fundamental thing people do online which is word searches for whatever interests them . So I would think there must be a simpler way to parse/lex the meaning of human speech that regular web programmers could use who dont have the expertise to use neural nets or other ML algorithms.

  • Milan Valera

    Plz give proper demo of what you bulid through out video at last i think it helps more to understand your video

  • Rohan Bhasin

    Hi siraj… First all of all keep up with the great work and your videos continue to enhance our knowledge… Here's a small suggestion … while you are really doing well with explaining the concepts … I would love if you give the code A little more time and perhaps write it together from the ground up … It would be slightly better… But anyway great video as always 👍

  • applemacbookpro1997

    Great Video Siraj! Could you maybe do a video / talk about handling class imbalance in your data? (When do we have to care about class imbalance, and how can we do so?)

  • Narayanamurthy Tadepalli

    Siraj, what laptops (windows/apple/android) would you recommend for an Data Scientist ? Appreciate a video on your recommendations for newbies like me.

  • CLOWNWORLD

    I dont think chatbots as they are being used now are the future. Every company I've allowed their chatbot to contact me on Messenger has given a spammy unwanted experience.

  • Rajdeep Majumder

    Hey Siraj…..this is Rajdeep, your fan from Kolkata. I have a small question for you, can we make game playing AI at home?
    Love your videos by the way….

  • Tanbir Sohail

    My life goal is now to contribute significantly to AI research. I am following your ML curriculum.

  • Santosh kumar Gupta

    Siraj thanks for all this 🙂 You are great! Just one thing, maybe it would be great if you can keep a day in a week for coding from ground up, maybe a live session.

  • khaldoon alhussayni

    hi, siraj…great job thank you so much…keep going … I have a question please.. when can I found technical support conversations to learn chatbot

  • ravi shankar

    when a made my first feed forward deep neural network from scratch by myself, i realized all AGI hype is false and elon musk doesn't have deep knowledge of matrix dot product and trail and error.
    i believe our current deep neural network would never take to AGI, not even a close !
    we will first have to make advancement in the field of neuroscience.

  • I3UTM

    Social messaging apps are actually what the web was supposed to follow in 2003. Instead we got The Facebook. Bring back the social and AI messaging will follow.

  • Kamalakar A.K.

    i finished my UG in 2016, my ques: i'm i eligible to publish my research findings/paper without actually doing MS/PHD ?
    if No: tell me what to do !

  • Nikhil Edu

    When will the next course start on your website. I missed the previous one an i don't want to miss this time. Thanks for knowledge too😄

  • Prabal Kumar

    Hi Siraj I really need your help,I want to develop a chatbot which will answer user query seeing a user specific pdf document.I am really confuse about which approach should i follow

  • Michael Bogle

    You know what's frustrating? I look up to you as a role model and teacher in A.I. development but everytime i attempt to enter one of your advanced courses, they're always unavailable. This has caused me to look else where for more advanced information & it just really blows because i enjoy the excitement you provide in every video which initially captivated my interest & current career path in A.I.. I hope you understand my frustration because i'm sure others have experienced the same.

  • frogathan

    dammit siraj, youre too inspirational and im still in finals season for university! on a real note, awesome vid cant wait to try it after finals

  • oumaima moumkine

    the second type selective model is more difficult i didnt found any code or article about how to implement it do you have somme suggeestions ?

  • Tom Higgins

    Spam killed emails, ads killed fb what makes you think chat bots wont kill messengers. People move away from ad geared platforms.

  • Palash Karmore

    Why Rasa is not in the list? I think, for now, it is the best option available to build a closed domain chatbot from scratch.

  • Aaroosh Pandoh

    i have one question. I want to make places specific chatbox. I tried using seq2seq model but it is giving me bad results. what approach should i use? Plzz someone reply..!

  • kader Aziz

    Hi,

    Anyone know which graphic tool is using Siraj to explain graphically sequence-sequence model begin minute 5:48?

    Thanks
    Abdelkader

  • Rijin Muralidharan

    please help me, i am a beginner in javascript and i am thinking to make a chatbot in the browser. I want to add machine learning into it so it has the ability to learn by itself. If you know any frameworks or any methods to achive this , please comment

  • Ashu A

    Hell Siraj. Thanks for uploading good videos on the chatbots. I tired to run the chatbot code which you shared at the Github link. There is a problem with this code. I am unable to run the Web Interface of the chatbot. I checked the code. There's a file named "chat.js" which is not included in the code given at the GitHub link. If you can share the "chat.js" file, I will try to run the chatbot and learn from it.

  • aditya dubey

    Problem Statement: 1
    Chatbot, is an Artificial Intelligence (AI) feature that can be embedded and used through any major messaging applications. Companies are looking for a way to efficiently connect with customers on a more human level, and chatbots been advanced into new level that answer customer queries from the documents or FAQ.
    Our Aim is to create intelligent chatbot which can answer user query by looking over the documents. Requirement is to create Automatic factual creation of question and answer knowledge based from Documents which can be feed to Question and Answer bot.
    User interface should be there to upload new documents (pdf/doc/txt) and model should update knowledge base for the same. Model should be flexible to handle domain specific documents (healthcare/manufacturing/retail) as well.
    Currently Documents consists of 2225 documents from the BBC news website corresponding to stories in five topical areas from 2004-2005.
    Class Labels: 5 (business, entertainment, politics, sport, tech).
    Identify entity and entity Linking detection and create of Knowledge Graph from the corpus. The team is also free to choose a mode for the solution demonstration.
    A sample proposed set of steps for demonstration.-
    We would like to understand in detail the participants’ approach to the problem.
    Hence we would like to know the technology in use, use of any language/library for algorithms you may develop, how you code has been developed, test/experiment results and any other details you may provide. We are expecting to see working model during the live demo by uploading new documents model should generate Question and answer for those documents.

  • aditya dubey

    I have already collected the data 2225 documents ,Sir give me solution only to create intelligent chatbot which can answer user query by looking over the document

  • MediaServer Tech

    MAKE SURE U DEMONSTRATE STEP BY STEP NOT JUST POSTING CODE HERE AND EXPLAINING LONG STORIES WHICH DOSE NOT BRING THE CHATBOT

  • Prajit Vaghmaria

    Hi there Siraj , how can i create a chatbot for Whatsapp in Python or node.js from scratch , please may you create a detailed video on it at a moderate pace not too fast …

  • Elizabeth Duncan

    Best instagram chat bot tool http://whitehatbox.blogspot.com/ Ottieni il numero di telefono e il codice di verifica utilizzando SMSPva, GetSMSCode e altri servizi, per risolvere facilmente la verifica telefonica

  • IM Reviews and News

    Thanks, enjoyed your informative video. Chatboxes seem to be the best engagement software in 2019. They copy what we are all doing with our smartphones today. As a marketing tool , you can now easily produce funnels specifically for any niche. Don't forget you need a chat builder, integration and a little bit of coding skill IMO. Can you recommend any IT?

  • Colin Rebello

    Here is a new post on how to Convert a Google Quiz to a conversational Bot

    https://medium.com/@colin.rebello/convert-a-google-quiz-to-a-bot-conversational-form-cd82fe152147

  • Ahlem Daoud

    I love how enthousiastic you are when talking about technologies and different sets of AI algorithms! That's what makes my concentration on the whole video and makes us get the information easily! Thank you !

  • priyanka gurnani

    There are pre-built chatbot platforms like Engati where it is free to start and you can have your own bot in less than 10 mins, it requires no programming.
    Here is a small video for bot use-cases. Do have a look and share your feedback https://www.youtube.com/watch?v=7sACiBdCHec

Leave a Reply

Your email address will not be published. Required fields are marked *