Input.GetKeyUp wont work!

I am trying to write a camera script that would slightly move the camera when up arrow is pressed and return to normal position when released but the Input.GetKeyUp() won’t work Please help, Thanks!
using UnityEngine;
using System.Collections;

public class CameraControlls : MonoBehaviour {

    // Use this for initialization
    void Start () {
	
	}
	
	// Update is called once per frame
	void Update () {
	    if(Input.GetKeyDown(KeyCode.UpArrow))
        {
            transform.Translate(0, -2 * Time.deltaTime , 0);
        }

        if (Input.GetKeyUp(KeyCode.UpArrow))
        {
            transform.Translate(0, 2 * Time.deltaTime, 0);
        }
    }
	}

While you keep the up arrow down, each update the camera will move a bit. Depending on how long you hold the button it will keep moving.
The second half of your code only occurs once: when you release the key. You will move back only once (2* Time.deltaTime). It is better to store your start transform.position in the Start routine and restore it in line 17.