Introduction

κ°μ  λΆμ (sentiment analysis) μ΄λ?
: νμ€νΈλ λ°νμ ννλ κ°μ  λλ μκ²¬μ μ»΄ν¨ν°λ‘ μλ³, λΆλ₯νμ¬ ν΄λΉ λν μ£Όμ μ λν μ£Όκ΄μ  νλλ₯Ό λΆμνλ κ².

μ΄ μν°ν΄μμλ νμ΄μ€λΆ analytics μμ μΆμΆν μ’μμ, κ³΅μ , λλ¬λ₯ , λΆμ μ  νΌλλ°± λ±
νμ΄μ€λΆ λ§€νΈλ¦­μ€ raw λ°μ΄ν°λ₯Ό κ°μ  λΆμνμ¬ μΈμ¬μ΄νΈλ₯Ό λμΆν©λλ€.

Note) νμ΄μ€λΆ μ λλ¦¬ν±μ€λ?
νμ΄μ€λΆ μ λλ¦¬ν±μ€λ μ¬μ©μκ° κ΄λ¦¬νκ³  μλ νμ΄μ€λΆ νμ΄μ§, μΉ, μ± λ±μ κ±Έμ³ κ³ κ°μ νλ κ³Όμ μ λΆμν΄μ£Όλ λκ΅¬μλλ€.

μ΄ μν°ν΄μμλ νμ΄μ€λΆ μ λλ¦¬ν±μ€λ₯Ό νμ©νμ¬ λ΄ ν¬μ€νμ μ λ³΄λ₯Ό raw data λ‘ νλ³΄ν©λλ€.
watson studio, Visual Recognition, Tone Analyzer λ±μ νμ©νμ¬ μ΄λ€ ν¬μ€νμ μ΄λ€ κ°μ μ΄ λλ¬λκ³ ,
μ΄λ€ κ°μ μ΄ ννλ κ²μλ¬Όμ engagement κ° λμμ§ νμΈν΄ λ³Ό μ μμ΅λλ€.

Contents

1. Watson studio κ°μ
2. νλ‘μ νΈ μμ± λ° μλΉμ€, λΈνΈλΆ, μΈμ¦ μ λ³΄ μΆκ°
3. λ°μ΄ν° λΆλ¬μ€κΈ°
4. λ°μ΄ν° μ μ²λ¦¬ λ° Enrichment
5. κ²°κ³Ό λΆμ

#1 Watson studio κ°μνκΈ°
– IBM Watson studio μκ° μΉμ¬μ΄νΈ(νκ΅­):https://www.ibm.com/cloud-computing/kr-ko/watson-studio/
– IBM Watson studio μλΉμ€ μΉμ¬μ΄νΈ : https://dataplatform.cloud.ibm.com/

* IBM Watson Studio μλΉμ€ μΉμ¬μ΄νΈ

– IBM Cloud μμ΄λλ‘ λ‘κ·ΈμΈνκ³ , Watson Studioμ κ°μν©λλ€.

– μΆκ° μκΈμ μ§λΆνμ§ μμΌλ €λ©΄ ‘LITE Plan’μ μ ννμΈμ.

* IBM Watson Studio λ‘κ·ΈμΈ νλ©΄

#2 νλ‘μ νΈ μμ± λ° μλΉμ€, λΈνΈλΆ, μΈμ¦ μ λ³΄ μΆκ°

2.1 νλ‘μ νΈ μμ±
– μλ¨ λ©λ΄ λ°μμ projects > new_project λ₯Ό ν΄λ¦­νμ¬ μλ‘μ΄ νλ‘μ νΈλ₯Ό μμ±ν©λλ€.

– Data Science νλ‘μ νΈ νμΌμ ν΄λ¦­νμΈμ.

– νλ‘μ νΈ μμ± μ IBM Cloud κ³μ μ νλ‘μ νΈλͺκ³Ό κ°μ μ΄λ¦μΌλ‘ object storage μλΉμ€κ° μλμΌλ‘ μμ±λ©λλ€.

* ‘new project’λΌλ μ΄λ¦μ΄ νλ‘μ νΈλ₯Ό μμ±νμ new project λ‘ μμνλ μ΄λ¦μ object storage μλΉμ€κ° μμ±λμμ΅λλ€.
(IBM Cloud κ³μ μμ νμΈν  μ μμ΅λλ€)

2.2 νλ‘μ νΈμ μλΉμ€ μΆκ°νκΈ°
– μλΉμ€λ νλ‘μ νΈμ μΆκ° κΈ°λ₯μΌλ‘ μ΄ν΄ν  μ μμ΅λλ€.
IBM Watson Studio μμλ Amazon EMR Spark, IBM Analytics Engine, Spark λ±μ λ€μν μΆκ° μλΉμ€λ₯Ό νλ‘μ νΈμ μ μ©ν  μ μμ΅λλ€.

– μλ‘­κ² μμ±λ νλ‘μ νΈλ₯Ό ν΄λ¦­νκ³  μλ¨ λ©λ΄λ°μ settings μ μ νν©λλ€.

– μ΄ μν°ν΄μμλ κ°μ  λΆμμ μν΄ Visual Recognition (μ΄λ―Έμ§ μΈμ), Natural Language Understanding (μμ°μ΄ μ²λ¦¬), Tone Analyzer (λΆμκΈ° λΆμ) 3κ°μ§ μλΉμ€λ₯Ό μΆκ°ν©λλ€. ν΄λΉ μλΉμ€ νμΌμ Add λ₯Ό ν΄λ¦­νκ³  μΆκ° μκΈμ λ©λΆνμ§ μμΌλ €λ©΄ LITE νλμ μ ννμΈμ.

2.3 μΈμ¦ μ λ³΄ λ©λͺ¨ν΄ λκΈ°

κ° μλΉμ€μ API Key μ URLμ λΈνΈλΆμμ μ¬μ©νκΈ° μν΄ λ³΅μ¬ν΄ λ‘λλ€.

2.4 νλ‘μ νΈμ λΈνΈλΆ μμ±νκΈ°

– from url ν­μ μ ννκ³  λΈνΈλΆ μ΄λ¦, κ΄λ ¨ μμΈ μ€λͺ(description)μ μλ ₯ν©λλ€.
– κ°μ  λΆμμ μν΄ IBM κ³΅μ κ°μ΄λμμ μ κ³΅νλ λΈνΈλΆμ μμ±ν©λλ€.
μλμ urlμ μλ ₯νμΈμ

(μ΄κΈ° λΈνΈλΆ μ€κ³ Creditμ Anna Quincy μ Tyler Andersen μκ² μμ΅λλ€.)

– runtime ν­λͺ©μΌλ‘λΒ ‘Default Python 3.5 Free (1 vCPU and 4 GB RAM)’ μ μ νν©λλ€.

* λ€μκ³Ό κ°μ΄ λΈνΈλΆμ΄ μμ±λ©λλ€.

2.5 μΈμ¦μ λ³΄ μΆκ°
– ‘1.5. Add Service Credentials From IBM Cloud for Watson Services’ νλ¨μ λΈνΈλΆ μμ μ°Ύμ΅λλ€.
– ‘add_…’Β ννμ 5κ° placeholder κ°μ 2.3 λ¨κ³μμ κ° μλΉμ€μ ‘Service Credentials’Β ν­μμ κ°μ Έμ¨ μ λ³΄λ‘ λμ²΄ν©λλ€.

* μ΄ μμ λ―Όκ° μ λ³΄μΈ μΈμ¦ μ λ³΄λ₯Ό ν¬ν¨νκΈ° λλ¬Έμ hidden_cellλ‘ νμλ©λλ€.

#3 λ°μ΄ν° λΆλ¬μ€κΈ°

3.1 λΈνΈλΆμ CSV νμΌ μΆκ°

Files ν­ > browse λ₯Ό ν΄λ¦­νμ¬ .csv νμΌμ μΆκ°νμΈμ.

– λ§μ½ λΆμνκ³ μ νλ νμ΄μ€λΆ Analytics λ°μ΄ν°κ° μλ€λ©΄ IBM μμ μ κ³΅νλ μμ λ°μ΄ν°λ₯Ό λ€μ΄λ‘λ νμ¬ μ¬μ©ν  μ μμ΅λλ€.
μλ λ§ν¬λ₯Ό ν΅ν΄ Github μ μ μν ν data > example_input μΌλ‘ λ€μ΄κ°λ©΄ μμ λ°μ΄ν°κ° μμ΅λλ€.

3.2 pandas DataFrame μ½λ μ½μ

– ‘2.1 Load data from Object Storage’ μ€λͺ νλ¨μ λΈνΈλΆ μμ μ°Ύμ΅λλ€.
‘# Insert pandas DataFrame’ κ° μλ ₯λ μμ μ νν©λλ€. μ½λλ₯Ό μ½μνκΈ° μ  μ΄ μμ μ ννλμ§ λ°λμ νμΈνμΈμ.

– non utf-8 λ°μ΄ν° μΈμ½λ©μ κ²½μ° λΈνΈλΆμ μ€ννμ λ μλ¬κ° λ°μν  μ μμ΅λλ€.
νλΌλ―Έν°λ₯Ό μμ νμ¬ μΈμ½λ© μ λ³΄λ₯Ό μ€μ ν¨μΌλ‘μ¨ μ€λ₯λ₯Ό μμ ν  μ μμ΅λλ€.

μλ¬ μμ΄ μ μμ μΌλ‘ λΈνΈλΆμ μ€νν  μ μμ΅λλ€.

* μ΄ μμ λ―Όκ° μ λ³΄μΈ μΈμ¦ μ λ³΄λ₯Ό ν¬ν¨νκΈ° λλ¬Έμ hidden_cellλ‘ νμλ©λλ€.

3.3 df λ³μ μ€μ 

– 3.1 λ¨κ³μμ ‘2.1 Load data from Object Storage’ μ€λͺ νλ¨μ
μμ λ°μ΄ν°λ₯Ό pandas DataFrameμ ννλ‘ λΆλ¬μμ΅λλ€.

λΆλ¬μ¨ λ°μ΄ν°μ μ½λμ λ°λΌ ν΄λΉ μμ λ§μ§λ§ λ μ€μ μ½λ ννκ° λ¬λΌμ§λλ€.
df_data_2 λΌλ λ³μμ pandas Dataframe λ°μ΄ν°λ₯Ό μ μ₯ν©λλ€.

λ°μ΄ν° μ½λμ λ°λΌ df_data_1 μ΄λΌλ λ³μμ λ°μ΄ν°λ₯Ό μ μ₯ν  μλ μμ΅λλ€.

pandas DataFrameμ μ μ₯νλ λ³μμ μ΄λ¦μ΄ λ¬΄μμΈμ§ μ²΄ν¬νκ³ ,
‘2.2 Set variables’ μ€λͺ νλ¨μ μμμ df = df_data_1 λλ df_data_2,

* μ΄ μμμμλ padas DataFrame μ λ³΄λ₯Ό df_data_2 λ³μμ μ μ₯νκΈ° λλ¬Έμ
df λ₯Ό df_data_2 μ κ°κ² λ§μΆ° μ€λλ€.

3.4 νμΌ μΈμ¦ μ λ³΄ μΆκ°

– 3.3 λ¨κ³μμ df λ³μλ₯Ό μ€μ ν ν, νλ¨μ νμΌ μΈμ¦ μ λ³΄λ₯Ό μΆκ°νκΈ° μν μμ΄ μμ΅λλ€.
‘#insert credentials for file – Change to credentials_1’ λΌκ³  μλ ₯λ μμ μ νν©λλ€.

* μ΄ μμ λ―Όκ° μ λ³΄μΈ μΈμ¦ μ λ³΄λ₯Ό ν¬ν¨νκΈ° λλ¬Έμ hidden_cellλ‘ νμλ©λλ€.

3.5 Credential λ³μ λͺ μμ 

– 3.4 λ¨κ³μμ νμΌ μΈμ¦ μ λ³΄λ₯Ό μΆκ°ν ν μ€ν¬λ‘€μ λ΄λ¦½λλ€.
μ½μν μ½λλ credentials_1 λλ credentials_2 λ³μμ ν λΉλ μΈμ¦ μ λ³΄ dictionary λ₯Ό μ μ₯ν©λλ€.
credentials λ³μλ μ½λμ λ°λΌ λ€λ₯Έ μ΄λ¦μ κ°μ§λλ€.

– ν΄λΉ μ¬μ§μμ λ³Ό μ μλ―μ΄, μ μμμμλ dictionary μΈμ¦ μ λ³΄λ₯Ό credentials_2 μ μ μ₯ν©λλ€.
μΈμ¦ μ λ³΄κ° μ μ₯λ μμ μλ μμμ credentials λ³μλ₯Ό μΈμ¦ μ λ³΄κ° μ μ₯λ credentials_2 λ³μλ‘ μ€μ ν©λλ€.

(λ§μΌ dictionary μΈμ¦ μ λ³΄κ° credentials_1 μ μ μ₯λμ΄ μμΌλ©΄, credentials λ³μλ₯Ό credentials_1 λ‘ μ€μ ν©λλ€.)

4. λ°μ΄ν° μ μ²λ¦¬ λ° Enrichment

4.1 λ°μ΄ν° μ μ²λ¦¬
– missing value λ₯Ό μ κ±°νκ³  μΈλ€μΌμ μΆμΆν©λλ€.

4.2 Enrichment

– 2.2 λ¨κ³μμ μΆκ°νλ μλΉμ€λ₯Ό λ°μ΄ν°μ μ μ©μν΅λλ€.